2016-10-23 11 views
0

エミュレータ(5.1)と携帯電話(4.1.2)では正常に動作していますが、開かれている間にブルーストーン(4.4.2)と「残念なことにApp stopped」でクラッシュします実際の携帯電話では4.1より高いAndroidアプリが上位バージョンで動作していません

私はBluestacksで実行中にこれを以下のエラーにしています。変更されたminsdkバージョンとappcompactオプションを試してみました。

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 

本当にありがとうございます。

+0

これが問題を維持することが容易になるだろう、あなたのアプリが閉じているコードを投稿してください。 – blueware

+0

オープニング時に閉じるだけです。例外がないlogcat – Krish

+1

あなたの 'MusicPlayerMainActivity'クラスのonCreateメソッドをチェックし、' super'メソッドが呼び出されているか確認してください。それはそのメソッドの最初の行であるべきです – blueware

答えて

0

これはGoogleのAndroidエンジニアによれば正常です。

はあなたが展開され、デバイスAPIレベルよりも高いAPIレベルに対してコンパイル時にこれが起こるhttps://code.google.com/p/android/issues/detail?id=198567

を参照してください。ログは、メソッドのいくつかが利用できず、仮想マシンがそれらを代替実装に置き換えることを示しています。

これは、コードを実行しているプラ​​ットフォームでは利用できないメソッドへの参照があることを意味します。あなたの問題を解決するために

は、ランタイムスイッチを書く:

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

はい、私はすでにそのリンクを試みました。私はバージョン24を使用してコンパイルしていますが、エミュレータと私のデバイス(4.1.2)でうまくいかなかったのです。助けてください – Krish

関連する問題