我在Objective C中創建了一個iOS應用程序。我不想爲服務器支付費用,但我想創建一個獎勵系統,以便每3小時用戶獲得「硬幣」當他們進入應用程序。例如,如果用戶在下午1點退出應用程序,並在下午5點重新進入應用程序,則獎勵將準備就緒。不過,即使應用程序沒有在後臺運行,我也希望這樣做。用戶離開應用程序後的NSTimer
這可能嗎?
我在Objective C中創建了一個iOS應用程序。我不想爲服務器支付費用,但我想創建一個獎勵系統,以便每3小時用戶獲得「硬幣」當他們進入應用程序。例如,如果用戶在下午1點退出應用程序,並在下午5點重新進入應用程序,則獎勵將準備就緒。不過,即使應用程序沒有在後臺運行,我也希望這樣做。用戶離開應用程序後的NSTimer
這可能嗎?
也許這裏沒有計時器,但通過NSUserDefaults
保存用戶的退出時間,然後每當用戶重新輸入應用程序時,將退出時間與當前時間進行比較,以查看間隔是否爲3小時。
例如,在viewWillDisappear() 你可能會節省通過出口時間:
NSUserDefaults.standardUserDefaults().setObject(NSDate(), forKey: "exitTime")
而且在viewDidLoad中(),您可以通過
NSUserDefaults.standardUserDefaults().objectForKey("exitTime")
提取退出時間
在AppDelegate中,你可以退出日期時間保存到NSUserDefaults的
以下功能時,也被稱爲
FUNC applicationWillTerminate(應用程序:UIApplication的)
FUNC applicationDidEnterBackground(應用程序:UIApplication的)
當用戶輸入前景時,可以將退出時間與當前時間和給一些硬幣
但這種方式有一些問題
如果用戶編輯iPhone的日期或在設定的時間,就可以得到一個日誌硬幣
的,但如果你使用的服務器,你可以比較日期正確
有一些方法來解決這個問題,而服務器
怎麼樣節省週期性當前時間或日期?
這是用例
如果當前日期較早然後保存currentdate然後你必須拿硬幣,因爲這是無效的硬幣
我的想法怎麼樣?