在流星应用程序中如何在cordova config.xml中添加orgin = *?

Posted

技术标签:

【中文标题】在流星应用程序中如何在cordova config.xml中添加orgin = *?【英文标题】:In meteor app how to add orgin=* in cordova config.xml? 【发布时间】:2015-05-30 12:26:12 【问题描述】:

我是流星新手。我正在用流星开发移动应用程序。我需要在 config.xml 中添加<access origin="*"/> 我正在使用谷歌 API 在浏览器中工作正常。但是当我在安卓设备上运行时,控制台会抛出Uncaught ReferenceError: google is not defined。我认为问题是cordova阻止了google api。我应该如何添加来自流星的访问来源?

【问题讨论】:

【参考方案1】:

在您的根流星项目中创建一个 mobile-config.js 文件。阅读https://docs.meteor.com/#/full/mobileconfigjs

您可以像这样添加原始通配符。

App.accessRule('*');

这会将以下内容添加到您的 config.xml 中

<access origin="*"/>

以下来自:https://docs.meteor.com/#/full/App-accessRule

App.accessRule(domainRule, [options])

为您的应用设置基于源域的新访问规则。默认 您的应用程序可以联系的服务器列表有限。采用 这个方法来扩展这个列表。

默认访问规则:

tel:、geo:、mailto:、sms:、market:* 允许并在外部启动(手机应用程序或 android 上的电子邮件客户端)李> gap:, cdv:, file: 允许(访问本地文件系统所需的协议)http://meteor.local/* 允许(域 Meteor 使用 访问应用的资产) 传递给构建过程的服务器域(或开发模式中的本地IP地址)用于能够联系到 Meteor 应用服务器。

在Cordova docs 中阅读有关域模式的更多信息。

从 Meteor 1.0.4 开始所有域和协议的访问规则 () 由于certain kind of possible attacks,不再默认设置。

参数

domainRule 字符串 - 定义受影响的域或 URL 的模式。

选项

launchExternal 布尔值 - 如果匹配的 URL 应在外部处理(例如 Android 上的手机应用或电子邮件客户端),则设置为 true。

【讨论】:

文档是杀手! 文档链接已过期,无法找到更新的参考。 对于任何追随我的人;我很确定您正在寻找this。该锚点目前已损坏,但它会将您带到正确的视图 - 只需查看“域白名单”标题下的内容即可。 文档中的声明说&lt;access origin="*"/&gt;默认没有设置。但实际上它是在 config.xml 中设置的,而我没有自己设置。有谁知道为什么或如何删除它?

以上是关于在流星应用程序中如何在cordova config.xml中添加orgin = *?的主要内容,如果未能解决你的问题,请参考以下文章

用于 android 的 cordova/phongap 流星构建中的后退按钮不会始终关闭应用程序

如何在 Meteor cordova 移动应用程序中接收共享数据

如何使用卡在加载屏幕上的铁路由器调试流星/科尔多瓦应用程序?

来自 Cordova 的流星运行 android-spawn ENOENT 和 gradle 错误

如何在 Mac / iOS 上制作 cordova 以停止在 config.xml 和 package.json 的插件版本号中添加插入符号 (^)

Cordova 与 PhoneGap Build 中的 config.xml 位置