API24以下でNoSuchMethodError:No static method hashCode
Kotlin 1.3.30を使っていてAPI24以下の端末で java.lang.NoSuchMethodError: No static method hashCode(Z)
のエラーが出てcrashすることがあったのでその対応のメモ。
環境は以下 - Kotlin 1.3.30 - AGP 3.2.1
関連するURLは以下 https://stackoverflow.com/questions/45935788/nosuchmethoderror-java-lang-long-hashcode https://stackoverflow.com/questions/55708793/switch-to-kotlin-1-3-30-breaks-hashcode-only-on-android-api-21 https://youtrack.jetbrains.com/issue/KT-31027
- API24からJava8が使えること
- Java8からstaticなhashCode()というメソッドが生えた
- Kotlin1.3.30でJava8から生えたhashCodeメソッドを参照している
のでAPI24以下の端末でタイトルのエラーが起こってしまうと理解している。
issueにも書いてあるがKotlinのCompileOptionでjvmTarget = 1.6にすると直ると書いてあるが自分の環境では解決しなかった。
結局AGPを3.4.1に上げることで解決した。