如何将一个android studio项目合并到另一个android studio项目中

2024-03-17

我有两个独立的 android 应用程序项目,它们是在 android studio 中制作的,我正在尝试将项目 1 合并到项目 2 中,使其成为一个应用程序,我将如何去做呢?我知道如何在 eclipse 中执行此操作,但不知道如何在 android studio 中执行此操作。 请注意,这两个项目都是 Android 应用程序,都不是 Android 库。

任何帮助都会很棒!

当我将项目 1 导入项目模块时,我在等级构建中收到此错误:

警告:依赖项 School Tools Calc lib.gz:SchoolTools:项目应用程序上未指定解析为不支持作为编译依赖项的 APK 存档。文件:/Users/chrisdebrodie/Documents/School Tools Calc lib.gz/SchoolTools/build/outputs/apk/SchoolTools-release-unsigned.apk


在 Android Studio 中,您不能将两个“项目”作为一个项目。

将一个(或两个)项目转换为库。然后创建一个“shell”项目来构建每个应用程序。 shell 项目基本上是空的,或者它可能具有构建特定值覆盖。这里的优点是您可以修改库,并且更改将立即反映在两个/所有版本中。缺点是您必须修复所有项目中因对任何库进行更改而导致的任何问题。但随后您可以以类似的方式创建“组合”项目。

将其中之一或两者转换为库后,您可以创建一个aar文件。这使您可以选择包含该内容aar作为 gradle 依赖项。请小心记住,您将需要重新构建aar每次修改该项目时 - 因此,如果您知道哪个代码库更稳定,请选择该项目aar。这使您能够对主要项目依赖项进行“版本控制”,以便您可以对一个项目进行更改,而不会影响另一个项目的稳定性。

此外,您可以编写脚本并使用 Bamboo 或 Jenkins 等工具来实时更新aar- 但这就像使用“快照”依赖项。当您更改aar它可能会编译,但它可能会在您不知道的情况下破坏第二个项目的构建,直到您在该项目上进行构建。 (是的,您可以将该项目的构建作为 Bamboo 或 Jenkins 脚本的一部分包含在内,但这并不容易。)

