[android]清单文件中MAIN与LAUNCHER的区别


MAIN 和 LAUNCHER,之前一直不注意这两个有区别,写程序的时候都放到一个filter中,前两天面试问到了,总结一下:

MAIN指定了程序入口地址。

LAUNCHER是程序在手机桌面上的图标。

如果只设置了MAIN,没有设置LAUNCHER,则程序可以被安装到手机,但是在桌面看不到APP的图标,所以也就无法启动APP。

如果只设置了LAUNCHER,没有设置MAIN,则程序不知道从哪个Activity启动,所以也就不会在桌面显示图标。

如果给多个Activity设置了MAIN和LAUNCHER,则会在桌面显示多个APP图标,进入分别设置的Activity中。

<pre name="code" class="java">        <activity
            android:name="com.example...."
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

时间: 2024-08-01 16:44:47

[android]清单文件中MAIN与LAUNCHER的区别的相关文章

(备忘)android清单文件中&lt;meta-data&gt;标签,以及&lt;intent-filter&gt;下的&lt;data&gt;标签及其他标签

1.metadata可以写在application下也可以写在activity下,作为全局或activity内共享的数据 以键值对形式保存 <meta-data android:name="com.XXX.uuid" android:value="XXXX" /> 2.data标签是intent-filter的子标签,限定了intent的mimetype <data android:scheme="file" /> 3.&

Android manifest文件中的标签详细介绍

概要 每一个Android应用都应该包含一个manifest文件,即AndroidManifest.xml.它包含了程序运行的一些必备信息,比如: --为Java应用程序指定一个独一无二的名字. --描述程序所包括的成分,如activities, services, broadcast receivers和content providers等内容. --定义哪一个成分是主要的.比如主线程等. --声明程序正常运行所需要的权限.比如,读写SD卡等. --声明该程序的API Level,低于该API

Android layout文件中 &#39;?&#39; 的作用

在Android layout文件中,属性引用资源一般使用@,例如 android:textColor="@color/white" 但在一些系统文件中我们也可以看到有这样的写法 android:textColor="?android:color/textColor" 我们知道@是引用已经定义好的资源,如@color/white.@android:color/white,那 '?' 呢?下面是文档中的解释 Referencing style attributes A

Android资源文件中各种XML的作用与解释

众所周知,XML是一种可扩展标记语言,它被用来传输和存储数据.在Android中也会随处可见XML文件,包括一个android项目不可缺少的AndroidManifest.xml清单文件,res资源文件目录下的anim/drawable/layout/menu/values中等,目录截图如下.其中清单文件中内容最多最复杂,完全可以在其他文章中再来讲解,所以本文主要讲解res目录下的XML的作用与内容. 一.anim目录 anim目录下的xml主要是用于android中的动画,包括Frame an

Android清单文件合并的那些事

APK文件只能包含一个AndroidManifest.xml文件,但Android Studio项目可以包含多个文件(通过buildSrc.导入的库引入).因此,在构建应用时,Gradle构建会将所有清单文件合并到一个封装的APK的清单文件中. 清单文件合并优先级 清单合并工具 可以使用Merged Manifest视图预览合并清单的效果并找出冲突错误. 可以互相合并的基本清单文件,合并优先级如下(优先级由高到低): 清单文件构建变体 如果变体有多个源集,其清单优先级由高到低如下: a.构建变体

Android清单文件

package:应用的唯一标识,和包名有本质的区别 versionCode:版本号,只有高版本才能覆盖低版本 versionName:版本名 minSdkVersion:最低版本,如果需要,直接在清单文件中修改即可 targetSdkVersion:目标版本,如果需要直接在清单文件中修改即可 application节点下的icon:对应管理应用的图标 application节点下的label:对应管理应用的标签 lanchuer的activity的icon:对应应用在桌面上的图标

【转】关于Android资源文件中出现百分号的问题

关于Android资源文件中出现百分号的问题 分类: Android JAVA2014-08-01 16:53 1345人阅读 评论(0) 收藏 举报 ANDROID格式化资源文件 目录(?)[+] 问题编辑strings.xml的时候 在行 [html] view plaincopy <string name="myurl">http://code.dd.com/rr?q=%rr.55</string> 或者 [html] view plaincopy <

vs中 main和_tmain的区别

用过C的人都知道每一个C的程序都会有一个main(),但有时看别人写的程序发现主函数不是int main(),而是int _tmain(),而且头文件也不是<iostream.h>而是<stdafx.h>,会困惑吧? 一起来看看他们有什么关系吧 首先,这个_tmain()是为了支持unicode所使用的main一个别名而已,既然是别名,应该有宏定义过的,在哪里定义的呢?就在那个让你困惑的<stdafx.h>里,有这么两行 #include <stdio.h>

Android清单文件详解(三)----应用程序的根节点&lt;application&gt;

<application>节点是AndroidManifest.xml文件中必须持有的一个节点,它包含在<manifest>节点下.通过<application>节点的相关属性,我们可以声明Android应用程序的相关特性.这个节点包含所有应用程序组件的节点,包括Activity,服务,广播接收器和内容提供者,并且包含了一些可能影响所有组件的属性.这些属性中的其中一些又会作为默认值而被设置到应用程序组件的相同属性上,比如icon,label,permission,pro