— 難読化・最適化に対応する
Usage
R8を用いて、アプリを難読化・最適化する場合に、SDKのメソッドが難読化・最適化され正常に動作しない場合があります。
アプリ内メッセージを使用する場合
inappmessaging 2.8.0以上を使用している場合
aarファイル内のProGuard設定を参照したビルドが可能な場合、特に対応は不要です。
Gradleでビルドする際にはデフォルトでこの挙動になっています。
inappmessaging 2.8.0未満を使用している場合
アプリのProGuard設定に下記設定を追記して下さい。
-keepclassmembers class io.karte.android.inappmessaging.** {
@android.webkit.JavascriptInterface <methods>;
}
その他の機能のみ使用する場合
アプリ内メッセージ以外の機能では、特に難読化・最適化の影響を受けないことを確認しています。
R8ではなくProGuardを使用する場合
Android Gradle Pluginの3.5.0以降では、デフォルトで難読化ツールとして、R8を使用するようになっています。
アプリ側の何らかの事情でProGuardを使用しなくてはならない場合、SDK用の設定が必要です。
参考:設定例
-dontwarn io.karte.android.**
-keep class io.karte.android.core.library.Library
-keep class * extends io.karte.android.core.library.Library
Updated 10 months ago