2017-02-15 12 views

ответ

1

Вы можете попытаться использовать ReceiptReceiveListener в Smack.

public class YourFragment extends Fragment implements ReceiptReceivedListener { 

    @Override 
    public void onReceiptReceived(String fromJid, String toJid, String receiptId, Stanza receipt) { 
     if(isAdded()){ 
      // Check if the receiptId equals to the receipt you have sent. 
     } 
    } 
} 
+0

Я уже пробовал это. Я добавил идентификатор упакованного сообщения в исходящее сообщение и получил его, но не смог понять, что делать с этим идентификатором? – begginer

+0

В моем коде идентификатор предназначен для проверки того, какое сообщение должно быть помечено как «полученное». Допустим, в вашем чате есть 100 сообщений, и приложение получает 100 квитанций за каждое из сообщений этого вида, поэтому вам нужно знать, какой из них следует пометить как «полученный», как только вы получите одну квитанцию. И квитанция предназначена только для этой цели. –

+0

Извините. Я немного смущен. В моем представлении списка нет уникального поля/id вместе с определенным сообщением. Поэтому, пожалуйста, скажите мне, как генерировать динамический идентификатор, чтобы я мог отмечать конкретное сообщение, отправленное при получении подтверждения? – begginer