基于活动的应用程序可以没有活动吗?

时间:2011-06-29 18:26:14

标签: android android-activity android-manifest android-library library-project

假设我在库项目中定义了一个共享活动类,对于使用它的任何应用程序都更改,因此需要进行子类化,是否可以找到一种创建应用程序的方法而不为它们继承此活动?

为了更好地解释我的问题,请说我在图书馆项目中有一个活动:

public class LibActivity extends Activity {
 ...
}

现在我正在使用该Library项目创建一个应用程序。我真的需要创建

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

只有这样,应用程序才能在自己的AndroidManifest.xml

中引用自己的活动

我是否可以采用简约方法,只有在需要修改库的活动核心行为时,我才会将活动子类化?

2 个答案:

答案 0 :(得分:2)

以下是完全合格的答案:

是的,基于活动的应用程序不必从库的活动中派生活动。应用程序只是逐字地使用库的活动,未经修改。

是的,我可以通过简约方法获得一种方法,其中我将活动子类化仅当我需要修改库的活动核心行为时。

我已经能够在库和应用程序中使用相同AndroidManifest.xml来验证这一点。看看是否可以消除一些冗余将是有趣的。我会试验一下并报告回来。

UPDATE:果然,可以创建一个运行良好的应用程序,其中唯一的活动是在库中定义的,而库AndroidManifest.xml没有任何{{1或<application>!如果应用程序<activity>拥有它们,则可以这样做。

答案 1 :(得分:1)

您可以直接从应用程序AndroidManifest.xml引用库Activity类。只需指定完全限定的名称,例如android:name="com.example.LibActivity"