ストレージのリソースは、内部メモリー、外部メモリー、クラウドの3つがあります。
外部メモリーは、主にSDカードです。
このSDカードはAndroid端末の世代が進むにつれて、扱いを変えてきました。
リソースとSDカードを主眼に置いたストレージの変遷について、まとめます。
※環境:Android Studio Narwhal | 2025.1.1 Patch 1
続きを読む
ストレージのリソースは、内部メモリー、外部メモリー、クラウドの3つがあります。
外部メモリーは、主にSDカードです。
このSDカードはAndroid端末の世代が進むにつれて、扱いを変えてきました。
リソースとSDカードを主眼に置いたストレージの変遷について、まとめます。
※環境:Android Studio Narwhal | 2025.1.1 Patch 1
続きを読む
Activityと同じライフサイクルを持たせたクラスを「ライフサイクル対応コンポーネント」と呼びます。
このコンポーネントを作成する際に、以前はアノテーション@OnLifecycleEventを付ける記述を行っていました。
現在(androidx.lifecycle:lifecycle-*:2.4.0以降)は、@OnLifecycleEventが非推奨となり、DefaultLifecycleObserverを使った記述が推奨になっています。
DefaultLifecycleObserverを使用したコンポーネントの作成方法をまとめます。
※ライフサイクル対応コンポーネントの詳細は「Lifecycleでライフサイクル対応コンポーネント作成」を参照
※androidx.lifecycle:lifecycle-*:2.4.0の詳細は「バージョン2.4」を参照
※環境:Android Studio Meerkat | 2024.3.1 Patch 1
Kotlin 2.0.0
androidx.lifecycle:lifecycle-*:2.6.2
続きを読む
アプリケーションコンポーネントの連携は、容易にアプリの機能を拡充できる、優れた仕組みです。
このコンポーネントの連携でYouTube動画を再生する場合、インテントの解決に癖があり、少々難解です。
ですので、後々、困らないように、ここへまとめます。
※環境:Android Studio Meerkat | 2024.3.1 Patch 1
Kotlin 2.0.0
続きを読む
RetrofitはRESTに準拠したWeb APIです。
このRetrofitとKotlin Serializationを使って、Webサービスへアクセスする方法を、まとめました。
サンプルはAndroidのコードラボと同じ内容です。私はコードラボが理解し難かったので、不要な部分をそぎ落として、Retrofitに的を絞って説明しています。
※環境:Android Studio Meerkat | 2024.3.1
Kotlin 2.0.0
Kotlin serialization json 1.7.1
Retrofit2 2.11.0
Coil 3.1.0
続きを読む
Kotlin serializationでJSONをパース(JSONの記述⇔クラスのオブジェクト)する場合に、一般クラスは未対応です。
例えば、データクラス(コンストラクタの引数でプロパティを指定するクラス)以外の、ユーザ定義のクラスはパース出来ません。また、ライブラリ提供のクラスもパース出来ません。
対応させるためには、そのクラスのカスタムSerializerを作成します。
そして、相互変換する方法をプログラマー側で定義します。
カスタムSerializer(ユーザ定義クラス、Handwritten版)の作成方法をまとめます。
※環境:Android Studio Meerkat | 2024.3.1
Kotlin 2.0.0
Kotlin serialization json 1.7.1
続きを読む