欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

利用源码编译Android系统的APK和可执行命令的方法

程序员文章站 2024-02-22 19:35:58
编译android系统apk 1、设置环境 export android_home=/home/administrator/soft/android ex...

编译android系统apk
1、设置环境

export android_home=/home/administrator/soft/android
export path=$path:$android_home/out/host/linux-x86/bin
export android_product_out=$android_home/out/target/product/generic

2、创建项目

android create project -t 1 -k com.lhw.led -a mainactivity -p ./led
avd id: 1,it's get by command "android list"

project name: led
package: com.lhw.led 

main activity:mainactivity

project path: ./

接下来就是自己编写android程序了。

3、编写android.mk
android.mk需要放在项目根路径下,即led下,内容:

local_path       := $(call my-dir)

include $(clear_vars)
local_src_files     := $(call all-subdir-java-files)
local_package_name   := led 

local_java_libraries  := 
local_static_java_libraries :=

include $(build_package)


4、编译
在android源码目录下执行:

./build/envsetup.sh
mmm /home/administrator/workspace/android_test/led/

执行结果:

install: out/target/product/generic/system/app/led.apk


编译android系统可执行命令

android系统允许开发者,自己编写"ls"这样的命令放到android系统中。

1、编写c文件:mycmd.c

#include <stdio.h> 
 
int main(int argc, char **argv) 
{ 
  printf("this is my command!\n"); 
  return 0; 
} 

2、编写android.mk文件

local_path   := $(call my-dir) 
 
local_src_files := mycmd.c 
local_module  := mycmd 
local_module_tags := mycmd 
local_shared_libraries := libc 
local_static_libraries := 
 
include $(build_executable)  


3、编译

mmm /home/administrator/workspace/android_test/mycmd/

编译完成后信息:

 install: out/target/product/generic/system/bin/mycmd