EY-Office ブログ

今年も来ました 『 ”〜〜アプリ”はもう利用できません』、あれコンパイル出来ない⁉

約1年前に書いたブログ ”〜〜アプリ”はもう利用できません と同様に自分専用アプリWebArchivesがもう利用できませんになってしまいました。
開発ライセンスでデプロイしたアプリは有効期限が1年なので、デプロイしてから1年経つとアラートが表示され使えなくなります。

解決方法は、再度コンパイルしデプロイすることです。 早速、最新バージョンのXcodeでコンパイルしましたがエラーが発生し、戸惑ったので書いておきます。

app is no longer available Stable Diffusion(mage.space)が生成した画像を利用しました

The app ID cannot be registered to your development team.

これは、証明書(プロビジョニング・プロファイル)関連のエラーです。
以前iOS開発には有償のApple Developer Programに参加し、証明書を取得する必要がありました(ただし、現在は無料のSign in with Apple IDでも個人のiPhoneのみで使える証明書が取得できるようになりました)。

この証明書はAppleのWebサイトで管理されています。それに対し開発ツールのXcodeはローカルで動作するようになっているので、ローカルのXcodeに証明書をダウンロードする必要があります。

しかし、この証明書が曲者で、以前から何度もプロビジョニング・プロファイル(証明書)関連のエラーに出会っています。ネットを検索すると多数の記事が見つかります。今回も色々と試したたのですが、なかなか解決できませんでしたが、

StackOverflow: Xcode Error: “The app ID cannot be registered to your development team.” で解決しました。
この回答通り、ローカルに保存されている全証明書を削除し、改めて必要な証明書をダウンロードすることで解決しました。

Filebaseライブラリーがコンパイルできない

エラーメッセージをメモし忘れましたが、コンパイルするとアプリで使っているFirebaseUI for iOSのコード内でコンパイルエラーが発生していました。このアプリを作ったのは2019年です、この5年間でSwift言語のバージョンも上がっているます。
そこで、最新バージョンのFirebaseUI for iOSを使えるように、XcodeのSwift Package Managerで現在のFirebaseUI for iOSを削除し、再度FirebaseUI for iOSを追加しました。しかし、FirebaseUI for iOS内部の整合性が取れてないエラーが発生してしまいました。

今回の整合性が取れてないエラーは、下画像の設定でライブラリーのGitHubブランチをmasterに設定したところ解決しました。

Swift Package Managerのライブラリーの追加UIには、最初はGitHubブランチ設定欄が表示されていたのですが、いろいろと繰り返すうちに表示されなくなっていました。しかし上画像の画面が見つかり解決できました。XcodeのUI複雑ですね。

まとめ

開発ライセンスでデプロイしたアプリは有効期限が1年なのは今回のように面倒な事が起きますが、アプリのコードを最新状態に保てるメリットもありますね。😅

- about -

EY-Office代表取締役
・プログラマー
吉田裕美の
開発者向けブログ