关于Android,如何防止其他应用阅读我的联系人

时间:2014-08-05 14:15:34

标签: android

我尝试编写Android应用以阻止其他应用阅读我的联系人,即使这些应用获得了android.permission.READ_CONTACTS权限

我谷歌很多,但一无所获。谁能给我一些关于这个应用程序的想法...

谢谢!

1 个答案:

答案 0 :(得分:0)

您可以阻止具有android.permission.READ_CONTACTS权限的应用。您可以通过包管理器API获取具有android.permission.READ_CONTACTS权限的应用列表。

如果您不想停用这些应用,可以通过反映使用 - http://androidxref.com/4.4.4_r1/xref/frameworks/base/core/java/android/app/AppOpsManager.java API撤消这些权限。

以下是ApoOpsManager.java中可用于阻止权限的方法

  

/ ** @hide * / public void setMode(int code,int uid,String   packageName,int mode){

try {
       mService.setMode(code, uid, packageName, mode);

 } 
 catch (RemoteException e)
   {

 }   
     

}

要了解如何使用反射调用内部/隐藏api使用: http://jhshi.me/2014/04/02/get-package-usage-statistics-in-android/.similar

这种方法可能永远不会起作用,但是这是我能想到的唯一解决方法,因为没有直接的apis可以做到。

相关问题