zoukankan      html  css  js  c++  java
  • 把第三方或自己开发的apk文件编译到系统文件(system.img)中的方法:

    把第三方或自己开发的apk文件编译到系统文件(system.img)中的方法:
    1  (1)源码编译后,把apk拷贝到out\target\product\generic\system\app中。
        (2) 执行命令make snod , 把添加的spk编到system.img 中
       缺点:执行make clean 后,再次make 完毕需要重新执行上面操作。
    2  "方法一"的改进。
        (1) 新建一个文件夹目录,用来存放apk文件
                 mkdir packages/apps/Prebuilt_apps
                 cd packages/apps/Prebuilt_apps
                 在Prebuilt_apps中新建make文件
                 vi Android.mk
                 并写入
                 LOCAL_PATH := $(call my-dir)
                 include $(CLEAR_VARS)
                 LOCAL_POST_PROCESS_COMMAND := $(shell cp -r $(LOCAL_PATH)/*.apk $(TARGET_OUT)/app/)
                 保存退出。
        (2) 把需要编译的apk拷贝到目录Prebuilt_apps下,执行make ,Prebuilt_apps中的apk就会考被到out\target\product\generic\system\app中。
         (3) 执行make snod 。完成。
        此方法执行make clean 后,再次make 完毕,只需要make snod即可(有时make后,out\target\product\generic\system\app没有需要添加的apk,此时再make一次即可,速度很快)。

    -----------------------
    感谢11楼提供的关于编译成功但无法运行问题的解决方法。
    解压apk,如其中lib(.so)文件,把 .so文件copy到system\lib下,再编译。
    本人在模拟器上直接加入angrybird.apk(愤怒的小鸟)编译,编译后无法运行。把libangrybirds.so拷贝到system\lib下,再编译后就可以运行。
    触宝输入法apk使用此方法也可编译运行成功。
    --------------------
    使用mkyaffs2image工具,使上面的操作更简单!
    把apk及相关文件(如.so)拷贝到system的相应路径下,执行 mkyaffs2image -f direction/system system.img,即可生成system.img

    yaffs.zip

    18.83 KB, 下载次数: 25

    包含mkyaffs2image和unyaffs


  • 相关阅读:
    Centos 7 zabbix 实战应用
    Centos7 Zabbix添加主机、图形、触发器
    Centos7 Zabbix监控部署
    Centos7 Ntp 时间服务器
    Linux 150命令之查看文件及内容处理命令 cat tac less head tail cut
    Kickstart 安装centos7
    Centos7与Centos6的区别
    Linux 150命令之 文件和目录操作命令 chattr lsattr find
    Linux 发展史与vm安装linux centos 6.9
    Linux介绍
  • 原文地址:https://www.cnblogs.com/yuzaipiaofei/p/4124332.html
Copyright © 2011-2022 走看看