我已经使用以下标志armv7 armv7s和arm64构建了一个.ipa文件。 是否有任何方法/工具可以确保.ipa确实具有64位支持?
如果应用程序二进制文件确实具有64位支持,Apple在应用程序提交期间如何发现。
答案 0 :(得分:8)
其中一个选项是使用lipo -info %path-to-executable%
确保您没有使用.app文件夹或.ipa存档的路径。
答案 1 :(得分:0)
我创建了一个脚本,它将.ipa
文件作为输入并返回应用支持的架构 -
(替换和你的)
ORIGINAL_FILE="<file path>"
FILE_NAME=$(basename $ORIGINAL_FILE)
EXPANDED_DIR="/Users/<username>/Downloads/expanded_app/$FILE_NAME"
PLIST_FILE="$APP_DIR/Info.plist"
APP_DIR="$EXPANDED_DIR/Payload/*.app"
unzip -q "$ORIGINAL_FILE" -d "$EXPANDED_DIR"
executable_file_name=$(/user/rover/PlistBuddy -c "Print CFBundleExecutable" $PLIST_FILE)
EXECUTABLE_FILE="$APP_DIR/$executable_file_name"
app_architecture_list=$(lipo -info $EXECUTABLE_FILE)
echo $app_architecture_list
现在,这个app_architecture_list
会为您提供包含armv6
或armv7
或arm64
的结果,您可以通过该结果找出答案。
注意 - 您需要PlistBuddy
。