如何创建支持16KB页面内存的AAB?VS2022 Xamarin Android打包遭拒
解决Xamarin Android用NDK28.0打包AAB被Google Play拒绝的问题
问题根源:NDK 28.0 默认开启了16KB页面大小的优化,但Xamarin Android默认构建配置未同时兼容传统4KB页面设备,导致生成的AAB不符合Google Play兼容性要求。
解决办法
方法1:临时降级NDK版本(快速生效)
- 打开VS2022的Android SDK管理器,卸载NDK 28.0,安装NDK 25.x或26.x版本(这两个版本默认保持4KB页面兼容)
- 右键项目→属性→Android Options→Advanced,在NDK路径中选择刚安装的旧版NDK路径,保存后重新归档生成AAB
方法2:调整构建配置兼容双页面大小(推荐保留NDK28)
- 直接编辑项目的
.csproj文件,在<PropertyGroup>节点中添加:
或者在项目属性的Android Options→Advanced→Additional NDK Arguments里输入<AndroidNdkAdditionalArgs>-DANDROID_PAGESIZE_COMPATIBILITY=4KB,16KB</AndroidNdkAdditionalArgs>-DANDROID_PAGESIZE_COMPATIBILITY=4KB,16KB - 执行
Build→Clean Solution清理缓存,再重新归档生成AAB
方法3:更新Xamarin Android版本
- 确保VS2022安装了最新稳定版的Xamarin Android组件(比如13.2及以上版本),新版本已针对NDK28的兼容性问题做了修复,更新后直接重新打包即可
内容的提问来源于stack exchange,提问作者ShayW
相关产品推荐
相关产品推荐

