Kotlinを使ったAndroidアプリ開発で参考になったチュートリアルをまとめました。
Kotlinのコルーチンを使ってHTTP通信でJSONのデータを取得
Androidアプリ開発の教科書に載っているAsyncTaskが現在、非推奨になっていたため、他の方法がないかネットで検索したところ、同じ著者の方が書いた同じ内容のコルーチンを使った記事を見つけました。
https://codezine.jp/article/detail/13407
記事内に記載はありませんが、AndroidManifest.xmlにパーミッションに関するコードを追記する必要があります。
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.websarva.wings.android.testapp"> <!-- ↓これを追記 --> <uses-permission android:name="android.permisson.INTERNET"/>
背景をぼかす: BlurView
BlurViewを使った背景をぼかすチュートリアルです。背景をぼかすライブラリは、他にBlurImageViewやBlurryなどがありますが、なんとなくこれを選びました(他のライブラリもいつか試してみる予定です)。動画の通りコードを書いて、簡単に背景をぼかすことができました。
Roomを使ったデータベース接続
購入した参考書(はじめてのAndroidプログラミング、Androidアプリの教科書)にはRoomを使ったデータベース接続の方法が書いてなかったので、ネットでチュートリアルを探しました。公式のチュートリアルです。ViewModelなど色々出てきて、私にはだいぶ難しかったですが、無事Roomでデータベースに接続することができました。
https://developer.android.com/codelabs/android-room-with-a-view-kotlin#0
RecyclerViewのクリックを検知
https://qiita.com/YS-BETA/items/f54bed772d502c5c06f0
サーバーからファイルをダウンロードして共有ストレージに保存
注意: よくわかっていません。参考程度にしてください。
DownloadManagerを使用しています。isNotEmptyが赤字になったので、以下のように修正しました。
//if(grantResults.isNotEmpty && grantResults[0] == if(grantResults != null && grantResults[0] ==
また、allowScanningByMediaScanner()がdeprecatedになっていますが、放置してます。
ビルド時に、以下のようなエラーが発生しました。
kotlin-stdlib.kotlin_module: Module was compiled with an incompatible version of Kotlin. The binary version of its metadata is 1.5.1, expected version is 1.1.16.
上記のエラーメッセージで検索して調べてみたところ、build.gradle(Project)のext.kotlin_versionを1.4.32にすれば良いようでした。
buildscript { //ext.kotlin_version = "1.3.72" ext.kotlin_version = "1.4.32"
一応、これで動きました。Downloadのフォルダに保存されます。知識が身についたら、ソースコードを一度見直そうと思います。
スピナー(Spinner)の配置
はじめてのAndroidプログラミング(P255)に掲載。
アプリ内にあるJSONの読み込み
はじめてのAndroidプログラミング(P373)に掲載。
画像をSNSでシェア(SNS連携): 暗黙インテント
はじめてのAndroidプログラミング(P286)に掲載。
おわりに
参考になるチュートリアルを見つけ次第、随時更新します。