読者です 読者をやめる 読者になる 読者になる

エンジニアリングにはほど遠い

iPhoneアプリとかサイトとかをつくっていくブログです。

iOS端末の中に入っているprovisioning profileに関してキャッシュ的なことが起こった

アプリのテストなどで一度アプリインストール時にprovisioning profileを端末内に入れると、そのままだと、大元のiOS dev centerでそのprovisioning profileをeditしたりして更新したとしても、古いやつがずっと使われる。

さらに、たとえ大元で新しくprovisioning profileを作って、それで同じアプリを新しくビルドしたとしても、インストール直後に古いprovisioning profileを使ってアプリ起動しようとする。

そしてさらに、(多分)古いprovisioning profileを端末上から消しても、そのまますぐに新しくビルドしたアプリを起動しようとすると古いprovisioning profileが使われる。(多分)

なので、解決法としては古いprovisioning profileを消して、いったん再起動してから、新しいprovisioning profileでビルドされたipaをインストールする。

自分は、ipaを作る際のprovisioning profileが自動的に使われると思い込んでいたので、とてもつまづいた。 起きた現象としては、

端末を登録していないprovisioning profileでアプリを立ち上げようとする
-> アプリが起動しない
-> dev cen でprovisioning profile編集し、端末を追加登録 -> ビルド&インストール
-> 起動しない
-> 違う名前で新しくprovisioning profile作成、ビルド&インストール
-> 起動しない
-> 端末内provisioning profile消去 & インストール
-> 起動しない
-> 端末内provisioning profile消去 & 再起動 & インストール
-> 起動

結論: provisioning profile という言葉が長くて使いづらい

いや〜、思い込みは良くない。
しかし、端末内のやつを消して再起動しなければ古いやつが使われるとは思っていなかった。

何か認識違いなどしてるかもしれないんでその場合つっこんでもらえるとありがたいです。