在Android Studio中编辑外部库

22

我正在使用从Github上找到的图像走马灯库,但是我希望在代码中进行一些修改。我使用"compile 'com.theartofdev.edmodo:android-image-cropper:2.6.+'"命令导入了它。这个代码可供我编辑吗?还是每次运行代码时都会从Github下载它?

3个回答

29

为此,您需要将其作为库导入并根据需要进行修改:

要将库导入到Android Studio中,有两种方法可以使用。

方法1:

  1. 在Android Studio中打开您的项目
  2. 下载库(使用Git或zip存档进行解压缩)
  3. 在您的项目中创建一个名为“subProject”的文件夹
  4. 将FreemiumLibrary文件夹复制并粘贴到您的subProject文件夹中
  5. 在项目目录的根目录中创建/修改settings.gradle文件。 它应该包含类似于以下内容:
include 'MyApp', ':subProject:FreemiumLibrary'
  1. 运行gradle clean & build 命令,或者关闭项目并重新打开/导入。
  2. 编辑你的项目build.gradle文件,在"dependencies"部分添加以下内容:
dependencies {
//...
    compile project(':subProject:FreemiumLibrary')
}
  1. 将你的应用程序活动编辑,扩展AdsFragmentActivity而不是Activity。
  2. 如果想要与ActionBarCompat一起使用,则需要编辑库。

方法2:

  1. 在Android Studio中打开您的项目
  2. 下载库(使用Git或zip档案解压缩)
  3. 转到文件 > 新建 > 导入模块并将库导入为模块
  4. 在项目视图中右键单击您的应用程序,然后选择“打开模块设置”
  5. 单击“依赖项”选项卡,然后单击“+”按钮
  6. 选择“模块依赖项”
  7. 选择“Freemium Library”(不是“Freemium Library Project”)
  8. 修改您的应用程序活动以扩展AdsFragmentActivity而不是Activity。
  9. 如果想要与ActionBarCompat一起使用,则需要修改库。

方法一对我有用,非常感谢!唯一遇到的问题是我添加为模块的库有一个外部的.gradle文件被导入,需要将其删除才能成功构建。 - batman
很高兴能帮到你。祝你编程愉快 :) - Shailendra Madda
1
@MerthanE 没有头绪,请探索一下,如果这样更容易的话,请在此发布一个新答案。这可能会帮助某些人。 - Shailendra Madda
这个功能在Android Studio Arctic Fox中存在一个bug。要解决这个问题,您可以使用这个答案https://dev59.com/IsHqa4cB1Zd3GeqP8NVu#68868869。 - behrad
浏览此内容以了解更多关于FreemiumLibrary的信息。 - Shailendra Madda
显示剩余2条评论

10
我是这样解决的。首先,分叉库项目。然后克隆它(在Android Studio中,文件 -> 新建 -> 从版本控制创建项目 ->放入您分叉并打开的存储库链接)。编辑它并将其commit到您的主分支。 然后将其push到您的主分支。最后找到该库的快照版本。例如,如果您使用的是JitPack。前往jitpack.io网站并搜索您的存储库(带有您的用户名的分叉版本)。然后转到提交部分并获取您提交的最新版本。在您的项目中使用该库依赖项,而不是原始存储库。

1
我很高兴它对你有用。我花了很多时间来寻找这种方法。实际上,我是自己找到了这个解决方案。你还必须在gradle.build文件中更改版本代码和名称。 - Samir Alakbarov
1
哦,你为我节省了数小时的噩梦。谢谢! - Ezequiel Adrian

0

我的方法与@Shailendra Madda相似,但有一些细微的差别。

首先,我在我的电脑上下载/克隆了该项目。假设库的名称为“VideoPlayer”。

我确保VideoPlayer的模块级gradle文件中不包含applicationId。我还确保它包含了

  plugins {
      id 'com.android.library'
  }

替代

  plugins {
    id 'com.android.application'
  }

现在该库已准备好导入。

为了将此库导入我的项目,我进入了文件->新建->导入模块

然后,我选择了VideoPlayer的目录。我下载的VideoPlayer项目有四个模块。在这种情况下,您可以简单地选择要导入的模块。我选择了名为core的模块,然后点击完成。[注意:您也可以从资源管理器中选择'core'文件夹而不是选择VideoPlayer文件夹]。

导入模块后,转到文件->项目结构(或Ctrl+Alt+Shift+S),然后选择依赖项。从模块部分,选择应用程序(这里,应用程序是我的项目模块的名称),然后在“声明的依赖项”部分中选择+图标并选择模块依赖项。从新窗口中,选择要添加为依赖项的模块(在我的情况下,它是'core')。

单击应用和/或确定后,Android Studio将修改相关的Gradle文件,因此您不必担心。该项目将作为依赖项添加到您的项目中。

请查看此页面以了解更多信息:https://developer.android.com/studio/projects/android-library


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接