Android开发之入口Activity

壮心未与年俱老,死去犹能作鬼雄。这篇文章主要讲述Android开发之入口Activity相关的知识,希望能为你提供帮助。
原文:Android开发之入口Activityandroid开发之入口ActivityAdnroid App是如何确定入口Activity的?难道就因为class的类名叫MainActivity,布局文件叫activity_main.xml?
如果这样认为,就大错特错了。
之所以能够确定入口Activity,是因为在应用的清单文件中有所配置,系统会根据应用的清单文件(AndroidManifest.xml)来确立.
如何确立,标志是什么?
我们来看一下清单文件,便一目了然:

Android开发之入口Activity

文章图片

对了,系统能够确立就是因为红线标注的意图过滤器intent-filter
系统会在清单文件中访问所有的intent-filter,直到发现如下代码:
< action android:name="android.intent.action.MAIN" /> < category android:name="android.intent.category.LAUNCHER" />

根据其所在activity的name,找到需要启动的activity的实体类。
那我们能否定义两个入口Activity呢?
答案是肯定的。我们不妨来试验一下,再次新建一个Activity,命名为SecondActivity,并在清单文件中注册该activity,同样将其意图过滤器设置为主activity
如图所示:
Android开发之入口Activity

文章图片

另外,我们还会发现一个有趣的现象:
Android开发之入口Activity

文章图片

是不是发现,启动一个应用生成了两个图标,是的,每个入口activity都会相应的生成一个图标,与之对应。
【Android开发之入口Activity】当我们点击Test图标的时候,会进入MainActivity,但我们点击SecondActivity图标的时候会进入SecondActivity,也就是说一个应用有两个入口,这样明显是不好的,我们应当严格规定,只能有一个入口activity,莫要奇葩行事!!!


    推荐阅读