Android Studio3.0 引用Module的本质和共享Module给其他Module

如何在Module中去引用另外一个Module?

方法一:

  Google提供的自身的依赖,compile引入需要用到Module。

方法二:

  每个Module最终都会被编译成一个对应的后缀为aar的文件<..\moduleName\build\outputs\aar\XXX.aar>,在需要用到的Module中直接引用此文件。这里aar文件的引入方式对比直接引用Module稍不同,如下:

  第一步: 需要先在宿主Module中的build.gradle下的android{}下添加如下代码:

repositories {
    flatDir {
        dirs ‘libs‘
    }
}

   第二步:添加依赖

compile (name:‘aarName‘, ext:‘aar‘)

宿主Module中如何使用外边Module中的jar文件?<仅仅介绍Android studio3.0及之上的解决方式>

compile是Android studio 3.0之前Google提供用于引入外部类库的一种方式。Android studio3.0之后compile被替换成为implementation和api,两种方式。

implementation:如果是引入本地libs文件下的jar文件,表示该jar文件仅仅在当前Module中才能被使用,外部引用的Module中无法直接使用该jar文件。

api:如果是引入本地libs文件下的jar文件,表示该jar文件不仅仅可以在当前Module中能使用,外部引用的Module也可以使用该jar文件。

compile only: 顾名思义表示仅仅参与编译,真正打包的时候并不会被打包到APK中。

runtime only: 仅仅是打包的时候会被打包到APK中,不参与编译(感觉没啥用)

其他的没啥说的.....

  

原文地址:https://www.cnblogs.com/liemng/p/8794373.html

时间: 2024-08-30 08:03:33

Android Studio3.0 引用Module的本质和共享Module给其他Module的相关文章

&lt; Kotlin &gt; Android Studio3.0 Kotlin工程问题集

"-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> < Kotlin > Android Studio3.0 Kotlin工程问题集 - onlyloveyd - 博客频道 - CSDN.NET onlyloveyd Cherish Android and Keep Going 目录视图 摘要视图 订阅 [活动]2

Android Studio3.1.0升级问题记录

每次升级Android Studio时,一般情况下Gradle版本的也会相应的升级,我之前Android Studio 3.0.1.Gradle 是4.1升级后为:Android Studio 3.1.0.Gradle 为4.4. 升级完成后先是报一堆错(每次都升级都是-.-) 第一个错如下: The SourceSet 'instrumentTest' is not recognized by the Android Gradle Plugin. Perhaps you misspelled

Android Studio3.x新的依赖方式(implementation、api、compileOnly)

https://blog.csdn.net/yuzhiqiang_1993/article/details/78366985?locationNum=6&fps=1 Android Studio3.0正式版已经出来了,相比2.x的版本,编译速度提高了不少. 当我们使用AS3.0新建项目时会发现,默认的依赖由之前的compile更改为implementation了. 下面我们来看看他们之前的差异: 首先是2.x版本的依赖方式: 再来看看3.0的: 可以看到在Android studio3.0中,c

cocos2d-x 3.0 引用第三方库 及编译成apk时android mk文件写法

cocos2d-x 3.0 中,如果你需要使用CocosStudio.Extensions扩展库 等等,都需要自己手动添加. 添加步骤如下:(比如说现在我要添加libExtensions,libCocosStudio , libGUI) 1.添加附加项目 右击解决方案--->添加现有项目--->添加:项目目录\cocos2d\extensions\proj.win32\libExtensions,然后你会发现左边多了一个libExtensions扩展库 右击解决方案--->添加现有项目-

Android 5.0之后隐式声明Intent 启动Service引发的问题

一.概述 Android系统升级到5.0之后做了不少的变化(5.0变化),开发人员一定要注意这些变化,要不然就有的折腾了.这次最大的变化应该是把Dalvik虚拟机改成了ART(Android Runtime),后续会专门讲解这一块.其他的都是一些零碎的问题,例如前段时间发了一篇Android 5.0之后修改了HashMap的实现(传送门).这篇主要讲一下遇到跟Service相关的问题. 二.详情 Service身为Android四大组件之一,它的使用频率还是比较高的,并且现在主要都是运用在比较关

听说 Android 9.0 要禁用 @Hide Api 的调用,你怎么看?

Android 9.0? Hi,大家好,我是承香墨影! 距离 Android 8.0 发布,已经过了五个月,虽然现在占有率并不高,不过呢,Google 已经着手准备下一版本的 Android 系统. 上周,据快科技爆出来的消息,在 XDA社区 有人发现最近的 AOSP(Android Open Source Project)提交记录中,怀疑是下一代 Android 系统版本的代码:PI,这可能是 Android 9.0 的版本名称.不过根据 Android 之前版本的命名习惯,Google 钟爱

ym—— Android 5.0学习之CardView

前言 CardView顾名思义,就是想卡片一样的控件,如图: Android 5.0之前,我们有两种方案做出这种效果: 1.通过设置背景图 2.设置配置Shape文件 而现在我们需要麻烦美工MM,也不需要配置麻烦的Shape文件,只需要简单的设置几个属性即可,那就是用我们CardView CardView CardView继承了FrameLayout类,并让你在里面的卡片中(显示)有跨平台一致性的外观.CardView控件可以有阴影和圆角(效果). 要创建具有阴影效果的卡片,可以使用card_v

Android 6.0一个完整的native service

 上一篇博客<Android 6.0 如何添加完整的系统服务(app-framework-kernel)>http://www.cnblogs.com/hackfun/p/7418902.html介绍了如何添加一个系统服务,客户端和服务端都是基于JAVA实现的OpersysService.经过进一步的学习,我将演示如何使用C++实现一个相同功能的系统服务hfnativeservice.为了兼容OpersysService,将保留Opersys-Service服务端中的HAL和driver,供h

【译】Android 6.0 Changes (机翻加轻微人工校对)

Android 6.0 Changes In this document Runtime Permissions Doze and App Standby Apache HTTP Client Removal BoringSSL Access to Hardware Identifiers Notifications AudioManager Changes Text Selection Browser Bookmark Changes Android Keystore Changes Wi-F