问题
The timeout event occurs but the onSMSReceiver (an event too) never work. I tried to get the message from an alert but I don't arrive to make it work till now . I have also add the code to the AndroidManifest.xml file. The link of the module I used : https://www.npmjs.com/package/nativescript-sms-receiver
The code below to show you :
const smsreceiver=require("nativescript-sms-receiver").SmsReceiver;
var messages="";
exports.onTap=function(){
console.log("It's working +++++++");
createViewModel.set("status"," ON ");
smsreceiver.getInstance().registerListeners(
function () {
// onSMSReceiverStarted
alert("Starting listenning to the sms ");//I get this message
}.bind(this),
function (exception) {
// onSMSReceiverFailed
alert("There is an exception");
}.bind(this),
function (message) {
//onSMSReceived
createViewModel.set("status",message);
alert(message);
messages=message;
// handle sms here
alert("Received message");//This part never works
alert("The message is :"+message);
// deregister Sms Listener to avoid invalid operations
// smsreceiver.getInstance().deregisterListeners();
}.bind(this),
function () {
// onSMSReceiverTimeOut
alert(messages);
alert("Sms received timeout ");//This message works
//smsreceiver.getInstance().deregisterListeners();
}.bind(this)
);
// start sms receiver for single message
smsreceiver.getInstance().startReceiver();
This for Register SMSBroadcastReceiver I add the code directly in my AndroidManfinest.xml file :
<receiver
android:name="com.pravinkumarputta.android.smsreceiver.SMSBroadcastReceiver"
android:exported="true">
<intent-filter>
<action
android:name="com.google.android.gms.auth.api.phone.SMS_RETRIEVED"/>
</intent-filter>
</receiver>
来源:https://stackoverflow.com/questions/60618131/nativescript-sms-receiver-event-onsmsreceived-never-occurs-but-the-others-do-how