如果所有资源都以一种分辨率放置在android应用程序包中怎么办

时间:2018-11-20 08:43:26

标签: android android-app-bundle

众所周知,Google推出了使用android-app-bundle分发android apk的新功能,

所以我的问题是,如果我将所有图像/资源放在诸如drawable-xxxhdpi的单个文件夹中,我的应用程序将如何运行。例如可以说我有一个使用5张图像的应用程序。我将所有图像放置在单个文件夹(drawable-xxxhdpi)中,而不是为不同的分辨率采用不同的大小,并假定android根据设备分辨率对其进行处理。

我们知道android-app-bundle会根据分辨率,语言等生成不同的apk。

那么在这种情况下,我的应用程序会怎样?如何以不同的分辨率生成APK(Android本身会重新缩放图像并生成捆绑包?)应用会发生什么,会崩溃或在较小分辨率的设备上正常运行?

我知道这是非编码问题,但它是技术问题。我试图搜索此内容,但找不到确切答案。

我也可能会帮助别人。

3 个答案:

答案 0 :(得分:3)

您的应用将与以前一样工作:如果向Android设备播放了包含所有文件的APK,则Play会将其加载到给定设备上的文件。

换句话说,如果一个mdpi设备已经加载了资源HTML,那么Play便会为该设备提供服务。

-

也与您的问题无关,但请注意,仅以xxxhdpi提供资源有一些缺点(无论您发布的是APK还是Android的AppBundle):

  1. Android平台将不得不在运行时在较低分辨率的设备上重新缩放这些图像,从而占用一些CPU时间并使您的应用稍微慢一些。

  2. 您的应用比在较低分辨率的设备上更大。如果您还在res/drawable-xxxhdpi/icon.png中提供了相同的资源,则资源显然会更小,这就是Play可以在mdpi设备上使用的资源,从而使这些设备的应用程序更小。

答案 1 :(得分:1)

未找到资源的异常将在分辨率较低的设备中触发

答案 2 :(得分:0)

一个很好且非常有用的问题,我认为您的应用程序在xxxhdpi设备上可以正常运行,但那些mdpi或hdpi的设备将面临布局问题。我认为这不会有其他问题。