iOS-手機驗證碼期限 NSDate與NSString之間的轉換以及計算

這次的項目不僅用到了手機驗證碼的功能,客戶還希望有一個Timer來提示用戶驗證碼的有效時間。

假設通過服務端獲取簡訊後的回傳訊息如下:

  • reg_code_create_time是告訴API調用者驗證碼的生成時間。
  • success表示申請驗證碼成功。
  • 假設驗證碼有效期為30分鐘。
  • 收到驗證碼位字符串yyyy-MM-dd HH:mm:ss的格式

NSString轉換成NSDate

然後我們需要一個有效期限,即驗證碼生成時間+30分鐘。

比較兩者的時間差

這樣就會獲得時間差,單位是毫秒,我需要的功能就到這裡完成了。


另外NSDate轉換成NSString的例子


由於用戶可能會關閉App等操作,可以將驗證碼生成的時間保存在NSUserDefaults裡面,作為臨時的存儲。

可以搭配MZTimerLabel這個開源小工具,來動態顯示倒數時間的效果。

這類經常使用的功能,可以直接封裝到自己的Helper裡面,更容易擴展、修改,也省了很多代碼。

(完)

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *