android.intent.action.MAIN 與 android.intent.category.LAUNCHER 的驗證理解


第一種情況:有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.     <uses-sdk android:minSdkVersion="10" />
  7.     <application
  8.         android:icon="@drawable/ic_launcher"
  9.          >
  10.         
  11.         <activity
  12.             android:name=". Lift_cycles 01"
  13.             android:label="@string/app_name1" >
  14.             <intent-filter>
  15.                 <action android:name="android.intent.action.MAIN" />
  16.                 <category android:name="android.intent.category.LAUNCHER" />
  17.             </intent-filter>
  18.         </activity>
  19.         
  20.         <activity
  21.             android:name=".Lift_cycles 02 "
  22.             android:label="@string/app_name2" >
  23.             <intent-filter>
  24.                 <action android:name="android.intent.action.MAIN" />
  25.                 <category android:name="android.intent.category.LAUNCHER" />
  26.             </intent-filter>
  27.         </activity>
  28.         
  29.     </application>
  30. </manifest>
只有最前面的Activity的 <action android:name="android.intent.action.MAIN"/> 有效,啟動該程序時,執行的是該Activity,而因為兩個activity同時設定,所以會出現兩個圖標,如下圖:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM