GithubHelp home page GithubHelp logo

isabella232 / adyen-wechatpay-ios Goto Github PK

View Code? Open in Web Editor NEW

This project forked from adyen/adyen-wechatpay-ios

0.0 0.0 0.0 11.75 MB

Adyen WeChat Pay SDK Wrapper

Home Page: https://developers.weixin.qq.com/doc/oplatform/en/Downloads/iOS_Resource.html

License: MIT License

C 45.61% Objective-C 52.89% Swift 0.67% Ruby 0.83%

adyen-wechatpay-ios's Introduction

AdyenWeChatPayInternal

The WeChat Pay SDK is a static .a library. This repository provides an XCFramework around the static library for more convenient importing of the WeChat Pay SDK. This is especially useful when using Swift Package Manager.

Embeded WeChat SDK versions: 1.9.2

❗ WeChat SDK versions 1.8.6.1 and below contain UIKit symbols and cause rejection during App Store Review: "ITMS-90809: Deprecated API Usage".

Requirements

  • For embedding the XCFramework into an Xcode project, Xcode 11+ is required.
  • For integrating through Swift Package Manager, Xcode 12+ is required.
  • Supports iOS 10+.

Installation

Embedding XCFramework.

  1. Drag the XCFramework into your Frameworks folder.
  2. Make sure to Select “Copy items if needed” and “Create groups” options when adding the XCFramework file.
  3. Navigate to your project settings, then General tab, under “Frameworks, Libraries and Embedded Content”, make sure to select “Embed & Sign” for your newly added XCFramework.

Swift Package Manager

  1. Follow Apple's Adding Package Dependencies to Your App guide on how to add a Swift Package dependency.
  2. Use https://github.com/Adyen/adyen-wechatpay-ios as the repository URL.
  3. Specify the version to be at least 2.0.0.

⚠️ Please make sure to use Xcode 12.0+ when adding AdyenWeChatPayInternal using Swift Package Manager.

⚠️ Swift Package Manager for Xcode 12.0 and 12.1 has a know issue when it comes to importing binary dependencies. A workaround is described here.

CocoaPods

  1. Add pod 'AdyenWeChatPayInternal' to your Podfile.
  2. Run pod install.

Carthage

  1. Add github "adyen/adyen-wechatpay-ios" to your Cartfile.
  2. Run carthage update --use-xcframeworks.
  3. Link the framework with your target as described in Carthage Readme.

Note: for non-M1 mac use workarounds from here

Usage

AdyenWeChatPayInternal is just a wrapper around the original WeChat Pay SDK, with a few minor improvements:

  • Handles the importing of the dependent system frameworks and libraries.
  • Removes the need for adding -Objc and -all_load other linker flags to the your project build settings.

Other than these improvements, the framework works in the same way as the original WeChat Pay SDK.

⚠️ WeChat .a static library does not support simulator for arm64 architecture. To debug on simulator use debug flags

#if !(targetEnvironment(simulator))

// Code that calls WeChat SDK

#endif

Documentation

Refer to the original documentation.

Support

If you have a feature request, or spotted a bug or a technical problem regarding the XCFramework wrapper, create a GitHub issue. For other questions or issues regarding the SDK, contact WeChat Pay iOS SDK support.

License

MIT license. For more information, see the LICENSE file.

adyen-wechatpay-ios's People

Contributors

descorp avatar mohammeddehairy avatar rikterbeek avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.