Androidアプリ開発 SAFのデフォルトフォルダを指定するEXTRA_INITIAL_URI Storage Access Framework(SAF)のデフォルトフォルダはEXTRA_INITIAL_URIで指定しますが、EXTRA_INITIAL_URIに指定するフォルダ表記を誤ると動作しません。フォルダの表記について説明します 2025.01.20 Androidアプリ開発
Androidアプリ開発 Activityの待機と復帰moveTaskToBack & moveTaskToFront ActivityのライフサイクルでonDestroyが実行された状態を終了、onPauseまで実行された状態を中断と区別します。サービス起動で画面をバックグランドに移動させ、サービス終了で画面をフォアグランドに呼び戻す実装方法を紹介します 2025.01.18 Androidアプリ開発
Androidアプリ開発 ポリシーに準拠する対応Photo and Video Permissions policy Photo and Video Permissions policyではREAD_MEDIA_IMAGES、READ_MEDIA_VIDEOの使用を制限します。Photo Pickerでスマホ本体にある画像や動画を選択する実装を紹介します 2025.01.17 Androidアプリ開発
Androidアプリ開発 PopupMenuの表示位置とメニューの間隔を調整する PopupMenuのメニューを表示する位置がリスナーを設定したオブジェクトの下側です。また、メニューのアイテムの間隔が広く、メニュー操作の対象がわかりにくい。PopupMenuの表示位置とメニューの間隔を調整する実装方法を紹介します 2024.12.12 Androidアプリ開発
Androidアプリ開発 Android14対応(非推奨のoverridePendingTransition) overridePendingTransitionは予測型「戻る」アニメーションのサポートに伴い、Android14から非推奨です。Android14以降で非推奨となったoverridePendingTransitionに対応する実装を紹介 2024.11.25 Androidアプリ開発
Androidアプリ開発 カスタムコントロールのアイコン変更 Exoplayerで音楽の再生をコントールする場合、PlayerControlViewを使用します。PlayerControlViewで音楽の再生や一時停止などを操作するための標準コントローラのアイコンを変更する方法を紹介します 2024.11.18 Androidアプリ開発
Androidアプリ開発 USBデバイスの権限チェックとユーザ承認リクエスト GPSレシーバなどのUSBデバイスを使用する場合、接続やデバイス名などのメタ情報の取得には不要ですが、アクセスには権限チェックとユーザ承認が必要です。USBデバイスのアクセスに必要な権限チェックとユーザ承認リクエストの実装を紹介します 2024.10.10 Androidアプリ開発
Androidアプリ開発 数値データのリトルエンディアン変換 デバイス間の通信では数値データをリトルエンディアンで扱うことが多い。リトルエンディアンとはバイト単位に分解された数値データを最下位のバイトから順番に格納していく方式です。数値データをリトルエンディアンの文字列データに変換する方法を紹介します 2024.10.03 Androidアプリ開発
Google Playアプリ GPS位置情報シミュレーション再生アプリ Gpssim アプリに対応していないGPSロガーの利用や位置情報を扱うアプリの開発やテストの際にNMEAフォーマットのGPSデータを疑似ロケーションすることで、GPSから位置情報を受信することなく、位置の移動をシミュレーションするサービス型アプリです 2024.07.07 Google Playアプリ
Androidアプリ開発 他のアプリのスクリーンショットを取得するMediaProjection Android5で画面に表示している内容をメディアストリームとしてキャプチャするMediaProjectionが追加されました。今回はMediaProjectionで実行中の他のアプリ画面のスクリーンショットを取得する実装を紹介します 2025.01.22 Androidアプリ開発