我希望在用户完成调查后,在应用生命周期中只显示一次弹出式调查,这意味着当用户重新启动应用时,弹出式调查不会再次显示。现在的情况是,如果用户重新启动应用,弹出式调查仍会再次显示。
我们会感激你的帮助
我的代码弹出
void showGenexPopup() {
WidgetsBinding.instance.addPostFrameCallback((_) {
final GenexViewModel genexViewModel =
Provider.of<GenexViewModel>(context, listen: false);
if (!genexViewModel.videoTrigger) {
genexViewModel.showSurvey(
context: context,
pageId: GenexPageId.SearchPage,
duration: const Duration(seconds: 5),
);
}
});
}
我称之为:
@override
void initState() {
super.initState();
showGenexPopup();
}
我正在调用一个网页视图中的弹出窗口,我不知道它是否会对我想要实现的目标产生任何影响。
我有可能做到吗?
3条答案
按热度按时间f8rj6qna1#
正如@amir_a14建议的那样,你应该使用共享首选项,在那里你保存一个键,指示用户在完成调查后接受了调查。然后在你调用show survey之前,在SharedPref中检查这个键,看看这个值是否设置为正确的值或者是否存在
一般来说是这样的
y53ybaqx2#
Use SharedPrefrence library
js4nwp543#
谢谢你们的回复。你们真的帮助我使用sharedPreference得到了我的答案。
这是对我有效的方法: