2015-04-01 89 views
-1

几个应用程序也可以启动其他应用程序。例如从联系人我们可以启动相机,音乐,消息等如何检查一个应用程序是否可以访问其他应用程序?

我必须跟踪这些接口。任何想法都会很有帮助。

我到目前为止已经做了什么。

  1. 检查清单文件中的权限。我得到了所有安装在手机上的软件包,然后获得了它拥有的所有权限。
  2. 检查清单文件中的所有'使用功能'。

问题是该列表仍然不完整,因为大多数应用程序使用意图与其他应用程序进行交互。例如消息。

回答

2

不,你不能这样做。应用程序与另一个应用程序进行交互,大多数情况下它使用Intent就像当你想通过使用相机拍摄照片,或者选择通过画廊的图片,代码可能是这样的:
拍照用摄像头:

Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 
intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(new File(Environment 
       .getExternalStorageDirectory(),"temp.jpg"))); 
startActivityForResult(intent, PHOTO_GRAPH); 


通过画廊挑选图片:

Intent intent = new Intent(Intent.ACTION_PICK, null); 
intent.setDataAndType(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, IMAGE_UNSPECIFIED); 
startActivityForResult(intent, PHOTO_ZOOM); 

所以,如果你想跟踪这些接口,就需要侦探意图,但不是他们AndroidManifest.xml

相关问题