Androidアプリ開発

Activityの待機と復帰
moveTaskToBack & moveTaskToFront

ActivityのライフサイクルでonDestroyが実行された状態を終了、onPauseまで実行された状態を中断と区別します。サービス起動で画面をバックグランドに移動させ、サービス終了で画面をフォアグランドに呼び戻す実装方法を紹介します
Androidアプリ開発

ポリシーに準拠する対応
Photo and Video Permissions policy

Photo and Video Permissions policyではREAD_MEDIA_IMAGES、READ_MEDIA_VIDEOの使用を制限します。Photo Pickerでスマホ本体にある画像や動画を選択する実装を紹介します
Androidアプリ開発

Android15対応
(edge-to-edgeの無効化)

Android15ではアプリのtargetSdkを35にすると、強制的にエッジツーエッジが適用され、アプリの表示領域にステータスバーとナビゲーションバーが被さって表示されます。アプリの対応として、エッジツーエッジを無効にする方法を紹介します
スポンサーリンク
Androidアプリ開発

PopupMenuの表示位置と
メニューの間隔を調整する

PopupMenuのメニューを表示する位置がリスナーを設定したオブジェクトの下側です。また、メニューのアイテムの間隔が広く、メニュー操作の対象がわかりにくい。PopupMenuの表示位置とメニューの間隔を調整する実装方法を紹介します
Androidアプリ開発

Android14対応
(非推奨のoverridePendingTransition)

overridePendingTransitionは予測型「戻る」アニメーションのサポートに伴い、Android14から非推奨です。Android14以降で非推奨となったoverridePendingTransitionに対応する実装を紹介
Androidアプリ開発

カスタムコントロールのアイコン変更

Exoplayerで音楽の再生をコントールする場合、PlayerControlViewを使用します。PlayerControlViewで音楽の再生や一時停止などを操作するための標準コントローラのアイコンを変更する方法を紹介します
Androidアプリ開発

USBシリアル通信をAndroidで実装する

AndroidのUSBシリアル通信は、USBデバイスの接続はUSBホストAPI、シリアル通信はusb-serial-for-androidを使えば、簡単に実装できます。USBシリアル通信の実装について、サンプルコードを交えて、説明します
Androidアプリ開発

USBデバイスの権限チェックと
ユーザ承認リクエスト

GPSレシーバなどのUSBデバイスを使用する場合、接続やデバイス名などのメタ情報の取得には不要ですが、アクセスには権限チェックとユーザ承認が必要です。USBデバイスのアクセスに必要な権限チェックとユーザ承認リクエストの実装を紹介します
Androidアプリ開発

数値データのリトルエンディアン変換

デバイス間の通信では数値データをリトルエンディアンで扱うことが多い。リトルエンディアンとはバイト単位に分解された数値データを最下位のバイトから順番に格納していく方式です。数値データをリトルエンディアンの文字列データに変換する方法を紹介します
Androidアプリ開発

ペアリング済みのデバイスリストを取得する

Bluetooth機器との接続には、機器固有のMACアドレスが必要です。デバイスのMACアドレスを取得する方法としては、デバイスから定期的に発信されるビーコンから取得する方法、デバイスとのペアリング情報から取得する方法などがあります
スポンサーリンク