« サービスのライフサイクル | メイン | VirtualDisplay for API 29 »

Android

常に前面に表示するオーバーレイ

 スクリーンコードアナライザで解析中のマーカーやレーダーアニメーションを他のアプリの上に重ねて表示する基本実装。
 「サービスのライフサイクル」をベースに他のアプリの上に重ねて表示を実現。
ポイントは「サービス」の許可要件に加え

●API 23からPermissionによるユーザーの許可が必要
app/src/main/AndroidManifest.xml
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>

●API 26から使えるレイヤーは TYPE_APPLICATION_OVERLAY

 権限要求には「deprecated対応」の androidx.activity.result.ActivityResultLauncher を採用。

テンプレートEmpty Activityからの差分情報
https://github.com/remixgrjp/Display-over-other-apps/commit/e4f34d4b8e8052e74006475f6ad7caea60daaf47

コンパイル済みのAPKはこちら。ソースは github
https://github.com/remixgrjp/Display-over-other-apps

トラックバック

このエントリーのトラックバックURL:
https://www.remix.asia/cgi/mt/mt-tb.cgi/7723

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)