java - 由于 build.gradle Android Studio 中的错误,应用程序崩溃
问题描述
由于 android Studio 存在构建问题,我修改了 build.gradle 以更改其编译 sdk 版本,当我更改编译 sdk 版本时,我还必须更改该文件中的其他编译。但是现在我的应用程序安装但崩溃了..我该如何解决?是因为我在库中使用的版本吗?
构建.gradle
apply plugin: 'com.android.application'
android {
configurations.all { resolutionStrategy.force "junit:junit:4.8.2" }
compileSdkVersion 26
buildToolsVersion "26.0.2"
defaultConfig {
applicationId "co.quindio.sena.navigationdrawerejemplo"
minSdkVersion 15
targetSdkVersion 25
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation 'com.android.support.constraint:constraint-layout:1.1.2'
//noinspection GradleCompatible
implementation 'com.google.android.gms:play-services-maps:15.0.1'
compile fileTree(include: ['*.jar'], dir: 'libs')
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile files('libs/GenAsync.1.2.jar')
compile files('libs/MD5Simply.jar')
compile 'com.android.volley:volley:1.0.0'
//noinspection GradleCompatible
compile 'com.android.support:appcompat-v7:25.3.1'
compile 'com.android.support:design:26.1.0'
compile 'com.android.support:support-v4:26.1.0'
compile 'com.android.support:recyclerview-v7:26.1.0'
compile 'com.android.support:cardview-v7:26.1.0'
compile 'me.biubiubiu.justifytext:library:1.1'
compile 'com.google.android.gms:play-services-location:7.0.0'
testCompile 'junit:junit:4.12'
implementation 'de.hdodenhof:circleimageview:2.2.0'
compile 'com.master.android:glideimageview:1.0'
implementation files('C:/Users/Luis Alonso/Documents/Trabajos/ExpoINGENIERIA 2018/curso-android-codejavu-master/NavigationDrawerConTabs/.idea/libraries/CircleImageView-master/gradle/wrapper/gradle-wrapper.jar')
implementation 'com.google.android.gms:play-services:12.0.1'
compile 'org.testng:testng:6.9.6'
}
日志错误:
E/AndroidRuntime: FATAL EXCEPTION: main
Process: co.quindio.sena.navigationdrawerejemplo, PID: 6041
java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/common/internal/zzbq;
at com.google.firebase.provider.FirebaseInitProvider.attachInfo(Unknown Source)
at android.app.ActivityThread.installProvider(ActivityThread.java:6868)
at android.app.ActivityThread.installContentProviders(ActivityThread.java:6463)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6403)
at android.app.ActivityThread.access$1800(ActivityThread.java:229)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1887)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:7325)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.android.gms.common.internal.zzbq" on path: DexPathList[[zip file "/data/app/co.quindio.sena.navigationdrawerejemplo-2/base.apk", zip file "/data/app/co.quindio.sena.navigationdrawerejemplo-2/split_lib_dependencies_apk.apk", zip file "/data/app/co.quindio.sena.navigationdrawerejemplo-2/split_lib_slice_0_apk.apk", zip file "/data/app/co.quindio.sena.navigationdrawerejemplo-2/split_lib_slice_1_apk.apk", zip file "/data/app/co.quindio.sena.navigationdrawerejemplo-2/split_lib_slice_2_apk.apk", zip file "/data/app/co.quindio.sena.navigationdrawerejemplo-2/split_lib_slice_3_apk.apk", zip file "/data/app/co.quindio.sena.navigationdrawerejemplo-2/split_lib_slice_4_apk.apk", zip file "/data/app/co.quindio.sena.navigationdrawerejemplo-2/split_lib_slice_5_apk.apk", zip file "/data/app/co.quindio.sena.navigationdrawerejemplo-2/split_lib_slice_6_apk.apk", zip file "/data/app/co.quindio.sena.navigationdrawerejemplo-2/split_lib_slice_7_apk.apk", zip file "/data/app/co.quindio.sena.navigationdrawerejemplo-2/split_lib_slice_8_apk.apk", zip file "/data/app/co.quindio.sena.navigationdrawerejemplo-2/split_lib_slice_9_apk.apk"],nativeLibraryDirectories=[/data/app/co.quindio.sena.navigationdrawerejemplo-2/lib/arm, /vendor/lib, /system/lib]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
at com.google.firebase.provider.FirebaseInitProvider.attachInfo(Unknown Source)
at android.app.ActivityThread.installProvider(ActivityThread.java:6868)
at android.app.ActivityThread.installContentProviders(ActivityThread.java:6463)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6403)
at android.app.ActivityThread.access$1800(ActivityThread.java:229)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1887)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:7325)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
Suppressed: java.lang.ClassNotFoundException: com.google.android.gms.common.internal.zzbq
at java.lang.Class.classForName(Native Method)
at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
... 13 more
Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack trace available
解决方案
首先,您必须将所有编译替换为依赖项中的实现
然后将您的位置 google lib 更新到最新版本
implementation 'com.google.android.gms:play-services-location:15.0.1'
其次, com.android.support的所有库必须具有相同的版本以避免这样的崩溃
implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.android.support:design:27.1.1'
implementation 'com.android.support:support-v4:27.1.1'
implementation 'com.android.support:cardview-v7:27.1.1'
implementation 'com.android.support:recyclerview-v7:27.1.1'
并尝试再次构建它。
推荐阅读
- python - 图像序列未在 OpenCV 中维护
- gremlin - Gremlin:如何在单个查询中获取传出边及其目标顶点
- c - UDP 上的 wav 文件无法在带有 Alsa-lib 的 unix 中正确播放
- node.js - 尝试在 Mongodb 和 nodejs 中建立 $ 查找关系时出现错误
- go - 多数据库驱动场景:将接口作为类型传递
- python - 使用 selenium 获取页面的某个部分
- reporting-services - Power BI 报表服务器:扩展自定义安全:如何添加/注册管理员用户(无 AD)
- html - HTML 当单元格没有更多空间时,从新行开始
- java - 为什么我应该在 Java 交易之前将余额与 BigDecimal.ONE 进行比较?
- reactjs - 如何从 url 获取类道具并存储在 react-redux