从 Android Wear 上的日历获取数据
Getting data from calendar on Android Wear
我正在这样查询日历数据:
// Constructor of the class
mCursor = context.getContentResolver().query(CalendarContract.Events.CONTENT_URI, mColumns, null, null, null);
updateEvents();
//contents of updateEvents:
events.clear();
mCursor.moveToFirst();
mLastUpdate = System.currentTimeMillis();
while (!mCursor.isAfterLast())
{
long end = mCursor.getLong(2);
if (end > mLastUpdate)
events.add(new Event(mCursor));
mCursor.moveToNext();
}
代码管理在移动设备上工作,但是当它在 Wear 设备上 运行 时似乎没有数据。
我找到了 WaerableCalendarContract
,但它似乎不包含我用来填充 mColumns class 到 [=] 的 Events
class 26=] 想要的数据。
如何在 Wear 上执行相同的操作?
我认为您必须手动将数据同步到 Wear 应用程序,a.k.a 从 phone 上的 ContentProvider
获取数据,然后将其发送到 wearable
通过 DataItem API
。阅读有关在 phone<->wear HERE.
之间同步数据的更多信息
WearableCalendarContract
描述了一个24小时长window(从当前时间开始)的日历数据。您在那里看不到 Event,因为我们传输了 Instances
个对象。正如您在 Instances
的基本界面中看到的那样,它也包含 Events
列,因此您应该能够从那里获取所需的数据。
如果您需要超过 24 小时的数据,您需要自己同步。查询 phone 上的日历,然后为您感兴趣的每个事件构建一个 DataItem
。这有点棘手,所以我建议改用 WearableCalendarContract。
我正在这样查询日历数据:
// Constructor of the class
mCursor = context.getContentResolver().query(CalendarContract.Events.CONTENT_URI, mColumns, null, null, null);
updateEvents();
//contents of updateEvents:
events.clear();
mCursor.moveToFirst();
mLastUpdate = System.currentTimeMillis();
while (!mCursor.isAfterLast())
{
long end = mCursor.getLong(2);
if (end > mLastUpdate)
events.add(new Event(mCursor));
mCursor.moveToNext();
}
代码管理在移动设备上工作,但是当它在 Wear 设备上 运行 时似乎没有数据。
我找到了 WaerableCalendarContract
,但它似乎不包含我用来填充 mColumns class 到 [=] 的 Events
class 26=] 想要的数据。
如何在 Wear 上执行相同的操作?
我认为您必须手动将数据同步到 Wear 应用程序,a.k.a 从 phone 上的 ContentProvider
获取数据,然后将其发送到 wearable
通过 DataItem API
。阅读有关在 phone<->wear HERE.
WearableCalendarContract
描述了一个24小时长window(从当前时间开始)的日历数据。您在那里看不到 Event,因为我们传输了 Instances
个对象。正如您在 Instances
的基本界面中看到的那样,它也包含 Events
列,因此您应该能够从那里获取所需的数据。
如果您需要超过 24 小时的数据,您需要自己同步。查询 phone 上的日历,然后为您感兴趣的每个事件构建一个 DataItem
。这有点棘手,所以我建议改用 WearableCalendarContract。