java - 在 Android 中修改外部库的最佳实践是什么?

标签 java android android-studio libraries

我正在使用外部库来创建自定义的直播应用程序。

这是我正在使用的库:

https://github.com/cine-io/cineio-broadcast-android/tree/master/cineio-broadcast-android-sdk

我对这个库的(少数)问题之一是它强制手机使用前置摄像头(如果有的话)。我宁愿强制使用后置摄像头(或者有一个选择,无论如何)。

事实上,这个库中管理广播的类确实有内置的公共(public)方法来在初始化时选择相机,并且它的方法是私有(private)的,所以我无法扩展它。

我的解决方案是在本地下载该库,将其编译为 Gradle 中的本地项目(我是 usnig Android Studio)。然后我直接修改项目中的库文件。它有效。

但是我担心这不是一个很好的做法。我可以预见的一个问题是该库将会升级 - 由于我将在本地进行更改,因此很难利用该库的新版本。

问题:修改外部库时是否有最佳实践?这是我正在做的事情,还是有更好的方法?

请随时提供有关该问题的反馈,以便我可以根据需要改进或澄清它。

最佳答案

我会 fork 该库并将您的提交推送到您的 fork 上。像这样,您稍后也可以将原始库中的更改合并到您的分支中。

关于java - 在 Android 中修改外部库的最佳实践是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27918466/

相关文章:

Java - 使用一个函数处理多个事件?

android - 取消 Google Play 游戏登录后 Facebook 登录崩溃(反之亦然)

android - aar 库中的 google_play_services_version 值出错

android - 在 Mac 上查找 Android SDK 并添加到 PATH

java - 任何现有的 java 或 matlab 库都可以计算房间中有多少人使用 IP 摄像机?

java - 即使授予权限,也无法在外部存储中创建目录

java - 不知道为什么这段代码会抛出 NumberFormatException。 (有效输入)

android - 如何强制显示操作栏溢出图标

java - 从 RecyclerView 适配器到主脚本的 getSelectedButtonID 的未更新值

android-studio - Android Studio - 自动完成和其他功能不起作用