2011-06-10 149 views
0

這是一個Android noob問題。Android:可以從我自己的其他應用程序啓動任何活動?

我想通過我自己的應用程序來啓動其他APK的活動。現在我知道我可以啓動任何其他應用程序並調用其主要活動。在很多情況下,我也可以啓動子活動,例如顯示設置對話框。 但是對於一些應用程序,例如Facebook或Endomondo,我會每次嘗試啓動某個應用程序的某個特定活動時獲得一個FC。

現在我懷疑這是一個權限問題,而且Facebook或運動追蹤開發者只是不希望其他應用程序可以訪問他們的活動。但是,我是否必須找出哪些活動可以使用,以及哪些活動每次都不能通過試用和錯誤使用?

另外:有沒有辦法解決這個困境?也許在根植設備上?

歡呼任何指針。

+0

我已經看到了一些代碼,其開始了新的線程通過系統調用啓動的意圖,但我也知道了android認真對待它的沙箱。 – motoku 2011-06-10 08:29:22

回答

2

正如你已經說你只能使用其目的是爲了通過其它應用可以使用其他應用程序的活動。通常,另一個應用程序的開發人員定義一組意圖和行爲,他們的應用程序將能夠理解和處理。

使用任何其他應用程序的活動在默認情況下不可能的,這是由Android的設計爲每一個應用程序運行在它自己的沙盒進程(也有一些例外情況的應用程序可以共享一個進程)。

所以使用其他應用程序的活動,你必須知道它監聽的意圖。通常可以在應用程序網站或文檔或OpenIntents字典中找到意圖。

相關問題