安卓8.1内置app


版权声明:本文为CSDN博主「sunsusn」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u012937108/article/details/74017748

1、前提:
 studio已编译好的app 并已经签名

 拥有系统源码

2、添加app到系统
将编译号的app在windows中解压,并得到 lib 文件夹,其中有很多的动态链接库(.so)

将编译好的apk如test.apk放到系统源码的packages/apps/test(test 自己创建的)中,

把上面解压的lib文件夹也放到test中,

3、编写Android.mk文件
include $(CLEAR_VARS)
# Module name should match apk name to be installed
LOCAL_MODULE := Test
LOCAL_MODULE_TAGS := optional  //不管是user 还是eng 版本都会编译此app
LOCAL_SRC_FILES := $(LOCAL_MODULE).apk
LOCAL_MODULE_CLASS := APPS
LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)
LOCAL_PREBUILT_JNI_LIBS := \
    @lib/armeabi/libtest.so \  //注意前面要用tab键隔开
    @lib/armeabi/libtest2.so   //这是你需要添加的so 如果是 armeabi-v7a 直接替换掉armeabi
LOCAL_CERTIFICATE := PRESIGNED  //表示app已经签名
include $(BUILD_PREBUILT)
如果so文件是32位,而源码是针对64机器的,那么还需要在android.mk文件中加上
LOCAL_MULTILIB := 32
4、在系统预置app的配置文件中添加我们目录
我的系统源码的配置文件在bulid/target/product/generic.mk 这个文件中又包含其他的配置文件,最终就是在配置文件中的 PRODUCT_PACKAGES 标志下添加你的test目录

PRODUCT_PACKAGES := \
    Bluetooth \
    Camera2 \
    Gallery2 \
    Music \
    MusicFX \
    OneTimeInitializer \
    Provision \
    SystemUI \
    WallpaperCropper\

    test

这样就可以了


第二种方法


版权声明:本文为CSDN博主「copyworker」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/yesdehua/article/details/80350905

在 package/apps/3rd-party 下面以需要预置的apk名字新建文件夹,以预置 facebook 为例。
将 facebook.apk 放到 package/apps/3rd-party/facebook 中。
在 package/apps/3rd-party/facebook 下面创建文件 Android.mk,文件内容如下
在 build/make/target/product/core.mk或device/mediatek/common/device.mk中添加PRODUCT_PACKAGES += facebook
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)

# Module name should match apk name to be installed
LOCAL_MODULE := facebook
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)

请注意:

若需要apk作为32bit的apk运行,则需要在Android.mk中定义
LOCAL_MULTILIB :=32
如需指定apk预置路径,需在Android.mk中定义LOCAL_MODULE_PATH :=xxxxx
实现apk可卸载在
vendor/mediatek/proprietary/frameworks/base/data/etc/pms_sysapp_removable_system_list.txt中添加facebook包名即可。最后重新build整个工程。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值