Cordovaのエラーではないけど、VisualStudio2015のCorodvaアプリをiOS releaseでビルドして審査に出そうとすると、タイトルのエラーが出て提出できない。
ipaファイルを展開してみると、たしかにrootにicon.pngがない。config.xmlとかいろいろicon.pngを置く場所とかいろいろ試してみたけど、どうしてもrootにicon.pngがコピーされない。
とりあえずの対処法として、ipaファイルを一度展開して、icon.pngをおいて、再度パッケージ化することにした。
## Mac上で # VSからリモートビルドしたipaを用意、展開 unzip HOGE.ipa # 署名削除 rm -rf Payload/HOGE.app/_CodeSignature # icon.pngをrootに設置 cp icon.png ./Payload/HOGE.app/ # 署名 codesign -f -s "MySIGN" ./Payload/HOGE.app --entitlements ../entitlements.plist # パッケージ化 zip -qr HOGE.ipa Payload
entitlements.plistは
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>application-identifier</key> <string>PREFIX.ID</string> <key>com.apple.developer.team-identifier</key> <string>TEAMID</string> <key>get-task-allow</key> <false/> <key>keychain-access-groups</key> <array> <string>PREFIX.ID</string> </array> </dict> </plist>
参考サイト
[Appium] Ad-hoc用のipaファイルを開発者用の署名に差し替えてAppiumで使用できるようにする – Qiita
ipaファイルのProvisioningを差し替える – Qiita