「Unity/バージョンアップメモ」の版間の差分
(→multidexのエラーが出るとき) |
|||
行2: | 行2: | ||
unity2019.2.12f1からunity2020.1.2f1へ | unity2019.2.12f1からunity2020.1.2f1へ | ||
− | ===Component GUI Layerエラーが出るとき== | + | ===Component GUI Layerエラーが出るとき=== |
<pre> | <pre> | ||
Component GUI Layer in Main Camera for Scene unity is no longer available. | Component GUI Layer in Main Camera for Scene unity is no longer available. | ||
行11: | 行11: | ||
参考:https://baba-s.hatenablog.com/entry/2020/05/07/070100 | 参考:https://baba-s.hatenablog.com/entry/2020/05/07/070100 | ||
− | ===android.useAndroidXが設定されてないエラー=== | + | ===androidのとき=== |
+ | ====android.useAndroidXが設定されてないエラー==== | ||
以下のようなメッセージが出た場合 | 以下のようなメッセージが出た場合 | ||
<pre> | <pre> | ||
行30: | 行31: | ||
</pre> | </pre> | ||
− | ===firebase-xxxx-unity.jarがない=== | + | ====firebase-xxxx-unity.jarがない==== |
以下のようなエラーが出るとき | 以下のようなエラーが出るとき | ||
<pre> | <pre> | ||
行42: | 行43: | ||
firebaseを再度downloadして(firebase_unity_sdk_6.15.2.zip)各種unitypackageをインストールする。 | firebaseを再度downloadして(firebase_unity_sdk_6.15.2.zip)各種unitypackageをインストールする。 | ||
− | ===GoogleMobileAds周りのエラーのとき=== | + | ====GoogleMobileAds周りのエラーのとき==== |
Assets/GoogleMobileAdsを最新のGoogleMobileAds5.3.0 (https://github.com/googleads/googleads-mobile-unity/releases/tag/v5.3.0) をインポート | Assets/GoogleMobileAdsを最新のGoogleMobileAds5.3.0 (https://github.com/googleads/googleads-mobile-unity/releases/tag/v5.3.0) をインポート | ||
<pre> | <pre> | ||
行52: | 行53: | ||
ManifestProcessor.StopBuildWithMessage (System.String message) (at | ManifestProcessor.StopBuildWithMessage (System.String message) (at | ||
</pre> | </pre> | ||
− | ===multidexのエラーが出るとき=== | + | ====multidexのエラーが出るとき==== |
以下エラーが出るとき | 以下エラーが出るとき | ||
<pre> | <pre> | ||
行73: | 行74: | ||
参考:[[Unity/GoogleMobileSDK/ライブラリ自動読み込み]] [ショートカット] | 参考:[[Unity/GoogleMobileSDK/ライブラリ自動読み込み]] [ショートカット] | ||
+ | |||
+ | ====複数のBuildConfigが登録されてるエラーが出るとき==== | ||
+ | 以下のようなエラーが出るとき | ||
+ | <pre> | ||
+ | com.android.build.gradle.internal.tasks.Workers$ActionFacade | ||
+ | Type com.google.unity.BuildConfig is defined multiple times: | ||
+ | /Users/mac1/.gradle/caches/transforms-2/files-2.1/c9cf383e15a96332348d065caa0c331b/jetified-googlemobileads-unity-runtime/classes.dex, | ||
+ | Temp/gradleOut/launcher/build/intermediates/external_file_lib_dex_archives/release/out/0_jetified-unity-plugin-library.jar:classes.dex | ||
+ | </pre> | ||
+ | バージョンアップでcom.google.unity.BuildConfigの競合が起こってるので、アプリ下のTempを一旦削除すれば良い。 | ||
==unity2019.3.0f6へ== | ==unity2019.3.0f6へ== |
2020年8月22日 (土) 04:38時点における版
目次
unity2020.1.2f1へ
unity2019.2.12f1からunity2020.1.2f1へ
Component GUI Layerエラーが出るとき
Component GUI Layer in Main Camera for Scene unity is no longer available. It will be removed after you edit this GameObject and save the Scene.
MainCameraのFlareLayerをremoveするとよい。
参考:https://baba-s.hatenablog.com/entry/2020/05/07/070100
androidのとき
android.useAndroidXが設定されてないエラー
以下のようなメッセージが出た場合
* What went wrong: Could not determine the dependencies of task ':launcher:lintVitalRelease'. > This project uses AndroidX dependencies, but the 'android.useAndroidX' property is not enabled. Set this property to true in the gradle.properties file and retry. The following AndroidX dependencies are detected: androidx.versionedparcelable:versionedparcelable:1.0.0, androidx.fragment:fragment:1.0.0, androidx.slidingpanelayout:slidingpanelayout:1.0.0, androidx.core:core:1.0.0, androidx.customview:customview:1.0.0, androidx.swiperefreshlayout:swiperefreshlayout:1.0.0, androidx.interpolator:interpolator:1.0.0, androidx.loader:loader:1.0.0, androidx.drawerlayout:drawerlayout:1.0.0, androidx.viewpager:viewpager:1.0.0, androidx.collection:collection:1.0.0, androidx.localbroadcastmanager:localbroadcastmanager:1.0.0, androidx.lifecycle:lifecycle-common:2.0.0, androidx.arch.core:core-common:2.0.0, androidx.annotation:annotation:1.1.0, androidx.legacy:legacy-support-core-ui:1.0.0, androidx.lifecycle:lifecycle-livedata:2.0.0, androidx.lifecycle:lifecycle-viewmodel:2.0.0, androidx.lifecycle:lifecycle-livedata-core:2.0.0, androidx.browser:browser:1.0.0, androidx.arch.core:core-runtime:2.0.0, androidx.legacy:legacy-support-core-utils:1.0.0, androidx.documentfile:documentfile:1.0.0, androidx.cursoradapter:cursoradapter:1.0.0, androidx.lifecycle:lifecycle-runtime:2.0.0, androidx.coordinatorlayout:coordinatorlayout:1.0.0, androidx.asynclayoutinflater:asynclayoutinflater:1.0.0, androidx.print:print:1.0.0 * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
AndroidのPublisingSettingのCustomGradlePropertiesTemplateにチェックを付け、生成されたgradleTemplate.propertiesに以下を追加
Assets/Plugins/Android/gradleTemplate.properties
android.enableJetifier=true android.useAndroidX=true
firebase-xxxx-unity.jarがない
以下のようなエラーが出るとき
> Could not find firebase-analytics-unity.jar (com.google.firebase:firebase-analytics-unity:6.10.0). > Could not find firebase-app-unity.jar (com.google.firebase:firebase-app-unity:6.10.0). > Could not find firebase-auth-unity.jar (com.google.firebase:firebase-auth-unity:6.10.0). > Could not find firebase-config-unity.jar (com.google.firebase:firebase-config-unity:6.10.0). > Could not find firebase-crashlytics-unity.jar (com.google.firebase:firebase-crashlytics-unity:6.10.0). > Could not find firebase-functions-unity.jar (com.google.firebase:firebase-functions-unity:6.10.0).
firebaseを再度downloadして(firebase_unity_sdk_6.15.2.zip)各種unitypackageをインストールする。
GoogleMobileAds周りのエラーのとき
Assets/GoogleMobileAdsを最新のGoogleMobileAds5.3.0 (https://github.com/googleads/googleads-mobile-unity/releases/tag/v5.3.0) をインポート
java.lang.RuntimeException: Unable to get provider com.google.android.gms.ads.MobileAdsInitProvider: java.lang.IllegalStateException:
Assets/Plugin/Android/GoogleMobileAdsPluginを削除して、最新のGoogleMobileAds5.3.0 をimport
BuildMethodException: [GoogleMobileAds] AndroidManifest.xml is missing. Try re-importing the plugin. ManifestProcessor.StopBuildWithMessage (System.String message) (at
multidexのエラーが出るとき
以下エラーが出るとき
com.android.builder.dexing.DexArchiveMergerException: Error while merging dex archives:
以下ファイルにmultiDexEnabledを追加する
Assets/Plugins/Android/mainTemplate.gradle
android { defaultConfig { multiDexEnabled true } dependencies { implementation 'androidx.multidex:multidex:2.0.1' } }
参考:Unity/GoogleMobileSDK/ライブラリ自動読み込み [ショートカット]
複数のBuildConfigが登録されてるエラーが出るとき
以下のようなエラーが出るとき
com.android.build.gradle.internal.tasks.Workers$ActionFacade Type com.google.unity.BuildConfig is defined multiple times: /Users/mac1/.gradle/caches/transforms-2/files-2.1/c9cf383e15a96332348d065caa0c331b/jetified-googlemobileads-unity-runtime/classes.dex, Temp/gradleOut/launcher/build/intermediates/external_file_lib_dex_archives/release/out/0_jetified-unity-plugin-library.jar:classes.dex
バージョンアップでcom.google.unity.BuildConfigの競合が起こってるので、アプリ下のTempを一旦削除すれば良い。
unity2019.3.0f6へ
unity2019.2.0f1からunity2019.3.0f6へ
Assets/Plugins/Pixelplacement/iTween/iTween.cs(6083,4): error CS0619: 'GUITexture.color' is obsolete: 'GUITexture has been removed. Use UI.Image instead.'
- GUITextureが使えなくなったのでiTweenを最新へすることで直った。
- photonでもdemoでGUI系を使ってたのでdemoを削除することで直った。
参考:https://www.ikaken.com/archives/1747
unity2017.2でGUI Textは非推奨へ
以下メッセージが出たときの直し方
Component GUI Layer in Main Camera for Scene Assets/MainScene.unity is no longer available.
It will be removed after you edit this GameObject and save the Scene. UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)
- Assets/MainScene.unityを開く
- Main Cameraのinspectorを開いて、適当にプロパティを有効/無効と適当に変更する
- Assets/MainScene.unityを保存する
- Assets/MainScene.unityをクリックして、上記ログが出なければ良い。
参考:https://tech.pjin.jp/blog/2018/01/31/unity_gui-text_deprecated/