2015-01-27 40 views
0

我正在尋找一種方式,用戶只需使用電話號碼而不是用戶名和密碼註冊?使用Parse註冊電話號碼

和我怎樣才能像訪問其他類一樣訪問User類的數據,我無法對User類進行查詢?

ParseQuery<ParseObject> query2 = ParseQuery.getQuery("user"); 
        query2.whereEqualTo("phone", "0624982192"); 
        query2.getFirstInBackground(new GetCallback<ParseObject>() 

        { 

         public void done(ParseObject object, ParseException e) 
         { 

         if(e == null) 
         { 

         //To do if the phone number is found 

         } 
         else 
         { 
          if(e.getCode() == ParseException.OBJECT_NOT_FOUND) 
          { 
          // To do if the phone number is not found 
          } 

有沒有辦法做到這一點?

+0

你用來查詢User類的實際代碼是什麼?請張貼在你的問題(不作爲評論)。如果它在logcat中觸發錯誤,請將其發佈到您的問題中。 – 2015-01-27 00:41:58

回答

0

我相信你的ParseQuery的初始化對用戶對象來說是錯誤的。 它應該是這樣的。

ParseQuery<ParseUser> query = ParseUser.getQuery(); 

對於此處查詢用戶檢查的一個完整的例子:https://parse.com/docs/android_guide#users-querying

在註冊時使用的電話號碼而言,我不認爲解析具有任何功能明確地做到這一點,如果你是計劃讓用戶輸入那裏的電話號碼,然後這可能會稍微不安全,因爲任何用戶可以輸入一個隨機的電話號碼,並獲得訪問某人elses帳戶。但是,如果這是你想要做的,那麼我建議你創建一個新類,而不是使用預定義的用戶類。這樣你就可以創建自己的結構併爲班級定義自己的安全。

0

我不會推薦只使用電話號碼進行註冊,但可以通過以下方式使用解析來完成。

你必須使用解析雲代碼來創建的onSave鉤來驗證存儲在數據庫中的電話號碼是唯一的,otherswise多個用戶可能會訪問一個單一的「用戶」,爲更多的細節 - >https://www.parse.com/docs/cloud_code_guide#cloud_code

您必須在註冊前查詢電話字段,以驗證電話號碼是否存在於數據庫中,然後使用意圖讓用戶進行所需的活動。

編輯:像@JayDev建議,創建自己的類,而不是用戶類