首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Android.mk文件中包含android-support-design

如何在Android.mk文件中包含android-support-design
EN

Stack Overflow用户
提问于 2016-01-12 15:43:14
回答 2查看 3.2K关注 0票数 2

我正在尝试为我的一个应用程序使用android-support-design库(因为我使用的FAB .which来自支持设计库)。我试着用下面的Android.mk构建它

代码语言:javascript
复制
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)

但我总是得到这样的错误:

代码语言:javascript
复制
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.

有人能在这个问题上帮我吗?

EN

回答 2

Stack Overflow用户

发布于 2016-01-28 14:16:51

我也遇到了同样的问题。

也许你的mk是错的。

我解决了这个问题。

一种方法:

代码语言:javascript
复制
mmm frameworks/support/design/
mmm your app

另一种方式:

使用make命令

例如:

代码语言:javascript
复制
make -j4 TestApp

我的Android.mk是

代码语言:javascript
复制
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
EN

Stack Overflow用户

发布于 2016-04-11 18:56:07

我的演示应用程序包括Android支持库和leakcanary

代码语言:javascript
复制
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)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34738026

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档