データの Web API を定期的にポーリングする必要がある Android Phonegap (3.0) アプリケーションがあります。
バックグラウンドに移動しても、生き続けたいと思います。この投稿の一般的なアドバイスに従い、アプリケーションの onCreate メソッドで作成されるWakeLock
withレベルを実装しました。PARTIAL_WAKE_LOCK
pm = (PowerManager)this.getSystemService(Context.POWER_SERVICE);
wl = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, org.apache.cordova.CordovaActivity.TAG);
wl.acquire();
私にも電話がありwl.release()
ますonTerminate()
私が見た動作 (ログ付き) は、画面が暗くなってもアプリが実行され続ける (サーバー データを定期的にポーリングする) ことです。しかし、別の forgraound アプリに切り替えると、数分以内にポーリングが停止します。
更新: マニフェスト ファイルに必要なアクセス許可が設定されています
<uses-permission android:name="android.permission.WAKE_LOCK" />