【发布时间】:2019-05-03 07:45:28
【问题描述】:
我将一个应用推送到 Play 商店进行 Alpha 测试,但它被拒绝了,因为它使用了 SEND_SMS 权限。
我做了一些研究,发现“发送”短信的另一种方式是使用 Intent。我试图实现 StackOverflow 上与此相关的其他帖子中介绍的不同方式,但没有任何效果如我所愿。
我越接近将消息保存为消息应用程序中的草稿。
该消息应该是在一个Foreground Service中连续比较的GPS坐标在一定半径内匹配时发送的。
这是我尝试过的代码 sn-ps 之一。这是来自https://developer.android.com/guide/components/intents-common#SendMessage。
fun composeMmsMessage(message: String) {
val intent = Intent(Intent.ACTION_SEND).apply {
data = Uri.parse("smsto:") // This ensures only SMS apps respond
putExtra("sms_body", message)
}
if (intent.resolveActivity(packageManager) != null) {
startActivity(intent)
}
}
目前,当满足此条件时,我的应用会使用 SMSManager 自动发送消息。但是,我需要想办法在不使用 SEND_SMS 权限的情况下实现相同的目的。
如果这是不可能的,那么另一种方法是什么?
我真的很感激任何帮助!
tldr:我已经在 StackOverflow 上检查了与此问题相关的大部分其他主题,但我无法做我想做的事,在不使用 SEND_SMS 权限的情况下自动发送 SMS 而无需用户干预。
【问题讨论】:
-
你不能。您可以使用 Intent 广播 SMS intent,但需要用户干预。在没有 SEND_SMS 权限的情况下发送自动短信显然是不可能的。
-
天哪。我目前正在开发可以以编程方式发送消息的应用程序。不知道google play现在限制了它。 :(
-
谢谢@shkschneider,我想我将不得不对谷歌的决定提出上诉并希望它通过!
-
Google 限制您在未经许可的情况下发送自动短信,仅此而已。据我了解,您确实需要该许可。你只需要说服谷歌这是一个恶意应用:)