2016-01-12 5 views
1

Я пытаюсь использовать библиотеку android-support-design (потому что я использовал FAB., Который из библиотеки дизайна поддержки) для одного из моих приложений. Я пытался построить его под Android.mkКак включить поддержку android-поддержки в файле Android.mk

LOCAL_PATH:= $(call my-dir) 
include $(CLEAR_VARS) 

LOCAL_MODULE_TAGS := optional 

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


LOCAL_STATIC_JAVA_LIBRARIES := android-support-v4 
LOCAL_STATIC_JAVA_LIBRARIES += android-support-v7-appcompat 
LOCAL_STATIC_JAVA_LIBRARIES += android-support-design-res 

LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res frameworks/support/v7/appcompat/res frameworks/support/design/res 
LOCAL_PACKAGE_NAME := TestApp 

LOCAL_AAPT_FLAGS := \ 
    --auto-add-overlay \ 
    --extra-packages android.support.v7.appcompat \ 
    --extra-packages android.support.design 
include $(BUILD_PACKAGE) 

Но я всегда получаю эту ошибку:

make: *** No rule to make target `out/target/common/obj/JAVA_LIBRARIES/android-support-design-res_intermediates/javalib.jar', needed by `out/target/common/obj/APPS/TestApp/classes-full-debug.jar'. Stop. 

Может кто-то помочь мне в этом вопросе.

ответ

0

Я также встретил ту же проблему.

Возможно, ваш mk ошибочен.

Я решаю эту проблему.

Один из способов:

mmm frameworks/support/design/ 
mmm your app 

Другой способ:

использование сделать команда

например.

make -j4 TestApp 

мой Android.mk является

LOCAL_PATH:= $(call my-dir) 
include $(CLEAR_VARS) 
LOCAL_STATIC_JAVA_LIBRARIES := android-support-v4 android-support-design android-support-v7-appcompat 
LOCAL_MODULE_TAGS := optional 
LOCAL_SRC_FILES := \ 
$(call all-java-files-under, src) 
LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res \ 
frameworks/support/v7/appcompat/res \ 
frameworks/support/design/res 
LOCAL_PACKAGE_NAME := MyDemo 
LOCAL_CERTIFICATE := platform 
LOCAL_PRIVILEGED_MODULE := true 
LOCAL_AAPT_FLAGS := \ 
--auto-add-overlay \ 
--extra-packages android.support.design \ 
--extra-packages android.support.v7.appcompat 
include $(BUILD_PACKAGE) 
0

My Demo приложение включает библиотеку Android поддержки и leakcanary

LOCAL_PATH:= $(call my-dir) 
include $(CLEAR_VARS) 

LOCAL_PROGUARD_ENABLED := disabled 
#LOCAL_PROGUARD_FLAG_FILES := proguard.flags 

LOCAL_MODULE_TAGS := optional 


LOCAL_STATIC_JAVA_LIBRARIES := \ 
commonData-support-v4 \ 
dpt-haha-2.0.2 \ 
dpt-leakcanary-analyzer-1.4-beta2 \ 
dpt-leakcanary-watcher-1.4-beta2 \ 



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

LOCAL_STATIC_JAVA_AAR_LIBRARIES:= \ 
    commonData-recyclerview-v7 \ 
    commonData-appcompat-v7 \ 
    commonData-design \ 
    commonData-cardview-v7 \ 
    dpt-leakcanary-android-1.4-beta2 


LOCAL_PACKAGE_NAME := AndroidAARDependDemo 

LOCAL_AAPT_FLAGS := --auto-add-overlay \ 
--extra-packages android.support.v7.recyclerview \ 
--extra-packages android.support.design \ 
--extra-packages android.support.v7.cardview \ 
--extra-packages android.support.v7.appcompat \ 
--extra-packages com.squareup.leakcanary \ 


LOCAL_CERTIFICATE := platform 

include $(BUILD_PACKAGE) 

include $(CLEAR_VARS) 


LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := \ 
    commonData-support-v4:libs/android-support-v4.jar \ 
    commonData-appcompat-v7:libs/appcompat-v7-23.2.1.aar \ 
    commonData-recyclerview-v7:libs/recyclerview-v7-23.2.1.aar \ 
    commonData-design:libs/design-23.2.1.aar \ 
    commonData-cardview-v7:libs/cardview-v7-23.2.1.aar \ 
    dpt-leakcanary-android-1.4-beta2:libs/leakcanary-android-1.4- beta2.aar \ 
    dpt-haha-2.0.2:libs/haha-2.0.2.jar \ 
    dpt-leakcanary-analyzer-1.4-beta2:libs/leakcanary-analyzer-1.4-beta2.jar \ 
    dpt-leakcanary-watcher-1.4-beta2:libs/leakcanary-watcher-1.4-beta2.jar \ 


    include $(BUILD_MULTI_PREBUILT)