1. 指定路径

最简单的办法就是将android studio生成的工程方到源码中,然后添加Android.mk,指定代码和资源路径以及依赖库即可。

LOCAL_SRC_FILES := $(call all-java-files-under, Application/src/main/java) LOCAL_MANIFEST_FILE := Application/src/main/AndroidManifest.xml LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/Application/src/main/res

上面这个方法的好处是可以同时兼顾源码编译和android studio编译(推荐)。

Android.mk 示例

LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)LOCAL_MODULE_TAGS := optional#LOCAL_SRC_FILES := $(call all-subdir-java-files)LOCAL_SRC_FILES := $(call all-java-files-under, Application/src/main/java)LOCAL_PACKAGE_NAME := MyAppLOCAL_CERTIFICATE := platformLOCAL_MANIFEST_FILE := app/src/main/AndroidManifest.xmlLOCAL_RESOURCE_DIR := $(LOCAL_PATH)/Application/src/main/res#LOCAL_PROGUARD_ENABLED := disabled#LOCAL_PROGUARD_FLAG_FILES := proguard.flagsinclude $(BUILD_PACKAGE)

2. 拷贝源码

在AS跟目录编写一个shell脚本cp.sh,需要编译前将所有需要的文件复制过去,再在android源码里编译

 

#!/bin/bashLIBS="app/src/main/libs"SRC="app/src/main/java/*"RES="app/src/main/res"JNI="app/src/main/jni"ANDROIDMANIFEST="app/src/main/AndroidManifest.xml"ANDROIDMK="Android.mk"DES="/path/to/AndroidSourceCode/packages/apps/MyApp"rm -fr $DESmkdir -p $DES/srccp -r $LIBS $DEScp -r $SRC $DES/srccp -r $RES $DEScp -r $JNI $DEScp $ANDROIDMANIFEST $DES cp $ANDROIDMK $DES

在AS工程根目录新建一个Android.mk,将各种依赖配置好,示例里用了fb的conceal演示。

LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)LOCAL_MODULE_TAGS := optionalLOCAL_SRC_FILES := $(call all-subdir-java-files)#LOCAL_CERTIFICATE := platformLOCAL_STATIC_JAVA_LIBRARIES := \        android-support-v4 \        android-support-annotations \        conceal_android \        concealLOCAL_PACKAGE_NAME := MyApp#LOCAL_PROGUARD_ENABLED := disabled#LOCAL_PROGUARD_FLAG_FILES := proguard.flagsLOCAL_JNI_SHARED_LIBRARIES := libconcealinclude $(BUILD_PACKAGE)include $(CLEAR_VARS)LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := \    conceal_android:libs/conceal_android.jar \    conceal:libs/libconceal.jarinclude $(BUILD_MULTI_PREBUILT)include $(CLEAR_VARS)LOCAL_MODULE := libconcealLOCAL_SRC_FILES := libs/armeabi-v7a/libconceal.soLOCAL_MODULE_TAGS := optionalLOCAL_MODULE_SUFFIX := .soLOCAL_MODULE_CLASS := SHARED_LIBRARIESinclude $(BUILD_PREBUILT)include $(call all-makefiles-under,$(LOCAL_PATH))

 

更多相关文章

  1. Android9.0版本Vold服务源码分析之上层处理SD卡挂载
  2. Android(安卓)Retrofit和Rxandroid的使用
  3. android JNI 多线程 C函数回调
  4. android adb shell am一些命令的用法
  5. Android(安卓)IPC 通讯机制源码分析
  6. android ubuntu9.10 源码的编译 Eclipse工程 Contacts编译 应用
  7. Handler Looper Message源码研究
  8. Windows系统下Android(安卓)DNK r5环境配置和开发(三)
  9. android输入法01:SoftKeyboard源码解析03

随机推荐

  1. How Android(安卓)Draws Views
  2. android 打电话 发送短信
  3. Layout1.9
  4. android图片放大 缩小 旋转
  5. Android(安卓)查看本机外网IP
  6. 在Android上使用XML
  7. android系统长按的定义
  8. AndroidMenifest.xml(Android清单文件)内
  9. Android官方资料--A/B System Updates
  10. Android调用摄像头闪退