私のアプリケーションは、 24時間365日実行する必要のあるactivities
バックグラウンドを持っています。service
Wi-Fi
私のアプリケーションは、情報を送受信するためにを介してサーバーと通信する必要があります。
問題:サーバーからアラームが送信されるたびに、アプリがフォアグラウンドで実行されているかバックグラウンドで実行されているかに関係なく、アプリを受信してポップアップし、アラームについてユーザーに知らせます。
したがって、デバイスがアクティブ状態の場合、この機能は完全に機能しますが、デバイスがスリープモードになると、1〜2分後にサーバーから切断され、通信が停止します。それを解決するために、WiFiスリープポリシーをNEVERに設定し、OnCreate()
バックグラウンドサービスの方法で部分的なロックを取得し、サービスのOnDestroy()
方法でロックを解除するコードを記述しました。その後5分または10分間、再び通信を停止します。
アプリはAndroid2.1で開発され、 Android2.3バージョンをサポートするデバイスにデプロイされます。
部分ロックがこのように動作する理由がわかりません。この問題の解決にご協力ください。
よろしく、ピックス。