証明書の付け替え:resign
いやー、はまりましたね。受託開発していて開発時は自分の provisioning profile を使用し、納品時にお客様から受領した provisioning profile を使わなければならないというケース。Xcode でお客様から受領した provisioning profile を指定してみたものの、Archive で error になります。
署名の付け替えというキーワードで検索すると色々ヒットしました。要は、開発用に Archive しておいて、出来上がった ipa の署名をコマンドラインで付け替えろということ。ちなみに、provisioning profile を見てくれて、Bundle id とかもちゃんと変わるようです。
Xcode でやるのだとばかり思って色々試したけれども全然ダメでほんと困りましたが、ようやくできそうです。ってか、これ、わかんないよね普通。
去年も同じ罠にハマった気がしてならない・・・
===
後日談:resign は Xcode 8.3 以降では禁じられたようでコマンドラインで実行しても erroe になります。
万策尽きて、どうしようかなと思い、そういえば以前見た記事に書いてあったことを試してみる。
Build settings > code sign identify > Debug or Release とあり、ここに指定しているのが、Any iOS SDK で value は iOS Development。これを iOS Distribution に変更。そうすると build, Archive がかかるようになる。お客様よりいただいている provisioning profile は Distribution なので、それに合わせる必要があるのだということ。
これね、わかんないよね普通。
とりあえず解決したので良かったです。