我正在使用phonegap CLI 3.1和XCode5。我正在尝试通过Phonegap CLI和Xcrun生成 Release模式的版本。我不想使用Phonegap Build上传mobileprovision或它们的任何过程。我想通过xcrun来分配移动权限以发布版本。

1)cordova build ios-发布

通过命令在平台“ios”上编译应用
“/Applications/MAMP/htdocs/MyTest/MyTestApp/platforms/ios/cordova/build” --release
平台“ios”已成功编译。

2)sudo xcrun -sdk iphoneos PackageApplication -v“ios/build/emulator/MyTestApp.app” -o“/Users/mymac/Desktop/Testnew/MyTestApp.ipa” --sign“iPhone发行版:名称(TEAM_ID)” -嵌入“MyTestApp_Dis.mobileprovision”

打包应用程序:“ios/build/emulator/MyTestApp.app”
参数:embed = MyTestApp_Dis.mobileprovision verbose = 1 output =/Users/mymac/Desktop/Testnew/MyTestApp.ipa sign = iPhone分发:NAME(TEAM_ID)
环境变量:
主页=/用户/mymac
SUDO_GID = 20
SDKROOT =/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk
VERSIONER_PERL_PREFER_32_BIT =否
邮件=/var/mail/root
SSH_AUTH_SOCK =/tmp/launch-zsBMC8/监听器
LANG = en_US.UTF-8
USER =根
LOGNAME =根
__CF_USER_TEXT_ENCODING = 0x0:0:0
USERNAME = root
路径=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/git/bin
SUDO_USER = mymac
shell =/bin/bash
术语= xterm-256color
SUDO_COMMAND =/usr/bin/xcrun -sdk iphoneos PackageApplication -v ios/build/emulator/MyTestApp.app -o/Users/mymac/Desktop/Testnew/MyTestApp.ipa --sign iPhone发行版:NAME(TEAM_ID)--embed MyTestApp_Dis.mobileprovision
SUDO_UID = 501
VERSIONER_PERL_VERSION = 5.12

输出目录:“/Users/mymac/Desktop/Testnew/MyTestApp.ipa”
临时目录:“/tmp/W81FhZ9VAH”(设置为冗长设置时,不会在退出时被删除)
+/bin/cp -Rp ios/build/emulator/MyTestApp.app/tmp/W81FhZ9VAH/有效负载
程序/bin/cp返回0:[]

检查原始应用

  • /usr/bin/codesign --verify -vvvv ios/build/emulator/MyTestApp.app
    程序/usr/bin/codesign返回1:[ios/build/emulator/MyTestApp.app:代码对象根本未签名
    在体系结构上:i386
    ]
    协同设计检查失败:ios/build/emulator/MyTestApp.app:代码对象根本未签名
    在体系结构中:i386

  • 完成检查原始应用

    嵌入“MyTestApp_Dis.mobileprovision”
  • /bin/rm -rf/tmp/W81FhZ9VAH/Payload/MyTestApp.app/embedded.mobileprovision
    程序/bin/rm返回0:[]
  • /bin/cp -rp MyTestApp_Dis.mobileprovision/tmp/W81FhZ9VAH/Payload/MyTestApp.app/embedded.mobileprovision
    程序/bin/cp返回0:[]
  • /usr/bin/codesign -d --entitlements/tmp/W81FhZ9VAH/entitlements_rawixGWnKhi/tmp/W81FhZ9VAH/Payload/MyTestApp.app
    程序/usr/bin/codesign返回了1:[/tmp/W81FhZ9VAH/Payload/MyTestApp.app:代码对象根本没有签名
    ]
    错误:无法从'/tmp/W81FhZ9VAH/Payload/MyTestApp.app'中读取权利
  • 最佳答案

    嗯,我遇到了类似Shashi的问题。

    从 shell 程序运行“cordova buld ios [--release]”,然后再执行“xcrun ...”时,对我来说很好。

    但是:从脚本中运行此序列时,我也收到“协同设计检查失败...”错误...

    如果我在脚本中的cordova和xcrun调用之间插入(如)“等待”循环,则该循环有效。

    所以-在我看来- Cordova 似乎还没有完全完成工作就返回了 shell (?)

    事实是,如果我将自己的脚本编写为

    #!/bin/bash
    cordova build ios --release
    sleep 5
    sh -c "xcrun ..."
    

    它为我工作。
    问题:是cordova/phonegap中的错误吗???

    关于ios - 无法生成Cordova iOS应用的发行版本,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19783931/

    10-10 10:35