7

4 枚のカードのバンドルを作成する Java アプリケーションをセットアップしました。問題は、一度にすべてのカードが入らないことです。1 枚だけが表示される場合もあれば、数秒または数分後に他のカードが表示されることもあります。それらをすべて同時にヘッドセットに表示するにはどうすればよいですか?

編集: HTML ページングを試しましたが、うまくいきませんでした。今はもっと混乱していると思います。したがって、ここでの私のシナリオでは、ユーザーがナビゲートできる一連のランドマークをユーザーに送信したいと考えています。バンドル内のすべてのランドマークが欲しい、バンドルのオプションではない「ここにランドマークがあります」というバンドルのカバーが欲しい、バンドルがすべて同時にユーザーに届くようにしたい. どうすればこれを達成できますか?

TimelineItem timelineItemEmpire = new TimelineItem();
timelineItemEmpire.setText("Empire State Building");

// Triggers an audible tone when the timeline item is received
timelineItemEmpire.setNotification(new NotificationConfig().setLevel("DEFAULT"));
Location empireLoc = new Location();
empireLoc.setLatitude(40.748492);
empireLoc.setLongitude(-73.985868);
timelineItemEmpire.setLocation(empireLoc);

// Attach an image, if we have one
URL url = new URL(WebUtil.buildUrl(req, "/static/images/empirestate.jpg"));
timelineItemEmpire.setBundleId(bundleId);

List<MenuItem> menuItemList = new ArrayList<MenuItem>();
menuItemList.add(new MenuItem().setAction("NAVIGATE"));
timelineItemEmpire.setMenuItems(menuItemList);

MirrorClient.insertTimelineItem(credential, timelineItemEmpire, contentType, url.openStream());

TimelineItem timelineItemCP = new TimelineItem();
timelineItemCP.setText("Central Park");

// Triggers an audible tone when the timeline item is received
timelineItemCP.setNotification(new NotificationConfig().setLevel("DEFAULT"));

// Attach an image, if we have one
URL url3 = new URL(WebUtil.buildUrl(req, "/static/images/central_park.jpg"));
timelineItemCP.setBundleId(bundleId);

Location cpLoc = new Location();
cpLoc.setLatitude(40.772263);
cpLoc.setLongitude(-73.974488);
timelineItemCP.setLocation(cpLoc);
timelineItemCP.setMenuItems(menuItemList);

MirrorClient.insertTimelineItem(credential, timelineItemCP, contentType, url3.openStream());      

TimelineItem timelineCover = new TimelineItem();
timelineCover.setText("Nearby Landmarks");
timelineCover.setBundleId(bundleId);

// Triggers an audible tone when the timeline item is received
timelineCover.setNotification(new NotificationConfig().setLevel("DEFAULT"));

// Attach an image, if we have one
URL url4 = new URL(WebUtil.buildUrl(req, "/static/images/bundle_cover.jpg"));

MirrorClient.insertTimelineItem(credential, timelineCover, contentType, url4.openStream());  
4

1 に答える 1

6

表紙のisBundleCoverリソースをに設定する必要があります。trueすなわち:

timelineCover.setIsBundleCover(true);

これにより、バンドルへのエントリ ポイントになり、ここで説明されているように、バンドル内に表示されなくなります。

さらに、BatchRequest を使用して、それらが一緒に送信されることを確認できます。例えば、:

BatchRequest batch = MirrorClient.getMirror(null).batch();
BatchCallback callback = new BatchCallback();

for (TimelineItem item : items) {
        MirrorClient.getMirror(userCredential).timeline().insert(item).queue(batch, callback);
}

batch.execute();
于 2013-05-22T20:11:43.780 に答える