我使用以下Android Cordova插件:
https://github.com/aharris88/phonegap-sms-plugin
我可以验证SMS应用程序是否打开以及是否已发送消息,但JS成功或错误回调从未被触发。
代码是根据插件实现的,所以我想不出为什么这不能触发回调。我在Cordova 2.9中使用它虽然重新编写为3.0,但该插件与以下几个修改兼容。
在短信JAVA文件中,我必须更新依赖项,如下所示:
import org.apache.cordova.api.CallbackContext;
import org.apache.cordova.api.CordovaPlugin;
import org.apache.cordova.api.PluginResult;
在JS文件中我删除了以下行:
module.exports = sms;
现在只需挂钩sms全局变量即可。
我调用SMS函数的JS遵循与提供的示例相同的内容:
var number = '123456789';
var message = 'foo!';
var intent = "INTENT"; //leave empty for sending sms using default intent
var success = function() {
$.magnificPopup.close();
};
var error = function(e) {
alert('Message Failed:' + e);
};
sms.send(number, message, intent, success, error);
如果我删除了INTENT,则会自动使用默认的SMS应用程序触发SMS,并且按预期工作。
但是,有没有办法在从SMS应用程序发送消息时触发JS回调?