从意图中获取短信内容

Get SMS content from intent

我尝试从意图中获取短信的内容,但到目前为止没有任何成功。 我可以看到 messege bundel 和 pdu,但我无法理解如何以某种人类可读格式提取内容。

这是我的代码:

 Application.android.registerBroadcastReceiver(
  'android.provider.Telephony.SMS_RECEIVED',
  (context, intent: android.content.Intent) => {
    console.log("SMS Recived");
    const pdus = intent.getExtras().get("pdus");

    //HOW TO EXTRACT THE MESSAGE HERE?
  }

当我尝试像 android 那样做时,我遇到了错误

const pdus = intent.getExtras().get("pdus");
android.telephony.SmsMessage.createFromPdu(pdus);

感谢您的帮助

所以最后我通过将 sdk 从 17 升级到 telephony.sms 存在的版本并使用另一个函数来获取意图数据来解决问题。

(context, intent: android.content.Intent) => {
  const msgs = android.provider.Telephony.Sms.Intents.getMessagesFromIntent(intent);
  const msg = msgs[0];
  const sender = msg.getDisplayOriginatingAddress();
  const content = msg.getDisplayMessageBody();
}

如果有人在不影响 sdk 版本的情况下有另一个解决方案,我会很高兴看到