-1

我已经使用 facebook sdk 登录 facebook,还使用 ​​google map 来获取用户当前位置。它在 android 5.o 或更高版本中运行良好,但在 android 4.4.3 中崩溃。我使用了以下配置。

 android {
             compileSdkVersion 24
             buildToolsVersion "24.0.0"

             defaultConfig {
                 applicationId "com.example.nuevo.getsocial"
                 minSdkVersion 15
                 targetSdkVersion 24
                 versionCode 1
                 versionName "1.0"
                 multiDexEnabled true
             }
             buildTypes {
                 release {
                     minifyEnabled false
                     proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
                 }
             }
             dexOptions{
                 javaMaxHeapSize "4g"
             }
         }
         repositories {
             mavenCentral()
         }

         dependencies {
             compile fileTree(dir: 'libs', include: ['*.jar'])
             testCompile 'junit:junit:4.12'
             compile project(path: ':volley')
             compile 'com.android.support:appcompat-v7:24.2.0'
             compile 'com.facebook.android:facebook-android-sdk:4.7.0'
             compile 'com.squareup.picasso:picasso:`enter code here`2.4.0'
             compile 'com.google.android.gms:play-services:9.4.0'
             compile 'com.android.support:design:24.2.0'
             compile 'com.google.android.gms:play-services-ads:9.4.0'
             compile 'com.google.android.gms:play-services-auth:9.4.0'
             compile 'com.google.android.gms:play-services-gcm:9.4.0'
         }

Logcat如下

446/com.example.nuevo.getsocial E/dalvikvm:找不到类“com.google.firebase.FirebaseOptions”,引用自方法 com.google.firebase.FirebaseApp。08-29 02:41:35.041 1446-1446/com.example.nuevo.getsocial E/dalvikvm: 找不到类 'com.google.firebase.FirebaseApp$zzb',引用自方法 com.google.firebase.FirebaseApp。 zzcm 08-29 02:41:35.045 1446-1446/com.example.nuevo.getsocial E/dalvikvm:找不到类 'com.google.firebase.FirebaseApiNotAvailableException',引用自方法 com.google.firebase.FirebaseApp.getToken 08-29 02:41:35.049 1446-1446/com.example.nuevo.getsocial E/dalvikvm: 找不到类 'com.google.firebase.FirebaseApp$zza',引用自方法 com.google.firebase.FirebaseApp。扎 08-29 02:41:35.081 1446-1446/com.example.nuevo。

4

2 回答 2

0

将您的 appcompat 和设计库替换为 gradle 依赖项,如下所示

compile 'com.android.support:appcompat-v7:24.0.0-alpha1'
    compile 'com.android.support:design:24.0.0-alpha1'
于 2016-08-29T06:49:42.997 回答
0

根据 Android Studio User Guide: Multidex support before Android 5.0

Android 5.0(API 级别 21)之前的平台版本使用 Dalvik 运行时来执行应用程序代码。默认情况下,Dalvik 将应用程序限制为每个 APK 单个 classes.dex 字节码文件。为了绕过这个限制,您可以使用multidex 支持库,它成为您应用程序的主要 DEX 文件的一部分,然后管理对其他 DEX 文件及其包含的代码的访问。

在您的情况下,如果您支持旧版本的 Android,则需要包含com.android.support:multidex:1.0.0在您的 gradle 依赖项中。

于 2016-08-29T06:50:46.023 回答