2017-02-09 18 views
0

我是Android新手,我試圖在手機上運行我的應用程序(4.4.2),並且出現以下錯誤:不能在我的手機上使用Firebase的應用程序,但我可以在模擬器上

02/09 18:48:02: Launching app 
No apk changes detected since last installation, skipping installation of /Users/luisacabs/Documents/POLIMI/SharemyFlat/app/build/outputs/apk/app-debug.apk 
$ adb shell am force-stop com.example.android.sharemyflat 
$ adb shell am start -n "com.example.android.sharemyflat/com.example.android.sharemyflat.Activities.MainActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER 
Connected to process 8045 on device enspert-highway-ABCDEF 
V/Provider/Settings: from db cache, name = anr_debugging_mechanism , value = 1 
D/asset: AssetManager-->addDefaultAssets CIP path not exsit! 
D/dalvikvm: open_cached_dex_file : /data/app/com.example.android.sharemyflat-2.apk /data/dalvik-cache/[email protected]@[email protected] 
D/ActivityThread: installProvider: context.getPackageName()=com.example.android.sharemyflat 
D/AndroidRuntime: Shutting down VM 
W/dalvikvm: threadid=1: thread exiting with uncaught exception (group=0x41a19c98) 
W/dalvikvm: threadid=1: uncaught exception occurred 
W/System.err: java.lang.RuntimeException: Unable to get provider com.google.firebase.provider.FirebaseInitProvider: java.lang.ClassNotFoundException: Didn't find class "com.google.firebase.provider.FirebaseInitProvider" on path: DexPathList[[zip file "/data/app/com.example.android.sharemyflat-2.apk"],nativeLibraryDirectories=[/data/app-lib/com.example.android.sharemyflat-2, /vendor/lib, /system/lib]] 
W/System.err:  at android.app.ActivityThread.installProvider(ActivityThread.java:5052) 
W/System.err:  at android.app.ActivityThread.installContentProviders(ActivityThread.java:4623) 
W/System.err:  at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4563) 
W/System.err:  at android.app.ActivityThread.access$1500(ActivityThread.java:151) 
W/System.err:  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1402) 
W/System.err:  at android.os.Handler.dispatchMessage(Handler.java:110) 
W/System.err:  at android.os.Looper.loop(Looper.java:193) 
W/System.err:  at android.app.ActivityThread.main(ActivityThread.java:5333) 
W/System.err:  at java.lang.reflect.Method.invokeNative(Native Method) 
W/System.err:  at java.lang.reflect.Method.invoke(Method.java:515) 
W/System.err:  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:824) 
W/System.err:  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:640) 
W/System.err:  at dalvik.system.NativeStart.main(Native Method) 
W/System.err: Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.firebase.provider.FirebaseInitProvider" on path: DexPathList[[zip file "/data/app/com.example.android.sharemyflat-2.apk"],nativeLibraryDirectories=[/data/app-lib/com.example.android.sharemyflat-2, /vendor/lib, /system/lib]] 
W/System.err:  at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56) 
W/System.err:  at java.lang.ClassLoader.loadClass(ClassLoader.java:497) 
W/System.err:  at java.lang.ClassLoader.loadClass(ClassLoader.java:457) 
W/System.err:  at android.app.ActivityThread.installProvider(ActivityThread.java:5037) 
W/System.err: ... 12 more 
W/dalvikvm: threadid=1: calling UncaughtExceptionHandler 
E/AndroidRuntime: FATAL EXCEPTION: main 
       Process: com.example.android.sharemyflat, PID: 8045 
       java.lang.RuntimeException: Unable to get provider com.google.firebase.provider.FirebaseInitProvider: java.lang.ClassNotFoundException: Didn't find class "com.google.firebase.provider.FirebaseInitProvider" on path: DexPathList[[zip file "/data/app/com.example.android.sharemyflat-2.apk"],nativeLibraryDirectories=[/data/app-lib/com.example.android.sharemyflat-2, /vendor/lib, /system/lib]] 
        at android.app.ActivityThread.installProvider(ActivityThread.java:5052) 
        at android.app.ActivityThread.installContentProviders(ActivityThread.java:4623) 
        at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4563) 
        at android.app.ActivityThread.access$1500(ActivityThread.java:151) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1402) 
        at android.os.Handler.dispatchMessage(Handler.java:110) 
        at android.os.Looper.loop(Looper.java:193) 
        at android.app.ActivityThread.main(ActivityThread.java:5333) 
        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) 
       Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.firebase.provider.FirebaseInitProvider" on path: DexPathList[[zip file "/data/app/com.example.android.sharemyflat-2.apk"],nativeLibraryDirectories=[/data/app-lib/com.example.android.sharemyflat-2, /vendor/lib, /system/lib]] 
        at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56) 
        at java.lang.ClassLoader.loadClass(ClassLoader.java:497) 
        at java.lang.ClassLoader.loadClass(ClassLoader.java:457) 
        at android.app.ActivityThread.installProvider(ActivityThread.java:5037) 
        at android.app.ActivityThread.installContentProviders(ActivityThread.java:4623)  
        at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4563)  
        at android.app.ActivityThread.access$1500(ActivityThread.java:151)  
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1402)  
        at android.os.Handler.dispatchMessage(Handler.java:110)  
        at android.os.Looper.loop(Looper.java:193)  
        at android.app.ActivityThread.main(ActivityThread.java:5333)  
        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)  
