Flutter APK可在Redmi 4安装但无法启动问题求助
解决Redmi 4上Flutter初始项目安装后闪退的问题
先梳理下你的问题:在Redmi 4设备上运行刚创建的Flutter初始项目,APK能正常安装,但启动后立即闪退;flutter doctor检测无异常,你的环境信息如下:
O:\flutter projects\shout>flutter doctor Doctor summary (to see all details, run flutter doctor -v): [√] Flutter (Channel master, v0.3.7-pre.12, on Microsoft Windows [Version 10.0.10240], locale en-US) [√] Android toolchain - develop for Android devices (Android SDK 27.0.3) [√] Android Studio (version 3.0) [√] Connected devices (1 available) • No issues found!
结合我自己碰到过的类似设备兼容问题,给你几个有效的排查和解决步骤:
切换到Flutter稳定版:你当前用的是master通道的预览版(v0.3.7-pre.12),这类版本可能存在未修复的低版本Android兼容bug。执行以下命令切换到稳定版并升级:
flutter channel stable flutter upgrade抓取详细崩溃日志定位根因:你提供的
flutter run -v日志没覆盖到崩溃瞬间的关键信息,用adb抓取错误日志就能精准找到问题:- 打开命令行执行:
adb logcat *:E - 在Redmi 4上启动闪退的APP
- 命令行里会输出崩溃的完整栈信息,比如是Native库加载失败、权限拦截还是系统API兼容问题
- 打开命令行执行:
升级Gradle配置适配MIUI:你的Gradle版本是4.1,搭配Android Studio 3.0可能和Redmi的MIUI系统存在适配问题。修改两个配置文件:
- 在
android/build.gradle中,把com.android.tools.build:gradle的版本升级到3.2.1(或更高兼容版本) - 在
gradle/wrapper/gradle-wrapper.properties里,将distributionUrl改为https\://services.gradle.org/distributions/gradle-4.6-all.zip
- 在
清理项目缓存后重新编译:有时候旧缓存会导致奇怪的启动异常,执行以下命令重置编译环境:
flutter clean flutter pub get flutter run检查MIUI的权限管控:Redmi的MIUI对应用权限限制较严,即使是初始项目,也可能被系统拦截。可以在设备的「设置-应用管理」里找到你的APP,临时开启所有允许的权限试试。
内容的提问来源于stack exchange,提问作者SHIJO CS
相关产品推荐
相关产品推荐

