2016-08-24 17 views
1

我目前正在計劃創建一個應用程序。不幸的是,需要創建用戶。我知道用戶不喜歡通過電子郵件激活鏈接點擊加入註冊流程。獲取Apple/Google ID用於替換用戶帳戶中的電子郵件地址 - 可行性和意義?

所以我想也許使用蘋果/谷歌ID作爲電子郵件地址的替代將是很酷,因爲通過電子郵件驗證步驟可以被刪除。另外,當用戶改變他或她的郵件地址時,這是沒有問題的,因爲在這種情況下他或她的ID不會改變。

我沒有真正進入這個特定的主題,所以我有一些問題,任何幫助表示高度讚賞:

  1. 是否有任何數字/字母數字ID反正或者是谷歌/的Apple ID(即「用戶名「)電子郵件地址本身?
  2. 這是可能的Android和Apple SDK(和Cordova另外,因爲我使用這個)?
  3. 這是一個好主意,還是我缺少一些東西?

在此先感謝!

回答

1

您可以使用下面的DeviceIDs解決方案作爲用戶註冊的主鍵。看:

1 - Android電子

1.1 - Android手機(帶SIM芯片) -對於Android的我用的是科爾多瓦SIM插件。它根據SIM芯片信息爲設備生成uniqueID。所以,你可以基於插件返回來操縱你的數據;

鏈接:https://github.com/pbakondy/cordova-plugin-sim

1.2 - 的Adroid片 -上面的插件是太棒了,但它不會爲沒有任何SIM芯片的設備。在這種情況下,我使用下面的代碼:

if(mContext == null){ 
     mContext = this.cordova.getActivity(); 
     if(dialog == null){ 
      dialog = new ProgressDialog(mContext); 
     } 
    } 

    String tabletID = Secure.getString(mContext.getContentResolver(), Secure.ANDROID_ID); 

結論:如果你只爲手機開發程序(App預計移動電話),你應該使用插件。如果您的應用針對平板電腦或沒有SIM卡的設備,則可以查看其他解決方案。生成的ID是「設備ID」,對於每個設備都是唯一的。

2 - 的iOS

對於iOS,我使用以下代碼來產生用於每一個設備的唯一的ID:

NSString *uniqueIdentifier = [[[UIDevice currentDevice] identifierForVendor] UUIDString]; 

唯一的問題:當用戶卸載的所有應用的來自設備的iTunes供應商ID並再次安裝它們中的任何一個,ID將被更改。自從系統的7.0版本以後,其他獲取iOS唯一ID的簡單方法已棄用。

查看更多這裏:Device Id from an iphone app

+0

感謝您的回答。由於付費訂閱連接到用戶帳戶,這似乎不是一個可能的解決方案。如果我收到一個新的設備,信息就會消失:-( –

+0

)您是否聽說過FireBase Db?您可以爲每個用戶創建唯一的ID,並使用javascript爲cordova項目輕鬆同步數據。此外,如果您使用此解決方案,這個ID將會是獨特的,在 –

+0

Mhm之間,但是當用戶購買一部新手機時,所有這些信息在這種情況下都消失了,不是嗎!? –

相關問題