Android 了解APK、ABB规模和游戏商店规模限制

Android 了解APK、ABB规模和游戏商店规模限制,android,flutter,build.gradle,apk,proguard,Android,Flutter,Build.gradle,Apk,Proguard,对于Fatter android build来说,这是一个非常新的版本,我已经用android studio分析了我的apk,下面是结果 它说APK大小是200+但下载大小是90+,这将在游戏商店接受 另外,这个APK有6个内部捆绑包,为什么它们捆绑在一起,看起来它们增加了整个应用程序的大小。有什么规则可以避免这种情况吗。 Q:根据不同软件包所有者的指示,我在我的pro guard文件中使用了“保留”规则。这是否会影响应用程序的总大小 Q:最后,当构建一个新的.abb捆绑包时,文件大小低于10

对于Fatter android build来说,这是一个非常新的版本,我已经用android studio分析了我的apk,下面是结果

它说APK大小是200+但下载大小是90+,这将在游戏商店接受

另外,这个APK有6个内部捆绑包,为什么它们捆绑在一起,看起来它们增加了整个应用程序的大小。有什么规则可以避免这种情况吗。

Q:根据不同软件包所有者的指示,我在我的pro guard文件中使用了“保留”规则。这是否会影响应用程序的总大小


Q:最后,当构建一个新的.abb捆绑包时,文件大小低于100MB,会不会导致应用程序崩溃,为什么文件大小较低?

APK过去由所有本地化资源、所有屏幕大小资源、所有CPU体系结构二进制文件等组成。创建APK非常简单。点击一下就完成了

小手机正在获得大手机资源,反之亦然。我们不仅直接在用户手机上浪费了如此多的带宽,还浪费了内存。如果我们有足够的东西,并不意味着我们应该浪费它

Bundle格式是二进制格式,其中包含许多APK。APK取决于本地化、屏幕密度、CPU架构等。这些APK通过play store智能下载到用户手机中

正如您之前所读到的,Android平台支持一个应用程序具有多个APK。它可能是API级别、屏幕大小、CPU架构等。现在是改进它的时候了。您所需要做的就是生成新的二进制格式(Bundle),该工具将负责生成所需的apk。您不需要提及因素(API、屏幕、CPU等)。不仅如此,工具还可以将其提升到下一个级别,并从一个包中真正生成大量APK(通过添加更多的因素,如语言)。例如,我的应用程序包中包含以下APK

该捆绑包有25个APK。使用语言、CPU架构、屏幕大小等智能拆分,所有代码均为零。现在,如果用户从play商店下载此应用程序,Google play将根据设备要求发送一个而不是几个APK。它可能会发送它


base-x86_64.apk(基于CPU)+base-xxhdpi.apk(基于分辨率)+base-fr.apk(基于语言)apk用于包含所有本地化资源、所有屏幕大小资源、所有CPU体系结构二进制文件等。创建apk非常简单。点击一下就完成了

小手机正在获得大手机资源,反之亦然。我们不仅直接在用户手机上浪费了如此多的带宽,还浪费了内存。如果我们有足够的东西,并不意味着我们应该浪费它

Bundle格式是二进制格式,其中包含许多APK。APK取决于本地化、屏幕密度、CPU架构等。这些APK通过play store智能下载到用户手机中

正如您之前所读到的,Android平台支持一个应用程序具有多个APK。它可能是API级别、屏幕大小、CPU架构等。现在是改进它的时候了。您所需要做的就是生成新的二进制格式(Bundle),该工具将负责生成所需的apk。您不需要提及因素(API、屏幕、CPU等)。不仅如此,工具还可以将其提升到下一个级别,并从一个包中真正生成大量APK(通过添加更多的因素,如语言)。例如,我的应用程序包中包含以下APK

该捆绑包有25个APK。使用语言、CPU架构、屏幕大小等智能拆分,所有代码均为零。现在,如果用户从play商店下载此应用程序,Google play将根据设备要求发送一个而不是几个APK。它可能会发送它


base-x86_64.apk(基于CPU)+base-xxhdpi.apk(基于分辨率)+base-fr.apk(基于语言)如果应用程序的大小为150MB,则根据发送到一个设备的最大下载大小计算大小限制

有一个命令
get size total
,允许您估计此值

您的下载大小为90MB,包括所有ABI,您已经低于阈值,因此这不会是一个问题(实际上,设备将只接收1个ABI,因此它将更低)

关于你的其他问题:

  • Keep rules会增加应用程序的大小,但如果库开发人员告诉您使用它们,通常是有充分的理由的——没有它们,应用程序可能无法工作
  • “下载大小”表示文件的压缩大小,“原始文件大小”表示文件的未压缩大小。下载大小表示用户将从Play Store下载的内容的近似大小

应用程序的大小限制为150MB,并根据发送到一台设备的最大下载大小进行计算

有一个命令
get size total
,允许您估计此值

您的下载大小为90MB,包括所有ABI,您已经低于阈值,因此这不会是一个问题(实际上,设备将只接收1个ABI,因此它将更低)

关于你的其他问题:

  • Keep rules会增加应用程序的大小,但如果库开发人员告诉您使用它们,通常是有充分的理由的——没有它们,应用程序可能无法工作
  • “下载大小”表示文件的压缩大小,“原始文件大小”表示文件的未压缩大小。下载大小表示用户将从Play Store下载的内容的近似大小

aab中的多个apk必须增强aab的大小,或者至少该大小必须与apk相同,在我的情况下,aab的大小比apk小得多,这是为什么?apk Analyzer显示每个实体的原始文件大小并下载文件大小值,如图所示。原始文件大小表示di上实体的解压缩大小