ОШИБКА [ОШИБКА] 20:56.724 AWSPinpointProvider — ошибка updateEndpoint [TypeError: невозможно прочитать свойство «byteLenIOS

Программируем под IOS
Ответить Пред. темаСлед. тема
Anonymous
 ОШИБКА [ОШИБКА] 20:56.724 AWSPinpointProvider — ошибка updateEndpoint [TypeError: невозможно прочитать свойство «byteLen

Сообщение Anonymous »

Я новичок в Amplify, но успешно создал эту настройку через CLI для ReactNative:

Код: Выделить всё

│ Category      │ Resource name  │ Operation │ Provider plugin   │

│ Auth          │ userPoolGroups │ No Change │ awscloudformation │

│ Auth          │ Rent           │ No Change │ awscloudformation │

│ Analytics     │ RentAppIOS     │ No Change │ awscloudformation │

│ Notifications │ RentAppIOS     │ No Change │                   │
Сейчас я пытаюсь заставить push-уведомления работать на IOS с помощью PinPoint. Все разрешения выглядят нормально, но я сталкиваюсь с ошибкой при попытке запустить updateEndpoint в Analytics, который должен создать новую конечную точку в PinPoint. Это ошибка:

Код: Выделить всё

AWSPinpointProvider - updateEndpoint failed [TypeError: Cannot read property 'byteLength' of undefined]
Это функция, которая вызывается после входа пользователя в систему и вызывает ошибку:

Код: Выделить всё

const registerForPushNotifications = async () => {
const { attributes: {sub} } = await Auth.currentUserInfo();
if (sub) {
DeviceInfo.getDeviceToken().then((deviceToken) => {
Analytics.updateEndpoint({
address: deviceToken,
optOut: "NONE",
userId: sub,
channelType: "APNS",
}).then(() => {
console.log("Endpoint created");
}).catch((error) => {
console.log('Error updating endpoint', error);
});
});
}
}
Переменные sub и deviceToken имеют ожидаемые значения. Вот настройка конфигурации при запуске приложения:

Код: Выделить всё

Amplify.configure({
...awsconfig,
Analytics: {
disabled: false,
},
Predictions: {
provider: AmazonAIPredictionsProvider,
region: awsconfig.aws_mobile_analytics_app_region,
},
});

Analytics.configure({
...awsconfig,
AWSPinpoint: {
region: awsconfig.aws_mobile_analytics_app_region,
},
});
PushNotification.configure({
...awsconfig,
onNotification: function (notification) {
console.log('NOTIFICATION:', notification);
Alert.alert(
notification.title,
notification.body,
[{ text: 'OK' }],
{ cancelable: false }
);
notification.finish("backgroundFetchResultNewData");
},
permissions: {
alert: true,
badge: true,
sound: true,
},
popInitialNotification: true,
requestPermissions: true,
});
Вот пример файла aws-exports.js, который импортируется как awsconfig:

Код: Выделить всё

const awsmobile = {
aws_project_region: "eu-west-2",
aws_cognito_identity_pool_id: "eu-west-2:xxxxxxxx-c514-4431-91c0-xxxxxxxx",
aws_cognito_region: "eu-west-2",
aws_user_pools_id: "eu-west-2_xxxxxxxx",
aws_user_pools_web_client_id: "xxxxxxxxxxxxxxxxxxx2m5pmf",

aws_pinpoint_id: "b6846xxxxxxxxxxxxxxxxxxxxxxxxxxx",
aws_mobile_analytics_app_id: "xxxxxxxxxxete",
aws_mobile_analytics_app_region: "eu-west-2",
aws_mobile_analytics_app_title: "Rent",
aws_mobile_analytics_auto_session_record: true,
aws_mobile_analytics_disabled: false
};

export default awsmobile;
Я очень надеюсь, что кто-нибудь увидит, что не так, я провел несколько дней, просматривая это, и доступная в Интернете документация ничего не подчеркивает. Я ценю любые отзывы :)

Подробнее здесь: https://stackoverflow.com/questions/758 ... -typeerror
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «IOS»