毎年恒例のAPI Level33対応を実施しました。
その内容
・Admob
20.5.0から21.2.0にあげた。
以下の差分の修正
- override fun onAdFailedToLoad(adError: LoadAdError?) { + override fun onAdFailedToLoad(adError: LoadAdError) {
・Handler
‘constructor Handler()’ is deprecated. Deprecated in Java
Handler()
を以下に変更
Handler(Looper.getMainLooper())
https://tech.naturalmindo.com/notwork_android_handler/
・onBackButton
onBackPressed() deprecated
onBackPressedDispatcherに書き換える
https://stackoverflow.com/questions/72634225/onbackpressed-deprecated-what-is-the-alternative
・エラー1
Problem duplicate class androidx.lifecycle.viewmodel found in modules
appcompactとは別にviewmodelのみのパッケージを設定した
https://stackoverflow.com/questions/69817925/problem-duplicate-class-androidx-lifecycle-viewmodel-found-in-modules
・エラー2
Querying the mapped value of provider(interface java.util.Set) before task
com.google.gms:google-services to version 4.3.14
にアップデートしたら直る
・エラー3
Declare your Ad ID permission
Admob使ってれば対応不要っぽい。
https://pisuke-code.com/android-declare-ad-id-permission/
こうしてapi level 33対応終わりましたとさ