Giter VIP home page Giter VIP logo

Comments (19)

mkharibalaji avatar mkharibalaji commented on September 9, 2024 1

Hi @dmitry-blackwave ,
Adyen has released a new version today 2.8.3 which solves the above problem but ends up with another,

image

Then i added the implementation for PaymentControllerDelegate in AdyenReactNative.swift which was missing as per the new migration given below

https://github.com/Adyen/adyen-ios/blob/master/MIGRATION.md

func provideAdditionalDetails(_ additionalDetails: AdditionalPaymentDetails, for paymentMethod: PaymentMethod, detailsHandler: @escaping Completion<[PaymentDetail]>){
}

Then i removed the following lines from the Podfile
post_install do |installer| installer.pods_project.targets.each do |target| if target.name == 'Adyen' target.build_configurations.each do |config| config.build_settings['SWIFT_VERSION'] = '5.0.1' end end end end

and then ran 'pod update' which ended with these libraries version,

Installing Adyen 2.8.3 (was 2.8.1)
Installing Adyen3DS2 2.1.0-rc.1 (was 0.9.6)
Installing AdyenInternal 2.8.3 (was 2.8.1)
Using AdyenReactNative (1.2.0)

Then moved the ios Version for AdyenReactNativeProject to 11.3 to avoid armv7 missing architecture.

After this i replaced the Adyen framework in your nodemodules ios folder with the newly swift 5 compiled version ,linked the project manually and was able to proceed but while building at the final stage I am getting these errors,

`
Showing Recent Messages
👎 Could not find auto-linked library 'swiftCoreGraphics'

👎 Could not find auto-linked library 'swiftFoundation'

👎 Could not find auto-linked library 'swiftMetal'

👎 Could not find auto-linked library 'swiftDarwin'

👎 Could not find auto-linked library 'swiftUIKit'

👎 Could not find auto-linked library 'swiftCoreFoundation'

👎 Could not find auto-linked library 'swiftObjectiveC'

👎 Could not find auto-linked library 'swiftDispatch'

👎 Could not find auto-linked library 'swiftCoreImage'

👎 Could not find auto-linked library 'swiftQuartzCore'

👎 Could not find auto-linked library 'swiftCore'

👎 Could not find auto-linked library 'swiftSwiftOnoneSupport'

👎 Undefined symbol: Foundation.URL._bridgeToObjectiveC() -> __C.NSURL

👎 Undefined symbol: type metadata accessor for Foundation.URL

👎 Undefined symbol: value witness table for Builtin.UnknownObject

👎 Undefined symbol: (extension in Foundation):Swift.Dictionary._bridgeToObjectiveC() -> __C.NSDictionary

👎 Undefined symbol: Swift.Dictionary.init(dictionaryLiteral: (A, B)...) -> [A : B]

👎 Undefined symbol: (extension in Foundation):Swift.String._bridgeToObjectiveC() -> __C.NSString

👎 Undefined symbol: static (extension in Foundation):Swift.String._unconditionallyBridgeFromObjectiveC(__C.NSString?) -> Swift.String

👎 Undefined symbol: Swift.String.init(_builtinStringLiteral: Builtin.RawPointer, utf8CodeUnitCount: Builtin.Word, isASCII: Builtin.Int1) -> Swift.String

👎 Undefined symbol: type metadata for Swift.String

👎 Undefined symbol: protocol witness table for Swift.String : Swift.Hashable in Swift

👎 Undefined symbol: protocol witness table for Swift.String : Swift.Equatable in Swift

👎 Undefined symbol: (extension in Foundation):Swift.Array._bridgeToObjectiveC() -> __C.NSArray

👎 Undefined symbol: generic specialization <Swift.String> of Swift.Array.init(arrayLiteral: A...) -> [A]

👎 Undefined symbol: type metadata accessor for Swift.Array

👎 Undefined symbol: type metadata for Swift.Bool

👎 Undefined symbol: type metadata for Swift.Int

👎 Undefined symbol: Swift.fatalErrorMessage(: Swift.StaticString, _: Swift.StaticString, file: Swift.StaticString, line: Swift.UInt, flags: Swift.UInt32) -> Swift.Never

👎 Undefined symbol: Swift._allocateUninitializedArray(Builtin.Word) -> ([A], Builtin.RawPointer)

👎 Undefined symbol: generic specialization of Swift._allocateUninitializedArray(Builtin.Word) -> ([A], Builtin.RawPointer)

👎 Undefined symbol: Swift.== infix<A where A: Swift.RawRepresentable, A.RawValue: Swift.Equatable>(A, A) -> Swift.Bool

👎 Undefined symbol: protocol descriptor for Swift.Error

👎 Undefined symbol: Swift.print(_: Any..., separator: Swift.String, terminator: Swift.String) -> ()

👎 Undefined symbol: type metadata for Any

👎 Undefined symbol: _swift_FORCE_LOAD$_swiftCoreFoundation

👎 Undefined symbol: _swift_FORCE_LOAD$_swiftCoreGraphics

👎 Undefined symbol: _swift_FORCE_LOAD$_swiftCoreImage

👎 Undefined symbol: _swift_FORCE_LOAD$_swiftDarwin

👎 Undefined symbol: _swift_FORCE_LOAD$_swiftDispatch

👎 Undefined symbol: _swift_FORCE_LOAD$_swiftFoundation

👎 Undefined symbol: _swift_FORCE_LOAD$_swiftMetal

👎 Undefined symbol: _swift_FORCE_LOAD$_swiftObjectiveC

👎 Undefined symbol: _swift_FORCE_LOAD$_swiftQuartzCore

👎 Undefined symbol: _swift_FORCE_LOAD$_swiftUIKit

👎 Undefined symbol: _swift_allocObject

👎 Undefined symbol: _swift_beginAccess

👎 Undefined symbol: _swift_bridgeObjectRelease

👎 Undefined symbol: _swift_bridgeObjectRetain

👎 Undefined symbol: _swift_deallocObject

👎 Undefined symbol: _swift_dynamicCast

👎 Undefined symbol: _swift_endAccess

👎 Undefined symbol: _swift_errorRelease

👎 Undefined symbol: _swift_errorRetain

👎 Undefined symbol: _swift_getExistentialTypeMetadata

👎 Undefined symbol: _swift_getInitializedObjCClass

👎 Undefined symbol: _swift_getObjCClassFromMetadata

👎 Undefined symbol: _swift_getObjCClassMetadata

👎 Undefined symbol: _swift_getTupleTypeMetadata2

👎 Undefined symbol: _swift_getWitnessTable

👎 Undefined symbol: _swift_isaMask

👎 Undefined symbol: _swift_release

👎 Undefined symbol: _swift_retain

👎 Undefined symbol: _swift_unknownObjectRelease

👎 Undefined symbol: _swift_unknownObjectRetain

`

