2016-10-23 7 views
0

Die App läuft gut in Emulator (5.1) und in meinem Handy (4.1.2), aber es beim Öffnen stürzt es mit "leider App gestoppt" in bluestacks (4.4.2) und in echten Handys höher als 4.1Android App läuft nicht auf höherer Version

Ich bekomme dies unter Fehler beim Ausführen in Bluestacks. Versucht, die minsdk-Version und die appcompact-Optionen zu ändern.

10-21 22:27:22.551 12147-12147/player.kri.com.saranplayer I/dalvikvm: Could not find method android.content.Context.getSystemService, referenced from method com.androidhive.musicplayer.MusicPlayerMainActivity.access$super 
10-21 22:27:22.551 12147-12147/player.kri.com.saranplayer W/dalvikvm: VFY: unable to resolve virtual method 524: Landroid/content/Context;.getSystemService (Ljava/lang/Class;)Ljava/lang/Object; 
10-21 22:27:22.551 12147-12147/player.kri.com.saranplayer D/dalvikvm: VFY: replacing opcode 0x6f at 0x004b 
10-21 22:27:22.551 12147-12147/player.kri.com.saranplayer I/dalvikvm: Could not find method android.app.Activity.stopLockTask, referenced from method com.androidhive.musicplayer.MusicPlayerMainActivity.access$super 
10-21 22:27:22.551 12147-12147/player.kri.com.saranplayer W/dalvikvm: VFY: unable to resolve virtual method 279: Landroid/app/Activity;.stopLockTask()V 
10-21 22:27:22.551 12147-12147/player.kri.com.saranplayer D/dalvikvm: VFY: replacing opcode 0x6f at 0x00b9 
10-21 22:27:22.551 12147-12147/player.kri.com.saranplayer I/dalvikvm: Could not find method android.app.Activity.isInMultiWindowMode, referenced from method com.androidhive.musicplayer.MusicPlayerMainActivity.access$super 
10-21 22:27:22.551 12147-12147/player.kri.com.saranplayer W/dalvikvm: VFY: unable to resolve virtual method 102: Landroid/app/Activity;.isInMultiWindowMode()Z 
10-21 22:27:22.551 12147-12147/player.kri.com.saranplayer D/dalvikvm: VFY: replacing opcode 0x6f at 0x00eb 
10-21 22:27:22.551 12147-12147/player.kri.com.saranplayer E/dalvikvm: Could not find class 'android.os.PersistableBundle', referenced from method com.androidhive.musicplayer.MusicPlayerMainActivity.access$super 
10-21 22:27:22.551 12147-12147/player.kri.com.saranplayer W/dalvikvm: VFY: unable to resolve check-cast 234 (Landroid/os/PersistableBundle;) in Lcom/androidhive/musicplayer/MusicPlayerMainActivity; 
10-21 22:27:22.551 12147-12147/player.kri.com.saranplayer D/dalvikvm: VFY: replacing opcode 0x1f at 0x00fc 
10-21 22:27:22.551 12147-12147/player.kri.com.saranplayer I/dalvikvm: Could not find method android.content.Context.getColorStateList, referenced from method com.androidhive.musicplayer.MusicPlayerMainActivity.access$super 
10-21 22:27:22.551 12147-12147/player.kri.com.saranplayer W/dalvikvm: VFY: unable to resolve virtual method 505: Landroid/content/Context;.getColorStateList (I)Landroid/content/res/ColorStateList; 
10-21 22:27:22.551 12147-12147/player.kri.com.saranplayer D/dalvikvm: VFY: replacing opcode 0x6f at 0x010c 
10-21 22:27:22.551 12147-12147/player.kri.com.saranplayer I/dalvikvm: Could not find method android.app.Activity.onVisibleBehindCanceled, referenced from method com.androidhive.musicplayer.MusicPlayerMainActivity.access$super 
10-21 22:27:22.551 12147-12147/player.kri.com.saranplayer W/dalvikvm: VFY: unable to resolve virtual method 193: Landroid/app/Activity;.onVisibleBehindCanceled()V 
10-21 22:27:22.551 12147-12147/player.kri.com.saranplayer D/dalvikvm: VFY: replacing opcode 0x6f at 0x011c 
10-21 22:27:22.551 12147-12147/player.kri.com.saranplayer I/dalvikvm: Could not find method android.content.ContextWrapper.deleteSharedPreferences, referenced from method com.androidhive.musicplayer.MusicPlayerMainActivity.access$super 

Wirklich zu schätzen Sie helfen.

+0

Bitte senden Sie den Code, wo Ihre Anwendung schließt, dies es einfach, das Problem zu halten machen würde. – blueware

+0

es schließt nur beim Öffnen. keine Ausnahmen in der Logcat – Krish

+1

überprüfen Sie bitte Ihre 'MusicPlayerMainActivity' Klasse onCreate-Methode, überprüfen Sie, wo der' Super' genannt, sollte es die erste Zeile direkt in dieser Methode sein – blueware

Antwort

0

Dies ist normal nach Google Android Ingenieure.

Siehe https://code.google.com/p/android/issues/detail?id=198567

Dies geschieht, wenn Sie gegen eine höhere api Ebene zusammenstellen als die api Ebene eingesetzt Gerät. Die Protokolle zeigen an, dass einige der Methoden nicht verfügbar sind und die virtuelle Maschine sie durch die alternative Implementierung ersetzen wird.

Es bedeutet nur, dass Sie einen Verweis auf eine Methode haben, die auf der Plattform nicht verfügbar ist, auf der der Code derzeit ausgeführt wird.

Um Ihr Problem schreiben einen Laufzeitschalter zu lösen:

if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { 
    // You can use here an API which was added in Lollipop. 
} 
+0

Ja, ich habe diesen Link bereits ausprobiert. Ich kompiliere mit Version 24, aber wie es im Emulator und in meinem Gerät (4.1.2) nicht gut sein konnte. Bitte helfen Sie – Krish

Verwandte Themen