常见问题
常见的 Flutter 运行时问题和修复方法。
Flutter 构建失败时,我应该首先查看哪里?
从以下文档开始:
大多数构建问题来自设置/版本不匹配、过时的原生构建产物或跳过的原生设置。清理重建通常可以解决问题:
flutter clean
flutter pub get
flutter run
如果原生库未下载,为目标平台运行 rive_native 设置 CLI:
dart run rive_native:setup --verbose --clean --platform <platform>
将 <platform> 替换为你构建的目标平台(例如 android 或 macos)。
你也可以将多个平台作为逗号分隔的列表提供(例如 android,ios,macos)。
如果仍然出现设置错误,请按照 Rive Native 故障排查 进行排查。对于 Android 特定的设置问题,请参见 Android 说明。
LateInitializationError: Field 'makeFlutterFactory' has not been initialized
如果你看到类似 LateInitializationError: Field 'makeFlutterFactory' has not been initialized 的错误,请确保在显示任何 Rive 组件之前初始化 Rive。
尽早调用 await RiveNative.init()(例如在 main() 中),在创建或使用 Factory.flutter/Factory.rive 之前。
import 'package:flutter/widgets.dart';
import 'package:rive/rive.dart';
Future<void> main() async {
WidgetsFlutterBinding.ensureInitialized();
await RiveNative.init();
runApp(const MyApp());
}
如何在 Android 上启用 16KB 页面支持?
Rive Flutter 0.14.x 默认包含 16KB 页面支持。
如果你使用的是 0.13.x,需要在 gradle.properties 文件中通过设置 rive.ndk.version=28.1.13356709 来指定使用的 NDK 版本。
这为你提供了 16KB 页面支持以及控制未来更新所用 NDK 的灵活性。
更多上下文信息,请参见 rive-flutter issue #479。