更新后(XE-16 glass 更新),内置操作和自定义操作的 Google Glass 时间轴通知不起作用

问题描述 投票:0回答:1

我们开发了一个谷歌玻璃器皿(基于时间轴)应用程序。首先,我们将向玻璃发送一些时间线卡,其中包含一些内置菜单项和自定义菜单项。

我们已经配置了代理 URL,用于获取时间线通知。

这么多天了,效果很好。

但是 Google Glass XE-16 更新后我们没有收到时间轴通知

您能指导我们解决这个问题吗?

嗨囚犯,

为了插入时间线,我们使用了以下代码:

global $base_url="http:\/\/mysite.com\/mirror"; 

$client = get_google_api_client(); 

$client->setAccessToken(get_credentials($_SESSION['userid'])); // 用于与 Mirror API 交互的玻璃服务 

$mirror_service = new Google_MirrorService($client); 

    $new_timeline_item = new Google_TimelineItem();
    $new_timeline_item->setText('嘿,我正在测试新的');

    $notification = new Google_NotificationConfig();
    $notification->setLevel("默认");
    $new_timeline_item->setNotification($notification);

    $menu_items = array();
    $custom_menu_item = new Google_MenuItem();
    $custom_menu_value = new Google_MenuValue();
    $custom_menu_value->setDisplayName("添加项目");
    $custom_menu_value->setIconUrl( $base_url . "/static/images/tulip.jpg");
    $custom_menu_item->setValues(array($custom_menu_value));
    $custom_menu_item->setAction("自定义");
    $custom_menu_item->setId("add_to_cart_item"); // 这是您在通知 ping 上识别它的方式
    array_push($menu_items, $custom_menu_item);
    $new_timeline_item->setMenuItems($menu_items);


    insert_timeline_item($mirror_service, $new_timeline_item, "image/jpeg", file_get_contents($base_url . "/static/images/tulip.jpg"));

为此,我们正在尝试添加新的自定义菜单和内置菜单,例如(固定、删除、共享、发送)

为了订阅通知,我们使用了 Google glass Php 镜像 api 函数。

subscribe_to_notifications($mirror_service, "时间线", $_SESSION['userid'], $base_url . "/notify.php"); 

这些在XE-16版本更新之前都工作正常。更新后我们无法收到时间线卡通知的通知

php google-glass google-mirror-api
1个回答
0
投票

这是发送图像附件的一个已知问题。详情请看这里:
https://code.google.com/p/google-glass-api/issues/detail?id=491

因此,必须更改的代码部分是:

insert_timeline_item($mirror_service, $new_timeline_item, "image/jpeg", file_get_contents($base_url . "/static/images/tulip.jpg"));  

需要更改为:

insert_timeline_item($mirror_service, $new_timeline_item, null, null);

并使用 setHTML 而不是 setText,并包含一个带有指向 Web URL 的 src 标记的 img 元素。例如:

<img src="http://example.com/static/images/tulip.jpg" />  

请注意,您还必须将 Glass 恢复出厂设置。您可以通过尝试运行菜单命令来判断是否遇到问题,右下角的旋转双箭头被卡住,并且在 Glass 上的 ADB logcat 输出中可以看到崩溃堆栈跟踪。因此,要解决此问题,首先您必须不使用图像附件,其次您必须重置 Glass 以修复 Glass 上损坏的时间轴同步。

© www.soinside.com 2019 - 2024. All rights reserved.