Adding 64 bit support to cordova ios app using xcbuild / xcrun and xcconfig
I am working on a cord app and I was able to create an ipa from the command line using a script.
echo "" > $PROJECT_DIR/cordova/build.xcconfig
echo "CODE_SIGN_IDENTITY = iPhone Distribution: XXXXXXX" >> $PROJECT_DIR/cordova/build.xcconfig
echo "CODE_SIGN_RESOURCE_RULES_PATH = \$(SDKROOT)/ResourceRules.plist" >> $PROJECT_DIR/cordova/build.xcconfig
echo "IPHONEOS_DEPLOYMENT_TARGET = 7.0" >> $PROJECT_DIR/cordova/build.xcconfig
cordova build ios --device
xcrun \
-sdk iphoneos PackageApplication \
-v "$PRODUCT_DIR/$TARGET.app" \
-o "$OUTDIR/$TARGET.ipa" \
--embed "$PROVISONING_PROFILE" \
--sign "$IDENTITY"
This works great, but I get this warning when loading into Apple TestFlight.
Do you have any hints on this? Maybe I can add a line in .xcconfig
, which seems pretty handy!
+3
source to share
1 answer
I figured out what happened! The flag was --release
missing. Now I can build without opening Xcode!
echo "\n > patching cordova xconfig for distribution\n"
echo "" > $PROJECT_DIR/cordova/build.xcconfig
echo "CODE_SIGN_IDENTITY = $IDENTITY" >> $PROJECT_DIR/cordova/build.xcconfig
echo "CODE_SIGN_RESOURCE_RULES_PATH = \$(SDKROOT)/ResourceRules.plist" >> $PROJECT_DIR/cordova/build.xcconfig
echo "IPHONEOS_DEPLOYMENT_TARGET = 7.0" >> $PROJECT_DIR/cordova/build.xcconfig
echo "\n > cleanup $OUTDIR/$TARGET.ipa\n"
rm -vf $OUTDIR/$TARGET.ipa
echo "\n > build project\n"
cordova build ios --release --device
echo "\n > creating ipa at $OUTDIR/$TARGET.ipa\n"
cd $BASE_DIR
xcrun \
-sdk iphoneos PackageApplication \
-v "$PRODUCT_DIR/$TARGET.app" \
-o "$OUTDIR/$TARGET.ipa" \
--embed "$PROVISONING_PROFILE" \
--sign "$IDENTITY"
+5
source to share