【发布时间】:2014-08-01 05:01:33
【问题描述】:
我一直在 Cordova 3.3.0-0.3.1 中开发 Android 应用程序。使用 tigbro JQMobile-Angular 适配器。一切都很顺利,直到我尝试访问由媒体捕获插件创建的文件以制作缩略图。无法访问我正在创建的任何文件...这里有一个开放的 SO 线程:
Reading a file created by the media capture plugin in Cordova - Creating Thumbnails
因此,一位 SO 超级用户好心地通过查看代码来提供帮助,并要求我制作一个更小、更简单的应用程序来进行测试。这就是它变得奇怪的地方。我使用 Phonegap (3.3) 构建了一个带有基本代码的小应用程序。现在我遇到了媒体捕获插件本身的问题。我可以启动捕获插件,然后拍照。但是每次我在捕获过程中按下接受复选标记时,都会使用“3:取消”调用错误处理程序。我在 Motorola Droid Razr MAXX 和 Nexus 5 上进行了测试,结果相同(虽然 Nexus 5 的失败行为略有不同,但它会在后台抛出错误,但不会结束捕获过程)。
我将 Phonegap CLI 升级到 3.4,并更新了项目的平台。 (没有更新插件,因为我没有看到任何文档。)没有变化。
这是额外的怪异之处。如果我将项目重建为 Phonegap Build 项目(并远程构建),JQMobile 元素会损坏,但捕获插件可以工作! (但访问文件仍然有问题。)
我在 Cordova 文档中注意到,插件有一些更新,无法将文件插件与媒体捕获一起使用:
https://cordova.apache.org/news/2014/04/23/plugins.release.html
我认为因为我没有在我的完整项目中指定插件版本,所以当我执行本地构建时它应该使用最新的插件。那是对的吗?我应该将我的 Cordova 3.3 更新到 3.4.1 吗?平台呢?破坏我的项目有什么危险吗?
这里是简单应用程序的 repo 链接:
https://github.com/marcsyp/thumbnail
对其中一些问题有什么想法吗?
【问题讨论】:
-
升级到 Cordova 3.4... 大错特错。我相信 Cordova 3.4 打破了 tigbro JQMobile-Angular 适配器。所有的 JQMobile 代码都被完全破坏了。将回滚到 3.3.1。
-
将我所有的代码和我的科尔多瓦回滚到 3.3.1-0.3.1,以及 android 平台,JQMobile 的东西仍然坏了。尚未尝试安装特定的旧插件版本。
-
虽然我最终解决了这个问题(请参阅下面的答案),但我决定将 JqueryMobile 扔在地上并转换为 Ionic。这是一个伟大的决定,现在生活好多了。
标签: cordova plugins file-io phonegap-build