我想使用共享偏好,但是出现了奇怪的行为。
我正在使用:
shared_preferences: ^0.5.6+2
在一个具有状态的小部件上,在initState中我有这个代码:
@override
void initState() {
super.initState();
_testing()
}
Future<void> _testing() async{
print("starting")
SharedPreferences prefs = await SharedPreferences.getInstance();
await prefs.setInt('value', 1);
print("saved?")
}
当我使用flutter run运行代码时,只会打印“starting”,而不是“saved?”。
我在这个项目中使用的完全相同的代码已用于构建Android应用程序,并且正常工作。但对于iOS却不能工作。
我缺少什么?
_testing
函数标记为async
吗?(你还应该为其指定返回类型,例如Future<void>
)。我很惊讶它居然编译通过了。 - Richard Heap