2015-04-01 104 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

相關問題