2

「xcodebuild」によって、Today 拡張機能内で Xcode プロジェクトをビルドする必要があります。メイン ターゲットのバンドルは com.myapp であり、拡張機能のバンドル ID は com.myapp.todayextension です。両方のバンドル ID を xcodebuild のパラメーターとして渡したい: xcode プロジェクトのバンドル ID をカスタム環境変数 (例: ${MAIN_TARGET_BUNDLEID} と ${EXTENSION_BUNDLEID}) で置き換えようとしましたが、xcodebuild は失敗します。xcodebuild コマンドの正しい構文を教えてください。ありがとう。

4

2 に答える 2

0

遅すぎるよりはましです。タブで環境変数を直接使用することはできません。タブに移動してから、環境変数に設定Generalする必要があります。Build SettingsProduct Bundle Identifier$(PRODUCT_NAME)

別のアプローチについては、以下を参照してください。

親プロジェクトによって設定されたプレフィックスをロードするには?

  1. ファイルを作成し.xcconfigます (例のような内容で)。
  2. .xcconfigプロジェクト設定のInfoタブ(ターゲットのタブではありません)でファイルを設定しInfoます。
  3. ターゲットのBuild Settingsタブで、PRODUCT_BUNDLE_IDENTIFIERが太字でないことを確認します (クリックして を押しますdelete)。

ただし、Podfileユーザーは以下も参照する必要があります: How to make Xcode use multiple xcconfig files?

私のextension.xcconfigファイル(MyApp/MyLib/MyExtensionディレクトリにある)は次のようになります。

// Below loads `MyApp/config/mylib.xcconfig` file.
#include "../../config/mylib.xcconfig"

PRODUCT_BUNDLE_IDENTIFIER = $(MYLIB_BUNDLE_PREFIX).$(PRODUCT_NAME)

次の点に注意してください。

  1. いくつかの環境をプレフィックスとして使用したいのですが、上記ではPRODUCT_NAMEサフィックスとして使用しています (必要に応じて編集するだけです)。
  2. mylib.xcconfigファイルは設定され、ファイルのディレクトリのMYLIB_BUNDLE_PREFIX外にありMyLib.xcodeprojます(親プロジェクトのディレクトリにもあります。ユーザーがそこに作成する必要があることをconfigMyLib で説明しています)。README.md
  3. そこで、私の#includeアプローチを示すことに加えて、環境変数の使用を紹介しようとします。
于 2021-09-01T03:58:34.757 に答える