«NSConcreteMutableAttributedString initWithString:: nil value» при использовании сообщений Google поблизости

Я следил за документацией Google по использованию API NearbyMessages. Я использую Swift3. У меня есть следующий код для настройки приложения для публикации поблизости.

let messageManager = GNSMessageManager(apiKey: "someky")
var publication: GNSPublication?
let message = GNSMessage(content:"name".data(using: .utf8))
if let messageManager = messageManager, let message = message {
   publication = messageManager.publication(with:message)
}

Я запустил приложение на симуляторе. Затем приложение вылетает в 5-й строке (строка в блоке if-let). Вот часть трассировки стека:

(
0   CoreFoundation                      0x000000011302334b __exceptionPreprocess + 171
1   libobjc.A.dylib                     0x000000011271e21e objc_exception_throw + 48
2   CoreFoundation                      0x000000011308c265 +[NSException raise:format:] + 197
3   Foundation                          0x0000000112229fdc -[NSConcreteMutableAttributedString initWithString:] + 129
4   ProjectLibs                         0x000000011879b55a gns_localizedAllowAppToConnectAttributedString + 415
5   ProjectLibs                         0x000000011879b8b9 gns_localizedAllowAppToConnectString + 75
6   ProjectLibs                         0x000000011879ae9f gcp_verifyDealloc + 24324
)

Поскольку messageManager и сообщение защищены блоком if-let, я не могу найти, откуда исходит исключение nil. Кто-нибудь знает, почему в этом блоке кода может быть нулевое значение?

Большое спасибо!


person Elsie Yunying Tu    schedule 27.10.2016    source источник


Ответы (1)


Работает ли это на устройстве? В Nearby Messages 1.1.0 есть ошибка, которая вызывает исключение нулевого указателя в симуляторе, когда вы используете BLE в качестве среды обнаружения.

Извинения! Мы исправим ошибку в следующем релизе.

person Dan Webb    schedule 11.11.2016