是Android模块依赖增加apk大小

时间:2017-05-22 14:34:07

标签: android

我有一个Android应用程序分成几个模块。

它是旅行应用程序,但它将适用于不同的客户。

每个客户都可能需要更改酒店或车载屏幕,颜色或图像。

所以我将应用程序的每个部分都作为库模块。

例如:

应用模块

配置模块>>像基本URL,颜色,脸书或推特密钥等

实用程序模块>>喜欢通知助手,排球助手

酒店模块,汽车模块等

在实用程序模块中,我需要一个来自config模块的drawable,许多模块依赖于config模块

如果我在生成apk时依赖Config模块制作几个模块,那么apk大小会有冗余的Config模块还是有另一种方法来实现我的目标? enter image description here

1 个答案:

答案 0 :(得分:1)

也许您可以使用gradle构建变体。

http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Build-Variants

https://developer.android.com/studio/build/build-variants.html

因此,您的全局体系结构位于普通文件夹中,不同文件位于匹配文件夹中。

例如:

app
| - src
    | - main
    |   | - java 
    |        | - com.xxxx.yy
    |            | your code
    |
    | — car
    |   | - java 
    |   |    | - com.xxxx.yy
    |   |        | specificClass.java
    |   | - res
    |       | - drawable
    |           | - main.png
    |
    | - hotel
        | - java 
        |    | - com.xxxx.yy
        |        | specificClass.java
        | - res
            | - drawable
                | - main.png

然后你可以在你的代码中调用你的main.png img。构建时,选择使用carhotel风格进行编译,然后您的应用就会拥有正确的图像。

例如,它与string.xml或java类一样。

只需将您的全局代码分解为主文件夹,然后将您的特定代码放入匹配文件夹中。