Androidアプリ開発 shapeの枠線(stroke)の色をグラデーションにする Viewの背景(background)を修飾するshape要素(drawable)には、ストローク線(stroke)の色をグラデーションにすることはできません。layer-list要素を使用して枠線の色をグラデーションにする方法を紹介します 2024.04.04 Androidアプリ開発
Androidアプリ開発 Spinnerで同一項目の選択を検知する Spinnerは前回選択したアイテムと同じアイテムを選択した場合、onItemSelectedのイベントが発生しません。アイテム選択時に前回と同じアイテムであっても選択を検知できるCustomSpinerを実装する方法を紹介いたします 2023.10.05 Androidアプリ開発
Androidアプリ開発 UTF-8のデータをShift_JISに変換する Androidで日本語を含むデータを出力したファイルをWidowsで読み込むと文字化けします。文字コードがAndroidがUTF-8でWidowsがShift_JISだからです。AndroidでShift_JISに変換する方法を説明します。 2023.09.04 Androidアプリ開発
Androidアプリ開発 Room(SQLite) データベースの実装 RoomはオープンソースデータベースSQLiteを抽象化レイヤとして提供するライブラリです。データベースの操作や定義、SQLの実行など、SQLiteを最大限に活用することが可能です。Roomの導入から使用方法をソースを参考に説明します 2024.03.14 Androidアプリ開発
Androidアプリ開発 アプリのリリース後にRoomのテーブルを変更する Roomのマイグレーションでは変更前テーブルのスキーマ情報が必要です。変更前テーブルのスキーマ情報がない状態でマイグレーションするとマイグレーションが失敗します。exportSchema=falseでマイグレーションする方法を紹介します 2024.03.15 Androidアプリ開発
Androidアプリ開発 Room(SQLite)のINSERTで自動採番されたシーケンスを取得する データベースのテーブルで、プライマリキーを自動採番されたシーケンスとするケースが多々あります。Roomでレコード追加(INSERT)の直後に自動採番されたプライマリーキーを取得する必要がある場合、DAOインタフェースの戻り値から取得可能です。 2022.02.03 Androidアプリ開発
Androidアプリ開発 Android14対応 (フォアグラウンドサービスタイプは必須) Android14のコア機能の変更のひとつ「フォアグラウンドサービスタイプは必須」に対応していないアプリは、フォアグラウンドサービスを起動したときにアプリが落ちます。フォアグラウンドサービスタイプは必須の対応方法について、紹介します 2023.10.10 Androidアプリ開発
Androidアプリ開発 Android12対応(Bluetooth権限) Android 12対応のアプリ開発で、Bluetoothデバイスを探す、デバイスを他のデバイスから検出可能にする、ペア設定されているBluetoothデバイスと通信する場合、ユーザー承認がないと動作しなくなりました。その対処方法を説明します 2022.03.10 Androidアプリ開発
Androidアプリ開発 非推奨のstartActivityForResultの対応 startActivityForResultを呼び出して、呼び先の結果をonActivityResultで取得する実装は非推奨となり、ActivityResultLauncherを使用してアクティビティの結果を取得する実装に変更が必要です。 2021.12.03 Androidアプリ開発
Androidアプリ開発 動画からサムネイルを作成する 動画からのサムネイルの作成方法は、サムネイルユーティリティで動画ファイルからサムネイル用のBitmapを取得し、ファイル出力します。作成対象の動画ファイルが多い場合は、処理に時間がかかるので、作成済みの動画は再作成しないなどの工夫が必要です 2023.10.05 Androidアプリ開発