「Unity/GoogleMobileAds/バージョンアップ」の版間の差分

提供: 初心者エンジニアの簡易メモ
ナビゲーションに移動 検索に移動
編集の要約なし
 
(同じ利用者による、間の31版が非表示)
1行目: 1行目:
==6系から7系へ==
[[Unity/GoogleMobileAds/バージョンアップ/5.4.0から6.1.0へ]]
具体的には、6.15.2から7.1.0へ変更したときのエラーメモ
===DllNotFoundException: FirebaseCppApp-7_1_0エラーが出るとき===
FirebaseAnalytics.unitypackageとかのファイルからインストールするのをやめて、
Window/PackageManagerのFirebaseAnalyticsとかからinstallする。


古いfirebaseなどは削除。以下辺り
[[Unity/GoogleMobileAds/バージョンアップ/firebase-6系から7系へ]]
* Assets/Editor\ Default\ Resources/Firebase
* Assets/Firebase
* Plugins/iOS
* Plugins/x86_64


===RemoteConfig更新===
[[Unity/GoogleMobileAds/バージョンアップ/ver3からver4へ]]
====staticからinstance生成形式に====
<pre>
- Task fetchTask = Firebase.RemoteConfig.FirebaseRemoteConfig.FetchAsync(new TimeSpan(0));
+ Task fetchTask = Firebase.RemoteConfig.FirebaseRemoteConfig.DefaultInstance.FetchAsync(new TimeSpan(0));
 
-  Debug.Log("version=" + Firebase.RemoteConfig.FirebaseRemoteConfig.GetValue("version").StringValue);
+ Debug.Log("version=" + Firebase.RemoteConfig.FirebaseRemoteConfig.DefaultInstance.GetValue("version").StringValue);
</pre>
 
====ActivateFetchedのメソッドが削除され使えない場合====
ActivateAsyncへ変更して修正
<pre>
- Firebase.RemoteConfig.FirebaseRemoteConfig.ActivateFetched();
+ Firebase.RemoteConfig.FirebaseRemoteConfig.DefaultInstance.ActivateAsync();
</pre>
 
==='Packages/com.google.firebase.app/Parse/Plugins/dotNet45/Unity.Compat.dll' conflicts with:エラーが出るとき===
unitypackageとPackageManagerでいれたdllが競合してると思われるので、
Assets/Parse/Pluginsにある、Unity.Compat.dllとかを削除すればよい。
 
===iosのpod updateで、"`FirebaseAnalytics` requires CocoaPods version `>= 1.10.0`, which is not satisfied by your current version, `1.9.3"エラーが出る場合===
以下実行
sudo gem update -n /usr/local/bin cocoapods
 
===iosで、"Showing Recent Messages Undefined symbol: _RequestReview"エラーが出るとき===
<pre>
Showing Recent Messages Undefined symbol: _RequestReview
</pre>
 
レビューライブラリを入れてる場合、削除されてない確認。削除されていれば追加して。replaceでビルド。
Assets/Plugins/iOS/ReviewPlugin.mm
 
===iosで"Showing Recent Messages Undefined symbol: _OBJC_CLASS_$_GKLocalPlayer"エラーが出るとき===
GameKit.frameworkをUnityFrameworkに追加して、コード修正すれば直ると書いてる。
 
手順:
#GameKit.frameworkをUnityFrameworkにドラッグで追加 (/System/Library/Frameworks/GameKit.frameworkあたりにある?)
#Build PhrasesでUnityFrameworkを選択し、Link Binary With Librarysを選択し、+を押す
#GameKit.frameworkを選択
#Pods/FirebaseAuth/FirebaseAuth/Sources/AuthProvider/GameCenter/FIRGameCenterAuthProvider.m を開き
#41行目に以下追加
<pre>
    if (completion) {
        completion(nil, [FIRAuthErrorUtils gameKitNotLinkedError]);
    }
    return;
</pre>
参考:https://github.com/firebase/quickstart-unity/issues/898
 
参考:https://github.com/facebook/facebook-sdk-for-unity/issues/504
 
===="Building for iOS, but the linked framework 'GameKit.framework' was built for Mac Catalyst."と出る場合====
追加したGameKit.frameworkのPlatformが初期状態で、MacOSだったのを無理やり、MacOS+iOSに変更するとそうなる。
 
コピー元のGameKit.frameworkが悪い可能性があるので、/System/Library/Frameworks/GameKit.frameworkあたりのを使う。
 
===Androidビルドで"output: Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8 The APKs have been extracted in the directory:"が起こるとき===
*keyがdebugになっていて、インストール端末と、合わなかったので、customのkeyにしたところ直った。
==ほか対応したこと==
 
*Androidは、ARM64対応
*Androidビルドはもともと29だったので、29へ
*以下Androidのカスタムビルドファイルをonへ
Assets/Plugins/Android/gradleTemplate.properties
Assets/Plugins/Android/mainTemplate.gradle
Assets/Plugins/Android/AndroidManifest.xml

2021年8月31日 (火) 14:38時点における最新版