Статус присутствия в пользовательских контактах исчезает через короткое время

#android #android-syncadapter

#Android #android-синхронизация

Вопрос:

Я сделал свой собственный SyncAdatper , чтобы добавить контакты моего приложения в контакты на телефоне. Теперь все работает (изображение, статус, пользовательское действие и т.д.), За исключением статуса присутствия.

Согласно Google:

Поскольку статус присутствия по своей сути изменчив, поставщик контента может предпочесть не сохранять это поле в долговременном хранилище.

Итак, я не знаю, как постоянно сохранять присутствие в контактах. Код для обновления присутствия внутри курсора

 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:

Я предполагаю, что когда ваше приложение останавливается ОС, оно больше не выдает статус присутствия.