我想定期从服务器获取数据并放入数据库而无需打开应用程序,所以我希望无论有无活动都知道我的服务总是打开。 因此,我希望始终保持服务开放。 这意味着我希望我的服务不受活动限制,但是现在当我长按并退出应用程序时,该服务将停止。 有人知道如何解决吗? 谢谢像WhatsApp Faceboo ...
提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供 中文繁体 英文版本 中英对照 版本,有任何建议请联系yoyou2525@163.com。
我有一个应用程序,它具有使用 OneSignal 开发的通知系统。
用例: - 当通知伴随应用关闭并且用户点击它时,应用直接打开与该通知对应的屏幕,(直到我明白了,)但是当用户点击返回时,应用关闭; 因为堆里只有那条路线;
我想以某种方式重新打开应用程序或保持打开状态!
类似于 Whatsapp 中发生的事情,因为当应用程序通过聊天中的直接通知关闭和打开时,当它返回时它会关闭并使应用程序再次打开 animation!
有人可以帮我解决这个问题吗? 或者至少启发我。 谢谢!
这似乎是WillPopScope
小部件的一个用例。 这个小部件会告诉你用户是否按下了返回按钮。 你只需要用它包裹你的脚手架。
这是一个如何使用它的示例:
class MessagingPage extends StatefulWidget {
@override
_MessagingPageState createState() => _MessagingPageState();
}
class _MessagingPageState extends State<MessagingPage> {
bool hasComeFromNotification = true;
@override
Widget build(BuildContext context) {
return WillPopScope(
onWillPop: (){
if(hasComeFromNotification){
Navigator.of(context).pushReplacement(MaterialPageRoute(builder: (context){
return HomePage();
}));
return Future.value(false); // do not call Navigator.pop() because I already called it
} else {
return Future.value(true); // call Navigator.pop()
}
},
child: Scaffold(
body: Center(
child: Text('messaging'),
),
),
);
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.