アプリをFacebookチームに送信して、開いているグラフをさらに確認するために、シミュレータービルドを作成する必要があります。
彼らはそれをここに作成するための指示があります facebook instruction
しかし、私はココアポッドを使用しており、このビルドを作成できません。毎回エラーが出ます。
xcodebuild -Arch i386 -sdk iphonesimulator{version} -workspace [projectName].xcworkspace -scheme [projectName]
手順に従ってください ここをクリック
。Zipファイルを作成するもう1つの簡単な方法です
ステップ4:your_app_name-jkfksdfhskdhfksdh >> Build >> Products >> Debug-iphonesimulator
ステップ5:2つのファイルが表示されます。1つはyour_app_name.app(丸めのアイコンと1つのクロスラインのようなアイコン)で、2番目のファイルはyour_app_name.app.dSYMです。
同じ問題が発生したため、ビルド設定で「有効なアーキテクチャ」に「i386」を追加することにより、両方のエラーで@beanのエラーを修正しました。 (私のアプリターゲット、ポッドターゲット、およびすべてのポッドを個別に)
私の完全なビルドコマンドは:
xcodebuild -workspace [projectName].xcworkspace -scheme [schemeName] -Arch i386 -sdk=iphonesimulator7.1
ビルドを完了することはできますが、大量の警告が表示されます。
warning: no rule to process file '[any .m file]' of type sourcecode.c.objc for architecture i386
私はこれを修正する方法がわかりません、.appファイルは、facebookチュートリアルがそうあるべき場所(「{projectDir}の代わりに「〜/ Library/Developer/Xcode/DerivedData/..」にあります」ではなく作成されます/ build/... ")
今、2つの質問が残っています。
1.)どうすればテストできますか、この.appファイルは機能します(ダブルクリックすると、ファイルが破損していることがわかります)。
2.)(なぜ)シミュレーターを使用してXcode内からアプリをビルドし、Xcodeが作成した.appファイルを送信するだけでよいのですか?
私は同じ船に乗っていて、これに苦労しています!
コマンドラインの引数に次のコードを追加することで、ビルドを機能させることができました。
-workspace [Name.xcworkspace] -Scheme [NameOfScheme]
また、Library not found for -lPods
でビルドに失敗したため、スキームを編集してポッドターゲットを明示的に追加する必要がありました。
Facebookは、シミュレーターを作成する方法のガイドラインを更新しました( link )
Xcode iPhone 5シミュレーターでアプリを実行します。これにより、XcodeのDerivedDataキャッシュにシミュレータビルドが自動的に作成されます。
実行:ditto -ck --sequesterRsrc --keepParent
ls -1 -d -t ~/Library/Developer/Xcode/DerivedData/*/Build/Products/*-iphonesimulator/*.app | head -n 1
path/to/YourApp.Zipこれにより、シミュレータービルドが自動的に圧縮されます。Ios-simユーティリティのシミュレータ用コマンドラインアプリランチャーを使用して、シミュレータのビルドを確認できます。
YourApp.Zipを送信します。
〜/ Library/Developer/Xcode/DerivedData // Build/Products /-iphonesimulator/XXXX.appに移動するのは簡単です=コピーしますXXXX.appそこからデスクトップにコピーします。右クリックして圧縮を選択します。アプリのZipファイルになります。fBに送信してください
私のような@Pradip Vanpariaのソリューションで失敗した開発者はこれでうまくいきます:
xcodebuild -workspace {project name}.xcworkspace -scheme {project name} -Arch i386 -sdk iphonesimulator9.3
そして私は次のコマンドでiphonesimulator9.3
を見つけました:
xcodebuild -showsdks
ちょうど「コピー/貼り付け」の方法:
ditto -ck --sequesterRsrc --keepParent `ls -1 -d -t ~/Library/Developer/Xcode/DerivedData/*/Build/Products/*-iphonesimulator/*.app | head -n 1` MyApp.Zip