react-native-image-crop-picker引发Google Play Console ABI不兼容上传失败求助
解决Google Play Console因armeabi ABI拒绝AAB上传问题
问题根源:react-native-image-crop-picker依赖的ucrop库包含armeabi架构的libucrop.so文件,即便主项目build.gradle已指定仅支持x86、x86_64、armeabi-v7a、arm64-v8a,第三方库的多余ABI文件仍会被打包进AAB,触发Google Play的报错。
解决方案
方法1:打包时排除所有armeabi架构文件
在app模块的build.gradle中添加以下配置,直接排除所有armeabi目录下的文件:
android { defaultConfig { // 确保已指定支持的ABI ndk { abiFilters "armeabi-v7a", "arm64-v8a", "x86", "x86_64" } } packagingOptions { // 排除所有armeabi架构的so文件 exclude "lib/armeabi/**" } }
方法2:精准排除ucrop的armeabi文件
如果只想针对ucrop库做排除,可修改packagingOptions为:
packagingOptions { exclude "lib/armeabi/libucrop.so" }
验证步骤
- 执行
./gradlew bundleRelease重新构建发布版AAB - 在Android Studio中打开生成的AAB文件,检查
lib目录下是否还存在armeabi文件夹 - 确认无armeabi相关文件后,重新上传至Google Play Console
内容的提问来源于stack exchange,提问作者Shivam
相关产品推荐
相关产品推荐

