2011-08-26 89 views
2

除RawContacts.VERSION和RawContacts.DIRTY之外是否还有其他指示器,告诉我是否已创建新联系人?新创建的联系人指示器

现在我检查contactdatabase中的“DIRTY”-contacts,然后如果VERSION字段大于2,那么它是一个更改的联系人,否则它是一个新的联系人。

但现在我有,如果我的SyncAdapter未能同步此新的联系人由于网络问题或服务器问题我可能会错过它,如果用户再次更改联系人,befor我syncadapter得到了第二次机会把它上传问题。因为那么VERSION字段将会大于2,并且我的适配器无法识别此联系人是新联系人。

我检查了两次引用,但找不到任何字段表示它。

任何提示高度赞赏。

干杯, Ali3n

回答

0

我想我找到了失踪puzzlepiece:RawContacts.SOURCE_ID

Documentation说:

String唯一地标识该行的源帐户。 通常在插入原始联系人时设置,并且以后不会更改 。一个明显的例外是一个新的原始联系人:它 将有一个帐户名称和类型(可能还有一个数据集),但没有 源ID。这向同步适配器指示新的联系人需要创建服务器端 ,并且其ID存储在电话上的phone.SOURCE_ID字段的对应的 SOURCE_ID字段中。