Phonegap WebIntent插件无法加载

时间:2014-04-15 16:47:36

标签: android android-intent cordova phonegap-plugins

我无法在我的Phonegap项目中加载WebIntent插件。

在adb上我收到错误:

D/CordovaLog(27881): file:///android_asset/www/js/script.js: Line 28 : Uncaught TypeError: Cannot read property 'webintent' of undefined

Phonegap版本3.4.0-0.19.13

我正在使用我在Phonegap Build网站上找到的这个插件:https://github.com/Tunts/WebIntent

我采取的步骤:

在终端上,运行phonegap plugin add https://github.com/Tunts/WebIntent

确认插件已安装phonegap plugin list

在我的script.js中,我从项目中添加了一些示例代码:

var address = "some place";

window.plugins.webintent.startActivity({
    action: window.plugins.webintent.ACTION_VIEW,
    url: 'geo:0,0?q=' + address},
    function() {},
    function() {alert('Failed to open URL via Android Intent')}
);

错误来自上一行window.plugins.webintent.startActivity({

插件在res / xml / config.xml中加载,自动添加到这一行:

<feature name="WebIntent">
    <param name="android-package" value="net.tunts.webintent.WebIntent" />
</feature>

1 个答案:

答案 0 :(得分:2)

只有在触发事件deviceready后才能调用插件函数。在此之前对插件进行的任何调用都很可能会失败。为了防止这种情况,您可以格式化您的应用程序加载,如下例所示:

HTML:

<body onload="onLoad()">

JS:

function onLoad() {
    document.addEventListener('deviceready',onDeviceReady,false);
}

function onDeviceReady() {
    //Code to render your app's main view
    //any inits or plugin setups
    //hide splash screen if using the splash screen plugin
}