2

常に実行されるプロセスのように、アプリをバックグラウンドで実行したいと考えています。

2 分ごとに GPS の位置情報 (経度、緯度) を更新し、その情報をメソッドで使用するために必要です。

そのためには、電話がスリープ状態のとき、またはアプリの UI にないときにアプリを実行する必要があります。つまり、アプリを常に実行する必要があります。

私はそれを作る方法があると確信しています、とにかく答えてくれてありがとう:)

4

2 に答える 2

1

このようなものがありますが、いくつかの部分で構成されています。

まず、コードを実行 (およびマニフェストに登録) する必要がありますService

また、アクションによって通知され、そのメソッドがサービスを開始するandroid.permission.RECEIVE_BOOT_COMPLETEDを作成して登録できるように、おそらくリクエストすることもできます。BroadcastReceiverandroid.intent.action.BOOT_COMPLETEDonReceive

私たちの場合、サービスが実行されていることを確認するためにサービスを突くフロントエンド アクティビティもありますが、これがまだ必要かどうかを確認してからしばらく経ちました。

私たちのサービスはほとんど空で、onCreateすぐHandlerに「ティック」を管理するカスタムを呼び出します。これは、実行する作業がHandlerある場合に を起動して起動Runnableしますが、これは私のコードがあなたのものから分岐している場所です。私たちのケースでは、サービスが「時を刻む」とき (通常は 1 分ごと) にのみ GPS 位置の更新を試み、やるべき作業があります。通常、クライアントごとに 1 日あたり数十の操作しか実行しないため、バッテリーの使用量にどのように影響するかについては、実際にはアドバイスできません.

于 2012-10-12T08:28:12.033 に答える