集成华为推送“Error:(136, 20) Failed to resolve: com.huawei.android.hms:push:2.6.1.301”异常

     公司之前做的是信鸽推送,且正常集成了海外厂商通道(华为,小米和魅族),后来因为信鸽在海外厂商通道集成上还不完善,针对海外厂商通道单独集成。但是在集成华为推送时,一直报“Error:(136, 20) Failed to resolve: com.huawei.android.hms:push:2.6.1.301”异常。

     研究了很久,包括询问华为客服以及谷歌了之后,均没有发现有效解决办法。无意中发现在另一个项目中居然集成成功了,寻找两者区别之后,发现gradle版本号不一致,然后修改gradle版本号之后,解决该问题。一直找了快一周了,才找到解决办法。后续如果又发现该问题的话,也可以找到解决办法了。

    在项目的build.gradle文件中,将gradle文件修改版本号为3.0.1,代码如下:

dependencies {
classpath 'com.android.tools.build:gradle:3.0.1'
classpath 'com.github.dcendents:android-maven-gradle-plugin:2.1'
classpath "com.jfrog.bintray.gradle:gradle-bintray-plugin:1.7.3"
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}

在项目根目录下有一个gradle文件夹,打开gradle-wrapper.properties文件,修改gradle版本号为4.1,主要是此处,猜测华为推送只能是4.1版本时才能成功,其他版本均不可以,
代码如下:
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip

问题到这,也就解决完了。


猜你喜欢

转载自www.cnblogs.com/fei-android/p/9365502.html