私のAndroidアプリは以下のようなクラッシュレポートを得た。(非常にまれ)java.lang.RuntimeException: WakeLock under-locked C2DM_LIB同様WakeLockの下でロックGCM_LIB
java.lang.RuntimeException: WakeLock under-locked GCM_LIB
at android.os.PowerManager$WakeLock.release(PowerManager.java:325)
at android.os.PowerManager$WakeLock.release(PowerManager.java:300)
at com.google.android.gcm.GCMBaseIntentService.onHandleIntent(GCMBaseIntentService.java:252)
、私は〜キャッチまたは使用isHeld()
を試みることができるが、私はありませんよこれが最善の解決策であることを確かめ、なぜこれが起こっているのかを知りたい。
一部の推測では、BroadcastReceiverとServiceが異なるプロセスであることがあります。 はhttp://groups.google.com/group/cw-android/browse_thread/thread/9716bc101ce72fb4です。
これは可能ですか?私はアンドロイドを使用したことはありません:マニフェストでのプロセスなので、BroadcastReceiverとサービスは同じ(メイン)プロセスになければなりませんか?
wakelockの取得にはacquire(timeout)メソッドを使用していますか? – edoardotognoni
複製されています:http://stackoverflow.com/a/12142013/450148 –