Android.intent.action.MAIN 与 android.intent.category.LAUNCHER 的验证理解

Android技术篇 尼古拉斯.赵四 6961℃ 0评论
第一种情况:有MAIN,无LAUNCHER,程序列表中无图标
原因:android.intent.category.LAUNCHER决定应用程序是否显示在程序列表里 
第二种情况:无MAIN,有LAUNCHER,程序列表中无图标
原因:android.intent.action.MAIN决定应用程序最先启动的Activity,如果没有Main,则不知启动哪个Activity,故也不会有图标出现
console里面两种情况显示一样:
 
下面看一个应用程序可以有两个Activity的情况
  1. <?xml version=“1.0” encoding=“utf-8”?>
  2. <manifest xmlns:android=“http://schemas.android.com/apk/res/android”
  3.     package=“com.studio.android”
  4.     android:versionCode=“1”
  5.     android:versionName=“1.0” >
  6.  
  7.     <usessdk android:minSdkVersion=“10” />
  8.  
  9.     <application
  10.         android:icon=“@drawable/ic_launcher”
  11.          >

  12.         <activity
  13.             android:name=“. Lift_cycles 01
  14.             android:label=“@string/app_name1” >
  15.             <intentfilter>
  16.                 <action android:name=“android.intent.action.MAIN” />
  17.                 <category android:name=“android.intent.category.LAUNCHER” />
  18.             </intentfilter>
  19.         </activity>

  20.         <activity
  21.             android:name=“.Lift_cycles 02 “
  22.             android:label=“@string/app_name2” >
  23.             <intentfilter>
  24.                 <action android:name=“android.intent.action.MAIN” />
  25.                 <category android:name=“android.intent.category.LAUNCHER” />
  26.             </intentfilter>
  27.         </activity>

  28.     </application>
  29.  
  30. </manifest>

只有最前面的Activity的 <action android:name=”android.intent.action.MAIN”/> 有效,启动该程序时,执行的是该Activity,而因为两个activity同时设定,所以会出现两个图标,如下图:

转载请注明:尼古拉斯.赵四 » Android.intent.action.MAIN 与 android.intent.category.LAUNCHER 的验证理解

喜欢 (3)or分享 (0)
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址