Androidアプリ開発 浮動小数点演算の誤差対応BigDecimal 小数点以下の数値を含む演算での数値は2進数で表現し、演算します。2進数で表現できない数値は近似値で扱われ、これが誤差が生じる原因です。今回はBigDecimalを使用して、有効桁数の範囲で誤差が発生しない演算の実装について説明します 2025.01.27 Androidアプリ開発
Androidアプリ開発 TextToSpeechで音声案内を実装する TextToSpeech は、テキストから音声合成して、再生や音声ファイルを作成できるライブラリです。画面上に通知メッセージをテキスト出力する感覚で、テキストを指定して音声で案内することが可能となります。実用的な音声案内の実装を説明します 2023.08.28 Androidアプリ開発
Androidアプリ開発 スクリーンショットを取得して、SNSに投稿する スマホのカメラで撮影した画像をSNSに投稿する、SNSの一般的な使い方です。アプリの機能として、現在表示している画面のスクリーンショットを取得して、取得した画像を、直接SNSに投稿する機能の実装方法について、紹介します 2023.04.15 Androidアプリ開発
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アプリ開発 Android15対応(edge-to-edgeの対応) Android15ではアプリのtargetSdkを35にすると、強制的にエッジツーエッジが適用され、アプリの表示領域にステータスバーとナビゲーションバーが被さって表示されます。アプリの対応として、エッジツーエッジを無効にする方法を紹介します 2025.01.16 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アプリ開発