提升APP的体验(一):秒启动
在Adnroid5.0开始,Google引入了一个新的概念,秒启动。简单来说就是在APP启动之前创建一个纯白或纯黑的activity,减少用户从桌面点击应用图标到看见应用界面的时间,这一过程就是秒启动。
当然,如果是用Java开发,可以写一个splash.xml创建一个Activity,自定义内容,也就是 酷安、QQ、微信、淘宝之类软件的秒启动方案。
但是,仔细观察E4A软件,,你会发现,明显在点击APP之后有个等待时间,之后才会显示你的窗口,这有种输在起跑线上的感觉。。
目前我对原生Android开发还停留在入门阶段,,所以写APP还是依赖的E4A,经过我的研究,发现在Adnroid5.0系统以上,APP在启动时无论开发者有没有定义秒启动方案,都会创建一个白色或黑色的界面(视你主题而定),达到秒启的效果,那么,,E4A程序为毛还是没有呢。。
经过一段时间的蜜汁研究,E4A程序启动时的大致流程:
{桌面点击>com.e4a.runtime.android.StartActivity>com.e4a.runtime.android.mainActivity}
参照E4A的核心jar,发现com.e4a.runtime.android.StartActivity只有一个用处,展示调试版APP的启动图,,那么,为什么没有白色Activity,因为E4A程序是有秒启动图的,只不过付费版用户是透明的(当然,我宁愿透明也不要E4A官方的启动图),那么,解决方法就出来了。
1.首先,自定义AndroidMainfest.xml
2.找到com.e4a.runtime.android.StartActivity的intent-filter分支
3.将 <category android:name="android.intent.category.LAUNCHER"/>剪贴到com.e4a.runtime.android.mainActivity中,并删掉com.e4a.runtime.android.StartActivity中的intent-filter标签(删掉整个Activity也行)
4.确认无误,保存
编译你的项目,你会惊喜的发现,你也和其他APP一样秒启APP了(虽然是白色,但总比没有好)。慢人一步的感觉也没有了,,是不是美滋滋?
最后,附上测试程序,在启动时使用延时操作,常规情况会卡黑屏,而使用这个方法,在启动时是Android默认的秒启方案。
[cv]
本教程转载自 易如意论坛
么么么么么么
我我我我我我我我我我我
[F1] [F1] [F1]
优秀
3333333333333
5556555
[smile5] [smile6]
很好