可能还有其他替代方案,但这些似乎提供了足够的选项来产生各种构建选项。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将一个android studio项目合并到另一个android studio项目中 的相关文章

  • 加快 ImageView 中的缩放功能

    我目前正在处理非常大的图像 7 10mb 由于多种原因无法调整大小或压缩 现在 我们的想法是在自定义 ImageView 中显示它们 使用户能够进行双击缩放 捏合缩放等 我使用这个库来完成这项工作 https github com Mike
  • 当客户端关闭连接时,Spring StreamingResponseBody 请求线程未清理

    我在控制器中有一个端点 它返回一个StreamingResponseBody 用于向客户端发送文件 其代码大致如下 RestController RequestMapping value api public class Controlle
  • 什么时候可以在 Java 中使用 Thead.stop() ?

    Thread stop 的 Java 文档听起来好像如果您调用 Thread stop 世界就会终结 已弃用 这种方法本质上是不安全的 停止线程 Thread stop 导致它解锁所有已锁定的监视器 作为未经检查的 ThreadDeath
  • 在 AppAuth-Android 中注销

    我有一个用JAVA开发的Android应用程序 对于这个应用程序 我使用的是身份服务器4 https github com IdentityServer IdentityServer4作为我的 STS 一切正常 但我找不到任何注销的实现Ap
  • 需要使用 joda 进行灵活的日期时间转换

    我想使用 joda 解析电子邮件中的日期时间字符串 不幸的是我得到了各种不同的格式 例如 Wed 19 Jan 2011 12 52 31 0600 Wed 19 Jan 2011 10 15 34 0800 PST Wed 19 Jan
  • 如何在Android Compose中使用otf类型字体文件?

    我正在学习使用 Android Jetpack Compose 现在我有一个正则 otf字体文件在资产 字体 我想在文本中使用它 java lang RuntimeException Font asset not found commonu
  • 使用 Guice 优化注册表

    你好 今天思考了一种优化 有一些疑问 语境 我正在使用 Guice 2 进行 Java 开发 在我的网络应用程序中 我有一个转换器注册表 可以即时转换为某种类型 转换器描述如下 public class StringToBoolean im
  • 在另一个模块中使用自定义 gradle 插件模块

    我正在开发一个自定义插件 我希望能够在稍后阶段将其部署到存储库 因此我为其创建了一个独立的模块 在对其进行任何正式的 TDD 之前 我想手动进行某些探索性测试 因此 我创建了一个使用给定插件的演示模块 到目前为止 我发现执行此操作的唯一方法
  • 内部存储的安全性如何?

    我需要的 对于 Android 我需要永久保存数据 但也能够编辑 并且显然是读取 它 用户不应访问此数据 它可以包含诸如高分之类的内容 用户不得对其进行编辑 我的问题 我会 并且已经 使用过Internal Storage 但我不确定它实际
  • 如何获取android手机型号、版本、sdk详细信息?

    如何获取android手机型号 版本 sdk详细信息 首先 看看 android sdk 页面上的这些 Build 类 http developer android com reference android os Build html h
  • GWT 2.3 开发模式 - 托管模式 JSP 编译似乎不使用 java 1.5 兼容性

    无法编译 JSP 类 生成的 servlet 错误 DefaultMessage 上次更新 0 日期 中 0 时间 HH mm ss z 语法 错误 注释仅在源级别为 1 5 时可用 在尝试以开发模式在 Web 浏览器中打开我的 gwt 模
  • Freemarker 和 Struts 2,有时它计算为序列+扩展哈希

    首先我要说的是 使用 Struts2 Freemarker 真是太棒了 然而有些事情让我发疯 因为我不明白为什么会发生这种情况 我在这里问是因为也许其他人有一个想法可以分享 我有一个动作 有一个属性 说 private String myT
  • Android:确定 2.2 及更高版本上的摄像头数量

    我的应用程序需要在 Android 2 2 及更高版本上运行 我需要一种方法来确定可用摄像机的数量 有很多帖子解决了这个问题 但我找不到一个有效的 一种解决方案是简单地检测操作系统版本 任何 2 2 版本的设备都仅限于 1 个摄像头 即使该
  • Docker 和 Eureka 与 Spring Boot 无法注册客户端

    我有一个使用 Spring Boot Docker Compose Eureka 的非常简单的演示 我的服务器在端口 8671 上运行 具有以下应用程序属性 server port 8761 eureka instance prefer i
  • 返回 Java 8 中的通用函数接口

    我想写一种函数工厂 它应该是一个函数 以不同的策略作为参数调用一次 它应该返回一个函数 该函数根据参数选择其中一种策略 该参数将由谓词实现 嗯 最好看看condition3为了更好的理解 问题是 它没有编译 我认为因为编译器无法弄清楚函数式
  • 使用布尔值进行冒泡排序以确定数组是否已排序

    我有以下用于冒泡排序的代码 但它根本不排序 如果我删除布尔值那么它工作正常 我知道 由于我的 a 0 小于所有其他元素 因此没有执行交换 任何人都可以帮助我解决这个问题 package com sample public class Bub
  • Resteasy 可以查看 JAX-RS 方法的参数类型吗?

    我们使用 Resteasy 3 0 9 作为 JAX RS Web 服务 最近切换到 3 0 19 我们开始看到很多RESTEASY002142 Multiple resource methods match request警告 例如 我们
  • OpenCSV:将嵌套 Bean 映射到 CSV 文件

    我正在尝试将 bean 映射到 CSV 文件 但问题是我的 bean 具有其他嵌套 bean 作为属性 所发生的情况是 OpenCSV 遍历属性找到一个 bean 然后进入其中并映射该 bean 内的所有数据 如果找到另一个 bean 它就
  • 如何以编程方式创建活动转换?

    我想以编程方式创建一个动画 以从触摸屏点启动具有缩放效果的活动 接下来我模拟缩放输入效果
  • 在java中使用多个bufferedImage

    我正在 java 小程序中制作游戏 并且正在尝试优化我的代码以减少闪烁 我已经实现了双缓冲 因此我尝试使用另一个 BufferedImage 来存储不改变的游戏背景元素的图片 这是我的代码的相关部分 public class QuizApp

