Плагин Nativescript (IOS) для CardIO - Невозможно вызвать любую функцию в библиотеке CARDIO и не отображается

Мы пытаемся создать плагин nativescript (IOS) для CardIO www.card.io) CardIO(5.4.1):

  1. загруженный nativescript-plugin-seed ( https://github.com/NathanWalker/nativescript-plugin-seed)
  2. Выполнены все предварительные запросы на посев.
  3. Добавлен podFile в платформе (модуль 'CardIO',: git => ' https://github.com/card-io/card.io-iOS-SDK.git')
  4. Модифицированный CardIO.ios.ts для вызова функций из библиотеки CardIO

Стручок загружается хорошо. Когда мы проверили проект XCODE, был добавлен модуль Cardio, а библиотека и файлы *.h были добавлены ХОРОШО.

Когда мы запускаем проект, мы не можем вызвать ни одну из функций в библиотеке CardIO. Мы предполагаем, что ни одна из функций в библиотеке не доступна для javascript.

Ошибка JavaScript:

file: ///app/tns_modules/nativescript-cardio/cardio.js: 3: 57: ОШИБКА JS ReferenceError: Не удается найти переменную: CardIOPaymentViewController

Пожалуйста, найдите код в cardio.ios.ts

export var scanCardClicked = function () {
  // var CardIOPaymentViewController=new CardIOPaymentViewController();
    let scanViewController = CardIOPaymentViewController.alloc().initWithPaymentDelegate(this);
    scanViewController.modalPresentationStyle = UIModalPresentationFormSheet;
    this.presentViewControllerAnimatedCompletion(scanViewController, 1, null);
}
class CardIOPaymentViewControllerDelegateImpl extends NSObject implements CardIOPaymentViewControllerDelegate {
  userDidProvideCreditCardInfoInPaymentViewController(info: CardIOCreditCardInfo, paymentViewController: CardIOPaymentViewController)
   {this.dismissViewControllerAnimatedCompletion(1, null);
    //this.infoLabel.test = "Received Card: " + info.redactedCardNumber + "Expiry:" + info.expiryMonth + "/" + info.expiryYear + "CVV:" + info.cvv;
    }
    userDidCancelPaymentViewController(paymentViewController: CardIOPaymentViewController)
     {
        this.dismissViewControllerAnimatedCompletion(1, null);
    }
}

1 ответ

Я рассмотрел это сегодня и пришел к выводу, что CardIO в настоящее время не совместим с NativeScript. Это случается не часто, но иногда так и происходит.

Хорошая новость заключается в том, что вы можете взять ресурсы Podfile и самостоятельно создать (в данном случае) статическую структуру, которая может быть легко открыта для NativeScript.

В этом случае, хотя есть еще несколько проблем (например, три файла.a вместо одного).

Это слишком много (процедуры и код), чтобы объяснить здесь, поэтому я бы предпочел добавить некоторый код в репозиторий GitHub и дать ссылку на него из этой проблемы.

Не могли бы вы написать мне (eddyverbruggen на gmail dot com), если вам нужна моя помощь?

Другие вопросы по тегам