Область чтения SMAPI Alexa в Swift

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

Мне удалось разрешить пользователю войти в систему со своей учетной записью Amazon (через LWA iOS SDK). Когда я добавляю область профиля в процесс аутентификации, я получаю эту ошибку при попытке сделать запрос на получение в конечную точку навыка:

«Пользователь не дал согласия на эту операцию».

Итак, я добавил область alexa :: ask, чтобы получить нужные разрешения:

let scopeData_alexa: [AnyHashable:Any] = ["productID" : AmazonManager.shared.productId, "productInstanceAttributes": [ "deviceSerialNumber": uniqueDeviceSerialNumber]]

let readPermissions = AMZNScopeFactory.scope(withName: "alexa::ask:skills:readwrite", data: scopeData_alexa)

Когда я пытаюсь аутентифицировать пользователя, я получаю такой ответ:

Домен ошибки = AMZNLWAErrorDomain Code = 2 "(null)" UserInfo = {AMZNLWAErrorNonLocalizedDescription = The + scope + data + list + you + provided + is + invalid + for + your + request}

Как было сказано выше, нормальный вход в систему работает нормально. Данные области также работают, когда я спрашиваю пользователя об услугах голосовой связи Alexa.

Что мне нужно изменить? Какие-нибудь решения?


person bobski    schedule 14.06.2018    source источник


Ответы (1)


Это было очень легко исправить.

просто удалите параметр данных

let readPermissions = AMZNScopeFactory.scope(withName: "alexa::ask:skills:readwrite")

Тогда все должно работать нормально!

person bobski    schedule 29.06.2018