2017-03-07 32 views
2

我一直在梳理Branch.io Android文檔,還沒有想出如何創建用戶邀請碼。我已經獲得了基本分支推薦系統的正常工作,但我想爲每個用戶分配一個類似於您在Uber和Airbnb中看到的自定義邀請代碼。什麼是使用分支創建用戶邀請碼的正確方法?

UberEATSUber

我當前的實現看起來是這樣的:

mSmsBranchUniversalObject = new BranchUniversalObject() 
      .setCanonicalIdentifier("invite/sms") 
      .setTitle(getString(R.string.simple_share_title)) 
      .setContentDescription(getString(R.string.default_share_desc)) 
      .addContentMetadata("userId", mUserId); 

    mSmsLinkProperties = new LinkProperties() 
      .setChannel("sms") 
      .setFeature("sharing"); 

    mSmsBranchUniversalObject.generateShortUrl(getActivity(), mSmsLinkProperties, new Branch.BranchLinkCreateListener() { 
     @Override 
     public void onLinkCreate(String url, BranchError error) { 
      if (error == null) { 
       mSmsShareLink = url; 
      } 
     } 
    }); 

@OnClick(R.id.iv_sms) 
public void smsShare() { 
    Branch.getInstance(getActivity()).userCompletedAction(BranchEvent.SHARE_STARTED); 
    Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("sms:")); 
    intent.putExtra("sms_body", getString(R.string.share_sms, mSmsShareLink)); 
    startActivity(intent); 
} 

下面的實現讓我一個鏈接,看起來是這樣的:

https://mydomain.app.link/A1BCdEf2gH 

但我想分享類似於:ADAM98(請參閱上面的截圖),並讓用戶在結帳時輸入等。

現在爲每個用戶手動創建邀請代碼並不是很多工作,我可以取用戶用戶名的前四個字符並將一些隨機字符添加到它。但那我該怎麼辦呢?我假設我只需要將此代碼傳遞給.setAlias(mUserInviteCode) on mSmsLinkProperties

我在正確的軌道上嗎?什麼是適當的流程來實現這一點?在安裝時如何處理此邀請代碼?

回答

3

亞歷克斯從Branch.io在這裏。

我們實際使用提供完全按照你所描述的推薦代碼功能,但贊成轉診鏈接系統棄用它而回。原因實際上很有趣:我們的合作伙伴應用程序發現代碼不必要,並且需要大量額外的工作。 Branch處理推介的方式根本不同,且更加用戶友好,因此您實際上不需要讓用戶輸入代碼。

傳統應用轉診過程

  1. Inviting User得到一個代碼
  2. Inviting User給出了一個代碼,一個朋友(Invited User),並說「去下載這個應用程序,然後輸入我的密碼!」
  3. Invited User希望下載的應用程序,希望找出如何輸入代碼,希望進入正確的代碼
  4. Inviting User得到的地方獎勵

正如你所看到的,很多地方這個過程會出錯。

科轉診過程

  1. Inviting User得到一個鏈接
  2. Inviting User發送鏈接給好友(Invited User
  3. Invited User點擊鏈接,直接發送到Play商店,下載應用程式,並且自動觸發轉診兌換邏輯而無需任何手動工作
  4. Inviting User獲得獎勵

這是可行的,因爲Branch會跟蹤最初創建鏈接的用戶,並且可以在新用戶在打開鏈接後第一次成功下載/購買/其他任何內容時報告。這是一個更簡單,更無縫的流程,分支機構的基礎設施非常可靠,只是「正常工作」。

這裏是設置此功能的文檔頁面:https://dev.branch.io/features/referral-programs/

+0

我同意,這實際上是一個更好的解決方案,你都紛紛拿出。 – MalcolmMcFly

相關問題