【Android(安卓)开发教程】解决Intent-Filter的冲突
16lz
2021-01-25
本章节翻译自《Beginning-Android-4-Application-Development》,如有翻译不当的地方,敬请指出。
原书购买地址http://www.amazon.com/Beginning-Android-4-Application-Development/dp/1118199545/我们已经知道<intent-filter>用来定义你的Activity如何被另外的Activity开启,这就是所谓的“过滤器”。但是,如果有两个Activity有相同的<intent-filter>,那将发生什么呢?
AndroidManifest.xml中的代码。
[java] view plain copy- <?xmlversion="1.0"encoding="utf-8"?>
- <manifestxmlns:android="http://schemas.android.com/apk/res/android"
- package="net.horsttnann.UsingIntent"
- android:versionCode="1"
- android:versionName="1.0">
- <uses-sdkandroid:minSdkVersion="14"/>
- <application
- android:icon="@drawable/ic_launcher"
- android:label="@string/app_name">
- <activity
- android:label="@string/app_name"
- android:name=".UsingIntentActivity">
- <intent-filter>
- <actionandroid:name="android.intent.action.MAIN"/>
- <categoryandroid:name="android.intent.category.LAUNCHER"/>
- </intent-filter>
- </activity>
- <activity
- android:label="SecondActivity"
- android:name=".SecondActivity">
- <intent-filter>
- <actionandroid:name="net.horsttnann.SecondActivity"/>
- <categoryandroid:name="android.intent.category.DEFAULT"/>
- </intent-filter>
- </activity>
- <activity
- android:label="ThirdActivity"
- android:name=".ThirdActivity">
- <intent-filter>
- <actionandroid:name="net.horsttnann.SecondActivity"/>
- <categoryandroid:name="android.intent.category.DEFAULT"/>
- </intent-filter>
- </activity>
- </application>
- </manifest>
分析:
如果想清除“默认选择”的Activity信息,可以去Settings->Applications->Manage applications界面,选择应用UsingIntent,将视图滑动到最底部,点击Cear Defaults按钮。
更多相关文章
- 【Android(安卓)开发教程】使用Intent-Filter
- 【Android(安卓)开发教程】TableLayout表格布局
- android 显示单选列表对话框 builder.setSingleChoiceItems
- android widget简单开发三之实时刷新widget
- Activity四种启动模式
- Android之FloatingActionButton使用
- 安卓应用的界面编程(2)
- GestureLibrary增加手势笔记
- Android(安卓)中文 API (30) —— CompoundButton.OnCheckedChange