Android在什么情况下需要用户干预才能发送SMS?

时间:2018-09-26 22:37:04

标签: android sms smsmanager android-sms

我正在开发一个应用程序,它将从前台服务发送非常少见的SMS消息。如果该应用程序没有被用户自己严重滥用,我们很少会每年最多谈论几次。

前几天,我在真实的设备上对其进行了测试,然后弹出一个对话框,提示行中的内容

AppName is trying to send an SMS. 
   Do you want to allow this? 

     Accept         Decline

[ ] Never ask again

我不记得确切的措词,也无法复制它。我不会对此发誓,但是我可以肯定地说它是在运行Android 4.4.4的设备上进行的。

这是应用程序第一次尝试在此设备上发送短信,因此我并不认为它与collectors source code有关。是否还有其他安全检查,还有其他哪些安全检查将适用于从前台服务(包括所有版本的Android,不仅是4.4.4版)发送短信?

SmsUsageMonitor似乎在检查“高级”数字,并且可能需要某种形式的用户接受,以防应用程序尝试向该数字发送消息。如果是这种情况,是否有任何方法可以“预先批准”我的应用以发送给任何号码-包括​​高级号码 - 一劳永逸?还是将来某个时候仍需要人工批准用户,例如,如果使用了新的收件人号码(可能是高级号码)?

1 个答案:

答案 0 :(得分:0)

在更改应用程序的软件包名称后,似乎能够重现此信息(卸载无济于事)。这确实与保费号码有关,或者实际上与SmsUsageMonitor被认为是保费号码有关。

在我看来,在瑞典,数字 5个或更少且不是紧急号码(例如112)被认为是特级号码。 enter image description here

支持了这一点
  

瑞典

     

代码长度为五位数。

这是弹出的对话框。选中“记住我的选择”并单击“发送”后,该对话框不再显示。该设置可以在 App Info 中进行更改,其中有一个名为 Send Premium SMS 的设置。

Wikipedia on Short Codes