关于如何在android系统下载平台中使用AAR包的问

android studio 怎么导入 aar包_百度知道
android studio 怎么导入 aar包
我有更好的答案
新建一个Demo项目新建好的项目结构如下图:其中app是我们的主要module,libs下存放外部的librarybuild.gradle是配置App module的,接下来主要对其操作。复制外部aar包到libs目录下。修改build.gradle 配置文件:1:添加repositories
dirs 'libs'
}}这个是添加一个本地仓库,并把libs目录作为仓库的地址。2:修改dependencies:添加一行:compile(name:'usericonchooserutil', ext:'aar')其中name就是libs目录下usericonchooserutil.aar文件名称,ext,就是usericonchooserutil.aar的扩展名重新编译项目:从工具栏依次选择:&Build&--&&rebuild project&编译完成后,在app/build/intermediates/exploded-aar/ a就可以看见我们引用的aar包内容了,其中jar目录下是jar文件,res下是我们aar包里的资源文件。8这个时候我们就可以在项目中使用第三包的类了,如下图:
采纳率:67%
来自团队:
为您推荐:
其他类似问题
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。只是记笔记
Android.mk引用aar文件
最近遇到一个问题,在更改Android的系统应用时,要引用一个aar文件。之前引用的主要是jar包,而aar文件包含Android的资源文件,如:布局、样式、图片等,如果按照源码中jar的引用方式会遇到编译不过的问题,提示找不到相关的资源文件。
国内的相关论坛也有同行遇到相同的问题,不过相关的解决方案并没有,不过在stackoverflow有相关的解决方案,网址如下:
LOCAL_STATIC_JAVA_AAR_LIBRARIES:= &aar alias&
include $(BUILD_PACKAGE)
include $(CLEAR_VARS)
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := &aar alias&:libs/&lib file&.aar
include $(BUILD_MULTI_PREBUILT)
其中,LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := &aar alias&:libs/&lib file&.aar 也可以如下面这样写:
include $(CLEAR_VARS)
LOCAL_MODULE := &aar alias&
LOCAL_SRC_FILES := &lib file&.aar
LOCAL_MODULE_CLASS := JAVA_LIBRARIES
LOCAL_MODULE_SUFFIX := $(COMMON_JAVA_PACKAGE_SUFFIX)
LOCAL_BUILT_MODULE_STEM := javalib.jar
include $(BUILD_PREBUILT)
这里主要是LOCAL_STATIC_JAVA_AAR_LIBRARIES,剩下的和jar包大同小异,注意在manifest文件里minSdkVersion要满足aar文件的要求。
搜索Android源码,也可以发现:
#LOCAL_STATIC_JAVA_AAR_LIBRARIES are special LOCAL_STATIC_JAVA_LIBRARIES
LOCAL_STATIC_JAVA_LIBRARIES := (strip(LOCAL_STATIC_JAVA_LIBRARIES) $(LOCAL_STATIC_JAVA_AAR_LIBRARIES))
这一步完成后,代码可以顺利编译过了,不过在运行apk时如果使用到aar文件里面的资源可能会crash,所以还需要加上以下语句:
LOCAL_AAPT_FLAGS := \
--auto-add-overlay \
--extra-packages &aar package name&
关于LOCAL_AAPT_FLAGS,可以参考以下网址,在开发Android系统应用时可能会遇到和这个相关的一些小坑,比如修改完相关代码后,push进机器却不起作用。
这里把相关aar文件的资源打包到我们的apk里,apk即可正常运行。
另外一点是在make文件中可以指定具体的manifest文件:
LOCAL_MANIFEST_FILE := &manifest file path&
参考链接:
没有更多推荐了,
加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!Actions speak louder than words!
行动胜于言语
Android Studio 如何导入aar包
androidstudio工程引用aar包
①.将aar包复制到lib目录下
②.配置build.gradle文件:
repositories {
dirs 'libs'
compile(name:'camerascan-1.0', ext:'aar')
完整的配置文件:
③.编译一次工程
如图复制aar包到lib下
图复制到lib下后,点击下图按钮让aar包可以在在代码中引用,或者编译一次工程
以上操作成功后可以在扩展包下看到被引用的aar包文件
没有更多推荐了,
加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!个人学习记录
关于如何在android系统平台中使用AAR包的问题
在系统平台中使用AAR包和我们平常在AS中使用AAR包的方法不太一样!在使用AS引入AAR包时,只需要在gradle文件中导入即可,在系统平台中,所有包的导入和引用都依靠.mk文件,所以想要在系统平台开发中使用AAR包需要我们修改原来的Android.mk文件!!
先看一下我编写的Android.mk文件:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_CERTIFICATE := platform
LOCAL_MODULE_TAGS := optional
LOCAL_SRC_FILES := $(call all-subdir-java-files)
LOCAL_STATIC_JAVA_AAR_LIBRARIES := opencv_aar
LOCAL_STATIC_JAVA_LIBRARIES := \
android-support-v4\
android-support-v7-appcompat
LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res \
framework/support/v7/appcompat/res
LOCAL_AAPT_FLAGS := \
--auto-add-overlay --extra-packages android.aupport.v7.appcompat
LOCAL_PACKAGE_NAME := AarTest
include $(BUILD_PACKAGE)
include $(CLEAR_VARS)
LOCAL_PREBUILD_STATIC_JAVA_LIBRARIES := opencv_aar:libs/openlib-release.aar
include $(BUILD_MULTI_PREBUILT)
主要代码:
LOCAL_STATIC_JAVA_AAR_LIBRARIES := opencv_aar
使用LOCAL_STATIC_JAVA_AAR_LIBRARIES 变量指定导入AAR包的名称,这个编译好的包名称跟我们实际放入libs目录下的aar包的名称可以不一样,这个名称是通过预编译之后生成的包名称,这个名称是由我们自己指定的!!
include $(CLEAR_VARS)
LOCAL_PREBUILD_STATIC_JAVA_LIBRARIES := opencv_aar:libs/openlib-release.aar
include $(BUILD_MULTI_PREBUILT)
这三行代码很关键,这里通过预编译将libs/openlib-release.aar的aar包编译为名称opencv_aar包,当然你也可以理解为模块,只不过这个模块是由aar包编译生成得到的
如果你的Android.mk文件也是这个编写的,那么恭喜你,你可以使用AAR包中的java代码和so库了(如果有so库的话),但是你还是不可以使用aar包中的R文件资源,如果需要使用的话,那么你需要在LOCAL_AAPT_FLAGS 变量后面添加AAR包中的包名,这AAR打包过程中,会有一个清单文件打包进去,只需要拷贝清单文件中package的包名并赋值给LOCAL_AAPT_FLAGS 即可!!!
在实际使用过程中可以会出现AAR中要求的最小SDK和targetSDK版本与当前应用的版本不匹配问题,修改当前版本以使其匹配AAR中的版本要求
好了,关于如何在系统平台中导入aar包的问题就说到这里,有兴趣的朋友可以关注我,有什么问题大家一起讨论!!!
没有更多推荐了,
加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!Android Studio中如何添加.aar文件的引用
一直以来都在使用Eclipse开发,用习惯了 感觉Eclipse实用又好用。
最近做一些海外的项目要用到Facebook和google的资源包,遇到了.aar文件。
jar包大家都知道一般只包含代码.class文件,但是.aar文件不仅包含class文件还包含、res下的文件、甚至包含AndroidManifest.xml文件。
那么如何把.aar文件导入到Android Studio项目中呢。
首先新建一个工程 guanghusdk_base_interface,把.aar文件放到项目的libs下,并配置build.gradle,
在build.gradle文件中添加
repositories{
dirs 'libs'
如下图所示
在build.gradle文件dependencies中添加
compile(name:'facebook-android-sdk-4.11.0', ext:'aar')
如下图所示
这样就完成.aar文件的导入然后重新 clean 和build即可。
.aar文件如何在Eclipse中使用呢?
你可以把.aar文件修改后缀名为 .zip然后通过解压文件解压缩即可看到.jar文件和其他资源文件如下图所示
这样你就可以将.aar文件导入到Eclipse中。。。
没有更多推荐了,
加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!

我要回帖

更多关于 android系统下载 的文章

 

随机推荐