Architecture Configuration


iOS内部機器に異なるCPU製品を組み込む場合は、これらの問題に対応するためにプロジェクト設定を行う必要があります.内部設備の特徴を理解する.この文章はCPU Architecture編を読んでもっと気持ちがいいです.iOS Frameworkという文章も読めます.

ARM


ARMベースCPI(Cycle Per Instruction)を搭載.最近Apple Siliconの登場に伴いRosettaが出現した.これはintel cpiで開発されたアプリケーションをarm cpi、すなわちCSICをRISC方式で翻訳するプロセスを実行する翻訳器を指す.

armv7, arm64


どちらもarmアーキテクチャです.もちろんRISCベースのプロセッサです.
  • armv7
  • 32bit architecture
  • 組み込み機器共通
  • iPhone 4 s未満(iOS 6.0未満)
  • を使用
  • armv7s
  • iPhone 5, iPhone 5C
  • arm64
  • armアーキテクチャの64ビット拡張バージョン
  • iPhone 5 sは、iPad 4以降で
  • を使用しています.
    アーキテクチャ応用装置非シールドアーム第7 iPhone 4、iP 3、iP第3、iPod第1、iP第5インチ第5、iPhone第5、iPhone第5 C、iPad第5、iPiP第5、iPiPiPiP第4世代世代世代世代世代世代世代世代世代世代世代世代世代世代世代世代世代世代世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代第4世代4代目4代目4代目4代目4代目4代目4代目7代目7代目7代目7代目7代目7代目7代目7代目7代目7代目7代目7代目7代目7代目4代目iPad Air 3 iPad Mini 564 bit、arm 64対応i 386332ビットデバイス対応シミュレータ32ビットx 86 6464ビットデバイス対応シミュレータ、Mac 64 bit
    より詳細な内容は関連リンクに入って確認できます.

    Xcode CPUアーキテクチャ設定



    まず、このオプションにアクセスする方法は、Project->Target->Build Settings->アーキテクチャです.
    はい、上記のアーキテクチャの説明では、理解する必要がある内容を2つに圧縮することができます.
  • iPhoneは機種によって異なるアーキテクチャのCPUを使用しています.
  • バージョンでは、CPUから読み込まれたバイナリファイルが生成されます.したがって、アーキテクチャに準拠したバイナリファイルを生成する必要があります.
  • デプロイする場合は、これらのすべてのデバイスに対応するためにすべてのアーキテクチャにバイナリファイルを作成する必要がありますが、開発時には実際には必要ありません.私が持っているテストデバイスのcpuアーキテクチャに対応するバイナリファイルを作成するだけでいいです.オプションはBuild Active Architectures Onlyです.

    このオプションを有効にすると、現在接続されているアプライアンスが検出され、アプライアンスのアーキテクチャバージョンのみが生成されます.シミュレータはどうですか.インテルmacの場合はx86_64アーキテクチャ、アップルシリコンmacの場合はarm64アーキテクチャを採用します.Xcode 12を基準に、現在、インテルMacとアップルシリコンが共存しており、シミュレータアーキテクチャの2つがあります.シミュレータの情報は、次のパスを参照してください.
    /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/SDKSettings.json

    従来のXcode 11ではx86_64しかなかったそうです.Apple siliconの出現に伴いmacのアーキテクチャもarmベースに変更され,両方のarchitectureが互換性に設定された.もし私がintel macを使っていたら、それを知らないうちにbild時arm64を排除しないで、私はシミュレータbild時に行きます.

    Universal App設定


    Universal Appとは、iPadとiPhoneを含むすべてのバージョンのiOS上でプロジェクトが実行されるアプリケーションです.もしあなたが以前ipadを使った経験があれば、iphoneアプリを受け取ったら、画面を増やすボタンが見えます.これは互換性モードでiphoneを実行するアプリケーションです.
    Universal Appは、iPhoneとiPadの間の異なる画面サイズを処理することを目的としています.
    Appleに必要なアプライアンス機能ここには、デバイスが提供する機能の説明がある.UIRequiredDeviceCapabilitiesの値を明確に変更する必要があります.私の目的はすべてのデバイスが使用できるようにすることですので、キー値をarmv7に指定します.特定の機能を含める必要がある場合は、AppStoreプロジェクトを受け入れないために他の機能を明確に記入する必要があります.


    の最後の部分


    この文章は容易ではない.それでも、私がやったプロジェクトがどの設備に対応するのか、どの設備にどのような特徴があるのかを知ることができます.

    Reference

  • CPU Architectures
  • ARMアーキテクチャ
  • Appleに必要なアプライアンス機能
  • iOS Devices: Releases, Firmware, Instruction Sets, Screen Sizes
  • [iOS-XCode]Universal App、armv 7、arm 64マルチデバイスレスポンス、バイナリファイル設定(CISC、RISC)
  • [Xcode]Xcode 12におけるシミュレータ構築エラーの原因と解決方法
  • UIRequiredDeviceCapabilities
  • Building a Universal macOS Binary