Android教程:将应用程序导入到Android源码树

在做Android开发时,有时需要事先将应用程序烧写到板子上去而不必让用户在板子出厂后自行安装。将应用导入到android源码树可以分为两种情况:应用的apk文件和源码工程,下面将一一介绍。


apk文件形式导入

1、在应用程序所在目录创建文件夹

mkdir Hello

2、将Hello.apk拷贝到刚才所创建的文件夹下

3、在apk同级创建Android.mk文件

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := Hello.apk

LOCAL_MODULE_TAGS := eng

LOCAL_MODULE_CLASS := EXECUTABLE

LOCAL_MODULE_PATH := $(TARGET_OUT_APPS)

LOCAL_SRC_FILES := $(LOCAL_MODULE)

include $(BUILD_PREBUILT)

4、到android根目录进行编译

make


应用源码形式导入

1、在应用程序所在目录创建文件夹

mkdir Hello

2、将eclipse里的工程拷贝到Hello里

3、新建Android.mk文件

LOCAL_PATH:= $(call my-dir) 

include $(CLEAR_VARS)


LOCAL_SRC_FILES := $(call all-java-files-under, src)

LOCAL_PACKAGE_NAME := Hello

LOCAL_MODULE_TAGS := eng 

include $(BUILD_PACKAGE)

4、到android根目录进行编译

make

5、如果java中调用了c库,则工程中会有个jni目录

这里的Android.mk是用来编译C文件产生lib*.so的,如

LOCAL_PATH := $(call my-dir) 

include $(CLEAR_VARS) 

LOCAL_MODULE := SerialPort(java中System.loadLibray()使用) 

LOCAL_SRC_FILES := SerialPort.c

LOCAL_LDLIBS := -llog 

include $(BUILD_SHARED_LIBRARY)

6、此时工程的Android.mk可如下

LOCAL_PATH:= $(call my-dir) 

include $(CLEAR_VARS) 

LOCAL_MODULE_TAGS := eng 

LOCAL_SRC_FILES := $(call all-java-files-under, src) 

LOCAL_PACKAGE_NAME := testApp 

LOCAL_CERTIFICATE := platform 

LOCAL_JNI_SHARED_LIBRARIES := libserial_port 

LOCAL_PROGUARD_ENABLED := disabled 

include $(BUILD_PACKAGE) 

include $(call all-makefiles-under,$(LOCAL_PATH))

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/ppsdf.html