有时候我们需要在源码环境中增加自己的应用或模块,随ROM一起发布。

下面讲述相关步骤:

1. 首先可以在SDK环境下进行编码设计(如果你的APP不涉及到emulator无法模拟的硬件的话)

也可以参考另一篇文章,直接在Eclipse中调试系统级应用源代码:

Android:基于Eclipse编译调试系统级应用源代码

2. 在SDK环境基本调试OK

3. 将源代码复制到 $Android_Src/packages/apps/目录下,假设你的模块为 MyApplication

4. 在MyApplication目录下新建一个Android.mk文件,可以从android自带的App下复制过来修改,如Calculator2下面的Android.mk,CleanSpec.mk也一并复制过来

5. 修改Android.mk:

[html] view plaincopy
  1. LOCAL_PATH := $(call my-dir)
  2. include $(CLEAR_VARS)
  3. LOCAL_MODULE_TAGS := optional
  4. #import gson lib
  5. LOCAL_STATIC_JAVA_LIBRARIES := libgson
  6. LOCAL_SRC_FILES := $(call all-java-files-under, src)
  7. LOCAL_SDK_VERSION := current
  8. LOCAL_PACKAGE_NAME := MyApplication
  9. include $(BUILD_PACKAGE)
  10. ##################################################
  11. include $(CLEAR_VARS)
  12. #Add gson support
  13. LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := libgson:libs/gson-2.2.2.jar
  14. include $(BUILD_MULTI_PREBUILT)
  15. # Use the folloing include to make our test apk.
  16. include $(call all-makefiles-under,$(LOCAL_PATH))

6. 修改 $Android_Src/build/target/product/common.mk

[html] view plaincopy
  1. #andy@2012.9.19,same as LOCAL_PACKAGE_NAME defined in Android.mk
  2. PRODUCT_PACKAGES += MyApplication
  3. #add before this line
  4. $(call inherit-product, $(SRC_TARGET_DIR)/product/core.mk)

7.编译:

. /build/envsetup.sh

mmm packages/apps/MyApplication

make snod

或全编译

生成的apk在 out/target/product/相关目录下,跟具体的项目相关

在ROM中会在/system/app下

FAQ:

Q:编译时出现android lasses-full-debug.jar] Error 41

A:将该模块目录下的gen和bin目录删除后编译

基于第三方apk内置到ROM参考另外一篇文章:

Android:源码环境下移植第三方的apk内置到ROM(System Image)中

转载于:https://www.cnblogs.com/Free-Thinker/p/4501309.html

Android:源码环境编译自定义的APP到ROM(System Image)中相关推荐

  1. java编译使用androidsdk,详解Android源码的编译

    本文将为大家介绍的是如何设置Android源码的编译环境,包括Linux下的配置.主要基于Android 1.0环境,希望对大家了解Android开发有所帮助. 本次编译过程主要参考官方文档(http ...

  2. Android源码环境搭建(aosp Ubuntu 16.04)

    Android源码环境搭建(aosp Ubuntu 16.04) FrameWork入门课视频链接:https://edu.csdn.net/course/detail/30298 FrameWork ...

  3. 简诉android源代码编译过程,详解Android源码的编译

    在这里我们将介绍的是Android源码的编译,主要基于Android 1.0环境下.希望对大家有所帮助. 本文将为大家介绍的是如何设置Android源码的编译环境,包括Linux下的配置.主要基于An ...

  4. android 清华镜像,清华镜像网站下载android源码并编译

    8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? 下载android源码方法: 我的系统是ubuntu 18.04,主要参考了blog通过清华大学镜像下载Android源 ...

  5. Android Studio 创建的app放到Android 源码下编译

    文章目录 环境 步骤 创建一个Android Studio 新项目 编写编译脚本 Android.mk Android.bp 环境 Android Studio版本: Android Studio D ...

  6. android源码环境下编译fourthling.cling库的依赖问题

    记录下,编译fourthline.cling静态库的依赖问题. 1,因为需要在android的源码环境下调试依赖cling的投屏,需要将fourthline.cling编译为静态库. 首先预制依赖的. ...

  7. Ubuntu18.04系统编译android源码环境配置

    1. 前言 我们做andorid系统开发,肯定时刻与源码打交到,特别是做新项目时,最重要的事情就是下载源码,然后配置环境编译,假如你的电脑是刚重装系统过,一个全新的开发环境,那么首要解决的事情就是完善 ...

  8. 详解Android源码的编译

    编译环境:Ubuntu8.10 1.安装一些环境 1.sudo apt-get install build-essential 2. sudo apt-get install make 3. sudo ...

  9. linux编译android源码,ubuntu16.04 Android源码下载编译

    本次编译源码的电脑为Ubuntu 16.04,4核 + 4G内存. 注. 对于电脑配置低的建议不要编译7.0以上的版本,就像我这台电脑,基本编译7.0以上都会报内存不足问题,因为在7.0版以上andr ...

最新文章

  1. 迄今为止程序员写过的最大Bug:亏损30亿、致6人死亡,甚至差点毁灭世界
  2. 如何写好数据分析师简历
  3. textview 滚动显示.txt
  4. 理解HTTP协议中的multipart/form-data
  5. 【leetcode记录01】 数组
  6. 算法----最大承载量下的最大价值问题
  7. 事件CEvent的使用
  8. React中StrictMode严格模式
  9. 【Python】安装方法小结
  10. java ip解析_java域名解析
  11. python语法学习第一天--变量、运算符、数据类型
  12. 使用javascript操作cookies的实例
  13. 2022 github新建账号技巧
  14. 计算机怎么建多个ppt,电脑怎么将多个PPT文件合并成一个
  15. grpc编译问题:“C++ versions less than C++11 are not supported.
  16. 访问和操作H2数据库
  17. 【密码学】费马小定理素性检测(C++代码实现)
  18. 编程求ax2+bx+c=0的解
  19. 洛谷 P2495 消耗战(虚树)
  20. 微信iPad协议(8013)

热门文章

  1. Collection和Collections区别
  2. java关键字整理_【java基础知识整理】java基础语法之关键字
  3. 盘点Linux下19 个有趣的命令!
  4. 各大高校女生节横幅来袭,个个都是段子手
  5. SQL Server 涉及数据库安全常用SQL语句
  6. MongoDB常用语句
  7. element ui 空格_空格是您的UI朋友。 大量使用它。
  8. 面向对象笔试题练习一
  9. go语言中的方法method
  10. memcache的学习路线图