2017-01-20 3 views
0

Я работал над картами google, когда добавлял разрешения в android manifest.xml, теперь мое приложение остановилось. Перед тем как сделать это приложение работает нормально. Я включил multiDexEnabled true. Делая это, она удаляет эту ошибку, но мое приложение все еще останавливается. Пожалуйста, помогите мне, я потратил много времени на это, но не могу.Когда я добавляю разрешение в android manifest.xml, мое приложение останавливается

gradle.build

apply plugin: 'com.android.application' 
android { 

compileSdkVersion 25 
buildToolsVersion "24.0.3" 
defaultConfig { 
    applicationId "com.shah.myapplication1" 
    minSdkVersion 19 
    targetSdkVersion 25 
    versionCode 1 
    versionName "1.0" 
    multiDexEnabled true 
    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.0.0' 
    compile 'com.android.support:design:25.0.0' 
    testCompile 'junit:junit:4.12' 
    compile 'com.google.android.gms:play-services:9.6.1' 
} 

Это разрешение, которое я добавил.

<uses-permission android:name="android.permission.INTERNET"/> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> 

Logcat

01-21 01:06:27.732 12427-12427/? E/AndroidRuntime: FATAL EXCEPTION: main 
    Process: com.shah.myapplication1, PID: 12427 
    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.shah.myapplication1-1.apk"],nativeLibraryDirectories= [/data/app-lib/com.shah.myapplication1-1, /vendor/lib, /system/lib]] 
     at android.app.ActivityThread.installProvider(ActivityThread.java:5275) 
     at android.app.ActivityThread.installContentProviders(ActivityThread.java:4867) 
     at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4750) 
     at android.app.ActivityThread.access$1600(ActivityThread.java:179) 
     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1384) 
     at android.os.Handler.dispatchMessage(Handler.java:102) 
     at android.os.Looper.loop(Looper.java:146) 
     at android.app.ActivityThread.main(ActivityThread.java:5641) 
     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:1288) 
     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1104) 
     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.shah.myapplication1-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.shah.myapplication1-1, /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:5260) 
     at android.app.ActivityThread.installContentProviders(ActivityThread.java:4867)  
     at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4750)  
     at android.app.ActivityThread.access$1600(ActivityThread.java:179)  
     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1384)  
     at android.os.Handler.dispatchMessage(Handler.java:102)  
     at android.os.Looper.loop(Looper.java:146)  
     at android.app.ActivityThread.main(ActivityThread.java:5641)  
     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:1288)  
     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1104)  
     at dalvik.system.NativeStart.main(Native Method)  
    01-21 01:06:27.742 12427-12427/? I/Process: Sending signal. PID: 12427 SIG: 9 
+1

Где ваш StackTrace? –

+0

Согласны, пожалуйста, отредактируйте свое оригинальное сообщение, чтобы включить logcat, чтобы мы могли увидеть, где произошел сбой. –

+0

@MichaelDodd см. Catlog и спасибо за помощь –

ответ

0

Я заметил, что авария связана с Firebase. Попробуйте добавить это ваше приложение уровня build.gradle под dependencies:

compile 'com.google.firebase:firebase-core:10.0.1' 

И поставить это в нижней части вашего приложения уровня build.gradle:

// ADD THIS AT THE BOTTOM 
apply plugin: 'com.google.gms.google-services' 

Смотрите также: Firebase setup instructions

0

Вашей конфигурации multidex собирается бросить. Пожалуйста, перейдите по следующей ссылке - MultiDex documentation

Особо обратить внимание на раздел multidexkeepfile и multidexkeepproguard конфигурации