2013-07-15 75 views
4

我不是問如何聲明或使用一個活動,我完全沒有問題。我真正想知道的是,爲什麼活動甚至會作爲被宣稱的元素存在,他們背後的目的是什麼?是否迫使我宣佈我在兩個地方使用的元素(清單和代碼本身)以某種方式提高安全性?宣佈活動的目的是什麼?

+2

這更是一個爲什麼Manifest文件是必要的問題。如果你明白這一點,那麼爲什麼清單文件中需要某些聲明會變得更加清晰。權限,應用程序元數據,軟件包信息等等是系統構建應用程序的必要組成部分。看看這個http://developer.android.com/guide/topics/manifest/manifest-intro.html –

回答

4

在代碼中,您只有普通的Java類。導出工具必須檢測哪些擴展爲ActivityFragmentActivity或這些的任何子類。有些可能只是抽象的。無論如何,Android需要列出所有可用的Activity

通過在清單中聲明它們,您有機會聲明Android需要知道的其他屬性和元數據。

其中Intent過濾器可用?你想在哪個模式下啓動你的Activity?何時啓動哪個Activity? Android需要知道這一點。

編輯:不要忘記啓動單個Activity所需的權限,以及圖標和標籤 - 所有必須知道的權限。

2

活動在Manifest中聲明,因此Android操作系統可以在處理Intent時執行查找。

背後的一個最傑出的想法是,您可以將另一個應用程序的Activity作爲Activities堆棧的一部分。如果另一個應用程序的Manifest允許。