1

假設我有一個庫項目中定義一個共享活動類,用它這確實爲任何應用變化,因此不需要被繼承,我可以得到的方式有沒有繼承這個活動創建應用程序他們?基於活動的應用程序可以沒有活動嗎?

爲了更好地解釋我的問題,說我有一個庫項目一個活動:

public class LibActivity extends Activity { 
... 
} 

現在我正在創建使用該庫項目的應用程序。我真的需要創建

public class AppActivity extends LibActivity { 
// totally empty! 
} 

只有這樣應用程序有自己的活動要在自己的AndroidManifest.xml引用?

我是否可以通過簡約方法獲得一種方法,其中僅在需要修改庫的活動核心行爲時纔對該活動進行分類?

回答

2

完全合格的名稱這裏是完全合格的答卷:

是,活動基礎的應用不必獲得從圖書館的活動的活動。應用程序只是簡單地使用圖書館的活動,不加修改。

是的,我可以通過簡約的方法獲得一種方法,其中我僅在的子類活動我需要修改庫的活動核心行爲。

我已經能夠在庫和應用程序中使用AndroidManifest.xml相同的進行驗證。看看這些冗餘是否可以消除會很有意思。我會試驗這個並報告回來。

UPDATE:果然,就可以創造一個唯一的活動是在庫中定義的完美運行的應用程序和庫的AndroidManifest.xml沒有任何<application><activity>!如果應用程序的AndroidManifest.xml擁有它們,則這是可能的。

1

您可以直接從應用程序AndroidManifest.xml引用庫Activity類。只要指定像這樣android:name="com.example.LibActivity"

+0

感謝+1是唯一一個試圖回答這個問題的人。我會很快發佈確切的答案(爲了所有人的利益),但我可以告訴你,我甚至不需要爲庫中的活動指定完全限定。 – ef2011

+0

說明:我不需要爲庫中的活動指定完全限定的名稱,因爲庫和應用程序共享了**相同的確切包名**。如果他們有不同的軟件包名稱(他們應該這樣做),那麼必須採取@sparkymat的建議。 – ef2011

相關問題