在Java和Android中构建个人库

时间:2015-09-25 11:31:43

标签: java android

我想尽可能多地重用代码。假设我创建了一个名为JavaBase的库,并将其嵌套在Android的aar-package中。这是一个不错的解决方案?

让我们说JavaBase包含以下编码:

public class BooleanUtils {

    private static final String TAG = "BooleanUtils";

    public static boolean stringEquals(String arg, String... params) {
        for (String s : params) if (s.equals(arg)) return true;
        return false;
    }
...

现在我想在Android中提供相同的代码。是否推荐使用以下编码的aar-package(又名“Android库”)

public class BooleanUtils {

    private static final String TAG = "BooleanUtils";

    public static boolean stringEquals(String arg, String... params) {
        return JavaBase.stringEquals(arg, params);
    }

enter image description here

提前致谢

修改

经过一些测试后,我发现两个软件包都可以导入到它 没有必要回忆基础库中的方法

2 个答案:

答案 0 :(得分:1)

是的,可以在Java(TM)和Android之间共享Java代码库。编译代码,将其放在JAR文件中,然后共享它。

但是,您需要注意共享代码库中各个平台的意外依赖性;即依赖于Java SE方法中的类/方法,这些方法/方法在Android上不存在或反之亦然。为了防范这种情况,建议在两个平台上编译(和单元测试)共享代码库。

话虽如此,这里有一些免费的建议。

虽然重用自己的代码是一个很酷的主意,但重用其他人的代码往往更有效率。代码。特别是由Guava和Apache Commons人员编写的代码。滚动自己的库的问题在于你最终可能会重新发明轮子,最终你需要维护一堆比你真正想要/需要更多的代码。此外,虽然您可能认为您的库比替代品更好,但其他可能需要维护您的代码库的人可能会有不同的意见。如果其他人需要在将来的某个时间处理您的代码库,那么这可能会导致问题。

答案 1 :(得分:0)

要在android studio中创建一个库,只需右键单击你的app文件夹 - >新建 - >模块。

单击模块,然后选择android库作为模块。给它你想要的任何名字。

在您的模块中:app gradle将编译项目(':yourlibrary')添加为依赖项。

就是这样,现在您可以在主项目中访问库的功能了。例如:您可以直接在主项目java类中使用BooleanUtils.stringEquals()。