5

わかりましたので、iOS アプリの自動ビルドと署名/パッケージ化をセットアップしようとしています (継続的な統合、ご存知のとおり)。テスターのプール (つまり UDID) はあまり安定していないため、プロビジョニング プロファイルは頻繁に変更される傾向があります。最新のプロファイルでビルドする (そしてよくあるキャッシュの落とし穴を避ける) ことを完全に確認するために、以前のすべてのプロファイルのビルドボックスをクリーンアップし、各ビルドの前に Apple プロビジョニング ポータルから新しいプロファイルをダウンロードしたいと考えています。最初のステップを決定論的に達成できないようです。クリーニング~/Library/MobileDevice/Provisioning Profiles/しましたが、XCode はまだどこかからプロファイルを取得していました。現在接続されているすべてのデバイスと同様に、Library ase の XCode Organizer をクリーニングしました。コマンドラインから実行する既知の方法がない限り、この手順を避ける必要があることに注意してください! それにもかかわらず、XCode は依然として喜んで署名を行っていました。必死になって、私はやったfind / -name "*.mobileprovision"そして、3 つ以上の一時的な場所でコピーを見つけました。

  • ~/Library/Developer/XCode/DerivedData/[ProjectName]-[hash]/
  • ~/Library/Developer/XCode/Archives/[date]/[Projectname].xcarchive/Products/Applications/[Projectname].app/
  • /private/var/folders/k_/[hash]/T/[UUID]/[Projectname].app/

それらをすべて削除した後、XCodeは最終的にプロファイルがないことを認め(証明書をわかりやすい「プロファイルのないアイデンティティ」としてリストするだけです)、署名に失敗しました。

クリーニングに決定論はありますか?最初の 2 つのパスを突き止めることができるかもしれませんが、2 つのランダムなシーケンスが含まれている 3 つ目のパスにはチャンスがありません。私は何か見落としてますか?から古いプロファイルを削除するだけで、新しいプロファイルを使用して XCode に依存できます~/Library/MobileDevice/Provisioning Profiles/か? 念のため、完全に新しい MacOS VM を毎回スピンオフするのは避けたいです :)

完全を期すために、XCode 4.3 と 4.5 の間のものを使用していますが、違いがあれば最新の 4.6 で同期できます。しかし、私はそれを疑います。

4

3 に答える 3

3

~/Library/Developer/XCodeフォルダ全体を削除すると、うまくいきました。

于 2014-09-16T10:06:45.757 に答える