版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_42072033/article/details/109778230
大家好,你们的锦荣同学又来了,下周公司组织去丽江玩,我这周就再努力一下^_^。今天依旧是给大家带来一个Android系统层开发常见的问题。
我们都知道Android系统里有设置,时钟,图库,相机,联系人等等核心应用,这些应用都有一个共同点,就是它们都是系统级应用,拥有很高的权限去做一些我们平时无法做到的功能,比如关机,重启,系统升级等等。那么我们也能做出这种系统级应用么?答案是肯定的。
这里小伙伴们就会说了,这个很简单,用AndroidStudio生成一个apk,在AndroidManifest.xml里配置一下,放到系统的system或者vendor的 app或者priv-app目录下,修改Android.mk编译文件,编译烧录就可以完成了。那么我是100%同意这个说法的,而且这种做法也是可行的。但是,如果我们做一个与机器视觉,算法或者一个逻辑和动画复杂度很高的项目时,需要不停的去根据apk产生的实际效果来实时调整我们的代码时,那么系统不停的编译和机器不停的烧录(哪怕你是只烧录system.img)都会极大的浪费我们的工作时间,降低我们的工作效率。
那么有没有一种方法,可以不用进行系统编译,不用进行机器烧录,就能直接让我们AndroidStudio编译出的apk成为系统apk,这就进入到今天的主题了,下面我就带大家实战看看如何让AS自写APK系统化。我们还是用上篇博客的那个apk,改一改,点击按钮机器关机。
/**
* 关机
*
* @param mContext
*/
public static void shutDown(Context mContext) {
try {
Intent newIntent = new Intent("com.android.internal.intent.action.REQUEST_S