【发布时间】:2016-06-03 18:55:14
【问题描述】:
我正在开发一个 Android 应用程序,在这里我正在使用 QuickBlox Chat 开发聊天功能。到目前为止,我已经完成了文字、图像聊天。现在我在这里使用Stickers。
应用程序在基于 Lollipop 的 Android 手机上运行良好,当我将它安装在基于 KitKat 的 Android 手机上时,它会在 Logcat 中出现以下错误。
这里是 LogCat 的详细信息:
FATAL EXCEPTION: main
Process: com.musomeet, PID: 21520
java.lang.NoClassDefFoundError: vc908.stickerfactory.provider.b
at vc908.stickerfactory.provider.a.<init>(Unknown Source)
at vc908.stickerfactory.provider.a.d(Unknown Source)
at vc908.stickerfactory.provider.a.b(Unknown Source)
at vc908.stickerfactory.provider.a.a(Unknown Source)
at vc908.stickerfactory.provider.StickersProvider.a(Unknown Source)
at vc908.stickerfactory.provider.base.BaseContentProvider.onCreate(Unknown Source)
at android.content.ContentProvider.attachInfo(ContentProvider.java:1638)
at android.content.ContentProvider.attachInfo(ContentProvider.java:1609)
at android.app.ActivityThread.installProvider(ActivityThread.java:5008)
at android.app.ActivityThread.installContentProviders(ActivityThread.java:4582)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4522)
at android.app.ActivityThread.access$1500(ActivityThread.java:151)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1381)
at android.os.Handler.dispatchMessage(Handler.java:110)
at android.os.Looper.loop(Looper.java:193)
at android.app.ActivityThread.main(ActivityThread.java:5292)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:824)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:640)
at dalvik.system.NativeStart.main(Native Method)
构建.gradle:
apply plugin: 'com.android.application'
repositories {
mavenCentral()
maven { url 'http://maven.stickerpipe.com/artifactory/stickerfactory' }
}
android {
compileSdkVersion 23
buildToolsVersion '22.0.1'
defaultConfig {
multiDexEnabled = false
applicationId "com.xxx"
minSdkVersion 16
targetSdkVersion 22
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
applicationVariants.all { variant ->
variant.outputs.each { output ->
def newName = output.outputFile.name
newName = newName.replace("app-release", "XXXX")
output.outputFile = new File(output.outputFile.parent, newName)
}
}
}
debug {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
applicationVariants.all { variant ->
variant.outputs.each { output ->
def newName = output.outputFile.name
newName = newName.replace("app-debug", "XXXX")
output.outputFile = new File(output.outputFile.parent, newName)
}
}
}
}
}
repositories {
maven {url "https://jitpack.io"}
}
dependencies {
compile 'de.hdodenhof:circleimageview:1.2.1'
compile 'com.android.support:recyclerview-v7:23.0.1'
compile 'com.android.support:cardview-v7:23.0.1'
compile 'com.android.support:appcompat-v7:23.0.1'
compile 'com.android.support:design:23.0.1'
compile 'com.squareup.picasso:picasso:2.5.2'
compile 'com.squareup.okhttp:okhttp-urlconnection:2.2.0'
compile 'me.drakeet.materialdialog:library:1.1.0'
compile 'com.google.android.gms:play-services-gcm:7.5.0'
compile 'com.google.apis:google-api-services-youtube:v3-rev152-1.20.0'
compile 'com.google.code.gson:gson:2.3.1'
compile 'com.squareup.retrofit:retrofit:1.8.0'
compile 'com.wdullaer:materialdatetimepicker:2.1.0'
compile('com.github.ozodrukh:CircularReveal:1.1.1@aar') { transitive = true; }
compile files('libs/quickblox-android-sdk-chat-2.4.jar')
compile files('libs/quickblox-android-sdk-content-2.4.jar')
compile('vc908.stickers:stickerfactory:0.2.2@aar') {
transitive = true;
}
compile files('libs/quickblox-android-sdk-messages-2.4.jar')
compile files('libs/quickblox-android-sdk-core-2.4.jar')
compile 'com.navercorp.pulltorefresh:library:3.2.3@aar'
compile 'com.jakewharton:butterknife:7.0.1'
compile 'com.facebook.android:facebook-android-sdk:4.1.0'
compile files('libs/androidsvg-1.2.2-beta-1.jar')
compile files('libs/YouTubeAndroidPlayerApi.jar')
}
我访问了 Sticker 库和 Quickblox 的官方网站。我访问了许多 stackoverflow 帖子,但没有运气。
我不知道这个问题的确切解决方法。
请帮帮我。
【问题讨论】:
-
尝试检查this answer。如果您有 multiDexEnabled = true,请尝试在 build.gradle 中更改为 multiDexEnabled = false。如果您解决了问题,请告诉我们
-
这可能有帮助,我会尝试并告诉你。
-
@Dehimb 已尝试过,但在构建应用程序时出现错误:错误:任务 ':app:dexDebug' 的执行失败。
-
请提供您的 build.gradle 文件
-
我已将 build.gradle 包含在上述问题中。