最近开始学习 kotlin 编程语言的 android 系统编程。在编写用于从应用程序本身发送 SMS 的简单应用程序时,我遇到了 SmsManager.getDefault() 现在已弃用的问题,因此无法按照视频类(class)中的说明发送 SMS。问题 - 现在如何从应用程序本身发送 SMS?我阅读了官方文档,但无法理解解决方法。
package com.example.mysendsms
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.telephony.SmsManager
import com.example.mysendsms.databinding.ActivityMainBinding
class MainActivity : AppCompatActivity() {
lateinit var binding: ActivityMainBinding
val sms = SmsManager.getDefault()
override fun onCreate(savedInstanceState: Bundle?) {
binding = ActivityMainBinding.inflate(layoutInflater)
super.onCreate(savedInstanceState)
setContentView(binding.root)
binding.send.setOnClickListener {
val textMsg = binding.message.toString().trim()
val numberMsg = binding.number.toString().trim()
sendSMS(textMsg,numberMsg)
}
}
private fun sendSMS(text: String, number: String) {
sms.sendTextMessage(number,null,text,null,null)
}
}
}
最佳答案
作者 official documentation你可以像这样得到它
val smsManager = context.getSystemService(SmsManager::class.java)
关于android - SMSmanager.getDefault() - 弃用 - 替换什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70275782/