Android 如何自动生成一个";lite“;版本

Android 如何自动生成一个";lite“;版本,android,android-build,android-drawable,Android,Android Build,Android Drawable,我已经做了一个应用程序,有很多不同的按钮miriad图形。每个按钮的所有图形都在可绘制的xhdpi、可绘制的hdpi、可绘制的mdpi和可绘制的ldpi中按比例复制 前两个目录中的图形量约为3.5MB,而整个应用程序中的图形量约为7.5MB 显然,要求拥有低端智能手机的用户下载3.5MB完全无用的图形并将其存储在内存中是疯狂的,因此我决定为这些用户制作一个“lite”版本 我想要一个常数,比如 static final boolean LITE_BUILD = true; 因此,当我将其设

我已经做了一个应用程序,有很多不同的按钮miriad图形。每个按钮的所有图形都在
可绘制的xhdpi
可绘制的hdpi
可绘制的mdpi
可绘制的ldpi
中按比例复制

前两个目录中的图形量约为3.5MB,而整个应用程序中的图形量约为7.5MB

显然,要求拥有低端智能手机的用户下载3.5MB完全无用的图形并将其存储在内存中是疯狂的,因此我决定为这些用户制作一个“
lite
”版本

我想要一个常数,比如

  static final boolean LITE_BUILD = true;
因此,当我将其设置为true时,构建会自动排除
xhdpi
hdpi
图形


现在我唯一的解决方案是手动移动这两个目录,构建lite版本,将目录放回原处,然后构建完整的版本。显然,它不是最佳的。

好吧,因为你放在这些文件夹中的所有绘图都是固定的,我认为构建同一个应用程序两次,而在lite版本中,它只有低dpi图像,这将是唯一的解决方案

如果你担心人们会为他们的手机下载正确的应用程序(完整或精简版),你可以在应用程序中标记它支持的手机屏幕大小


因此,低dpi手机只能看到lite版本,而其他手机只能看到完整版本(我认为它是这样工作的)。

好吧,因为你放在这些文件夹中的所有可拖动设备都是固定的,我认为构建同一个应用程序两次,而在lite版本中,它只有低dpi图像,这将是唯一的解决方案

如果你担心人们会为他们的手机下载正确的应用程序(完整或精简版),你可以在应用程序中标记它支持的手机屏幕大小


因此,低dpi手机只能看到lite版本,而其他手机只能看到完整版本(我认为它是这样工作的)。

您是在Linux上构建应用程序的吗?在这里,您可以创建项目目录的多个变体,同时设置指向所需目录的符号链接,并为应用程序的低分辨率变体保留具有高分辨率图像的目录。通过这种方式,您可以使用一个代码库,同时创建应用程序的多个变体非常简单。

您是在Linux上构建应用程序的吗?在这里,您可以创建项目目录的多个变体,同时设置指向所需目录的符号链接,并为应用程序的低分辨率变体保留具有高分辨率图像的目录。通过这种方式,您可以使用一个代码库,同时创建应用程序的多个变体非常简单。

您使用的是一个健全的版本控制系统,对吗?然后在vcs中为不同的分辨率构建添加不同的分支

在公共基本分支(主干/主分支?)中执行公共功能,并将这些更改合并到单独的解析分支。仅将依赖于分辨率的绘图项添加到相关分支以及对清单的修改


现在,当您想要为(比如ldpi)更改lpdi分支构建版本时,请确保合并对基本分支的更改并正常构建apk。瞧,你有一个lpdi版本。

你使用的是一个健全的版本控制系统,对吗?然后在vcs中为不同的分辨率构建添加不同的分支

在公共基本分支(主干/主分支?)中执行公共功能,并将这些更改合并到单独的解析分支。仅将依赖于分辨率的绘图项添加到相关分支以及对清单的修改


现在,当您想要为(比如ldpi)更改lpdi分支构建版本时,请确保合并对基本分支的更改并正常构建apk。瞧,你们有一个lpdi版本。

这个问题很好,但大多数情况下人们不会在意额外的尺寸。让他们下载Bojan是对的,大多数没有奢侈存储空间的人都会购买sd卡来扩展存储空间。在我看来,这是胡说八道。是的,有大量的可用存储空间——然而有些人只有很低的下载带宽,因此他们确实关心应用程序的大小。除此之外:许多认为这种方式的开发人员将创建糟糕的应用程序,这些应用程序又慢又大,因为他们添加了一些很酷的框架/库,只是为了获得一些糟糕的功能,而框架的大部分部分都没有使用。所以这也是一个代码质量的问题……我使用Nexus4进行开发,我的空间被压缩了。我无法向其中添加SD卡。在任何情况下,说人们不在乎尺寸都是愚蠢的。这绝对是一个合理的问题。若我下载了它,并看到它是那个么大,它将在几分钟内被删除。这个问题是好的,但在大多数情况下,人们不会关心额外的大小。让他们下载Bojan是对的,大多数没有奢侈存储空间的人都会购买sd卡来扩展存储空间。在我看来,这是胡说八道。是的,有大量的可用存储空间——然而有些人只有很低的下载带宽,因此他们确实关心应用程序的大小。除此之外:许多认为这种方式的开发人员将创建糟糕的应用程序,这些应用程序又慢又大,因为他们添加了一些很酷的框架/库,只是为了获得一些糟糕的功能,而框架的大部分部分都没有使用。所以这也是一个代码质量的问题……我使用Nexus4进行开发,我的空间被压缩了。我无法向其中添加SD卡。在任何情况下,说人们不在乎尺寸都是愚蠢的。这绝对是一个合理的问题。如果我下载了它,并看到它的大小,它将在几分钟内删除。这是一个好主意。这样,我甚至不用担心说它是“lite”版本,也不用更改图标。正如你所知,google play是否自动支持此功能?我是说