Skip to main content

AndroidのAPI Level33対応

毎年恒例の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
にアップデートしたら直る

https://stackoverflow.com/questions/68180736/org-gradle-api-invalidusercodeexception-querying-the-mapped-value-of-provider

・エラー3
Declare your Ad ID permission

Admob使ってれば対応不要っぽい。
https://pisuke-code.com/android-declare-ad-id-permission/

 

こうしてapi level 33対応終わりましたとさ

関連記事:

Pocket