flutter build apk与带--target-platform android-arm命令是否生成相同APK?
两个Flutter构建命令生成的APK是否相同?
- 结论:两者生成的APK并不相同
- 具体差异:
flutter build apk:默认生成通用(Fat)APK,包含armeabi-v7a、arm64-v8a、x86、x86_64四种主流架构的二进制代码,因此能在绝大多数Android设备(包括x86/x86_64架构的模拟器)上正常运行。flutter build apk --target-platform android-arm:仅生成armeabi-v7a架构专属APK,只包含该架构的编译产物。而当前绝大多数Android模拟器默认使用x86/x86_64架构(这类架构的模拟器性能更优),无法直接运行纯armeabi-v7a的APK,这就是第二个命令生成的APK无法在模拟器运行的原因。
额外说明:如果一定要让第二个命令的APK在模拟器运行,需要创建基于armeabi-v7a架构的模拟器镜像,但这类镜像运行性能通常远低于x86架构的模拟器,一般不推荐使用。
内容的提问来源于stack exchange,提问作者rozerro
相关产品推荐
相关产品推荐

