2016-07-16 8 views
15

Xcode 8 Swift 3アプリはiOS 7で正常に動作しますか?Xcode 8 Swift 3アプリはiOS 7で正常に動作しますか?

私は以下に説明するいくつかのテストを実行することを決めようとしましたが、App Storeの開発をよりよく理解しているエキスパートが、以下の質問を含む成功と失敗の理由を説明してください。


テスト1.

だから私は、Xcodeの7.3.1を開いて、スウィフト2.2でアプリを作成しました。私はiOS 7からiOS 10にアプリを展開しようとしています。

iOS 9.3 iPhoneシミュレータでアプリを実行してから、実際のiOS 7.1.2 iPhoneデバイスでアプリを実行することもできます。


試験2

次に、私は(私はスウィフト2.3またはスウィフト3. I更新のいずれかに更新するように促された同じプロジェクトを取られ、Xcodeの8ベータ2でそれをオープンしましたスウィフト2.3からスウィフト3へ)

iOSターゲットデプロイメントを7.0として手動で入力すると、iOS 10 Beta 2 iPhoneシミュレータでアプリを実行して成功します。しかし、実際のiOS 7.1.2 iPhoneデバイスでこのアプリを実行しようとしましたが、今回は成功しませんでした。以下のエラーが表示されます。私はXcodeの8ベータ2で作成し.ipaアプリのファイルをインストールしてみてくださいので、次の

Could not locate device support files

This iPhone 4S is running iOS 7.1.2 (11D257), which may not be supported by this version of Xcode.


テスト3.

:私は同じエラーでスウィフト2.3とスウィフト3でテストを繰り返し(製品>アーカイブ...)

iTunes経由でiOS 7.1.2 iPhoneデバイスに転送された.ipaアプリケーションファイルが完成した後、私はiTunesを使ってiOS 7.1.2 iPhoneデバイスに転送します。アプリを実際に起動するデバイス、今回は成功しました。


結果。 enter image description here


質問:

  • 私は、上記の表のすべてのテストの成果をどう作ることができますか?

  • 重要なのは、Swift 3でXcode 8で作成されたApp Storeを通じてアプリを配布するときに、iOS 7.1.2 iPhoneデバイスにiTunes経由で正常にインストールされたアプリが、 App Storeでダウンロードすると、すべてのiOS 7デバイスで互換性が維持されますか?

  • Xcode 7.3.1では、iOS 7からiOS 9のデバイスで、開発中にテストやデバッグを行うことができますか?

  • Xcode 8では、iOS 7デバイスを開発中にテストおよびデバッグすることはできませんが、iOS 7デバイスへのアプリケーションの展開は可能ですか?

  • スイフト3の中間段階としてのスウィフト2.3のポイントは何ですか?

+1

あなたは一度に1つの質問に自分自身を制限しようとする必要があります。 – Rob

+1

Re Swift 2.3、[What's New in Swift](https://developer.apple.com/videos/play/wwdc2016/402/)は、「Swift 3に飛び込む準備が整っていなければ、Swift 2.3は新しいSDKで動作するSwift 2.2は、Swift 3と2.3の両方でApp Storeへの投稿を受け付けますが、Swift 3に依存するXcodeには非常に重要な機能がいくつかあることに注意してください遊び場とドキュメンテーション、そして新しい機能も提供しています。 – Rob

+1

私は質問自体が投票可能であることを願っています!結果マトリックスをありがとう、本当に役立つ! –

答えて

10

私はあなたの経験的なテストからあまりにも多くの結論を引き出すことを躊躇します。具体的には、私はではなく、とすれば、iOS 7で動作することが保証されているからといって、iOS 7で動作することが保証されているからと考えています。

Appleは一般的に、とにかく1つのiOSバージョンだけをサポートすることを提案しています。また、as of May 9thのデバイスのうち、iOS 7以前を搭載しているのは5%のデバイスだけです(これは、iOS 10がリリースされるまでにさらに減少する可能性があります)。

+2

ありがとう、ロブ。 「デバイスの5%がiOS 7以前を実行しています」はまだまだ多くのデバイスです。私は、新しいiOSバージョンにアップデートできない、またはアップデートできないユーザーを、実行したいと思う多くのユーザーに利用できるようにすることを好みます。スイフト3に行って、可能であればiOS7を後にしておくという決定は、私がまだ解決していないものです。 – user4806509

+3

それは問題ありません。ちなみに、これはiOS 7を使用した5%ではありません.iOS 7以前を使用した場合は5%です。これは以前のiOSバージョンでハードウェアがスタックされている可能性があります(たとえば、iOSバージョン6以前にロックされたiPod touchがいくつかあります) 。 iOS 7にはロックされているデバイスはほとんどありません(iPhone 4などですが、3GSや4Sでは使用できません)。要するに、iOS 7の市場シェアは5%未満になる可能性があります。また、開発コストや犠牲になったアプリの機能性を犠牲にして、その重さを測る必要があります。しかし確かにあなたの呼び出しです。 – Rob

+0

Xcode 8からiOS 7でアプリケーションをデバッグするシナリオを回避するには、Swift 2.3に変換するように更新した後、Xcode 7.3.1から古いサポートファイルをシンボリックリンクすることでiOS 7デバイスに展開できます例: sudo ln -s /Applications/Xcode.7.3.1.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/7.*/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS。プラットフォーム/ DeviceSupport / – jc1001

2

Do Xcode 8 Swift 3 apps run on iOS 7 successfully?

Swift 3 iOS compatibilityを参照してください。保証されたiOS 8サポート、iOS 7について不明。Swift 2およびiOS 7のthis answerを参照してください。最後のコメントは、AppleがおそらくiOS 7をターゲットにしたくないと述べています。それがうまくいかなければ、恐らくそれは問題ではないがXcodeはいいえと言っている。

What can I make of all the testing outcomes in the table above?

私はあなたがここで何を意味するか分かりません。

Importantly, when it comes time to distributing the app through the App Store created in Xcode 8 with Swift 3, is it safe to expect that the app, which installed successfully via iTunes on an iOS 7.1.2 iPhone device, will still be compatible for all iOS 7 devices when downloaded at the App Store?

Xcodeを回避しようとしていることを期待することはおそらくありません。

Xcode 7.3.1 allows devices from iOS 7 through to iOS 9 for testing and debugging while in development?

そして? Xcode 8はそうではありません。 iOS 7からiOS 9は2つのバージョンで、iOS 8からiOS 10は2つのバージョンです。

What is the point of Swift 2.3 as an intermediate step to Swift 3?

スウィフト3はスウィフト2.2から、このような大きなジャンプであるので、あなたがまだスウィフト3に行く準備ができていない場合、彼らはスウィフト2.3を提供しています。しかし、彼らはSwift 3に行くことをお勧めします。Swift 3ではまた、いくつかの新しい機能にアクセスすることができます。

関連する問題