Unity3DゲームをAndroidで公開していますが、これまでのところうまくいきました。ただし、Android Vitals Dashboardは多くのクラッシュを報告しています。詳細は次のとおりです。
By Android version: Android 9 4500 100.0%
スタックトレース:
Java.lang.Error: FATAL EXCEPTION [Thread-360]
Unity version : 2017.3.1p3
Device model : Google Pixel
Device fingerprint: google/sailfish/sailfish:9/PQ2A.190305.002/5240760:user/release-keys
Caused by
at lt.b (com.google.Android.gms.policy_ads_fdr_dynamite@[email protected]:2)
at ls.a (com.google.Android.gms.policy_ads_fdr_dynamite@[email protected]:1)
at lu.a (com.google.Android.gms.policy_ads_fdr_dynamite@[email protected]:18)
at com.google.Android.gms.ads.internal.util.ar.a (com.google.Android.gms.policy_ads_fdr_dynamite@[email protected]:10)
at kx.a (com.google.Android.gms.policy_ads_fdr_dynamite@[email protected]:7)
at kx.run (com.google.Android.gms.policy_ads_fdr_dynamite@[email protected]:2)
Caused by: Java.lang.ClassNotFoundException:
at dalvik.system.BaseDexClassLoader.findClass (BaseDexClassLoader.Java:134)
at Java.lang.ClassLoader.loadClass (ClassLoader.Java:379)
at ac.loadClass (com.google.Android.gms.dynamite_dynamiteloader@[email protected] (100400-239467275):4)
at Java.lang.ClassLoader.loadClass (ClassLoader.Java:312)
私のAndroidResolverDependencies.xml
ファイル:
<dependencies>
<packages>
<package>com.Android.support:customtabs:[26.0.0, 27.2.0[</package>
<package>com.Android.support:support-v4:[26.0.0, 27.2.0[</package>
<package>com.google.Android.gms:play-services-ads:17.2.0</package>
<package>com.google.Android.gms:play-services-analytics:11.8.0</package>
<package>com.google.Android.gms:play-services-base:[10.2.1, 12.1.0[</package>
<package>com.google.Android.gms:play-services-location:[10.2.1, 12.1.0[</package>
<package>com.google.firebase:firebase-messaging:[10.2.1, 12.1.0[</package>
</packages>
<files>
<file>Assets/Plugins/Android/android.Arch.core.common-1.1.0.jar</file>
<file>Assets/Plugins/Android/android.Arch.core.runtime-1.1.0.aar</file>
<file>Assets/Plugins/Android/android.Arch.lifecycle.common-1.1.0.jar</file>
<file>Assets/Plugins/Android/android.Arch.lifecycle.livedata-core-1.1.0.aar</file>
<file>Assets/Plugins/Android/android.Arch.lifecycle.runtime-1.1.0.aar</file>
<file>Assets/Plugins/Android/android.Arch.lifecycle.viewmodel-1.1.0.aar</file>
<file>Assets/Plugins/Android/com.Android.support.customtabs-27.1.1.aar</file>
<file>Assets/Plugins/Android/com.Android.support.support-annotations-27.1.1.jar</file>
<file>Assets/Plugins/Android/com.Android.support.support-compat-27.1.1.aar</file>
<file>Assets/Plugins/Android/com.Android.support.support-core-ui-27.1.1.aar</file>
<file>Assets/Plugins/Android/com.Android.support.support-core-utils-27.1.1.aar</file>
<file>Assets/Plugins/Android/com.Android.support.support-fragment-27.1.1.aar</file>
<file>Assets/Plugins/Android/com.Android.support.support-media-compat-27.1.1.aar</file>
<file>Assets/Plugins/Android/com.Android.support.support-v4-27.1.1.aar</file>
<file>Assets/Plugins/Android/com.google.Android.gms.play-services-ads-17.2.0.aar</file>
<file>Assets/Plugins/Android/com.google.Android.gms.play-services-ads-base-17.2.0.aar</file>
<file>Assets/Plugins/Android/com.google.Android.gms.play-services-ads-identifier-16.0.0.aar</file>
<file>Assets/Plugins/Android/com.google.Android.gms.play-services-ads-lite-17.2.0.aar</file>
<file>Assets/Plugins/Android/com.google.Android.gms.play-services-analytics-16.0.8.aar</file>
<file>Assets/Plugins/Android/com.google.Android.gms.play-services-analytics-impl-16.0.8.aar</file>
<file>Assets/Plugins/Android/com.google.Android.gms.play-services-base-16.1.0.aar</file>
<file>Assets/Plugins/Android/com.google.Android.gms.play-services-basement-16.2.0.aar</file>
<file>Assets/Plugins/Android/com.google.Android.gms.play-services-gass-17.2.0.aar</file>
<file>Assets/Plugins/Android/com.google.Android.gms.play-services-location-16.0.0.aar</file>
<file>Assets/Plugins/Android/com.google.Android.gms.play-services-measurement-base-16.3.0.aar</file>
<file>Assets/Plugins/Android/com.google.Android.gms.play-services-measurement-sdk-api-16.3.0.aar</file>
<file>Assets/Plugins/Android/com.google.Android.gms.play-services-places-placereport-16.0.0.aar</file>
<file>Assets/Plugins/Android/com.google.Android.gms.play-services-stats-16.0.1.aar</file>
<file>Assets/Plugins/Android/com.google.Android.gms.play-services-tagmanager-v4-impl-16.0.8.aar</file>
<file>Assets/Plugins/Android/com.google.Android.gms.play-services-tasks-16.0.1.aar</file>
<file>Assets/Plugins/Android/com.google.auto.value.auto-value-annotations-1.6.jar</file>
<file>Assets/Plugins/Android/com.google.firebase.firebase-common-16.1.0.aar</file>
<file>Assets/Plugins/Android/com.google.firebase.firebase-iid-17.1.2.aar</file>
<file>Assets/Plugins/Android/com.google.firebase.firebase-iid-interop-16.0.1.aar</file>
<file>Assets/Plugins/Android/com.google.firebase.firebase-measurement-connector-17.0.1.aar</file>
<file>Assets/Plugins/Android/com.google.firebase.firebase-messaging-17.6.0.aar</file>
</files>
</dependencies>
Target API level: 28
Minimum API level: 16
Google AdMobのディスカッショングループ で同様のスレッドを見て、以下をAndroidManifest.xml
ファイルに追加するよう提案しました。
<uses-library Android:name="org.Apache.http.legacy" Android:required="false" />
しかしながら:
uses-library
宣言により、Google Playのより少数のユーザーが利用できるため、アプリのインストール数が制限されると思います。のとおり動作の変更:APIレベル28 +をターゲットとするアプリ
Apache HTTPクライアントの廃止
Android 6.0では、Apache HTTPクライアントのサポートを削除しました。Android 9以降、そのライブラリはbootclasspathから削除され、デフォルトです。ApacheHTTPクライアントを引き続き使用するには、Android 9以上をターゲットとするアプリで、
AndroidManifest.xml
:
<uses-library Android:name="org.Apache.http.legacy" Android:required="false"/>
注:Android:required = "false"属性は、最低SDKが23以下のアプリに必要です。 24を超えると、org.Apache.http.legacyライブラリは使用できません。 (これらのデバイスでは、Apache HTTPクラスがbootclasspathで利用可能です。)
ランタイムApacheライブラリを使用する代わりに、アプリはorg.Apache.httpライブラリの独自のバージョンをAPKにバンドルできます。これを行う場合、ランタイムで提供されるクラスとのクラス互換性の問題を回避するために、Jar Jarなどのユーティリティを使用してライブラリを再パッケージする必要があります。