开始的活动经过长时间的搜索后,我找不到任何合适的解决方案。 我有一个Android应用程序的几乎所有代码的Android库项目。从图书馆项目的主要活动中,我启动一个Intent以显式的活动A.在我使用库项目的派生项目中,我扩展了这个活动A并添加了一些新代码。问题是活动A的超类将会响应,而不是派生类。从Android-Library-Project
在使用库项目的新项目的清单中,我已经用新包声明了新的Activity。
下面是从图书馆计划的意图电话:
Intent i = new Intent(getApplicationContext(), AndroidActivity.class);
startActivity(i);
这里是派生AndroidActivity类:
public class AndroidActivity extends de.app.library.activities.AndroidActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
...
我不能去的onCreate方法
的来自图书馆计划的清单:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="de.app.library"
android:versionName="1.0"
android:versionCode="1">
<uses-sdk android:minSdkVersion="4" />
<application
android:icon="@drawable/icon"
android:label="@string/app_name">
<activity android:name=".activities.MainActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".activities.AndroidActivity" android:label="@string/act_android" />
</application>
在这里,来自新项目的清单:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="de.app.free"
android:versionCode="1"
android:versionName="1.0">
<uses-sdk android:minSdkVersion="4" />
<application
android:icon="@drawable/icon"
android:label="@string/app_name">
<activity android:name="de.app.library.activities.MainActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".activities.LernenActivity" android:label="@string/act_lernen" />
所以我必须:
de.app.library.activities.AndroidActivity and
de.app.free.activities.AndroidActivity
我不想做太多更改库项目beacuase一个第三个项目应该使用现有的代码与原始AndroidActivity
ALL其他事情对我来说很好。例如,从新项目中使用更改的布局。
我该如何处理这个问题?也许在我声明的新项目中,Manifest发生了变化,应该调用新的活动而不是超类?
在此先感谢!
在新项目中,我没有MainActivity类。我指向图书馆项目。只有AndroidActivity有一些变化,这就是为什么我已经扩展它。 – treimy