自定义联系人的状态在短时间后消失

时间:2011-05-24 13:46:48

标签: android android-syncadapter

我自己SyncAdatper将我的应用的联系人添加到手机上的联系人。 现在一切正常(图片,状态,自定义动作等),除了在线状态。

根据谷歌:

  

因为存在状态本质上是存在的   易失性,内容提供商可以   选择不存储此字段   长期储存。

所以,我不知道如何始终保持联系人的存在。 更新光标内部存在的代码是

ContentProviderOperation.Builder builder = ContentProviderOperation.newInsert(ContactsContract.StatusUpdates.CONTENT_URI);
builder.withValue(ContactsContract.StatusUpdates.DATA_ID, c.getLong(1));
builder.withValue(ContactsContract.StatusUpdates.STATUS, status);
builder.withValue(ContactsContract.StatusUpdates.STATUS_RES_PACKAGE, "ar.com.indiesoftware.ps3trophies");
builder.withValue(ContactsContract.StatusUpdates.STATUS_LABEL, R.string.app_name);
builder.withValue(ContactsContract.StatusUpdates.STATUS_ICON, R.drawable.alltrophies);

builder.withValue(ContactsContract.StatusUpdates.PROTOCOL, Im.PROTOCOL_CUSTOM);
builder.withValue(ContactsContract.StatusUpdates.CUSTOM_PROTOCOL, "PS3SyncAdapter");
builder.withValue(ContactsContract.StatusUpdates.IM_ACCOUNT, username);
builder.withValue(ContactsContract.StatusUpdates.IM_HANDLE, username);
builder.withValue(ContactsContract.StatusUpdates.PRESENCE, ContactsContract.StatusUpdates.AVAILABLE);

builder.withValue(ContactsContract.StatusUpdates.STATUS_TIMESTAMP, System.currentTimeMillis());
operationList.add(builder.build());

出现绿点但如果我离开联系人屏幕并在短时间内(秒)返回,“有时”绿点不再存在。

我有什么办法可以解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

我的猜测是,当您的应用程序被操作系统停止时,它不再推送状态。