随机推荐

  • 条件查询(搜索表单)的性能注意事项

    我经常发现存储过程的代码如下 SELECT columns FROM table source WHERE Param1 IS NULL OR Column1 LIKE Param1 AND Param2 IS NULL OR Column
  • 在 switch case 语句中使用方法

    我想知道在 switch 情况下是否可以使用 contains 等方法 我正在尝试将以下 if 语句放入 switch case 中 String sentence if sentence contains abcd do command
  • 负数组索引

    我有一个指针 定义如下 A b 按如下方式访问它会做什么 A c b 1 是否因为我们对数组使用负索引而导致访问冲突 或者是类似的合法操作 b EDIT请注意 负数组索引在 C 和 C 中具有不同的支持 因此 this https stac
  • 与 virtualenvs 和 Python 包的混淆

    在我的 python 程序中 使用 python3 5 由 virtualenv 运行 我需要使用 Pillow 库来处理图像 导入错误 没有名为 Pillow 的模块 告诉我 Pillow 没有安装在 virtualenv 中 但是 当我
  • Python的hashlib.sha256(x).hexdigest()相当于Rs摘要(x,algo =“sha256”)

    我不是Python程序员 但我正在尝试将一些Python代码转换为R 我遇到问题的Python代码是 hashlib sha256 x hexdigest 我对此代码的解释是 该函数将使用 sha256 算法计算 x 的哈希值并返回十六进制
  • 在 Dataflow Python flex 模板中包含另一个文件 ImportError

    是否有一个包含多个文件的 Python Dataflow Flex 模板示例 其中脚本导入同一文件夹中包含的其他文件 我的项目结构是这样的 pipeline init py main py setup py custom py 我正在尝试将
  • 按代码排序列表,然后按名称排序

    我有一个对象列表 我通过编写以下行按代码对此列表进行排序 Result Sort delegate Position p1 Position p2 return p1 Code CompareTo p2 Code 但我想首先按代码排序此行
  • @InjectMocks 之后为空

    在使用 JUnit 进行单元测试时 我在传递依赖项时遇到了一些麻烦 考虑这些代码 这是对我想要测试的类的依赖注入 我们称之为控制器 Inject private FastPowering fastPowering 这是单元测试 RunWit
  • 将gradle多项目转换为springboot fat jar应用

    我有一个 http servlet 应用程序多项目分级构建 我的项目是一个包含gradleHttpServlet 项目它依赖于其他两个 gradle java 项目 我将所有 3 个 jar 部署在tomcat webapps Web IN
  • toDataURL HTML5 获取画布数据的其他方式存在问题?

    我正在使用画布预先绘制图片 然后需要使用 Canvas toDataURL 将其保存到图像对象 但在 Chrome 上 我收到错误 未捕获的安全错误 无法在 HTMLCanvasElement 上执行 toDataURL 受污染的画布可能不
  • 我正在使用依赖注入:我应该将哪些类型绑定为单例?

    关于单例是否 不好 以及应该使用什么模式存在很多问题 他们通常关注单例设计模式 其中涉及从类的静态方法中检索单例实例 这不是这些问题之一 自从几个月前我真正 发现 依赖注入以来 我一直在推动它在我们团队中的采用 随着时间的推移从我们的代码中
  • read.csv() - 三列中的两列[重复]

    这个问题在这里已经有答案了 可能的重复 只读取 R 中有限数量的列 https stackoverflow com questions 5788117 only read limited number of columns in r 我有一
  • 使用 A* JPS 进行 3D 搜索

    我该如何概括跳转点搜索 http harablog wordpress com 2011 09 07 jump point search 3D 搜索量 到目前为止 我已经定义了涉及三个运动的 3D 立方体的修剪规则 直线 0 0 1 一阶对
  • 为什么在泛型类(Java)的构造函数中提供类型参数是错误的?

    我刚刚从一本教科书中学习 Java 中的泛型 其中讨论了一个类GenericStack
  • 如何使用 ICU4C 规范化字符串?

    我发现 ICU 文档有些挑战性 我的问题是 如何使用 ICU4C 规范化字符串 我正在查看 unorm2 normalize 但是如果缓冲区不够大怎么办 我以前怎么知道这一点 当然 我想标准化整个字符串 谢谢 gt 附 以下是该函数的 AP
  • 如何以编程方式更改 ActionBar 菜单项文本颜色?

    我有一个包含多个项目的操作栏 我想在单击该项目时更改文本的颜色 有没有办法以编程方式执行此操作 请提供示例或任何资源 Thanks public void catalogClick MenuItem item highlight menui
  • Scala 可变选项?

    我想要这样的东西 private val cachedResponse mutable Option empty A def get A cachedResponse getOrElseUpdate db findModel def upd
  • 基于非类型模板参数的重载

    我们熟悉基于函数参数的重载 但是为什么我们不能基于非类型模板参数进行重载呢 通过这种重载 您不必仅仅为了重载目的而添加额外的函数参数 这可能会对运行时性能产生负面影响 唉 下面的代码无法编译 template
  • jQuery 模拟点击选项卡并执行代码

    下面的代码 当我单击选项卡时 我会发布帖子并在选项卡中显示结果 在某些情况下 我想强制选择选项卡 但不仅选择该选项卡 而且选择该选项卡 执行单击它时执行的代码 在我的示例中 我喜欢选择第二个选项卡 jLikeToSet 1 并执行代码 po
  • 如何将一个android studio项目合并到另一个android studio项目中

    我有两个独立的 android 应用程序项目 它们是在 android studio 中制作的 我正在尝试将项目 1 合并到项目 2 中 使其成为一个应用程序 我将如何去做呢 我知道如何在 eclipse 中执行此操作 但不知道如何在 an