Javascript JQuery移动应用程序,使用HTML5拨打移动电话
我正在使用带有Phonegap的JQuery Mobile,我正在尝试创建一个按钮,当我单击它时,应该会拨打一个电话。我对这个问题进行了大量的研究,并找到了以下解决方案Javascript JQuery移动应用程序,使用HTML5拨打移动电话,javascript,android,html,cordova,jquery-mobile,Javascript,Android,Html,Cordova,Jquery Mobile,我正在使用带有Phonegap的JQuery Mobile,我正在尝试创建一个按钮,当我单击它时,应该会拨打一个电话。我对这个问题进行了大量的研究,并找到了以下解决方案 <a href="tel:+123456789">Call</a> 或 <a href="#" onclick="window.open('tel:+123456789', '_blank', 'location=yes');" data-role="button">Call</a
<a href="tel:+123456789">Call</a>
或
<a href="#" onclick="window.open('tel:+123456789', '_blank', 'location=yes');" data-role="button">Call</a>
这个解决方案正在浏览器上运行(要求我打开Skype),但当我在Android上运行三星Galaxy S2时,它就不起作用了。它什么也没做
我已尝试向config.xml文件添加以下权限:
<access launch-external="yes" origin="tel:*" />
但它也不起作用。
如果您有任何解决方案建议,请这样做。谢谢大家! 你试过了吗
<a rel="external" href="tel:+123456789">Call</a>
CordovaCallNumberPlugin应该可以帮助您
将以下行添加到
config.xml
<gap:plugin name="org.apache.cordova.inappbrowser" version="0.5.2" />
如果您使用的是
inappBrowser
插件,则可以启动带有tel:
地址的inappBrowser窗口:
var refcall = window.open('tel:'+phoneno, '_blank', 'location=no,closebuttoncaption=Home,disallowoverscroll=yes');
然后,您可能会注意到,当通话结束时,您会被带回一个白色屏幕,屏幕顶部会写上电话号码。为了避免这种情况,请附加以下代码:
refcall.addEventListener('loadstop', function(event) {
console.log('done initiating call... closing inappbrowser module');
refcall.close();
});
试着让我们知道。这对我来说效果很好。首先,你发布的所有上述答案都是正确的,效果很好。我遇到的问题是,我的应用程序中没有包含cordova库
<script type="text/javascript" src="cordova.js"></script>
因此,当我在页面的标题中包含上述行时,电话号码就会出现在拨号屏幕上!我正在使用以下代码创建呼叫按钮:
<a rel="external" href="#" onclick="window.open('tel:+123456789', '_system');" data-role="button">Call</a>
我创建了一个新的phonegap应用程序,只使用上面给出的锚定标签,从而找到了解决方案。默认情况下,脚本中包含cordova库。
谢谢你的回答我试过了,什么也没做。无论如何谢谢你!config.xml已经有这一行了。我刚刚添加了version属性,并尝试使用
窗口打开它。open
也不起作用。谢谢你的回复@安德烈亚斯,应该有用的!我建议您从配置文件中删除不必要的行,例如
。并检查日志以捕获任何可能的错误。顺便说一句,它不能在模拟器上工作,所以你需要在实际设备上测试它。
<a rel="external" href="#" onclick="window.open('tel:+123456789', '_system');" data-role="button">Call</a>