2016-10-05 96 views
-3

我每次構建APK時都會收到下面的錯誤;搖籃構建表明它已經成功完成,但同時在我的手機上安裝的APK,它每次崩潰Android APK崩潰,甚至Gradle構建成功完成

10-04 22:52:53.848 9297-9297/com.usfca.studentrecordsverify E/Trace: error opening trace file: No such file or directory (2) 
10-04 22:52:53.908 9297-9297/com.usfca.studentrecordsverify E/dalvikvm: Could not find class 'android.util.ArrayMap', referenced from method com.android.tools.fd.runtime.MonkeyPatcher.monkeyPatchExistingResources 
10-04 22:52:53.908 9297-9297/com.usfca.studentrecordsverify W/dalvikvm: VFY: unable to resolve check-cast 1786 (Landroid/util/ArrayMap;) in Lcom/android/tools/fd/runtime/MonkeyPatcher; 
10-04 22:52:53.908 9297-9297/com.usfca.studentrecordsverify E/dalvikvm: Could not find class 'android.util.ArrayMap', referenced from method com.android.tools.fd.runtime.MonkeyPatcher.pruneResourceCache 
10-04 22:52:53.908 9297-9297/com.usfca.studentrecordsverify W/dalvikvm: VFY: unable to resolve const-class 1786 (Landroid/util/ArrayMap;) in Lcom/android/tools/fd/runtime/MonkeyPatcher; 
10-04 22:52:53.928 9297-9297/com.usfca.studentrecordsverify W/dalvikvm: VFY: unable to resolve virtual method 437: Landroid/content/Context;.getSystemService (Ljava/lang/Class;)Ljava/lang/Object; 
10-04 22:52:53.928 9297-9297/com.usfca.studentrecordsverify W/dalvikvm: VFY: unable to resolve virtual method 231: Landroid/app/Activity;.stopLockTask()V 
10-04 22:52:53.928 9297-9297/com.usfca.studentrecordsverify E/dalvikvm: Could not find class 'android.os.PersistableBundle', referenced from method com.usfca.studentrecordsverify.MainActivity.access$super 
10-04 22:52:53.928 9297-9297/com.usfca.studentrecordsverify W/dalvikvm: VFY: unable to resolve check-cast 226 (Landroid/os/PersistableBundle;) in Lcom/usfca/studentrecordsverify/MainActivity; 
10-04 22:52:53.928 9297-9297/com.usfca.studentrecordsverify W/dalvikvm: VFY: unable to resolve virtual method 419: Landroid/content/Context;.getColorStateList (I)Landroid/content/res/ColorStateList; 
10-04 22:52:53.928 9297-9297/com.usfca.studentrecordsverify W/dalvikvm: VFY: unable to resolve virtual method 154: Landroid/app/Activity;.onVisibleBehindCanceled()V 
10-04 22:52:53.928 9297-9297/com.usfca.studentrecordsverify W/dalvikvm: VFY: unable to resolve virtual method 158: Landroid/app/Activity;.onWindowStartingActionMode (Landroid/view/ActionMode$Callback;I)Landroid/view/ActionMode; 
10-04 22:52:53.928 9297-9297/com.usfca.studentrecordsverify E/dalvikvm: Could not find class 'android.os.PersistableBundle', referenced from method com.usfca.studentrecordsverify.MainActivity.access$super 

這裏是build.gradle

+1

請先正確格式化您的問題。 –

+0

看來無法找到android運行時。你能分享你的gradle文件嗎?你是在手機還是模擬器上運行它? – orip

+0

我在手機上運行..Android 4.2.2,我試着在安裝有Android 5.0的模擬器上運行相同的程序 –

回答

0

android.util.ArrayMap與API-19級(ArrayMap)推出。如果您在Android 4.2.2設備上運行代碼,它將無法在您的設備上找到此類,並且您的應用會崩潰。您可以改用java.util.Map。它不像ArrayMap那麼高效,但它在每個Android平臺上都可用。

+0

我試過運行它在Android 5.0,6.0甚至在那裏失敗;在API級別爲21的仿真器中獲得相同的結果 –

+0

您是否嘗試禁用Instant Run?此外,您的支持庫有點過時。 24.2.1可用。也許這有幫助。另外,如果不使用硬件上不可用的API,我會檢查它。 – Christopher

0

改變你的minSdkVersion至19

defaultConfig { 
    applicationId "com.usfca.studentrecordsverification" 
    minSdkVersion 19 
    targetSdkVersion 23 
    versionCode 1 
    versionName "1.0" 
} 

因爲ArrayMap與API級19介紹了!