【发布时间】:2013-02-07 06:59:33
【问题描述】:
我正在开发一个允许用户将数字添加到黑名单的 android。当来电号码与黑名单中的号码匹配时,应拒绝呼叫,即使电话短暂响铃然后断开呼叫也是如此。
我在 SO 上找到的所有内容都表示,如果不在我创建的 com.android.internal.telephony 中创建 AIDL 就无法完成,但我无法添加修改手机状态权限,因为它说需要是系统应用程序。
我的目标是 ICS 向上,我看到其他应用程序阻止 ICS 和向上的调用,所以这是如何完成的。我还尝试将修改手机状态权限添加到清单文件中,它显示一个错误,指出它仅适用于系统应用程序,所以我该如何解决这个问题。我不希望该应用程序必须植根。
感谢您提供的任何帮助
【问题讨论】:
-
也许这个帖子可以帮到你stackoverflow.com/questions/7121508/…
-
@MatthewFisher 不幸的是,没有,完成了该问题中的所有操作,但我无法添加权限,因为它错误地说它需要是一个系统应用程序
-
您当前的方法是使用反射来获取接口。虽然它确实有效.. 我认为这有点太特殊了,无法暴露给应用程序。可能有它不在 SDK 中的原因,以及为什么您必须使用反射来抓取它。但我们努力为我们的问题和要求找到解决方案:)!
-
我知道这不是最好的解决方案,而且我个人觉得让它工作的技术有点“hacky”,但不幸的是似乎是唯一的方法。不完全理解为什么谷歌会这样做。基于所有的博客和帖子,它似乎是非常流行的功能。老实说,对这个解决方案并不完全满意,担心如果谷歌决定更改/阻止这个方法,它最终可能会崩溃
-
没有其他解决方案。简而言之,让应用免费使用它来取消来电和接听电话而无需 SDK 调解,这是一种危险的功能,这似乎有点奇怪,也有点危险。
标签: android