問題タブ [android-8.0-oreo]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - Android O、バックグラウンド サービスが 30 分以上実行されています。なんで?
FusedLocationProvider API を使用して、いくつかのジオフェンスを PendingIntent に登録しています。アプリが開始されると (この動作をトリガーするためにアプリが手動で強制終了されます)、Geofence イベントを介して、バックグラウンド サービスを開始して何らかの作業を行います。
このサービスでは、実行時間の長いタスクを実行するために別のバックグラウンド スレッドを作成し、タスクが確実に完了するようにウェイクロックを取得します。サービスは長時間 (30 ~ 50 分) 実行され続けますが、実行されるべきではありません。Android Oの最近の変更に関する私の理解によると、ホワイトリストに登録して長時間実行し続ける必要はありません。
それは望ましい動作ですか、それともアプリを起動する PendingIntents の何らかのバグであり、それらのインテントが通知用 (つまり、ユーザーが見ることができるもの) ではないにもかかわらず、ホワイトリストに登録されているように扱われます。
または、これらのインテントは、「SMS/MMS メッセージなどのブロードキャストを受信する」というカテゴリに分類されます。ドキュメントでここに記載されているように
android - Android O (API 26) プレビュー エミュレーターが起動しない
Android Studio 3.0 Canary 1 プレビューをダウンロードし、AVD マネージャーを使用して Android O x86 システム イメージをダウンロードしました。Pixel フォンをハードウェアとして使用して、ウィザードで AVD をセットアップしたとき。エミュレーターを起動すると、ブート画面で永遠にハングアップします。