- lt;/application>
Activity DefaultActivity的category被定义成HOME,并且priority为1,是比系统Launcher启动还要早的程序。
Provision中DefaultActivity的实现如下:
[java] view plain copy
-
public class DefaultActivity extendsActivity {
-
@Override
-
protected void onCreate(Bundle icicle) {
-
super.onCreate(icicle);
-
// Add a persistent setting to allow other apps to know the device hasbeen provisioned.
-
Settings.Secure.putInt(getContentResolver(),Settings.Secure.DEVICE_PROVISIONED, 1);
-
// remove this activity from the package manager.
-
PackageManager pm = getPackageManager();
-
ComponentName name = new ComponentName(this, DefaultActivity.class);
-
pm.setComponentEnabledSetting(name,PackageManager.COMPONENT_ENABLED_STATE_DISABLED, 0);
-
// terminate the activity.
-
finish();
-
}
-
}
DefaultActivity的原生实现只做了两件事:
-
没有UI界面,只是设置Setting项里的Settings.Secure.DEVICE_PROVISIONED为1,指示其他Framework和其他程序,机器已经Provisioned。
-
Line#10~#12之后,Launcher才会被启动,完成整个启动过程。
注意:还没有Provisioned的机器,有些功能的表现是不一样的。比如,如果还没有Provisioned,锁屏程序不会锁屏;对HOME key的处理也不同;电话也是打不进来的,etc。
通过Provision,可以定制:
- 加入一些初始设置项的设定,比如时区/时间初始设定,背景数据是否允许,是否允许安装非Android市场上的程序,等不需要用户干预就可以完成的设置。具体也可看SdkSetup中的DefaultActivity完成的设置,除了多了些设置项的设置,并没有太多区别。
- 加入UI设计,引导用户一步步完成需要用户参与选择或输入的设置过程,也就是Setup Wizard的工作。
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:Android)

最后
其实Android开发的知识点就那么多,面试问来问去还是那么点东西。所以面试没有其他的诀窍,只看你对这些知识点准备的充分程度。so,出去面试时先看看自己复习到了哪个阶段就好。
下图是我进阶学习所积累的历年腾讯、头条、阿里、美团、字节跳动等公司2019-2021年的高频面试题,博主还把这些技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节
整理不易,望各位看官老爷点个关注转发,谢谢!祝大家都能得到自己心仪工作。
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!**