デバイスをPCに接続し、デバイスでEclipseを介してサービスを実行しました。ここで、電源オフと電源オンに対するサービスの動作を確認したいと思います。問題は、デバイスの電源をオフにすると、サービスが失われることです。電源をオフにしても、アプリケーションをデバイス上で永続的に保つことは可能ですか?
ありがとう。
デバイスの電源がオフになっていると、サービスは実行されません。電源が十分にないためです。ただし、デバイスに電力が供給されるとすぐにサービスを利用できるようにすることができます。メモリが不足しているときにサービスが強制終了されないように、サービスが効率的であることを確認してください。次に、放送受信機を使用してそこでキャッチします
<action android:name="android.intent.action.BOOT_COMPLETED"/>
意図。受信者から、サービスを開始するための送信とインテントを送信できます。このインテントをサービスのインテントフィルターで使用して、サービスを開始することもできます。部分的なウェイクロックを備えたPowerManagerを使用して、画面がオフのときにサービスを実行できるようにします-ただし、この機能はすべてのデバイスで機能するわけではありません-私が使用したすべてのデバイスのうち、この機能は半分で機能しますが、完全ではありません。
OSによってサービスが強制終了されないようにする場合は、サービスオブジェクトでstartForeground()API呼び出しを使用して、サービスをフォアグラウンドサービスとして実行します。