android.intent.action.MAIN與android.intent.category.LAUNCHER


android.intent.action.MAIN
決定應用程序最先啟動的Activity

android.intent.category.LAUNCHER
決定應用程序是否顯示在程序列表里

在網上看到文章

android.intent.action.MAIN 與 android.intent.category.LAUNCHER

一直知道加上這2個東西就表示程序啟動時最先啟動的Activity上網查了下這么說的:

android.intent.action.MAIN決定應用程序最先啟動的

activity android.intent.category.LAUNCHER決定應用程序是否顯示在程序列表里

如果只有一個activity的應用程序只聲明了      android.intent.action.MAIN ,沒有聲android.intent.category.LAUNCHER,eclipse運行是將報錯:


但是在桌面中圖標中找不到

如果一個應用沒有LAUNCHER則該apk仍能安裝到設備上,但是在桌面中圖標中看不到。如果給那個Activity 設定了LAUNCHER,且同時設定了Main,則這個Activity就可出現在程序圖標中;如果沒有Main,則不知啟動哪個Activity,故也不會有圖標出現。

所以啊~~main和launcher必須一起出現,

      如果存在多個activity都聲明了android.intent.action.MAIN與android.intent.category.LAUNCHER會出現什么情況呢?------------------將會有多個圖標顯示在桌面上。
我又閑的試了試給2個Activity都加入了main和launcher

發現你的哪個Activity在前面哪個就先啟動,而在程序列表里有2個程序圖標分別運行,顯示的結果可想而知,分別是那兩個Activity,就是兩個圖標。

代碼如下:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.xunfang.demo"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="21" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:icon="@android:drawable/stat_notify_call_mute"
            android:name=".Second"
            android:label="我是副界面" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
         <activity
            android:icon="@android:drawable/ic_input_add"
            android:name=".MainActivity"
            android:label="我是主界面" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

 


免責聲明!

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



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