Could you please add the latest swift version of Adyen and help with the above issue.

from adyen-react-native.

mkharibalaji avatar mkharibalaji commented on September 9, 2024 1

I was able to successfully make the adyen ios to work :)

First of all update your react native to version > 0.59.3 and then follow the below steps

Here are the Steps for XCode 10.2.1 & above

  1. Your PodFile should look like ,

platform :ios, '11.0'
use_frameworks!
target 'Your Target Name' do
pod 'AdyenReactNative', :path => '../node_modules/adyen-react-native'
end

'pod update' would add these libraries ,

Installing Adyen 2.8.3 (was 2.8.1)
Installing Adyen3DS2 2.1.0-rc.1 (was 0.9.6)
Installing AdyenInternal 2.8.3 (was 2.8.1)
Using AdyenReactNative (1.2.0)

  1. Add the implementation for PaymentControllerDelegate in AdyenReactNative.swift which was missing as per the new migration given below

https://github.com/Adyen/adyen-ios/blob/master/MIGRATION.md

func provideAdditionalDetails(_ additionalDetails: AdditionalPaymentDetails, for paymentMethod: PaymentMethod, detailsHandler: @escaping Completion<[PaymentDetail]>){
}

  1. Modify the OS Version for AdyenReactNativeProject to 11.3 to avoid armv7 missing architecture

  2. Replace the Adyen framework in your nodemodules ios folder with the newly swift 5 compiled version from the Pods to /node_modules/adyen-react-native/ios like below

    • Adyen,Adyen3Ds2,AdyenInternal & its bundle (You can find these files from the Pod folders)

image

  1. Link the project manually

  2. As per the facebook link below create a empty swift file and create the bridege in your parent RN project,

image

image

Thats it you should be able to get the adyen working in iOS.

from adyen-react-native.

mkharibalaji avatar mkharibalaji commented on September 9, 2024 1

@GituBojan added a Pull request and I have also created a issue for 3.0.0 release as well.

from adyen-react-native.

GituBojan avatar GituBojan commented on September 9, 2024 1

Installing Adyen 2.8.3 (was 2.8.1)
Installing Adyen3DS2 2.1.0-rc.1 (was 0.9.6)
Installing AdyenInternal 2.8.3 (was 2.8.1)
Using AdyenReactNative (1.2.0)

