获取应用程序活动时间

时间:2018-10-24 09:43:51

标签: ios swift

是否可以检查我在应用程序中花费了多少时间(在前台或后台)?我想在我的应用程序中显示此数据。有想法吗?

2 个答案:

答案 0 :(得分:1)

是的,您可以做到。但是您必须做一些时间计算。首先,您需要2个来自“ AppDelegate”的代表-

1.func applicationWillEnterForeground(_ application: UIApplication)
2.func applicationDidEnterBackground(_ application: UIApplication)
  • 现在,您需要保存该应用程序将要进入前景时的时间戳,以及当该应用程序进入后台时的另一个时间戳。您可以在应用程序用户默认设置中保存这两次。

  • 之后,创建一个函数/类,该函数/类将返回“ Forground”时间与“ background”时间的时差。

  
      
  • “ applicationWillEnterForeground” 和“ applicationDidEnterBackground ”之间的区别是您= APP活动时间

  •   
  • “ applicationDidEnterBackground” 和“ applicationWillEnterForeground ”之间的区别是您的 APP背景时间

  •   

答案 1 :(得分:0)

  1. 获取application(_:willFinishLaunchingWithOptions:)中的当前时间并将其保存到永久性存储中

  2. 获取applicationWillTerminate(_:)中的当前时间

这两次之间的差异将是应用程序运行的时间。

要获取当前时间,请使用let currTime = Date()

您可以将UserDefaults用作最简单的持久性存储。


有关应用程序生命周期here

的更多信息