[Process] kill() returned unexpected error 1が大量にでる
・Xcode11、iOS13上ででる不具合みたい。WebKitの問題みたい
・対処方法もわからず、アプリが落ちたりしないので放置することに
MapFileParser.sh: Permission denied Permission denied
・Dropbox上にiOSのプロジェクトを吐き出していたのが原因みたい
・Windowsで開発 → iOSをDropbox上に吐き出す際は注意が必要
・パーミッションを書き換えればOK
アプリケーション > ユーティリティ > ターミナル
cd ファイルのパス (わからなければ、cd[半角スペース]したあとに、MapFileParser.hをドラッグ&ドロップ)
chmod +x MapFileParser.sh
ls -l で権限の確認が可能、-rwxr-xr-xのようにxが付加されていればOK
・詳細なエラーログ
/Users/xxxxx/Library/Developer/Xcode/DerivedData/Unity-iPhone-frvinncmtangnnfajpgscpwxkgqc/Build/Intermediates.noindex/Unity-iPhone.build/ReleaseForRunning-iphoneos/Unity-iPhone.build/Script-033966F41B18B03000ECD701.sh: line 2: /Users/xxxxx/Dropbox/ios/MapFileParser.sh: Permission denied
Command PhaseScriptExecution failed with a nonzero exit code
・このエラーを直したあと、process_symbols.shでも同様のエラーがでた
こちらもcd ファイルパスをした後に、下記実行で復旧
chmod +x process_symbols.sh
・Windows→iOSをやる場合、Mac上で吐き出したほうがよいかも
66 duplicate symbols for architecture arm64
・おそらくAdMobと一緒に追加したframeworkが原因
・GoogleUtilities.frameworkなどを消してみる
おそらく消してOK → 「GoogleUtilities.framework、nanopb.framework」
Module ‘GoogleMobileAds’ not found.
・Google Mobile Ads SDK をダウンロードしてプロジェクトに追加
・追加が面倒ならUnity上で、「Assets/Plugins/iOS」にダウンロードしたSDKをおいておく
・この場合、追加したGoogleMobileAds.frameworkのCompile flagsにInspector上で -ObjC を追加する
・GoogleServiceなどを使っていると、ダウンロードした中の下記ファイルは不要っぽい
おそらく消してOK→「GoogleUtilities.framework、nanopb.framework」
「Assets/Plugins/iOS」に上記ファイルがあると、iOSプロジェクトに吐き出してエラーがでた
・広告表示含め、動作が確認できた環境では Assets > Plugins > iOSには下記の2つのframework
GoogleAppMeasurement.framework / GoogleMobileAds.framework
library not found for -lGoogleUtilities
・AdMobでCocoaPodsを使っている場合などにでる
・Unity-iPhone.xcodeprojではなく、Unity-iPhone.xcworkspaceから開く
Automatically Signについて
・iOSの場合、証明書の設定を「Automatically Sign」にすることが推奨となった
・Unity側の設定で自動化することが可能
・Unity > build > PlayerSettings > iOS > Automatically Sign にチェック
・Automatic Signing Team IDにチームIDを入れる
・チームIDの確認方法
下記URLにログイン > MemberShip > TeamID
http://developer.apple.com/account
・Unity > Preferences > External Tools > Xcode Default Settings から個別プロビジョニングプロファイルの指定も可能
libz.tdbを自動追加 / CODE_SIGN_IDENTITYをAutoにしたい
・参考URL
https://qiita.com/edo_m18/items/346439f7678218e85e69
https://mushikago.com/i/?p=7935
https://www.shibuya24.info/entry/automatic_xcode_framework
・Androidの際は必要ないので、iOSのみの設定
・Assets > Editor に下記スクリプトを入れておくと自動的にやってくれる
・PostProcessBuild.CS
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
#if UNITY_IOS using UnityEditor; using UnityEditor.Callbacks; using UnityEditor.iOS.Xcode; public static class PostProcessBuild{ [PostProcessBuild] public static void OnPostProcessBuild(BuildTarget buildTarget, string path){ string projectPath = PBXProject.GetPBXProjectPath(path); PBXProject pbxProject = new PBXProject(); pbxProject.ReadFromFile(projectPath); string target = pbxProject.TargetGuidByName("Unity-iPhone"); var tbdFile = "libz.tbd"; // CODE_SIGN_IDENTITY を Autoに設定 pbxProject.SetBuildProperty(target, "CODE_SIGN_IDENTITY", "iPhone Developer"); // ENABLE_BITCODE NO // pbxProject.SetBuildProperty(target, "ENABLE_BITCODE", "NO"); pbxProject.AddFrameworkToProject(target, tbdFile, false); pbxProject.WriteToFile(projectPath); } } #endif |
コメントを残す