欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 房产 > 家装 > android12源码中用第三方APK替换原生launcher

android12源码中用第三方APK替换原生launcher

2025/2/3 3:14:59 来源:https://blog.csdn.net/mffandxx/article/details/145316408  浏览:    关键词:android12源码中用第三方APK替换原生launcher

一、前言

如何用第三方的apk替换原生launcher呢?我是参考着这位大神的博客https://blog.csdn.net/hyu001/article/details/131044358做的,完美实现。
这边博客中又加入了我个人的一些改变,整理的。

二、步骤

1.在/packages/apps/MyApp文件夹,将MyApp.apk文件复制到此文件夹,新建Android.mk文件,写入以下配置信息:

LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := duduCar
LOCAL_MODULE_TAGS := optional
LOCAL_SRC_FILES := $(LOCAL_MODULE).apk
LOCAL_MODULE_CLASS := APPS
​
LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)
​
​
#获得apk中 armeabi-v7a 下所有的so
#define get-all-libraries-module-name-in-subdirs
#$(sort $(shell cd $(LOCAL_PATH) ; rm -rf lib >/dev/null ; unzip $(LOCAL_MODULE).apk 'lib/armeabi-v7a/*.so' -d . >/dev/null ; #find -L $(1) -name "*.so"))
#endef
#ALL_LIBRARIES_MODULE_NAME := $(call get-all-libraries-module-name-in-subdirs, lib/armeabi-v7a)
#LOCAL_PREBUILT_JNI_LIBS := $(ALL_LIBRARIES_MODULE_NAME)
​
LOCAL_OVERRIDES_PACKAGES := Launcher2 Launcher3 Launcher3QuickStep CarLauncher
​
LOCAL_CERTIFICATE := PRESIGNED
include $(BUILD_PREBUILT)

请注意,如果你的apk中有.so文件,那么,你需要将上面代码中的注释的代码给放开。
2.修改/build/target/product/下的base_system.mk文件,添加"MyApp"

# Packages included only for eng or userdebug builds, previously debug tagged
PRODUCT_PACKAGES_DEBUG := \*********************************unwind_symbols \MyApp \     //添加此行

3.修改/build/target/product/下的handheld_system_ext.mk文件,刪除"Launcher3QuickStep "

# /system_ext packages
PRODUCT_PACKAGES += \Provision \Settings \StorageManager \SystemUI \WallpaperCropper \

4.重新编译

make clobber  # 清除这一步一定要加上,否则会编译报错
source build/envsetup.sh # 导入环境
lunch sdk_phone_x86_64 # 选择系统
make -j12  # 编译
make snod  # 快速打包生成最新的system.img文件(这个命令是必须的,要不模拟器会黑屏,不显示内容)
emulator #启动模拟器

编译过程非常耗时,请耐心等待。当你再启动模拟器时,原生的Launcher就不会再出现了,出现的是你自己的Launcher

结尾

好了就讲到这里吧,希望对大家有所帮助

参考资料

https://blog.csdn.net/hyu001/article/details/131044358)https://blog.csdn.net/hyu001/article/details/131044358

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com