【问题标题】:Phonegap local builds fail with media pluginPhonegap 本地构建因媒体插件而失败
【发布时间】:2014-04-15 10:42:47
【问题描述】:
  1. 创建新项目
  2. 为 iOS 构建:成功
  3. 添加媒体插件
  4. 为 iOS 构建:失败

以下构建命令失败: CompileC build/HelloWorld.build/Debug-iphonesimulator/HelloWorld.build/Objects-normal/i386/CDVSound.o HelloWorld/Plugins/org.apache.cordova.media/CDVSound.m normal i386 Objective-c com.apple.compilers。 llvm.clang.1_0.compiler (1 次失败) [错误] /Projects/Code/hello/platforms/ios/cordova/build:命令失败,退出代码为 65

这是命令列表

phonegap create hello
cd hello
phonegap build ios   # WORKS
phonegap local plugin add https://git-wip-us.apache.org/repos/asf/cordova-plugin-media.git
phonegap build ios   # FAILS

cordova 也会发生同样的情况,如果我使用 sudo。

【问题讨论】:

  • 你在做安卓的时候有这个问题吗?我尝试使用 Android 和 Cordova 3.4.0-0.1.3 没有任何问题。奇怪的是,iOS 版本的媒体插件需要 File 插件,而 Android 版本不需要。此外FWIW你可以做cordova插件添加org.apache.cordova.media而不是每次都输入git url。例如,您可以通过键入 cordova plugin search media 来找到这些名称。 (如果您使用 pg,请将“cordova”替换为“phonegap”。)

标签: ios cordova


【解决方案1】:

这是我不久前遇到的事情。如果您不是 iOS 开发人员,但负责构建 iOS 应用程序,您可能会遇到这种情况。这个特殊的退出代码很有趣,因为 xcodebuild 不会告诉您问题所在。

除了使用 Xcode IDE 构建应用之外,您还可以使用命令行实用程序 xcodebuild。假设代码本身编译得很好,这个工具会告诉你,例如,你是否缺少配置文件或其他东西。

在我的例子中,xcodebuild 无法访问我正在使用的证书。 所以……这里有一些事情需要检查:

  • 确保您已在钥匙串中安装了最新的证书
  • 删除过期证书
  • 授予对 xcode 的访问权限以使用您的证书(或允许所有程序使用该证书)
  • 确保您已安装最新的配置文件
  • 删除过期 配置文件

另一种选择....

使用https://build.phonegap.com,它将为您构建应用程序并生成您的 .ipa 和 .apk 文件。 1 个项目是免费的(如果您有多个项目,只需删除您的项目,然后重新上传)。只需创建一个帐户,上传您的证书,然后上传您的 www 文件夹。

如果对你有帮助,请点赞!

【讨论】:

  • 在没有媒体插件的情况下,该项目正在构建中。
  • 您使用的是哪个版本的 PhoneGap?您可能需要使用cordova
  • phonegap 3.4.0-0.19.7,科尔多瓦 3.4.0-0.1.3。两者都发生,sudo 或不 sudo。我只用cordova从头开始制作一个项目,但更想知道为什么phonegap与媒体失败。
  • 他们老实说从 phonegap 到 codorva 进行了可怕的过渡,太可怕了!这只是我的看法。这是他们关于升级到 3.0+ 的博客文章phonegap.com/blog/2013/10/17/phonegap-310-release 安装cordova CLI 可能会解决您的问题。
  • 好的,我可以确认纯科尔多瓦也失败了。
【解决方案2】:

在您的项目中添加cordova插件时尝试添加sudo。

sudo cordova plugin add https://github.com/apache/cordova-plugin-media

【讨论】:

    【解决方案3】:

    我在PhoneGap Google group得到了解决方案

    解决方案是也添加文件插件。奇怪的是,这些依赖项没有被提及,但它确实有效。我想我们需要随机尝试插件的组合,直到有效果为止。

    错误记录在这里:https://issues.apache.org/jira/browse/CB-6225

    看起来你必须先添加文件插件,然后是媒体,顺序很重要。

    【讨论】:

      【解决方案4】:

      我通过完全删除平台下的iOS文件夹来解决问题,然后重新运行phonegap build ios。

      【讨论】:

      • 这同样适用于我......虽然很奇怪!感谢上帝堆栈溢出!如果没有它,我们会在哪里?
      【解决方案5】:

      添加对话框插件后,我收到了退出代码 65。在这里尝试了一些最佳答案,但最终詹姆斯的建议奏效了:删除 ios 平台,重新安装平台,然后构建。

      【讨论】:

        猜你喜欢
        • 2014-02-01
        • 2016-09-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-07-07
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多