启动Android应用程序时启动的活动太多
我正在确认创建活动 我的Manifest.xml如下所示:启动Android应用程序时启动的活动太多,android,android-activity,android-manifest,Android,Android Activity,Android Manifest,我正在确认创建活动 我的Manifest.xml如下所示: <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".FirstActivity" android:label="@string/app_name"> <intent-filter> <action an
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".FirstActivity"
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=".SecondActivity"
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=".ThirdActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
您可以看到属性action-android:name=
属性是“android.intent.action.MAIN”
和
category-android:name=
是所有活动的“android.intent.category.LAUNCHER”
当应用程序启动时,它调用FirstActivity。
然后调用无用的活动,如ThirdActivity或SecondActivity
在本例中,我的manifest.xml
正确吗?
或者,是否需要将另一个属性设置为第二个和第三个活动?
如果是,那是什么
我想知道manifest.xml
文件是否适合我的情况。
请告知。尝试此配置:
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".FirstActivity" 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=".SecondActivity" android:label="@string/app_name">
<intent-filter>
</intent-filter>
</activity>
<activity android:name=".ThirdActivity" android:label="@string/app_name">
<intent-filter>
</intent-filter>
</activity>
尝试以下配置:
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".FirstActivity" 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=".SecondActivity" android:label="@string/app_name">
<intent-filter>
</intent-filter>
</activity>
<activity android:name=".ThirdActivity" android:label="@string/app_name">
<intent-filter>
</intent-filter>
</activity>
将as消息视为用于启动活动的消息。因此,我可以创建一个Intent
来查看网页,并创建一个具有知道如何查看网页的活动的应用程序—最有可能的是浏览器—可以在执行操作时拦截他的意图
您可以使用清单的
部分告诉Android哪些活动可以对哪些意图采取行动
意图是一种特殊的意图。当应用程序启动时,它会被发送到应用程序,基本上它会说“Go!”,因此应该首先显示的活动需要通过正确定义
来拦截它
由于这三个活动的过滤器中都有MAIN
,因此它们都响应了启动应用程序的请求。因此,您应该将该
仅用于FirstActivity
想象一条用于启动活动的as消息来执行某项操作。因此,我可以创建一个Intent
来查看网页,并创建一个具有知道如何查看网页的活动的应用程序—最有可能的是浏览器—可以在执行操作时拦截他的意图
您可以使用清单的
部分告诉Android哪些活动可以对哪些意图采取行动
意图是一种特殊的意图。当应用程序启动时,它会被发送到应用程序,基本上它会说“Go!”,因此应该首先显示的活动需要通过正确定义
来拦截它
由于这三个活动的过滤器中都有MAIN
,因此它们都响应了启动应用程序的请求。因此,您应该只为FirstActivity
设置
,这是使用
对于多个活动,手机的启动程序菜单将显示多个图标
来自文档:
活动可以使用的类别\u启动器
是任务的初始活动,并且
在顶级应用程序中列出
发射装置
使用的另一个问题是
对于多个活动,手机的启动程序菜单将显示多个图标
来自文档:
活动可以使用的类别\u启动器
是任务的初始活动,并且
在顶级应用程序中列出
发射装置
好啊谢谢第二个和第三个活动看起来像子活动吗?是的,您可以使用Intents.Ok在后面启动它们。谢谢第二个和第三个活动看起来像子活动吗?是的,您可以使用意图在后面启动它们。