2011-04-28 39 views
0

我正在爲iOS開發一個Messenger。如何開發認證以符合蘋果的條款和條件?

蘋果要求用戶進行身份驗證,以限制匿名消息

22.6應用程序,使匿名或惡作劇電話或短信/彩信收發 將被拒絕

從指引https://developer.apple.com/appstore/resources/approval/guidelines.html

所以我需要一個類似於WhatsApp的用戶認證,它可以這樣工作:

  1. 用戶輸入電話號碼。
  2. 電話號碼被髮送到服務器。
  3. 服務器向該號碼發送帶有3(或4,不記得)的數字代碼的短信。
  4. 用戶輸入代碼。
  5. 代碼被髮送到服務器。
  6. 驗證碼,如果匹配,則用戶通過驗證。

我有服務器端準備。我現在唯一需要的是在手機上實現UI和認證過程。由於我的主要應用程序已準備就緒,我想知道如何在應用程序中嵌入身份驗證。

我的建議是,如果用戶還沒有通過身份驗證並需要他的電話號碼,則會顯示模態窗口。我是否必須檢查用戶是否在每次啓動時通過身份驗證?

任何其他想法或建議?

+1

一模態視圖控制器將是一個偉大的選擇爲UI imo。這樣你也可以封裝Web服務調用並在VC中處理它。我會拒絕重新驗證用戶每次啓動應用程序,我可能會在成功驗證一次後使用'NSUserDefaults'。 – 2011-04-30 14:56:47

+0

非常interestion想法。你能把它形容爲一個答案嗎? – 2011-05-01 19:09:03

+0

完成後,我更充實了一點。希望能幫助到你! – 2011-05-01 19:32:32

回答

2

一個模態視圖控制器將是一個偉大的選擇用戶界面。它具有 的好處,它封裝了Web服務調用並在該視圖控制器中處理它。

我會說沒有重新認證用戶每次啓動應用程序,我可能會使用NSUserDefaults一次成功認證一次存儲憑證,訪問令牌或任何識別信息,您需要重新驗證用戶(無需讓用戶意識到重新認證,文檔有examples on how to work with NSUserDefaults,並且會幫你在這方面需要去的地方

這種方法的要點是做一個新的視圖控制器子類來處理Web認證並訪問NSUserDefaults),然後在現有的視圖控制器上進行模態顯示。你會做這樣的事情在你的主視圖控制器以下(或你希望呈現從認證):

// .... 
AuthViewController *authVC = [[AuthViewController alloc] init]; 
[self presentModalViewController:authVC animated:YES]; 
[authVC release]; 
// do your authentication from with AuthViewController 
// .... 

然後,在任何方法將意味着身份驗證完成:

// .... 
// note this is done within the AuthViewController 
[self dismissModalViewControllerAnimated:YES]; 
// ....