其他分享
首页 > 其他分享> > android-KitKat-短信管理

android-KitKat-短信管理

作者:互联网

我正在开发一个类似于SMS BlackList / WhiteList的应用程序.它现在不是SMS应用程序.

目标是:

>如果该号码在“黑名单”中,则它将阻止用户接收/发送短信,并且不会出现在其短信应用程序中.
>如果号码在白名单中,则用户可以执行他想做的所有事情.
>在某些特殊情况下,已被阻止的消息将存储在我们的数据库中,以便在几个小时后发送;

总结我的应用程序需要能够:

>阻止短信(在其他任何应用程序都无法处理之前,例如弹出短信应用程序)
>发送短信

到目前为止,该组件可与android pre KitKat正常工作.
这个想法是处理广播(对于收到的短信)和观察员(对于发送短信).

顺便说一下,KitKat SMS的处理方式主要不同.据我所知,我们需要成为默认的短信应用来发送消息.

我的问题是:

>我真的需要成为默认的SMS应用程序来发送/观察消息吗?
>我是否必须实现一种基本的SMS应用程序,或者是否还有另一种通过SMSManager发送SMS的方法? (http://android-developers.blogspot.fr/2013/10/getting-your-sms-apps-ready-for-kitkat.html)

解决方法:

Do I really need to be the default SMS app to send / observe messages ?

Do I have to implement a kind of basic SMS app or is there another way to send SMS with SMSManager for example ?

不能.任何具有SEND_SMS权限的应用程序仍可以使用SmsManager的标准方法发送消息,并且当且仅当您的应用程序不是默认的SMS应用程序时,才会照顾到提供程序.如果您的是默认值,则由它负责写操作.

拥有RECEIVE_SMS权限的任何应用仍可以获取SMS_RECEIVED广播并从Intent中读取消息.另外,从KitKat开始,不能终止SMS_RECEIVED广播,因此,即使您的应用是默认应用,也没有真正的方法来阻止任何监听该广播的应用接收传入的文本.但是,与KitKat或更高版本中SMS应用程序的建议行为兼容的应用程序(如果不是默认设置)将禁用对传入消息的任何处理.也就是说,如果您的应用程序是默认应用程序,则其他应用程序不必关心传入的消息.

标签:sms,android-4-4-kitkat,smsmanager,android
来源: https://codeday.me/bug/20191029/1958861.html