我正在使用带有Phonegap的JQuery Mobile,我正在尝试创建一个按钮,当我点击它时,应该拨打电话。我对此问题进行了大量研究,并找到了以下解决方案
<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:*" />
但也没有工作。 如果您有任何建议的解决方案,请这样做。谢谢!
答案 0 :(得分:0)
<a rel="external" href="tel:+123456789">Call</a>
答案 1 :(得分:0)
CordovaCallNumberPlugin应该可以帮到你
答案 2 :(得分:0)
将以下行添加到config.xml
<gap:plugin name="org.apache.cordova.inappbrowser" version="0.5.2" />
并使用此命令来设置数字:
window.open('tel:+123456789', '_system');
答案 3 :(得分:0)
如果您使用的是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();
});
尝试告诉我们。它对我来说很好。
答案 4 :(得分:0)
首先,您发布的所有上述答案都是正确的,并且正常运行。我遇到的问题是我没有在我的应用程序中包含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库在脚本中。 谢谢你的回答