2016-09-18 6 views
1

При тестировании приложений iMessage в iOS-симуляторе извлечение MSConversation.localParticipantIdentifier в двух потоках разговора по умолчанию (Kate Bell, John Appleseed) возвращает ту же строку NSUUID, потому что мы все еще находимся на «том же устройстве», ,Уникальный MSConversation.localParticipantIdentifier в iOS-симуляторе

Чтобы реализовать пошаговое приложение, я передаю localParticipantIdentifier с данными URL, чтобы отслеживать повороты участников.

  1. Person 1 передаст его идентификатор в сообщении для лица
  2. Person 2 сравнивал прошло ID ей самостоятельно определить, если она сделала последний поворот.

Есть ли способ имитировать уникальный localParticipantIdentifier между двумя тестовыми цепочками на симуляторе iOS 10? Помимо жесткого кодирования информации «очередь» для отладки, я не могу придумать способ имитации этого состояния в реальном мире. Благодарю.

Примечание: Я не хочу использовать MSMessage.senderparticipantidentifier, потому что отправитель не обязательно определить, кто сделал поворот (например: пользователь отправляет сообщение, которое обновляет состояние приложения, но не является «поворот», 3+ человек разговор поток и т. д.).

+0

Я знаю, что этот вопрос несколько месяцев, но у меня такая же проблема. Не могли бы вы дать мне знать, если вы когда-нибудь нашли способ обойти это? – user3128464

ответ

0

Лично я бы использовал remoteParticipantsIdentifier от MSConversation. Итак, идея состоит в том, чтобы сохранить ссылку последнего хода с идентификатором того, кто сделал этот ход, и разрешить пользователю играть, если его идентификатор совпадает со списком удаленных участников (и если он следующий в этом списке).

+1

Проблема в том, что сгенерированные локальные и удаленные идентификаторы с обеих сторон разговора не совпадают. Ресивер не может определить, какой из удаленных участников сделал ход, потому что массив удаленных идентификаторов уникален для устройства и не соответствует локальному идентификатору стороны отправителя. Если вы имели в виду другую технику, не могли бы вы объяснить более подробно? – AnsonL

Смежные вопросы