Ошибки при использовании FirebaseIOS

Программируем под IOS
Ответить
Anonymous
 Ошибки при использовании Firebase

Сообщение Anonymous »

Привет, я разрабатываю Ionic Cordova, и мы используем Firebase для прослушивания событий. Существующий процесс таков: мы генерируем ссылку для оплаты, открываем ее с помощью браузера inapp (для Android) или SFViewController (для ios) и слушаем события Firebase для определения текущего статуса. Когда статус благоприятный, мы закрываем браузер в приложении.
Однако пока реализация Android работает нормально. Мы получаем следующие ошибки

@firebase/firestore: Firestore (8.6.2): ​​FIRESTORE (8.6.2) ВНУТРЕННЕЕ УТВЕРЖДЕНИЕ ОШИБОЧНО: Неожиданное состояние

Я пытался найти описанную выше проблему, нашел несколько ссылок, которые советуют обновить или понизить версию Firebase, которую я пробовал, но это не удалось
пожалуйста, помогите.
фрагмент кода
function startListeningMultisafePayUpdatesIos(data) {
$timeout(() => {
const orderId = data.orderId;
firebase.firestore().collection("multisafepayPayments").doc(orderId).set({
financialStatus: "",
orderId: orderId,
transactionJson: {}
}).then(() => {
unsubscribeMultisafePayListener = firebase.firestore()
.collection("multisafepayPayments")
.doc(orderId)
.onSnapshot(function (doc) {
if (doc.exists) {
console.log("doc data exisits");
console.log(doc.data);
// let message = doc.data();
// if (typeof message.paymentKeyData !== "undefined" && message.paymentKeyData !== null) {
// let paymentJsonData = decodeURIComponent(message.paymentKeyData);
// if (paymentJsonData !== null) {
// submitPayment(JSON.parse(paymentJsonData));
// SafariViewController.hide();
// }
// } else if (typeof message.reloadFrame !== "undefined" && message.reloadFrame === 'True') {
// SafariViewController.hide();
// reloadControls();
// }
}
});
}).catch((error) => {
console.error("Multisafepay Payment error: ", error);
// navigator.notification.alert(
// error.message || error,
// function () { },
// capitalizeFirstLetter("There was an error using apple pay for this payment"),
// $translate.instant("OK")
// );
});

let loadFrameUrl = data.url;

SafariViewController.isAvailable(function (available) {
if (available) {
SafariViewController.show({
url: loadFrameUrl,
hidden: false,
animated: false
}, function (result) {
if (result.event === 'opened') {
console.log('opened');
} else if (result.event === 'loaded') {
console.log('loaded');
} else if (result.event === 'closed') {
console.log('closed');
}
$scope.freedompayInterimLoading = false;
}, function (msg) {
navigator.notification.alert(
msg,
function () { },
capitalizeFirstLetter("There was an error using multisafepay for this payment"),
$translate.instant("OK")
);
// $scope.freedompayInterimLoading = false;
});
} else {
navigator.notification.alert(
"SFViewController not available",
function () { },
capitalizeFirstLetter("There was an error using apple pay for this payment"),
$translate.instant("OK")
);
// $scope.freedompayInterimLoading = false;
}
});
}, 1000);
}


Подробнее здесь: https://stackoverflow.com/questions/790 ... g-firebase
Ответить

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

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

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

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

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