Android日历提供程序:是否有唯一的事件标识符可用于多个设备?

前端之家收集整理的这篇文章主要介绍了Android日历提供程序:是否有唯一的事件标识符可用于多个设备?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用 Android日历提供程序来显示事件.
我也通过使用事件的EVENT_ID作为参考,将事件与本地应用程序数据库中的图像相关联.

我现在想知道是否可以在多个设备上保持相同的参考?

我了解到,对于account_type =’com.google’,GoogleCalendarSyncAdapter使用CalendarContract.EventsColumns.SYNC_DATA1来存储事件的googleID.
然而,似乎这不是访问数据的可靠方法,因为使用SYNC_DATA列可能会随时更改,只能由SyncAdapter修改.

有没有什么其他的方式,我可以保持引用日历提供者事件跨设备?

解决方法

将图像ID嵌入到您的事件中

之前我和CalendarContract有一个类似的问题,我通过在事件描述文本中嵌入一个唯一的UID标签解决它.客户端将解析该标签并检索常见的UID.该ID是使用UUID Java类在其中一个客户端上生成的.但是,在我的情况下,我更感兴趣的是识别通过我的应用程序创建的事件.

在您的情况下,我认为您的映像数据库引用是所有应用程序安装中一致的稳定ID.您可以在引用图形的事件描述文本中插入一个标签,例如:

<myapp:imgid_1234>

或者,您也可以为活动添加特殊的“资源类型”attendee,将事件的图像引用添加到:imgid_1234@yourappname.com.此选项将使事件描述保持干净,并可能会降低用户的意外删除.

猜你在找的Android相关文章