当我将目标sdk级别从23.0.2更改为25.0.1时。我的应用程序在下面的行中崩溃了。 我该怎么做才能避免这次崩溃? 请提出修改建议。
InstanceID instanceID = InstanceID.getInstance(getContext());
错误日志:
AndroidRuntime: FATAL EXCEPTION: AsyncTask #2
Process: com.tuitoapp.admin, PID: 19012 java.lang.RuntimeException: An error occured while executing doInBackground()
Caused by: java.lang.IllegalAccessError: Method 'void android.support.v4.content.ContextCompat.<init>()' is inaccessible to class 'com.google.android.gms.iid.zzd' (declaration of 'com.google.android.gms.iid.zzd' appears in /data/data/com.tuitoapp.admin/files/instant-run/dex/slice-com.google.android.gms-play-services-gcm-8.3.0_7fd6e981c2dc6578e4c382ecd19f08197a01f8b5-classes.dex)
at com.google.android.gms.iid.zzd.zzdL(Unknown Source)
at com.google.android.gms.iid.InstanceID.zza(Unknown Source)
at com.google.android.gms.iid.InstanceID.getInstance(Unknown Source)
我的应用程序是:
// compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'org.achartengine:achartengine:1.2.0'
compile('com.crashlytics.sdk.android:crashlytics:2.6.2@aar') {
transitive = true;
}
compile 'org.jsoup:jsoup:1.8.3'
compile 'com.mcxiaoke.volley:library:1.0.19'
compile 'com.android.support:appcompat-v7:25.1.1'
compile 'com.android.support:design:25.1.1'
compile 'com.pkmmte.view:circularimageview:1.1'
compile 'com.android.support:cardview-v7:25.0.1'
compile 'org.achartengine:achartengine:1.2.0'
compile 'com.github.npanigrahy:Custom-Calendar-View:v1.0'
compile 'com.github.siyamed:android-shape-imageview:0.9.+@aar'
compile 'com.google.android.gms:play-services:8.3.0'
compile 'com.android.support:multidex:1.0.1'
// compile 'com.google.android.gms:play-services:9.8.0
// compile 'com.google.android.gms:play-services:9.8.0'
compile 'com.android.support:multidex:1.0.1'
compile 'pub.devrel:easypermissions:0.1.9'
compile 'com.github.ksoichiro:android-observablescrollview:1.6.0'
compile 'pl.droidsonroids.gif:android-gif-drawable:1.1.16'
compile 'com.miguelcatalan:materialsearchview:1.4.0'
compile 'com.github.rey5137:material:1.2.2'
compile 'uk.co.chrisjenx:calligraphy:2.1.0'
compile 'com.github.blackfizz:eazegraph:1.2.5l@aar'
compile 'com.github.PhilJay:MPAndroidChart:v2.1.6'
compile 'com.squareup.picasso:picasso:2.5.2'
compile 'com.nineoldandroids:library:2.4.0'
compile 'de.hdodenhof:circleimageview:2.1.0'
compile 'com.github.bumptech.glide:glide:3.7.0'
compile 'com.android.support:palette-v7:25.0.1'
compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.5'
compile('com.weiwangcn.betterspinner:library:1.1.0') {
exclude group: 'com.android.support', module: 'appcompat-v7'
}
compile 'swarajsaaj:otpreader:1.0'
compile 'com.flipboard:bottomsheet-core:1.4.3'
compile 'com.flipboard:bottomsheet-commons:1.4.3'
compile 'com.riontech.staggeredtextgridview:staggeredtextgridview:1.0.1'
compile 'konifar:fab-transformation:1.0.0'
compile project(':flickabledialog')
compile 'com.android.support:support-v4:25.0.1'
}
apply plugin:'com.google.gms.google-services'
申请的顶级是:
buildscript {
repositories {
jcenter()
mavenCentral()
maven {
url "https://jitpack.io"
}
}
dependencies {
classpath 'com.android.tools.build:gradle:2.2.3'
//These two lines are added
classpath 'com.google.gms:google-services:1.5.0-beta2'
//classpath 'com.google.gms:google-services:3.0.0'
// classpath 'com.android.tools.build:gradle:2.0.0-alpha6'
classpath 'com.android.tools.build:gradle:1.3.0'
classpath 'com.novoda:bintray-release:0.3.4'
// classpath 'com.google.gms:google-services:2.0.0-alpha3'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
答案 0 :(得分:2)
试试这个:
InstanceID instanceID = InstanceID.getInstance(getApplicationContext());
也在build.gradle中:
compile("com.google.android.gms:play-services-location:9.6.1") //if u are not using location you can skip this
compile("com.google.android.gms:play-services-maps:9.6.1")
compile("com.google.android.gms:play-services-gcm:9.6.1")
在您的应用程序gradle中:
删除classpath 'com.google.gms:google-services:1.5.0-beta2'
为什么还要使用两个不同的com.android.tools.build:gradle
版本?
答案 1 :(得分:2)
使用最新版本的Google Play服务
compile 'com.google.android.gms:play-services:11.0.4'
答案 2 :(得分:1)
在app gradle文件中,将您的Google Play服务依赖项升级到最新版本。
compile 'com.google.android.gms:play-services:9.6.1'
答案 3 :(得分:0)
添加依赖
compile 'com.google.android.gms:play-services:10.0.1'
删除apply plugin和
classpath 'com.google.gms:google-services:
答案 4 :(得分:-1)