【问题标题】:Send an SMS directly from a Service without SEND_SMS permission未经 SEND_SMS 权限直接从服务发送 SMS
【发布时间】: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 限制您在未经许可的情况下发送自动短信,仅此而已。据我了解,您确实需要该许可。你只需要说服谷歌这是一个恶意应用:)

标签: android kotlin service


【解决方案1】:

Google 已经设置了限制以保护用户隐私。 请在此处查看受限权限列表。check this

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-08-09
    • 2023-03-12
    • 1970-01-01
    • 1970-01-01
    • 2016-07-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多