当用户在一段时间后恢复应用程序时,是否响应本机,刷新活动?

时间:2018-10-06 07:28:56

标签: android ios react-native

假设您有一个新闻应用程序,例如Yahoo。

当用户运行您的应用并从您的应用移出(不退出该应用)时。

过了一会儿(例如一个小时),他回来了,您想刷新页面(如果他看到Yahoo的首页,则可能有新消息要显示)

这是我不需要担心的事情,因为android实际上处理了长期活动吗?

或者这是我必须自己实现的事情吗?

如果我必须自己做,是否应该通过保存“退出时间”并将其与“恢复时间”等进行实现,或者是否有android / ios支持或github库?

3 个答案:

答案 0 :(得分:0)

通过浏览此内容,您可以了解有关Android生命周期和活动的信息 https://developer.android.com/reference/android/app/Activity

如果您使用react-native创建应用程序并将其部署到Android和IOS上,则需要为此使用兼容的react-native模块。

如果您仅考虑使用android应用程序。您可以覆盖onStart()onResume()onStop()onPause()onDestroy()方法来在某些状态下执行所需的操作。

例如:如果您要在重新打开应用程序时重新加载新内容,则需要使用覆盖的onResume()方法覆盖该刷新条件。

答案 1 :(得分:0)

假设您想在很长一段时间后更新内容,假设您的数据来自要在React Native应用程序中加载的远程源-您可以点击React Native JS生命周期事件之一。

例如,您可以使用componentDidMount()

componentDidMount()在组件安装(插入树中)后立即被调用。需要DOM节点的初始化应在此处进行。如果您需要从远程端点加载数据,那么这是实例化网络请求的好地方。

此方法是设置任何订阅的好地方。如果您这样做,请不要忘记退订componentWillUnmount()

如果您想创建自定义的React Native模块,则需要创建一个Android服务-但假设您拥有用于数据的API端点,并且仅当用户与应用进行交互时才会刷新数据-我不明白为什么您需要自定义模块。它已经全部内置。

答案 2 :(得分:0)

您应该使用facebook.github.io/react-native/docs/appstate来检查应用何时变为active,然后再进行操作。