保存到安卓支付:如何为每个对象生成 2 个唯一 ID



我是Android的真正菜鸟,尤其是'Save to Android Pay' API。我正在遵循Google的指南和Google的示例,以实现我自己的报价类和"保存到Android"按钮。

根据教程,对于我正在创建的每种类型的优惠卡,我都需要一个报价类,对于将卡保存到其 Android Pay 应用程序的每个用户,将生成一个新对象。假设我的卡具有以下字段:

  1. 标题
  2. 商标
  3. 卡编号#

此外,每个用户都有 2 个唯一字段:

  1. 用户编号#
  2. 用户 ID2#

我知道何时以及如何传递前 3 个数据字段,但我不确定在哪里以及如何传递最后 2 个字段。我正在网站上实现"保存到Android"按钮(与示例完全相同),并假设我在我的网站上将两个数据字段另存为 JavaScript 变量。我可以在用户点击"保存到Android Pay"按钮时(或之前)从我的网站将 2 个唯一字段发送到"保存到 Android Pay"API 服务器吗?

从"保存到Android Pay"团队得到答案:

Loyalty.java类中有一个部分,用于创建具有指定参数的对象。Java 快速入门以硬编码值为例,但可以轻松更改为用于跟踪用户 ID 号等的变量。

您可以在此部分中插入用户的唯一值:

// Define Wallet Instance
LoyaltyObject object = new LoyaltyObject()
.setClassId(issuerId + "." + classId).setId(issuerId + "." + (Math.random()*1000))
.setState("active").setVersion(1L).setBarcode(barcode).setInfoModuleData(infoModuleData)
.setAccountName("Jane Doe").setTextModulesData(textModulesData)
.setMessages(messages).setLinksModuleData(linksModuleData)
.setAccountId("1234567890").setLoyaltyPoints(points);

另请注意,在 WobGenerateJwtServlet.java 类中,它会根据对象类型创建 JWT。 特别是对于这里的忠诚度对象:

// Create the appropriate Object/Classes
if (type.equals("loyalty")) {
  LoyaltyObject obj = Loyalty.generateLoyaltyObject(credentials.getIssuerId(),
      context.getInitParameter("LoyaltyClassId"), context.getInitParameter("LoyaltyObjectId"));
  obj.setFactory(new GsonFactory());
  payload.addObject(obj);

相关内容

  • 没有找到相关文章

最新更新