是否可以在一个项目android中拥有两个以上的包?
我已经在队列清单中声明但是第三个包突然强制关闭..我真的不知道原因..但这是我的队列清单代码:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.ike.doctors"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="8"
android:targetSdkVersion="8"/>
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:name=".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=".MainMenuActivity"
android:screenOrientation="portrait"
android:theme="@android:style/Theme.NoTitleBar"></activity>
<activity android:name=".MenuRegisActivity"
android:screenOrientation="portrait"
android:theme="@android:style/Theme.NoTitleBar"></activity>
<activity android:name="com.ike.hospitalize.MenuHospitalizeActivity"
android:screenOrientation="portrait"
android:theme="@android:style/Theme.NoTitleBar"></activity>
<activity android:name="com.ike.hospitalize.MenuRoomCategoriesActivity"
android:screenOrientation="portrait"
android:theme="@android:style/Theme.NoTitleBar"></activity>
<activity android:name="com.ike.emergency.MenuRegisAActivity"
android:screenOrientation="portrait"
android:theme="@android:style/Theme.NoTitleBar"></activity>
<activity android:name="com.ike.emergency.MenuEmergencyActivity"
android:screenOrientation="portrait"
android:theme="@android:style/Theme.NoTitleBar"></activity>
</application>
</manifest>
com.emergency.MenuEmergencyActivity强制关闭..
这是log cat:
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.ike.doctors/com.ike.emergency.MenuEmergencyActivity}: java.lang.NullPointerException
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
at android.app.ActivityThread.access$2300(ActivityThread.java:125)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:123)
at android.app.ActivityThread.main(ActivityThread.java:4627)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:521)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.NullPointerException
at com.ike.emergency.MenuEmergencyActivity.onCreate(MenuEmergencyActivity.java:41)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
有没有人可以解决我的问题? 你呢
答案 0 :(得分:2)
清单中不可能有两个或更多包。清单中的package
属性由Android操作系统用于唯一标识您的应用程序。
可以有两个以上的活动。每个活动都定义了一个进入您的应用程序的UI入口点,您可以根据需要使用这些入口点。
您的特定问题不是因为您有两个以上的活动。只是你的一个活动在其代码中的某个地方有一个错误。具体来说,由于第41行的错误导致MenuEmergencyActivity
崩溃,因为logcat输出表明:
at com.ike.emergency.MenuEmergencyActivity.onCreate(MenuEmergencyActivity.java:41
我会猜测并说你的onCreate
正在使用findViewById
来获取特定的UI元素,这在布局中不存在,并且您尝试使用该元素而不检查是否它被发现了。
答案 1 :(得分:0)
我认为这是不可能的。
当您在清单上标记活动时,请按照
进行操作<activity android:name="(your_Package_name).Activity_name"
android:screenOrientation="portrait"
android:theme="@android:style/Theme.NoTitleBar">
</activty>
用于所有活动,包括Android Manifest文件中的主要活动。有时它可能会对您有所帮助。我不确定
答案 2 :(得分:0)
只需将包更改为com.ike
,然后调整与此相关的活动的android:name
。
否则你所做的事情没有意义,如果其他活动是单独的应用程序的一部分,那么它们不应该通过意图调用AndroidManifest.xml
。