美文网首页
将多个APP合并到一个APP

将多个APP合并到一个APP

作者: AddisonLi | 来源:发表于2019-07-20 13:40 被阅读0次

需求,公司有三个项目ABC,登录接口统一,现将三个app整合到一个app中

思路 :将A项目做主项目,然后将bc作为moudle引用。

import moudle 选择B,然后将build.gradle:B中的第一行代码 applyplugin:'com.android.application'改成applyplugin:'com.android.library'

然后将compileSdkVersion 、minSdkVersion、 targetSdkVersion改成一致,sync一下,没出错

然后尝试在A中调用B的界面,随便写个按钮,写跳转。发现并不能找到该类。百度一拨,发现只是引用了,忘了添加依赖,在build.gradle:A中添加 implementation project(':B'),继续写跳转,可以引用了,运行报错Manifest merger failed with multiple errors, see logs。嗯抠脚英语直译一下,配置文件因为多个错误合并失败,查看日志。那就查看A中的manifest文件

错误详情

第一个错误,A中和B中同时使用了 @icon,建议巴拉巴拉,就按他的建议来,直接点击蓝线,第一个错误没了

第二个错误,定义了两个Application,建议巴拉巴拉,还按他的建议来

再次编译运行,继续报错

应该是第三方依赖失败。第一个是啥,不认识,第二个不就是黄油刀吗,那就先看第二个,去git竟然一眼看到了我想要的东西

抠脚英语继续翻译。在library中使用黄油刀,添加plugin到你的buildscript,然后添加。。。现在看看是不是R2替换了R。

按操作添加这两块代码。两个项目中的黄油刀版本分别是8.8.1和8.5.1,先统一改成8.8.1。再次sync,继续报错

stackOverflow查,降低版本号,统一改成8.4.0,sync通过,B中并未出现R2,依旧爆红,先不管,运行看,继续报错

竟然需要手动改成R2!!!全部替换后运行报错第一个  程序包org.apache.http不存在,build.gradle:B android下添加useLibrary'org.apache.http.legacy'。

最终又错了,将黄油刀改成了10.1.0,然后随之而来是的省级到androdX,替换support。这些都搞完后,又遇到 错误: 程序包com.google.gson不存在,我百度了半天没解决了,后来直接放弃了,改用了 fastjson,好在A项目封装的好,调用次数比较少

再次运行项目,启动B的某个界面,打开后闪退,报错是context上下文没找到,最终解决方案,A的Application集成B的application就行了,如果是多moudle的话,需要抽出来个baseMoudle,每个moudle去依赖他。完毕

最终项目结构

相关文章

  • 将多个APP合并到一个APP

    需求,公司有三个项目ABC,登录接口统一,现将三个app整合到一个app中 思路 :将A项目做主项目,然后将bc作...

  • iOS Universal Link配置

    本文将记录将一个和多个app的universal link配置在同一个apple-app-site-associa...

  • 合并Excel

    一、将多个Excel合并到一个Excel: 第一步:将所有的excel合并到一个excel之中;刚才的多表之中的内...

  • Django中不同应用使用分布式数据库

    在一个Django应用中可以创建多个APP应用,每个APP应用都可以独立使用,在有多个APP的情况下,APP之间若...

  • 工具盒子-技术支持文档

    我们是一个主打为用户提供各种小工具的APP,将各种常用的功能集合打包在一个APP中,从而避免我们下载多个APP的烦...

  • 如何将多个Excel文件合并成一个Excel的多个sheet当中

    1.情景展示 将多个excel文件合并到一个excel的多个sheet,如何实现? 如何将这111个Excel文件...

  • angular 的常用指令

    ng-app标记angularJS的作用范围(不推荐)可以在一个界面创建多个ng-app创建多个ng-app时,默...

  • 定制化squery

    $.extend拓展() /* $.extend()函数用于将一个或多个对象的内容合并到目标对象*/ ...

  • 从零开发一个App

    从零开发一个App 1.什么是组件化和插件化? 组件化开发: 1.1就是将一个app分成多个模块,每个模块都是一个...

  • 通过Xcode创建Target实现生产大量相似APP

    最近在重构公司的多个APP项目,其中有好多个APP基本一致,都是由一个公版APP派生出来。这些APP中,有些只是更...

网友评论

      本文标题:将多个APP合并到一个APP

      本文链接:https://www.haomeiwen.com/subject/dhljlctx.html