理解android.intent.action.MAIN 与 android.intent.category.LAUNCHER

《第一行代码》中这么解释的:

 name=
"android.intent.action.MAIN" /> 和 name="android.intent.category.
LAUNCHER" /> 表示 HelloWorldActivity是这个项目的主活动,在手机上点击应用图标,首先启动
的就是这个活动。

刚才看了一下sundy的视频《LLY110426_Android应用程序启动》,里面讲到luncher这个activity通过获取应用程序信息来加载应用程序,显示给用户,其中就是通过一个应用程序中的AndroidManifest.xml中的声明来识别的。

其中android.intent.action.MAIN 与 android.intent.category.LAUNCHER 决定应用程序在luncher中的显示方式;

两者的作用如下:

      android.intent.action.MAIN决定应用程序最先启动的Activity

       android.intent.category.LAUNCHER决定应用程序是否显示在程序列表里

      所以:

               如果只有一个activity的应用程序只声明了      android.intent.action.MAIN ,没有声明       android.intent.category.LAUNCHER,eclipse运行是将报错:


      如果存在多个activity都声明了android.intent.action.MAIN与android.intent.category.LAUNCHER会出现什么情况呢?——————将会有多个图标显示在桌面上。

验证如下,新建工程,其中AndroidManifest.xml如下




    


    
        
            
                


                
            
        
        
            
                


                
            
        
    





桌面显示结果为:
理解android.intent.action.MAIN 与 android.intent.category.LAUNCHER_第1张图片

经过各种实验:

两个属性都是成对出现的,必须出现在一个activity标签里面。否则会报错!!!

转载地址

你可能感兴趣的:(Android)