问题背景
从网上下载了一个项目准备作为自己应用中的一个模块。首先下载了项目,本地测试、编译、运行,项目正常,没有问题,可以作为模块使用。根据模块的导入步骤:
1、首先修改被导入项目的build.gradle ,由应用模式改为模块模式。
将apply plugin: 'com.android.application' 更改为 apply plugin: 'com.android.library'。
屏蔽 applicationId 项。
2、运行导入步骤 。
依次File-> New ->Import Module ,选择被导入项目的路径。
这时出现了问题,导入界面没有任何反应,finish 按钮为灰色,没有其他任何提示,只有Cancel取消按钮激活。
解决方式
网上找了找相应问题现象,没有找到问题及办法。最后想到,自动加入的方式无非是代替了手动的更改,而归根要体现为文件配置的改变。因此参照以前增加成功的模块的位置和配置,决定手动尝试下:
1、将被导入项目整体复制到应用项目的目录下
如图,photopicker为之前成功导入的项目模块,参照其路径、文件形式,将被导入项目emotionkeyboard 复制到自己的应用项目下。
保留build、src目录,其他目录全部删掉。
2、更改自己项目的相关配置文件
在app目录下的build.grage 文件中增加项目引入:
implementation project(':emotionkeyboard')
修改项目根目录下的settings.gradle文件,增加导入的项目:
include ':app', ':photopicker',':emotionkeyboard'
3、最后在被导入项目模块的AndroidManifest.xml中,取消启动activity设置(如果有)。因为项目只能有一个启动activity。
操作完备,项目build 成功。
注: 问题背景中的 项目导入1步骤 要做,也就是更改项目模式。