对于我的本机安卓应用程序,我写的代码大小只有12KB
但生成的包大小为7.9MB。我怎么能减少它。
根据 Documentation for native native,我已经在文件for pL = 1:numel(secondLevelNames)
newstruct = struct(firstLevelName{1}, struct());
newstruct.(secondLevelNames{pL}) = data.(firstLevelName{1}).(secondLevelNames{pL});
save(filename, '-struct', 'newstruct')
end
上设置了proguard但是大小没有减少
app_root/android/app/proguard-rules.pro
有没有可用的解决方案?
答案 0 :(得分:6)
React Native app APK包含x86和ARM的JSCore二进制文件。如果您不需要x86,可以将大小减小到3-4 MB。
1)在你的app / build.gradle中
def enableSeparateBuildPerCPUArchitecture = true
2)从abiFilters中删除x86
这有助于我将尺寸从7.8 mb缩小到4.5 MB
答案 1 :(得分:3)
Android设备支持两种主要设备结构 armebi 和 x86 。默认情况下,RN会将这些结构的本机库构建到同一个apk中。
打开android / app / build.gradle:
设置 def enableProguardInReleaseBuilds = true ,
这将使Progaurd能够压缩Java字节码。这会将应用程序大小减少一点
和
设置def enableSeparateBuildPerCPUArchitecture = true 。
并检查android / app / build / outputs / apk / - 你会收到两个armebi和x86的apk文件,大约是原始apk的一半大小。
答案 2 :(得分:0)
有两种技术可以减小APK的大小:
按架构拆分应用,您可以按一系列知名架构拆分APK:armeabi-v7a,x86,arm64-v8a,x86_64
如果您要分发应用程序,则最好使用Play商店使用Android应用程序捆绑包来实现。
启用prodguard将导致APK尺寸变小。
优化您的图片资产,如果有机会尝试使用SVG资产。
通过启用新的JavaScript引擎,生成的APK的大小在React-Native 0.62
中发生了变化,该JavaScript引擎将原生库的大小减少了近 40% >