iOS 4のサポートを終了したい場合、影響は複数になる可能性があり、確かに一部のユーザーは、「取り戻せなかったファイルが必要」と説明したことに巻き込まれます。
いずれにせよ、アプリデータとIPAファイルをバックアップするようにユーザーに指示することは良い戦略だと思います(@benzadoによって提案されたもののように別のものを考案するかもしれませんが、あなたが提案しているものは確かに機能しますリスクを軽減するために、ユーザーがiTunesを介してアプリを更新することを決定した場合)。
私が知らない唯一のことは、あなたがそうするように彼らにどのように言うつもりかということです。たぶん、中間リリースで次のように言っています:これはiOS4の最後のリリースですか?わからない。
一方で、iOS4のサポートを本当にやめる必要があるかどうかはわかりません。
一般的なアプローチについては、この投稿をご覧ください。
新しいフレームワーク(iOS4ではなくiOS5 / 6に存在する)を追加することを考えている場合は、それらのフレームワークを弱くリンクしてから、条件付きでそれらのフレームワークのヘッダーを含めるだけです。
Twitterをサポートしたいとします。次に、条件付きでヘッダーを含めます。
#if defined(__IPHONE_5_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_5_0
#import <Twitter/Twitter.h>
#import <Accounts/Accounts.h>
#endif
また、Twitterメソッドの使用を条件付きで保護します。
Class tweeterClass = NSClassFromString(@"TWTweetComposeViewController");
if (tweeterClass != nil && [tweeterClass respondsToSelector:@selector(canSendTweet)]) {
...
}
(このコードはiOS5 / 6でのみ実行されます)。
ウィークリンクについては、ターゲットオプションに移動し、ビルドフェーズを表示すると、[フレームワークとのリンク]の下に新しいフレームワークを追加できます。右側で「オプション」オプションを選択していることだけを確認してください(図を参照)。
