iOS アプリには 2 つのバージョンがあります。iPAD 用の FooBarApp と iPhone 用の FooBarApp には、それぞれ独自のバンドル ID (iPAD アプリ用の com.foobar.fooBariPad と電話アプリ用の com.foobar.fooBar) があります。どちらも同じ機能を持っています - 検索そして同じ商品を購入。
iPhone FooBarApp の新しいバージョンを作成しました。これは現在ユニバーサル アプリであり、iPhone と iPAD の両方で実行できます。しかし、私はすでに iPAD アプリを持っているユーザーの大規模なユーザー ベースを持っています。
com.foobar.fooBariPad iPad アプリを廃止し、新しいユニバーサル アプリ バージョン com.foobar.fooBar を今すぐダウンロードするようユーザーに依頼します。これを行うために、com.foobar.fooBariPad の新しいバージョンを作成しました。これは強制的な更新であり、起動時に、アプリの新しいバージョンに更新するようにユーザーに促します。ハンドコーディングされた更新ボタンを受け入れると、アプリを更新するためにアプリストアにリダイレクトされます。
Kludgy 知っていますが、古い iPAD アプリを新しい Universal アプリに直接更新する方法がないため、これを行いました (バンドル ID が異なるため)。
残念ながら、Apple はこれを次のメッセージで拒否しました。
「デザインの序文 アプリには更新ボタンが含まれているか、アプリを更新するようにユーザーに警告しています。ユーザーの混乱を避けるために、アプリのバージョン更新では iOS の組み込みの更新メカニズムを利用する必要があります。... 次のステップ アプリから更新機能を削除してください。 "
言い換えれば、彼らはこれを強制的なアップグレードにしたいと考えています。以前の iPAD アプリを Appstore から削除することだけを考えていますが、混乱を招く可能性があります。ユーザーが古い iPad アプリから新しいユニバーサル アプリにスムーズに切り替えるよう促す、この問題に対するスマートな解決策があれば幸いです。おそらくプッシュ通知が答えでしょうか?(しかし、もしそうなら、どのように)?
以下の onnoweb の回答に従って、ダンキンドーナツがこれを実装した方法を見た友人からこれを入手しました。メッセージのみ(技術的な修正ではありません)