【问题标题】:import and access re-usable static methods (AndroidStudio)导入和访问可重用的静态方法 (Android Studio)
【发布时间】:2017-11-01 18:16:57
【问题描述】:

在我以前的程序员职业生涯中,我开发了数百个可在多个程序中重复使用的小型实用函数。 现在在 Android 中(对我来说很陌生),我想做一些类似的事情,实用程序在某些事件中播放声音,制作一些标准对话框等。 我尝试使用带有“不添加活动”的新包 es.utils 。 在其中我添加了一个带有私有构造函数的 java 类(因此无法实例化该类),该类中的所有方法都声明为静态的。 这些方法将是我的“函数”(与 Javas Math-class 相比)。 到目前为止一切顺利,但我如何在我的常用应用程序中调用或导入这些方法并使它们对 AndroidStudio 可见? 粘贴和复制源代码不是一个严肃的选择。 我查阅过的所有教科书和教程都对这个主题保持沉默。 有实际建议的人吗?提前致谢! 埃里克.S

【问题讨论】:

    标签: android code-reuse


    【解决方案1】:

    今天的 Android Studio 使用 gradle 作为构建机制。

    您可以使用引用作为库模块进行一些漂亮的配置以供您自己使用。

    但如果你假装公开,你可以:

    • 生成 AAR;
    • 如果 JAR 不包含资源文件夹和 AndroidManifest,则生成 JAR
    • 通过 jcenter() 和 maven() 存储库作为 gradle artefact 发布 [推荐]

    【讨论】:

      【解决方案2】:

      我通过创建一个包含我所有常见的可重用代码的 Android 库项目来做到这一点。

      我在 GitHub 上共享项目,然后只需使用 Gradle 和 JitPack 将库导入到我想使用的任何项目中。

      Github 允许我创建版本发布,因此我可以安全地保留我的库的“时间点”版本,以防库的任何更新导致可能破坏使用它的项目的更改。

      【讨论】:

      • @Marcos:感谢您的回复,这两种方法似乎都相当复杂。考虑到像 Cobol 和 C 这样的老东西更优雅地解决了这个常见问题,将编译后的目标代码放在用户库中并让“链接器”对其进行排序,我想知道为什么像 Android 这样的新产品和高级产品会如此笨拙?
      • 这正是我的做法,因为它适合我的需要。执行上述操作意味着在我想使用该库的每个项目中,我只需在 build.gradle 中添加一行,Android Studio 就会自动下载并使用我的库。几乎不笨拙。如果您想要一种简单的方法,只需将库直接从磁盘导入任何项目即可。然后,您将在项目中获得完整的副本。
      • 我找到了另一种模拟源代码复制粘贴的方法:符号链接或符号链接(在 Linux 和现代版本的 MS-Windows 中已知的命令行问题) Studio 让我们将文件添加到我们的项目中但目前还没有符号链接,所以我们必须在终端模式下进行。
      猜你喜欢
      • 2012-01-31
      • 2019-08-31
      • 1970-01-01
      • 1970-01-01
      • 2016-09-21
      • 1970-01-01
      • 2015-04-22
      • 2015-03-19
      • 2015-09-02
      相关资源
      最近更新 更多