Application terminated. 

我正在使用MacBook Pro,我可以在模擬器中運行我的應用程序,並且沒有出現這些錯誤,所以我想也許問題是我的電話配置。我也啓用了USB調試。我需要在手機上安裝任何東西嗎?

這是我的應用程序graddle文件:

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 25 
    buildToolsVersion "25.0.1" 
    defaultConfig { 
     applicationId "com.example.android.bauthentication" 
     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 { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { 
     exclude group: 'com.android.support', module: 'support-annotations' 
    }) 
    compile 'com.android.support:appcompat-v7:25.1.0' 
    compile 'com.google.android.gms:play-services:10.0.1' 
    compile 'com.google.firebase:firebase-core:10.0.1' 
    testCompile 'junit:junit:4.12' 
    compile 'com.google.firebase:firebase-auth:10.0.1' 
} 
apply plugin: 'com.google.gms.google-services' 
+0

嘗試卸載然後重新安裝應用程序在您的設備中。可能是一個問題,因爲該應用試圖讀取以前的應用數據。在錯誤日誌中,'com.example.android.sharemyflat-2.apk'應該沒有'-2'後綴。 –

+0

你能告訴我你的手機是什麼API級別或你的手機安裝了哪個Android版本?你也可以發佈你的gradle構建文件嗎? –

+0

我的手機android版本是4.4.2 –

回答

0

嘗試配置檢查你或看到火力的文檔..

官方頁面 - Add Firebase to Your Android Project

小心火力點的版本,存在舊版本和新版本,請檢查您安裝的是哪個版本

官方網頁舊版本。 Android Quickstart - Firebase

+0

我認爲一切都是根據firebase的文檔。這很奇怪,因爲在模擬器上我沒有使用應用程序的問題 –

0
apply plugin: 'com.android.application' 

android { 
    signingConfigs { 
    } 
    compileSdkVersion 25 
    buildToolsVersion '26.0.2' 
    useLibrary 'org.apache.http.legacy' 
    defaultConfig { 
     applicationId "com.***.****" 
     minSdkVersion 14 
     targetSdkVersion 23 
     multiDexEnabled false 
     versionCode 12 
     versionName "1.12" 
    } 
    dexOptions { 
     javaMaxHeapSize "4g" 
    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
      debuggable false 
      signingConfig signingConfigs.config 
     } 
    } 
} 
dependencies { 
    implementation 'com.google.firebase:firebase-core:11.4.2' 
    compile fileTree(include: ['*.jar'], dir: 'libs') 
    testCompile 'junit:junit:4.12' 
    compile 'com.google.android.gms:play-services-maps:11.4.2' 
    compile 'com.google.android.gms:play-services-location:11.4.2' 
    compile 'com.google.android.gms:play-services-places:11.4.2' 
    //compile 'com.google.firebase:firebase-messaging:10.0.1' 
    compile 'com.android.support:appcompat-v7:25.2.0' 
    compile 'com.android.support:design:25.2.0' 
    compile 'com.google.android.gms:play-services-ads:11.4.2' 
    compile 'com.google.android.gms:play-services-identity:11.4.2' 
    compile 'com.google.android.gms:play-services-gcm:11.4.2' 
    compile 'com.google.android.gms:play-services-analytics:11.4.2' 
    compile 'com.google.android.gms:play-services-places:11.4.2' 
} 
apply plugin: 'com.google.gms.google-services' 

卸載應用程序,並重新安裝

0

如果禁用使用multiDexEnabled false的multidex編譯器,它應該工作。

相關問題