I could only find Adyen3Ds2 in the pods folder. Adyen, AdyenInternal pods are installed but there is no .framework file inside the pods folders.

By linking them manually you mean a second link within the Linked Frameworks and Libraries even if we install the pod file?

from adyen-react-native.

jannisch avatar jannisch commented on September 9, 2024 1

I figured out that this error message doesn't have anything to do with architectures, the framework search paths are just wrong

Try setting these paths on the AdyenReactNative target
Screenshot 2019-09-29 at 16 12 59

After that Adyen.framework should be compiled and end up in the build directory.
If AdyenInternal can't be found from the Adyen module, add "${BUILD_DIR}/AdyenInternal" to the Adyen search paths as far as I remember.

from adyen-react-native.

GituBojan avatar GituBojan commented on September 9, 2024

same here.

from adyen-react-native.

mkharibalaji avatar mkharibalaji commented on September 9, 2024

After surfing through the internet,I raised a issue with adyen ios sdk as below,

Adyen/adyen-ios#72

from adyen-react-native.

GituBojan avatar GituBojan commented on September 9, 2024

3.0.0 was released on 18th of June.

Can you create a PR for 2.8.4 with your changes?

from adyen-react-native.

mkharibalaji avatar mkharibalaji commented on September 9, 2024

@GituBojan

image

Copy Adyen3DS2 from Pods/Adyen3DS2/Frameworks and then Copy from Products Folder Adyen.Framework,AdyenInternal.framework and AdyenInternal.bundle

from adyen-react-native.

jrwpatterson avatar jrwpatterson commented on September 9, 2024

@mkharibalaji do you know how to apply your fixes to the RN60 autolinker... if I manually link it can't find the react bridge... if I don't there's no module...

from adyen-react-native.

mkharibalaji avatar mkharibalaji commented on September 9, 2024

@jrwpatterson - Working on it.

from adyen-react-native.

voslartomas avatar voslartomas commented on September 9, 2024

@mkharibalaji I have same problem as @GituBojan can't see Adyen.framework not either AdyenInternal.framework, build is without errors. But when I run app and include adyen-react-native I get error with native module.

from adyen-react-native.

voslartomas avatar voslartomas commented on September 9, 2024

@mkharibalaji Anything new?

from adyen-react-native.

mkharibalaji avatar mkharibalaji commented on September 9, 2024

Hi @jannisch,
You are correct !!! I tried several times even cearing of the xcode 10.2 cache but still recieving this error and thats why went on with Manual reference.
Those who are trying with react native > 0.60,please try @jannisch way of setting the Path in Xcode.

from adyen-react-native.

mkharibalaji avatar mkharibalaji commented on September 9, 2024

@voslartomas - Please try @jannisch way...

from adyen-react-native.

mkharibalaji avatar mkharibalaji commented on September 9, 2024

@jannisch - Can you raise a PR for the Path Fix ??

from adyen-react-native.

jannisch avatar jannisch commented on September 9, 2024

@mkharibalaji sure I'll submit a PR as soon as I got time and try everything step by step. So far it only works with the quickstart repo (0.59)
react-native 0.61 even builds automatically and compiles Adyen, however I get the Native module cannot be null error from the first post in this thread. Please let me know if you have any ideas how to fix this

from adyen-react-native.

VladYakut avatar VladYakut commented on September 9, 2024

@jannisch
have you found the solution?

from adyen-react-native.

mkharibalaji avatar mkharibalaji commented on September 9, 2024

Hi @jannisch @voslartomas @jrwpatterson VladYakut,

Sorry for the late response.I was busy with other work.
update the AdyenReactNative.podspec file with this for RN 0.60 and do a 'pod install' it should work.

``
require 'json'
package = JSON.parse(File.read('package.json'))

Pod::Spec.new do |s|

s.name = "AdyenReactNative"
s.version = package["version"]
s.summary = package["description"]

s.homepage = "https://github.com/dmitry-blackwave/adyen-react-native#readme"
s.license = "MIT"
s.author = { "author" => "[email protected]" }

s.platform = :ios, "11.0"
s.source = { :git => "https://github.com/author/AdyenReactNative.git" }
s.source_files = "ios/*.{h,m,swift}"
s.requires_arc = true

s.dependency "React"
s.dependency "Adyen","2.8.5"
s.dependency "Adyen/ApplePay","2.8.5"

end
``

In the meanwhile I will raise a PR for this.

from adyen-react-native.

Related Issues (18)

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.