我正在使用cordova 3.6.3。
我正在使用以下短信插件。
http://plugins.cordova.io/#/package/com.rjfun.cordova.smshttps://github.com/floatinghotpot/cordova-plugin-sms/tree/master/docs
我通过以下方式添加了插件:--
cordova plugin add com.rjfun.cordova.sms
我的 cordova 应用程序在加载时调用以下函数 doc_onload()。
<body onload="doc_onload()">
然后,这将注册"设备就绪"的处理程序。当设备准备就绪时,将调用此设备就绪函数。
现在initApp()
处理程序内部的问题是SMS插件检查不显示任何警报消息。我能够收到警报 ->"kk"。
但是在下面的检查if (! SMS )
我没有收到任何显示消息。 if nor else
都不满意。
即使alert("end");
也不会显示在事件处理程序initApp()
。
请建议为什么它失败了?
function initApp()
{
alert("initApp");
// attach Fastclick handler
FastClick.attach(document.body);
alert("kk");
if (! SMS )
{
alert( 'SMS plugin not ready' );
return;
}
else
{
alert( 'SMS plugin Ok ' );
}
alert("end");
//add SMS arrive listner handler
document.addEventListener("onSMSArrive", processSMS(), false);
}
//function doc_onload(page_type)
function doc_onload()
{
// Do some task
alert("doc_onload");
// add event handler for deviceready function
document.addEventListener("deviceready", initApp(), false);
}
删除 'initApp()' 中的括号
document.addEventListener("deviceready", initApp, false);
编辑**以上仅用于语义
我认为您需要将 !SMS 更改为
typeof SMS === 'undefined'