Android Kotlin - 如何检测和读取收到的短信
创始人
2024-08-14 11:30:08
0

在Android Kotlin中,可以通过使用BroadcastReceiver来检测和读取收到的短信。下面是一个基本的示例代码:

  1. 首先,在AndroidManifest.xml文件中添加以下权限和接收器声明:




    ...
    
        
            
        
    
    ...

  1. 创建一个名为SmsReceiver的Kotlin类,继承自BroadcastReceiver,并重写onReceive方法:
class SmsReceiver : BroadcastReceiver() {
    override fun onReceive(context: Context, intent: Intent) {
        if (intent.action == "android.provider.Telephony.SMS_RECEIVED") {
            val bundle = intent.extras
            if (bundle != null) {
                val pdus = bundle.get("pdus") as Array<*>
                val messages = arrayOfNulls(pdus.size)
                for (i in pdus.indices) {
                    messages[i] = SmsMessage.createFromPdu(pdus[i] as ByteArray)
                }
                if (messages.isNotEmpty()) {
                    val smsMessage = messages[0]
                    val sender = smsMessage?.originatingAddress
                    val message = smsMessage?.messageBody
                    // 在这里进行短信的处理操作
                }
            }
        }
    }
}
  1. 在需要的地方注册BroadcastReceiver,例如在Activity的onCreate方法中:
class MainActivity : AppCompatActivity() {
    private val smsReceiver = SmsReceiver()

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        val intentFilter = IntentFilter()
        intentFilter.addAction("android.provider.Telephony.SMS_RECEIVED")
        registerReceiver(smsReceiver, intentFilter)
    }

    override fun onDestroy() {
        super.onDestroy()
        unregisterReceiver(smsReceiver)
    }
}

这样,当收到新的短信时,SmsReceiver的onReceive方法会被调用,并且你可以在其中进行短信的处理操作。

相关内容

热门资讯

曝光透视!哈糖大菠萝有挂吗!真... 曝光透视!哈糖大菠萝有挂吗!真是有辅助方法(发现有挂)-哔哩哔哩1、在哈糖大菠萝有挂吗插件功能辅助器...
必备透视!菠萝德普辅助器免费版... 必备透视!菠萝德普辅助器免费版在哪里!一贯存在有辅助插件(有挂功能)-哔哩哔哩该软件可以轻松地帮助玩...
解迷透视!sohoopoker... 解迷透视!sohoopoker辅助!本来真的是有辅助软件(讲解有挂)-哔哩哔哩一、sohoopoke...
分享透视!xpoker怎么作必... 分享透视!xpoker怎么作必弊!原来一直总是有辅助脚本(真的有挂)-哔哩哔哩1、进入游戏-大厅左侧...
解密透视!pokermaste... 解密透视!pokermaster修改器!其实真的有辅助技巧(证实有挂)-哔哩哔哩1、下载好poker...
了解透视!拱趴大菠萝万能挂图解... 了解透视!拱趴大菠萝万能挂图解!一贯真的是有辅助神器(发现有挂)-哔哩哔哩1、下载好拱趴大菠萝万能挂...
科普透视!约局吧开挂!果然有辅... 您好,约局吧开挂这款游戏可以开挂的,确实是有挂的,需要了解加去威信【136704302】很多玩家在这...
揭幕透视!pokermaste... 揭幕透视!pokermaster脚本!竟然是有辅助app(有挂方略)-哔哩哔哩1、pokermast...
关于透视!newpoker怎么... 关于透视!newpoker怎么安装脚本!总是一直都是有辅助插件(有挂实锤)-哔哩哔哩1、超多福利:超...
详细透视!约局吧app有挂吗!... 详细透视!约局吧app有挂吗!真是是真的有辅助神器(有挂规律)-哔哩哔哩1、任何约局吧app有挂吗透...