我有一个我想要的安卓项目"克隆"对于第二个类似的项目,只有一个文件不同:它的sqlite数据库(assets / mydata.sql)。
我已将源项目(reslib)转换为库并将其添加到我的克隆项目的属性中(源项目显示在" Library Projects" as reslib.jar )
事实上,我不确定如何在源项目中启动主要活动。源项目的主要活动设置了TabHost。如何从我的克隆项目启动源项目的主要活动?我开始将代码粘贴到" cloneActivity.java"启动TabHost然后想知道是否有更好的方法。
答案 0 :(得分:1)
这样做很简单。在依赖项目的清单中,您需要将源项目的活动指定为要启动的项目。
假设您的源项目包名为com.example.source
,您的依赖项目的包名为com.example.dependent
,源项目中的主要活动为MainActivity.java
。
然后在依赖项目的AndroidManifest.xml中,您将得到以下内容:
<application
android:icon="@drawable/logo" >
<activity
android:name="com.example.source.MainActivity" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<!-- possibly lots more activities and other declarations -->
</application>
重要说明:在源项目和依赖项目的清单中,您必须确保列出所有活动,权限等。如果稍后您在源项目中添加活动,您还需要记住将其添加到依赖项目的清单中。
此外,您需要将源项目资产目录中的任何内容复制到依赖项目中 - 并且不要忘记保持同步。 (截至2012年6月,我听说Android构建工具的未来版本可能会减轻这种麻烦。)
最后,如果您使用Eclipse创建项目,它将创建默认布局main.xml
。由于依赖项目中的资源会覆盖源项目中的资源,因此请确保这不会使您失望。