Flutter中如何打印PDF文件及解决flutter_pdf_printer配置报错问题
flutter_pdf_printer 配置报错解决方案
报错原因
该报错由flutter_pdf_printer库长期未更新、与高版本安卓构建环境不兼容导致,按以下步骤逐一排查即可解决:
解决方案步骤
- 调整安卓端SDK版本配置
打开android/app/build.gradle文件,修改以下配置:android { compileSdkVersion 33 // 至少升级到33 defaultConfig { minSdkVersion 21 // 该库最低支持安卓5.0,不能低于21 } } - 降级Gradle构建工具版本
该库不支持7.0及以上版本的安卓Gradle插件,做以下调整:- 打开
android/build.gradle,修改Gradle插件版本:
dependencies { classpath 'com.android.tools.build:gradle:4.1.3' }- 打开
android/gradle/wrapper/gradle-wrapper.properties,修改对应Gradle版本:
distributionUrl=https\://services.gradle.org/distributions/gradle-6.7.1-all.zip - 打开
- 清理缓存重新构建
依次执行以下命令:
执行完成后重新运行项目即可。flutter clean flutter pub get - (可选)替换维护活跃的打印库
若以上调整后仍有兼容问题,建议替换为目前社区广泛使用的printing库,适配最新Flutter版本与双端系统,无需额外配置原生环境。
额外注意事项
你当前代码中使用了公共存储目录保存PDF文件,需要在android/app/src/main/AndroidManifest.xml中添加存储权限配置:
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
内容的提问来源于stack exchange,提问作者Vishali
相关产品推荐
相关产品推荐

