Mirror API自定义菜单和自定义属性

时间:2014-06-17 03:12:22

标签: google-glass google-mirror-api

在我的应用中,我已将自定义菜单项添加到用户时间轴项目。我在迭代中创建自定义菜单。有没有办法将自定义属性附加到自定义菜单项? ,以便我可以知道点击了哪个菜单项。

是我的自定义菜单代码,

// And custom actions
List<MenuValue> menuValues = new ArrayList<MenuValue>();
menuValues.add(new MenuValue().setIconUrl(WebUtil.buildUrl(req, "/static/images/drill.png")).setDisplayName("Found"));
menuItemList.add(new MenuItem().setValues(menuValues).setId("found").setAction("CUSTOM"));

timelineItem.setMenuItems(menuItemList);
timelineItem.setNotification(new NotificationConfig().setLevel("DEFAULT"));

提前致谢。

1 个答案:

答案 0 :(得分:2)

您已经使用setId()方法将属性附加到菜单项。 Glass会忽略id中的值,除非在选择此菜单项时将其发送给您。你可以在这里放任何你想要的东西(在合理范围内 - 有几百个字符的限制)。

因此,根据上面的示例,如果选择了菜单项,您将收到类似这样的通知:

{ 
  "collection": "timeline",
  "itemId": "8a84302a-1da7-46f2-ac72-2c008fce2b4b",
  "operation": "UPDATE",
  "userToken": "12345678901234567890",
  "verifyToken": "shibboleet",
  "userActions": [ 
    { 
      "type": "CUSTOM", 
      "payload": "found" 
    }
  ]
}

您将检查userActions.payload字段并根据此字段采取措施。