iOS 版本中不会触发 Phonegap 插件回调
Posted
技术标签:
【中文标题】iOS 版本中不会触发 Phonegap 插件回调【英文标题】:Phonegap plugin callbacks don't fire in iOS build 【发布时间】:2016-09-20 07:24:49 【问题描述】:My Phonegap 应用在本地为 ios 设备提供服务时效果很好。但是,在从 Phonegap Build 安装 .ipa
文件后,我看到了一个奇怪的行为。请求插件命令时,应用程序似乎根本没有响应。当我双击主页按钮以显示打开的应用程序摘要视图时,插件回调会适当地触发。这是最奇怪的事情。 geolocation
和 barcodescanner
插件都发生了这种情况。
所以插件在构建中并且回调正在触发,但直到应用程序“最小化”。任何帮助将不胜感激。
config.xml
:https://gist.github.com/thelucre/dd07998ad350b2916113a8c9a4823db4
Phonegap 构建信息:
PhoneGap (iOS / android / Windows)
cli-6.3.0 (4.2.0 / 5.2.1 / 4.4.1)
已确认 iPhone 5s - 10.0.1 和 iPad 4 - 9.5.3 上的问题
【问题讨论】:
【参考方案1】:事实证明,whitelist
插件设置搞砸了 geolocation
和 barcodescanner
的内容策略。我删除了<meta http-equiv="Content-Security-Policy" ...
标签,它正在构建中。
为了记录,我首先让 iOS 项目用 Xcode 编译,然后调试器吐出这个错误:
FAILED pluginJSON = [ "Geolocation1841912763", "Geolocation", "getLocation",[false,0]]
。
该日志将我带到下面的答案来源。我将来可能会更新Content-Security-Policy
属性,但至少我现在可以演示我的应用程序。
来源:https://github.com/driftyco/ionic-cli/issues/259#issuecomment-139238385
【讨论】:
以上是关于iOS 版本中不会触发 Phonegap 插件回调的主要内容,如果未能解决你的问题,请参考以下文章
Xcode 中的 phoneGap 不会触发 Deviceready 事件