ステッカーアプリのApp ID、App ID Prefix事情

通常エクステンションを利用するアプリは、アプリとエクステンションで別々のApp IDを用意します。

ステッカーに関しては、Bandle IDが自動的に決定されるため、自分で作る必要がありません。

自動で作られるBandle ID: アプリのApp ID.StickerPackExtension

さらに、アプリに含めるProvisioning Profileも、自動生成されて利用されます。
このProvisioning Profileは、ワイルドカードApp IDのもので、無い場合は自動的に生成されて利用されており、もし自分でワイルドカードのApp IDを作っていた場合は、そのApp IDが利用されます。

ワイルドカードApp IDとは、アスタリスクが含まれているApp IDですが、この場合のワイルドカードApp IDは、アスタリスクだけのものです。

ステッカーは、アスタリスクのApp IDが実際に利用されるというわけでなく、このApp IDのPrefixだけが利用されます。

application-identifierやkeychain-access-groupsには、アプリのApp ID Prefixではなく!
ワイルドカードApp IDのPrefix.Bandle ID

のように利用されているのでした。


この仕様で、今回、大問題を発生させてしまったのであります!

App ID Prefixは、Apple Developerにユニークに割り振られるIDのようですが、現状追加や編集ができません。

いつ追加されたのか把握はしていませんが、長くApple Developerを継続している人は、複数のIDを持っているはずです。
僕は現在選択できるものが4つあります。
そもそも複数のApp ID Prefixを持っている開発者は少ないのかもしれない(?)

そして大問題となるのが、現状作成できないApp ID Prefixを持ったApp IDが、App ID一覧に存在していることです。
現在選択できる4つ以外にも、異なるApp ID Prefixが過去にあったと。

アプリを更新する際は、application-identifierが同じバイナリでないと、更新できません。
多分、公開されたとしても、一度アンインストールが必要に。

keychain-access-groupsが異なる場合は、keychain-accessでパスワードを保存していたりとか、そういったデータは引き継がれなくなりますね。

その現状作成できないApp ID Prefixを利用した、ワイルドカードApp IDを、過去に作ってしまっており、それがステッカーに利用されていました。初期の開発の頃にデバッグ用に使ってましたね。

そしてそんな諸々の認識がない状況で、App ID一覧から、不必要と思ってしまったワイルドカードApp IDを削除してしまったのでありまーす!
App ID Prefixが存在しないため、作り直せないと。

その結果ステッカーが更新できなくなりました。
いや、更新はできそうだけど、上記のように一度消してもらわないといけないのかもしれなく。

先ほどAppleさんへヘルプを投げました。
iTunes ConnectのContact USに、「Appデベロッパ 日本語サポート」が増えていたので、日本語だけのメールを送ってみました。

これは改善できるのか、、、

Appleから返信をもらえました。
内容は、keychainの指摘のみで、更新は問題ないということでしたが、実際のアップデートはまだ行っていないので、まだわかりません。
大丈夫そうかな?

スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする