android framework-Pixel3真机系统内置第三方apk实战

一、在/packages/apps创建独一无二的文件夹TestCamera

二、拷贝第三方应用到TestCamera文件夹下

三、创建Android.mk

C 复制代码
LOCAL_PATH:= $(call my-dir)

include $(CLEAR_VARS)
# Module name should match apk name to be installed
LOCAL_MODULE := TestCamera
LOCAL_MODULE_TAGS := optional
LOCAL_SRC_FILES := $(LOCAL_MODULE).apk
LOCAL_MODULE_CLASS := APPS
LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)
LOCAL_CERTIFICATE := PRESIGNED
include $(BUILD_PREBUILT)

四、查找配置文件,并配置自己的到配置文件里面

4.1、grep查找

复制代码
grep "Launcher3" ./ -rn
  • ./make/target/product/mainline_arm64.mk 这个是系统应用的配置

  • ./make/target/product/handheld_product.mk 这个就是我们要配置的文件

    在下面添加我们新增的

五、编译并刷入Pixel真机

1、source build/envset.sh

2、lunch并且选择对应的product

3、make

4、adb devices(检查设备是否连接)

5、adb reboot bootloader(重启设备,进入fastboot状态)

6、fastboot devices(检查进入fastboot状态的设备)

7、fastboot flashall -w(刷入ANDROID_PRODUCT_OUT下的所有镜像文件)

六、真机验证

可以看到,该应用是无法卸载的

普通应用是可以卸载的

相关推荐
alexhilton20 小时前
如何用Perfetto来对启动优化去伪存真
android·kotlin·android jetpack
赏金术士21 小时前
Kotlin 从入门到进阶 之函数模块(核心基础)(二)
android·开发语言·kotlin
鱼儿也有烦恼1 天前
8 issues were found when checking AAR metadata:
android
HalvmånEver1 天前
MySQL的索引
android·linux·数据库·学习·mysql
赏金术士1 天前
Kotlin 从入门到进阶 之作用域函数 & 优雅写法(五)
android·开发语言·kotlin
Ehtan_Zheng1 天前
Android Compose 动画实践:内容切换与页面转场
android
Crystal3281 天前
【终极指南】前端方面解决 uni-app APP 端 SSE 流式请求被缓冲拦截、无法实时渲染的问题
android·前端·ai编程
陆业聪1 天前
技术选型决策树:什么团队、什么项目该选什么框架 | 跨平台框架深度对决(4)
android·架构设计
JohnnyDeng941 天前
Kotlin 协程原理与 Android 中的最佳实践
android·kotlin·协程
Aleyn1 天前
用 KSP 给 Navigation 3 加一层「跨模块路由」:nav3-helper 设计与使用
android·android jetpack·composer