Android 在一个设备中部署所有特定于arch的库是否正常?

Android 在一个设备中部署所有特定于arch的库是否正常?,android,deployment,Android,Deployment,我创建了一个应用程序,它使用本机so库(我也基于。so库大约为100MB。该工具链为不同的体系结构创建了该so文件的4个变体(x86,armeabi,armeabi-v7,mips)。因此,最终的应用程序大约是350MB 在这一点上,我认为这是合理的,因为目标设备可能有这些体系结构中的任何一种,因此需要所有的变体 但为什么在安装应用程序时会部署所有这些应用程序?!(设置->应用程序显示它占用了相同的350MB)一个特定的设备肯定在一个特定的体系结构中。安装程序是否足够聪明,不知道只需要其中一个?

我创建了一个应用程序,它使用本机
so
库(我也基于。
so
库大约为100MB。该工具链为不同的体系结构创建了该
so
文件的4个变体(
x86
armeabi
armeabi-v7
mips
)。因此,最终的应用程序大约是350MB

在这一点上,我认为这是合理的,因为目标设备可能有这些体系结构中的任何一种,因此需要所有的变体


但为什么在安装应用程序时会部署所有这些应用程序?!(设置->应用程序显示它占用了相同的350MB)一个特定的设备肯定在一个特定的体系结构中。安装程序是否足够聪明,不知道只需要其中一个?或者我们必须在某个地方具体说明这一点?(在这种情况下,怎么做?)或者我这样想是错误的?

Google play根据基础架构过滤apk,您是否通过Google play安装应用程序?

否,我是由adb安装apk的。然而,过滤不是重点,因为该应用程序支持所有体系结构,我想问为什么它会将所有特定于体系结构的库复制到手机上?因为理论上,匹配的一个就足够了!与我的问题相关,我从中得到了一个解决方案,即为每个架构提供单独的APK。