Xcode 6.xでは、CocoaTouch Frameworkテンプレートを使用してフレームワークライブラリを構築できます。Xcodeは、構築時に.frameworkを作成します。これはすばらしいことです。私たちのフレームワークではiOS7.1以降をサポートしたいので、(フレームワークの)DeploymentTargetには7.1を指定しました。ビルドすると、「埋め込みdylibs/frameworksはiOS8以降でのみ実行されます」という警告が表示されます。それ以来、iOS 7.1で実行する限り、この警告は正常に実行されるため無視できるという件に関するブログ投稿をいくつか読んでいます(確認のためにテストする必要があります)。私が懸念しているのは、AppStoreでAppleによってアプリが拒否される可能性がある」というStack Overflowの投稿を読んだことです(参照: Xcode6および組み込みフレームワークはiOS8でのみサポートされています) )
Xcodeでアプリが[一般]> [埋め込みライブラリ]でリンクしている場合にのみ適用されますか?
お客様にフレームワークにリンクしてもらいたい方法は次のとおりです。
App StoreがCocoaTouchフレームワークを使用し、7.xiOSをサポートするアプリを拒否する条件を理解する必要があります。
フレームワークのタイプをStaticに変更しても、アプリは拒否されません。私の答えを参照してください ここ 。
アプリがフレームワークを正しく処理している限り、問題はないと思います。ココアポッドと混ぜるのは難しいかもしれませんが、正直なところ、それに取り組む最善の方法がわかりません。
しかし、私が理解していることから、アプリがiOS 7.X-> 8.Xをサポートし、組み込みのcocoa touchフレームワークを使用している場合、アプリが7.Xでクラッシュしないことを確認するための互換性チェックがある限り、アプリが拒否される理由は何もありません。
次の構成で最新のコードを実行してみました。
iOS 8+ — iPhone 5s iOS 7.1.2 — iPhone 4 iOS 6.1.3 — iPad 4
アプリは3つのデバイスすべてで正常に動作していますが、コンパイル中にXcodeに警告が表示されます。 「組み込みdylibs /フレームワークはiOS8以降でのみ実行されます」
また、アプリストアに送信するためにアプリをアーカイブしようとしましたが、うまくいきました。
また、Apple開発者がこれをバグだと述べたリンクを見つけました: https://devforums.Apple.com/message/999579#999579