Android Studio 添加引用Module项目
- 新建Android项目,修改为Module
新建一个android项目

给项目命名,这里命名为MyLibrary,作为可引用的Module项目

点击下一步,选择一个Activity,点击ok

下面将这个android工程改为Module库:
在app的gradle下进行设置:

(1)将apply plugin: ‘com.android.application’ 改为apply plugin: ‘com.android.library’;
(2)注释或删掉applicationId "com.library.mylibrary";
然后sync

- 添加并引用Module
新建一个Android工程调用刚刚的Module,输入项目名称,代表当前的可运行的应用程序,点击下一步,直到完成。

在MyApplication项目中,点击File--New--Import Module,如下图:

点击文件浏览按钮,选择我们刚刚建立的MyLibrary项目,勾选Import,给Module name重新命名(因为当前的项目程序名称是app,不能重复),然后Finish即可,如下图:

此时我们发现项目里并没有导入的Module,如下图,还需要进行设置

在setting.gradle中将Module包含进来,在include后加上‘:applibrary’, applibrary就是我们刚刚重新命名的Mudule name,如下图:

然后sync一下,就会看到导入进来的model啦,如下图:

等等,还没有完成呢
下面给app添加依赖module
在app上右键,选择Open Module Settings,如下图:

点击右边绿色“+”号,选第3个, 选择自己的module加入,点击OK,如下图:

然后就加入成功了,此时不要忘了点击OK,如下图:

然后在app的gradle的dependencies下,添加implementation project(':applibrary'),然后sync,如下图:

下面开始调用添加的Module,在MyApplication的MyActivity中调用MyLibrary项目的MainActivity,代码如下:

开始运行程序,首先进入MyApplication的页面,如下:

点击click me,跳转到MyLibrary的页面,如下:

注意:
(1)MyApplication的gradle的dependencies下引用的包的版本号要与MyLibrary一致;

(2)两个项目中的AndroidManifest.xml文件中的图标,主题等要一致;

(3)被调用的Library库中不能使用switch…case语句,改为if…else
(4)Android引用aar包后会出现两个图标的解决办法
在需要打包的manifest.xml中去掉intent-filter里的内容,如图红框中:

(5)在调用的地方java文件和资源文件的命名不要和打包项目里的文件重名,否则也会报错。
------------END----------

(拂树浓舒碧,萦花薄蔽红)
Android Studio 添加引用Module项目的更多相关文章
- Android studio 添加引用Module项目 与 设置Module项目的Libs的Jar在主项目里使用
前言 添加引用Module项目 设置Module项目的Libs的Jar在主项目里使用 1.在项目里添加libs包,并且加入jar 2.设置这个module项目的build.gradle depende ...
- Android studio 添加引用新建类库
1.新建一个工程包 2.修改AndroidManifest.xml 将AndroidManifest.xml 修改为 <manifest xmlns:android="http://s ...
- 【Android Studio安装部署系列】十三、Android studio添加和删除Module
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 新建.导入.删除Module是常见的操作,这里简单介绍下. 新建Module File——New——New Module... 选中 ...
- 【Android Studio安装部署系列】十三、Android studio添加和删除Module 2
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 新建.导入.删除Module是常见的操作,这里简单介绍下. 新建Module File——New——New Module... 选中 ...
- [转]Android Studio创建Xposed模块项目时BridgeApi的正确添加方式
使用Android Studio创建的空项目作为Xposed Module App,对于Api Jar包的引用方式,一开始是按照傻瓜式Jar Lib的处理方式,复制XposedBridgeApi-54 ...
- 在Android Studio添加本地aar包引用
1.如何在Android Studio添加本地aar包引用 https://jingyan.baidu.com/article/2a13832890d08f074a134ff0.html 2.完成上述 ...
- Eclipse / android studio 添加第三方jar包 步骤
eclipse 将第三方包放到libs文件夹后并没有引用. 基本步骤分为3步,具体介绍如下: 打开自己的Eclipse,在自己的Android工程上名上右键->Build Path ->C ...
- 在Xcode5和Android Studio添加工程间的依赖
正在编辑中,尚未完成 先看看ios的target是什么,请先参看http://www.cocoachina.com/bbs/read.php?tid-10884.html做个大概了解 这里有一篇文章, ...
- Android studio 中引用jar的其实是Maven?(二)
上一篇:Android studio 中引用jar的其实是Maven?(一) 搭建maven仓库: 去了解一个新的事物的时候,最好的方式就是去使用它.例如去了解一座城市的时候,最好的方式就是乘坐公共交 ...
随机推荐
- 设计模式之Singleton模式和Strategy模式是什么
Singleton模式 单例模式,也交单子模式,有时候系统只需要拥有一个全局对象. 这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建.这个类提供了一种访问其唯一的对象的方 ...
- 《ASP.NET MVC 5 高级编程》学习笔记
前言: 记得当初培训的时候,学习的还是ASP.NET,现在回想一下,图片水印.统计人数.过滤器....HttpHandler是多么的经典! 不过后来接触到了MVC,便立马爱上了它.Model-View ...
- Sharepoint 2013内容查询Web部件自定义显示样式(实战)
分享人:广州华软 星尘 一. 前言 在进行Sharepoint开发时,经常会遇到内容展示个性化需求的问题,当然如果通过自定义开发控件对于内容展示的需求基本都可以很好的解决,但自定义开发也有不好的地方, ...
- Changes of user relationship in AD can't be correctly synchronized to SCSM
The relationship of users might be not correctly updated if related users were once re-named in AD o ...
- 开源ERP Odoo仓存功能模块深度应用(一)
基本功能 库位 库位是一个逻辑存货区,可以是一个物理库区,可以是一个货架.货架上的一个货位.库位可以有子库位 库位有虚拟库位和实际库位,实际库位是实际存放货物的库位,虚拟库位是因复式库存记账而虚构的库 ...
- 基于OpenStreetMap计算驾车距离(Java)
最近公司有个项目需要计算6000个点之间的驾车距离,第一时间想到的是利用Google的Distance Matrix API,但是免费Key每天只能计算2500个元素(元素 = 起点数量 * 终点数量 ...
- PyCharm 如何远程连接服务器编写程序
写在前面 我之前一直通过mstsc远程服务器桌面修改代码,或者本地修改后上传到远程服务器等,各种不爽,现在改用xshell,但有时候还是感觉不方便.于是乎,自己动手配置PyCharm远程连接服务器,这 ...
- 在Docker中体验数据库之Microsoft SQL Server
前面记录了一下在docker中体验mongodb和mysql.今天记录一下mssql……其实早就体验了,就是没有记录,前几天看了一下2019的一些新闻,很喜欢Polybase这个特性,想体验一把,可惜 ...
- sql 语句 获取某张表某列字段最短的某几行数据
sql 语句 获取某张表某列字段最短的某几行数据 SELECT C_name,C_code FROM Catalog where LEN(C_code)=LEN((SELECT top 1 C_cod ...
- spring Boot环境下dubbo+zookeeper的一个基础讲解与示例
一,学习背景 1. 前言 对于我们不管工作还是生活中,需要或者想去学习一些东西的时候,大致都考虑几点: a) 我们为什么需要学习这个东西? b) 这个东西是什么? c) ...