• 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----------

      

    (拂树浓舒碧,萦花薄蔽红)

     

     

  • 相关阅读:
    使用 Facebook开源动画库 POP 实现真实衰减动画
    在命名空间下定义类型
    作为程序猿我给csdn博客加入打赏功能
    linux高可用集群heartbeat实现http的高可用
    杭电 HDU 1247 ACMHat’s Words(trie树 或着STL)
    取石子(一)-博弈数论
    区块链技术开发怎么结合已有产业链落地?
    KafkaConsumer assign VS subscribe
    KafkaConsumer assign VS subscribe
    KafkaConsumer assign VS subscribe
  • 原文地址:https://www.cnblogs.com/weijuanran/p/Module.html
Copyright © 2020-2023  润新知