gpt4 book ai didi

ios - 允许在 cordova 中通话(以及 map 和邮件)

转载 作者:可可西里 更新时间:2023-11-01 04:24:54 25 4
gpt4 key购买 nike

我已经为此苦苦挣扎了一段时间。在人们从弹出窗口中按“调用”后,我正在尝试调用电话。有趣的是,当他们点击电话号码时,它会直接调用电话。但是当他们点击“调用”时,控制台返回:

ERROR Internal navigation rejected - <allow-navigation> not set for url='tel:06-83237516

代码:

Controller :

$scope.callPerson = function() {
var link = "tel:" + $scope.person.phonenumber;
var confirmTel = $ionicPopup.confirm({
title: $scope.person.phonenumber,
cancelText: 'Cancel',
okText: 'Call'
});
confirmTel.then(function(res) {
if (res) {
window.open(link);
} else {
console.log('cancel call');
}
});
}

配置文件:

<access origin="*"/>
<allow-intent href="tel:*"/>
<allow-intent href="mailto:*"/>
<access origin="tel:*" launch-external="yes"/>
<access origin="mailto:*" launch-external="yes"/>

html:

<div ng-click="callPerson()"> {{person.phonenumber}}</div>  

对于 Mail,它根本不起作用,并返回相同的错误。打开 map 也一样。它在 PhoneGap 测试应用程序中确实有效,但在部署时无效。

map 代码:

$scope.openmaps = function() {
var address = $scope.person.adres + ", " + $scope.person.plaats;
var url = '';
if (ionic.Platform === 'iOS' || ionic.Platform === 'iPhone' || navigator.userAgent.match(/(iPhone|iPod|iPad)/)) {
url = "http://maps.apple.com/maps?q=" + encodeURIComponent(address);
} else if (navigator.userAgent.match(/(Android|BlackBerry|IEMobile)/)) {
url = "geo:?q=" + encodeURIComponent(address);
} else {
url = "http://maps.google.com?q=" + encodeURIComponent(address);
}
window.open(url);
};

最佳答案

可能为时已晚,但我想发表评论,以便其他用户无法面对这个问题。因为我在任何地方都找不到任何可行的解决方案。

你需要添加 <allow-navigation href="tel:*" />在 config.xml 中

我在 mailto intent 方面遇到了同样的问题。直接试了一下就可以了

<a onclick="mailto:test@me.com">Email</a>

但是当我尝试使用 javascript 调用它时出现错误 window.location.href = 'mailto:test@me.com

internal navigation rejected - <allow-navigation> not set for url='mailto:test@me.com'

您只需在 config.xml 中添加 allow-navigation

因此您的 config.xml 将是:

<access origin="mailto:*" launch-external="yes"/>    
<allow-intent href="mailto:*" />
<plugin name="cordova-plugin-whitelist" version="1" />
<allow-navigation href="mailto:*" />

关于ios - 允许在 cordova 中通话(以及 map 和邮件),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35234866/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com