3

私は 1 つの iPhone アプリを 6 回提出しましたが、最新/現在のバージョンの要件では、iPhone 3G はサポートされなくなりました。

私の質問:なぜこのモデルを失うのですか?

私はいくつかの発言があります:

  1. 現在、アプリは iPhone 3G をサポートしていません。いろいろ調べてみましたが、これといったニュースはありませんでした。

  2. このバージョンを提出する前に、XCode をバージョン 4.0.2 (iOS SDK 4.3) からバージョン 4.2 (iOS SDK 5) に更新しました。
    おそらく提出中に、「Apple」は私のツール(私がアプリを構築したもの)のバージョンを確認するためにバイナリをチェックしました。また、iOS 5 は iPhone 3G にインストールできないため、このサポートを失いました。

  3. 互換性テストを行うために iPhone 3G を所有しています。
    また、XCode 4.2 では、iPhone 3G でアプリをデバッグするのに問題がありました。しかし、私は解決策を見つけました:アーキテクチャarmv6を追加するだけでは不十分です。いくつかの弱いリンクを配置する必要があります。

    これらのオプション「特別な 3G」を使用してアプリを提出した場合、これらのオプションは考慮され、サポートは元に戻りますか?

    (編集を参照)

  4. 「What's new」は、Apple アカウントを変更しました: 別のアカウントでアプリを送信しました。たぶん、私が見ていない場所にいくつかのオプションがあります。


編集:おそらく重要な部分を忘れています:iOSのバージョン。

アプリを実行するための iOS の最小バージョンは iOS 3.1 です。そして、私の iPhone 3G は iOS 3.X で動作します

また、XCode 4.2 と iPhone 3G で発生したすべての問題は、iOS (3.X) のバージョンのようです。

iOS SDK 5 と iOS 3.X に問題がないことを確認するために、私のアプリは iPhone 3G のサポートを失ったのかもしれません。

しかし、iOS 3.X で動作する iPhone 3GS を使用しているユーザーがいます。

iOS 4.0 で動作する 1 台の iPhone 3GS でいくつかのテストを行いました。問題はなく、プロジェクト設定に追加するオプションもありませんでした。


ご回答有難うございます。問題は、私の XCode のバージョンである可能性があります。

私が言ったように、私はすでにアーキテクチャ armv6 を追加しました。しかし、私の iPhone 3G iOS 3.X では、これでは十分ではありません。

この設定だけで 1 台の iPhone 3G でテストできましたか?

私は〜するべきです:

  1. アーキテクチャ arm6 を追加します。
  2. ベースSDKを「最新iOS」(iOS 5.0)に設定
  3. 最小値で iOS 展開ターゲットを設定します

---それはあなたがアドバイスするものです----

  1. パラメータ "Required device capabilities" (armv6 および armv7) を info.plist から削除します。
  2. SystemConfiguration.framework を Optional として追加します (弱いリンクを作成するため)

この設定では、アプリがクラッシュします: "dyld: Symbol not found: __NSConcreteGlobalBlock"
したがって、フラグ "Other Linker Flags" も追加する必要があります。

これは私の質問の 1 つです:
これらのオプション「特別な 3G」を使用してアプリを提出した場合、これらのオプションは考慮され、サポートは元に戻りますか?

4

1 に答える 1

2

デフォルトでは、Xcode 4.2 には iPhone 3G のサポートが含まれていませんが、追加することはできます。アプリのターゲットを選択し、[ビルド設定] を選択するだけです。上部にあるアーキテクチャを「標準 (armv7)」から「その他」に変更します。ポップアップ ボックスで、既存のオプションを選択してマイナス ボタンをクリックし、プラス ボタンをクリックして「armv7」を追加し、もう一度プラスをクリックして「armv6」を追加します。armv7 は新しいチップをサポートしますが、armv6 は iPhone 3G のサポートを追加します... iOS 展開ターゲットを iOS 4.2 以前に設定する場合... 3.x での設定は問題ないはずです。明らかにiOSの新しい機能を使用しないでください。

ビルド設定の「その他の C フラグ」の下に「-mno-thumb」を追加する必要があるかもしれませんが、私の記憶が正しければ、古いアーキテクチャで自動参照カウントを使用したい場合にのみ追加された可能性があります。それでも、これは既知のバグの回避策であるためです。

于 2011-11-11T06:58:37.053 に答える