braintree / braintree-ios-drop-in

Braintree Drop-in for iOS
https://developers.braintreepayments.com
MIT License
98 stars 77 forks source link

Deprecated API usage #197

Closed WojciechTrzasko closed 4 years ago

WojciechTrzasko commented 4 years ago

General information

Issue description

Hi,

First of all, I really love your product!

Because of UIApplication API deprecations introduced with iOS 13, we investigated our project and its dependencies and find out that Braintree DropIn uses two deprecated properties:

Because we are getting close to the release of our project, we would like to be sure that there won't be any surprise at the end. In such a case I would like to ask, do you plan to resolve those in the near future?

Best regards!

scannillo commented 4 years ago

Hi @WojciechTrzasko. Thank you for bringing this to our attention. We don't have an ETA on when we can make these updates, but we welcome public PRs if you need these changes urgently!

Team SDK - @hollabaq86

WojciechTrzasko commented 4 years ago

Hi @scannillo, As we have almost the same conversation in the issue for another repository, this time I will try to short the message ;).

We are preparing our app for MVP release in the middle of December and this is a very crucial date for us. Do you think that you will be able to resolve this before that date?

scannillo commented 4 years ago

This is not on our current roadmap, but we've added it to our backlog. I do not think we will have this prioritized by then, since it is not blocking your or other's development. If it is however, please let us know.

scannillo commented 4 years ago

This was fixed in v8.1.0

Crylion commented 1 year ago

@scannillo I just found this old issue, because I was googling the exact same issue, I just encountered it in BTUIKViewUtil.m 🤔

Screenshot 2023-05-09 at 15 42 46
scannillo commented 1 year ago

👋 Hi @Crylion - that looks like an Xcode bug to me, since you can see we have the @available check and are using the updated property. Try updating our Xcode (and Braintree) versions to the latest, or setting "Treat Warnings as Errors" to NO in your Xcode project.

Crylion commented 1 year ago

@scannillo Thanks for your response 🙏 It's obviously not your job to debug my Xcode woes, and you are absolutely right: you use the @available check exactly like the apple documentation suggests it. And still, I get these errors 😢 I tried using Xcode 14.2 and 14.3, I'm using 9.8.2 of the BraintreeDropIn pod, and all the "Treat Warnings as Errors" settings are set to "no"... Xcode is really driving me nuts sometimes... And for the record, I'm doing this in a Capacitor 5 project with a deployment target of 13.0

Crylion commented 1 year ago

Update: Finally found the flag I need to set. In the Pods project, Deprecated Functions under Warnings needed to be set to no

Screenshot 2023-05-10 at 09 53 39

Sorry to bother you 😅

BunnyBuddy commented 5 months ago

For people coming here from Flutter, you can try

post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_ios_build_settings(target) target.build_configurations.each do |build_configuration| build_configuration.build_settings['EXCLUDED_ARCHS[sdk=iphonesimulator*]'] = 'arm64 i386' config = build_configuration config.build_settings['GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS'] = 'NO' // this is the flag you need to set under [your project name]/ios/Pods/Podfile end end end

run flutter run --verbose and see if it works. if this does resolve your issue but you still see another issue with not finding the right device support files then try, https://stackoverflow.com/questions/71359062/iproxy-cannot-be-opened-because-the-developer-cannot-be-verified