IOS-SDK: відмінності між версіями

Матеріал з apidocs
Перейти до: навігація, пошук
Рядок 23: Рядок 23:
<p style="border: 1px solid #FFA500; background-color: rgba(255, 165, 0, 0.1); padding: 15px; border-radius: 8px; font-family: Arial, sans-serif; font-size: 14px; font-weight: normal; color: #333; position: relative; width: 100%; display: block;">
<p style="border: 1px solid #FFA500; background-color: rgba(255, 165, 0, 0.1); padding: 15px; border-radius: 8px; font-family: Arial, sans-serif; font-size: 14px; font-weight: normal; color: #333; position: relative; width: 100%; display: block;">
     ⚠️ <strong>Важливо!</strong> <br>
     ⚠️ <strong>Важливо!</strong> <br>
<br> При додаванні <span style="background-color: #EDEDED; padding: 2px 5px; border-radius: 4px; font-family: monospace; color: #D63384;">compose-resources</span> в діалозі додавання виберіть наступні опції: <br>                                                    1. <strong>Destination:</strong> Resources <br>                                                                                                                                                2. <strong>Copy Items if Needed:</strong> Поставте галочку.
<br> При додаванні <span style="background-color: #EDEDED; padding: 2px 5px; border-radius: 4px; font-family: monospace; color: #D63384;">compose-resources</span> в діалозі додавання виберіть наступні опції: <br>                                                    1. <strong>Destination:</strong> Destination: Поставте галочку в полі Copy items if needed
Added folders: Оберіть Create folder references <br>                                                                                                                                                2. <strong>Copy Items if Needed:</strong> Поставте галочку.
</p>'''''Приклад'':''' [[Файл:Знімок екрана 2025-06-10 о 15.00.49.png|центр|міні|700x700пкс]]<ul style="margin-top: 10px; font-size: 13px; list-style-type: none; padding-left: 0; margin-bottom: 0;">
</p>'''''Приклад'':''' [[Файл:Знімок екрана 2025-06-10 о 15.00.49.png|центр|міні|700x700пкс]]<ul style="margin-top: 10px; font-size: 13px; list-style-type: none; padding-left: 0; margin-bottom: 0;">
         <li></li>
         <li></li>

Версія за 11:11, 11 червня 2025

Введення


Ця документація описує процес інтеграції SDK для iOS у ваш проект. Дотримуйтесь кроків нижче, щоб успішно підключити та налаштувати SDK у вашому застосунку.


Завантаження та додавання SDK до проєкту


Крок 1: Завантажте EasyPaySdkIos.xcframework

Перш за все, завантажте EasyPaySdkIos.xcframework та вставте його в папку вашого проєкту. Для цього просто перетягніть файл у ваш проєкт через Xcode.

Приклад:


Крок 2: Перевірте, чи зʼявився фреймворк у розділі Frameworks, Libraries, and Embedded Content

Переконайтеся, що фреймворк з'явився в розділі Frameworks, Libraries, and Embedded Content. Це можна перевірити в налаштуваннях вашого проєкту.

Крок 3: Додати папку compose-resources

Додайте папку compose-resources, яка знаходиться всередині EasyPaySdkIos.xcframework, до Copy Bundle Resources. Це дозволить вашому застосунку використовувати необхідні ресурси SDK.


⚠️ Важливо!

При додаванні compose-resources в діалозі додавання виберіть наступні опції:
1. Destination: Destination: Поставте галочку в полі Copy items if needed Added folders: Оберіть Create folder references
2. Copy Items if Needed: Поставте галочку.

Приклад:

Ініціалізація SDK


Для ініціалізації SDK в вашому проекті необхідно додати код у файл AppDelegate.swift.
Крок 1: Імпортуйте SDK

import UIKit
import EasyPaySdkIos


Крок 2: Ініціалізація SDK

У методі application(_:didFinishLaunchingWithOptions:), додайте наступний код для ініціалізації SDK:

@main
class AppDelegate: UIResponder, UIApplicationDelegate {
    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        // Ініціалізація SDK
        EasyPaySdk.shared.doInit(
            context: PlatformContext(),
            secret: "your secret",
            partnerKey: "your partner key",
            applePayMerchantId: "merchant.com.example"
        )
        return true
    }
}


Ініціалізація оплати


Для того, щоб ініціювати оплату, використовуйте наступний код:


Виклик функції оплати

@IBAction func makePayment(_ sender: Any) {
    let params = SdkPaymentContractArgs(
        paymentInstrumentArgs: PaymentInstrumentArgs(
            serviceKey: "SomeServiceKey",
            orderId: "SomeOrderId",
            amount: 3.0,
            description: "payment description",
            additionalItems: nil, // Optional
            phoneNumber: "380990000000" // Optional. Mandatory for saved cards to be displayed
        ),
        showPaymentResult: true
    )
    
    let vc = SdkPaymentViewControllerKt.SdkPaymentViewController(args: params) { result in
        print(result)
    }
    
    vc.modalPresentationStyle = .fullScreen
    vc.modalTransitionStyle = .crossDissolve
    self.present(vc, animated: true, completion: nil)
}


Перехід на екран перегляду/додавання/видалення карток


Для того, щоб користувач міг переглядати або додавати картки, скористайтеся наступним кодом:


Перехід на флоу перегляду/додавання/видалення карток

@IBAction func navigateToCards(_ sender: Any) {
    let vc = SdkCardsViewControllerKt.SdkCardsViewController(
        args: SdkCardsContractArgs(
            phoneNumber: "test-token-card",
            urlToNotifyMerchant: nil // Optional
        )) {
        print("Finished")
    }
    
    vc.modalPresentationStyle = .fullScreen
    vc.modalTransitionStyle = .crossDissolve
    self.present(vc, animated: true, completion: nil)
}