iOS Provisioning Profileの生成時に、期限日(Expires)が1年未満の中途半端に短くなる原因と対策


はじめに

考えるとある意味当たり前なんですが、
iOSアプリ開発時に利用するプロビジョニングプロファイルの「期限日」について、
嵌まってしまったことがあったので、そのメモです。

発端

プロビジョニングプロファイルを生成した際に、
通常は、期限日(Expires date)は生成日から1年後になるはずですが、
なぜか中途半端に短い日付になっていました。

何度再生成しても頑なに固定の日付となり、なんでだろうと首をかしげました。


[2018年3月5日ごろに生成したプロビジョニングプロファイルの期限日]

原因

結論として、
プロビジョニングプロファイルの期限日は、
Production Certificate の期限日が最大の日付となるようでした。

プロビジョニングプロファイル生成時に選択していた Production Certificateの期限日が
  2018年8月4日 で、
それゆえに、プロビジョニングプロファイルを何度再生成しても期限日が
  2018年8月5日
となっていたという状態でした。

[プロビジョニングプロファイル生成時の、Certificateの選択]

対応

Production Certificate を再生成して、
新しい日付の Certificate を利用してプロビジョニングプロファイルを生成します。

# 例
[Certificates] → [Production] → [+] → [✅ In-House and Ad Hoc]

その後に、再生成したCSRを選択して、プロビジョニングプロファイルを再生成すれば、
無事期限日は1年後の日付になりました。