yoomoney / yookassa-payments-swift

This library allows implementing payment acceptance into mobile apps on iOS and works as an extension to the YooMoney API
https://yookassa.ru/developers
MIT License
41 stars 41 forks source link

The following Swift pods cannot yet be integrated as static libraries #66

Closed YesSkyscrapers closed 3 years ago

YesSkyscrapers commented 4 years ago

Доброго времени суток, Немного нестандартно использую библиотеку и обладаю довольно скудным опытом по работе с нативными ios приложениями. Нужен совет! Вообщем мы используем react-native для создания приложения, где будет платежка с использованием Яндекс Кассы и Apple/Google Pay. (С Google Pay проблем я особо не испытал, но вот с Apple Pay имеется проблема). Как известно, поддержки react-native у Яндекс Кассы нет, но по сути любое сдк можно подключить пробросив методы в нативную часть. Соответственно пытаюсь подключить данную библиотеку к себе в проект, но столкнулся с проблемой на этапе добавления подов.

Добавил pod 'YandexCheckoutPayments', :git => 'https://github.com/yandex-money/yandex-checkout-payments-swift.git', :tag => '3.6.0', :modular_headers => true При использовании pod install ловлю ошибку

Analyzing dependencies Pre-downloading: 'YandexCheckoutPayments' from 'https://github.com/yandex-money/yandex-checkout-payments-swift.git', tag '3.6.0' Downloading dependencies Installing YandexCheckoutPayments 3.6.0 [!] The following Swift pods cannot yet be integrated as static libraries:

The Swift pod 'YandexCheckoutPayments' depends upon 'YandexLoginSDK', which does not define modules. To opt into those targets generating module maps (which is necessary to import them from Swift when building as static libraries), you may set 'use_modular_headers!' globally in your Podfile, or specify:modular_headers => truefor particular dependencies.

Внутри YandexCheckoutPayments.podspec вижу s.ios.dependency 'YandexLoginSDK', '~> 2.0.0' что по сути означает, что мы пытаемся подтянуть сдк авторизации, который по дефолту доступен для ios, но инсталяция подов ругается, что данный модуль должен быть заранее определен?

Вообщем, хотелось бы узнать и спросить совета -> Что делать в подобной ситуации? Попытаться выгрузить все СДКшки (не уверен, что это возможно...) и цепляться на их локальные копии?

Или я вообще как то неправильно понимаю сложившуюся ситуацию?

oltv00 commented 3 years ago

@YesSkyscrapers привет! подскажи, удалось ли решить проблему ?

YesSkyscrapers commented 3 years ago

@oltv00 Привет! В конечном счете получилось запустить.... В Podfile я прописал:

   pod 'YandexCheckoutPayments',
    :git => 'https://github.com/YesSkyscrapers/yandex-checkout-payments-swift.git',
    :branch => '3.6'

    pod 'YandexLoginSDK', :modular_headers => true

А на гите разместил копию на тот момент репозитория, в котором удалены метрики... (Они конфликтовали с метриками от react-native-appmetrica-yandex).

а в библиотеке с оплатой в файле .podspec добавил: s.dependency "YandexCheckoutPayments"