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

Tulla ·
更新时间:2024-11-10
· 741 次阅读

编译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 您可能感兴趣的文章:Android 如何修改APK的默认名称Gradle编译打包Android apk详细介绍Android Apk去掉签名以及重新签名的方法Android实现用代码简单安装和卸载APK的方法Android获取apk签名指纹的md5值(防止重新被打包)的实现方法为Android的apk应用程序文件加壳以防止反编译的教程Android开发apk反编译和二次打包教程Android应用开发中实现apk皮肤文件换肤的思路分析给Android的APK程序签名和重新签名的方法Android应用程序(APK)的编译打包过程



方法 执行命令 apk 源码 Android

需要 登录 后方可回复, 如果你还没有账号请 注册新账号
相关文章