Swift Apple Pay with Stripe Error 50 - ios

I have followed Stripe manual to implement Stripe in iOS project. We have the latest version and everything looks like in examples. Keep getting this error:
Error Domain=com.stripe.lib Code=50 "Your payment information is formatted improperly. Please make sure you're correctly using the latest version of our iOS library. For more information see https://stripe.com/docs/mobile/ios."
Code is running in simulator, simulated as iPhone 6s and running latest iOS. Anyone got any clue?

Simlulators Are not a real reflection of a device as the docs says insure the version of the libary is exact up to date. You may have a rogue version that does not match up with there schema.

Related

UIWebView Deprecation and App Store Rejection on Xamarin Forms

Can i fix the following ?
My setup
Xamarin.iOS Version: 13.16.0.13 (Visual Studio Community)
Visual Studio Community 2019 for Mac Version 8.5.2 (build 13)
Xamarin.Forms 4.5.0.617
I follow the instruction here
https://learn.microsoft.com/en-gb/xamarin/xamarin-forms/user-interface/webview?tabs=macos#uiwebview-deprecation-and-app-store-rejection-itms-90809
and here
https://github.com/xamarin/Xamarin.Forms/issues/7323#issuecomment-542363338
to fix this problem
ITMS-90809: Deprecated API Usage - New apps that use UIWebView are no
longer accepted. Instead, use WKWebView for improved security and
reliability.
but i get the following error on publish
Thank you!
As Microsoft mentions in the Microsoft blog, this is fixed in Xamarin.Forms 4.6
Now in 4.6, we are updating the bindings to Google’s library. We have
improved the styling support for things like, setting a button’s
‘Disabled’ text color. The latest library also removes the reference
to Apple’s deprecated UIWebView.
So update your Xamarin.Forms to Version 4.6.
Adding --optimize=force-rejected-types-removal in mtouch arguments works. I have submitted to TestFlight and I did not get email about UIWebView removal.
I dont know why, but when i changed my app's version number and build number it's worked. Also i create a new app version on App Store Connect.
Same errors in this link helps me
https://forums.xamarin.com/discussion/172296/app-store-connect-application-loader-publishing-failed-failed-to-parse-altool-output
Is two different errors I believe. The first is from deprecated UIWebView and another error (publish error) showed up after the first rejection from apple.
Thanks.
This is not an answer, but I share my experience on this particular issue I also have. Maybe it would helps.
When pusblishing to Apple App Store Connect a new app after April 1st 2020, apple could reject your app if you are using UIWebView. Apps submitted before have warnings, but thoses app will not be submitable past December 2020.
My app is new and I publishing after April 1st. I had some hard time publishing this app using VS 2019 Mac and the archive process. I don't like it. You can have a green screen during publishing and see nothing on the appstoreconnect. This is because Apple reject your app. See your emails, you have :
ITMS-90809: Deprecated API Usage - New apps that use UIWebView are no longer accepted. Instead, use WKWebView for improved security and reliability
I suggest to use a archive on your disk and use Transporter app to upload it. It has a log view and warns me about build number issue.
Back on my app, I try the mtouch argument --optimized trick but it doesn't work. I tried Don't link, Link SDK only, Link all to be sure. None worked. Apple keep saying I am using UIWebView. I check my code, I cannot see UIWebView anywhere.
So I wanted to try a fresh app from scratch using last version of Xamarin.Forms 4.6 and publish it. I had the same issue message by Apple. Then I add the --optimizer mtouch argument and publish it. Apple was satisfied. So this means that the "patch" is working.
So as my code doesn't have any UIWebView, I think this could be a tiers library... But how to find... I am try this https://levelup.gitconnected.com/how-to-find-and-remove-uiwebview-uses-in-your-ios-app-d9395f7baacc
The command gives me this :
FirebaseCore
FirebaseCoreDiagnostics
GTMSessionFetcher
GoogleAPIClientForREST
GoogleDataTransport
GoogleDataTransportCCTSupport
GoogleToolboxForMac
GoogleUtilities
PersonalizedAdConsent
U _OBJC_CLASS_$_UIWebView
leveldb
libSkiaSharp
nanopb
protobuf
So I presume those libs are not "compatible"...?
I will update if I find something...

Non-public API usage : The app contains one or more corrupted binaries

I am really frustrate whats going on with iOS application new version uploads. Here are the story.
On the date of 25th Jan 2018 we have uploaded new version 3.3.27 build number 1.0. That successfully process and available on test-flight for testing. After that we found some issue and on 26th Jan 2018 we fix it and uploading new build 1.1 and we get email from iTunes Connect said:
Dear developer,
We have discovered one or more issues with your recent delivery for "appname". To process your delivery, the following issues must be corrected:
Non-public API usage:
The app contains one or more corrupted binaries. Rebuild the app and resubmit.
If method names in your source code match the private Apple APIs
listed above, altering your method names will help prevent this app
from being flagged in future submissions. In addition, note that one
or more of the above APIs may be located in a static library that was
included with your app. If so, they must be removed.
If you think this message was sent in error and that you have only
used Apple-published APIs in accordance with the guidelines, send the
app's nine-digit Apple ID, along with detailed information about why
you believe the above APIs were incorrectly flagged, to
email#apple.com. For further information, visit the
While i am validate build before upload its success:
While i am uploading app i get following success:
In mail i did not get proper information what's the name of corrupted binary or framework. What is the method we used that non-public we have uploaded 100s update build of that application before 25th Jan everything is good and acceptable.
Then i have try following changes:
Rebuild app and submit again get same email.
Uninstall Xcode9.2 and Install again get same email.
Remove changes and upload build number 1.0 again get same email.
Change Mac and try to upload new build again same email.
Try to upload old version that live before and again same emai
We sent an email to iTunes Connect Review but since 3 days we did not get any reply from them side. I do research and from 26th Jan many user face that kind of issue while submit application.
If any one know that solution who face that kind of issue in past or recently Please help us
After a LOT of investigations on this part we finally found the problem for this issue:
It seems like Apple gives this error for applications that suport both 32 and 64 bits.
Apple gave this reminder for Mac Appstore, but it seems that iOS applications are affected as well.
So a solution for this is to support bitcode OR to drop support for 32 bit devices by removing support for ARMV7 and ARMV7S or bellow from Valid Architectures from build settings. This will mean your application will work only on iPhone 5S and above.
I hope this helps someone.
Thank you and happy coding!
There is not one solution for this issue Apple not mention anything now a days about that errors or invalid binary related news on their official account or forums or their official Developer site. Even they are not reply of your email.
Some of get that issue solved by BitCode enable, Some of solve that issue for update PODFILE, Some of Solve that issue by remove some old swift framework used in project.
But finally I get solution by my self that works for me. When i build the project i found some warning at left side panel of Xcode like following.
I think apple now removed old swift support so in case your project use any swift class or podfile we need to update to swift 4.
Once i conversion to swift 4 i get following warning:
The use of Swift 3 #objc inference in Swift 4 mode is deprecated.
Please address deprecated #objc inference warnings, test your code
with “Use of deprecated Swift 3 #objc inference” logging enabled, and
then disable inference by changing the "Swift 3 #objc Inference" build
setting to "Default" for the "appname" target.
For fix this warning i use following link The use of Swift 3 #objc inference in Swift 4 mode is deprecated? and in swift class i used #objc before public declaration.
Also i review all the source code and remove unused library of podfile and class from project.
by above way i fix that issue and after uploading 13th of build finally that accepted.
The non-public API refers to Apple API methods that are not documented and offered to the programmer.
Apple does not guarantee that this part of the API will work in future upgrades. They can freely change this part.
They forbid usage, so that your app won't break in iOS updates, and so protect your future users/buyers of your app!
The webservice is external, hence does not fall under non-public. This part you need to guarantee, not Apple.
In Target -> Build Settings -> Other Linker Flags, remove -interposable. Rebuild app solved the problem.
We found 2 solutions for the issue. Remove 32 bit support, which was referred above. And remove CommonCrypto usage. We replaced CommonCrypto by CryptoSwift (https://github.com/krzyzanowskim/CryptoSwift).
We chose to replace CommonCrypto as we didn't want to loose our 32 bit users (iPhone4S, 5 and 5C).

Firebase Phone Auth Error FIRAuthErrorCodeMissingAppToken

I'm getting this error from firebase when trying to sign in with a phone number on iOS
error_name: 'ERROR_MISSING_APP_TOKEN',
NSLocalizedDescription: 'There seems to be a problem with your project\'s Firebase phone number authentication set-up, please make sure to follow the instructions found at https://firebase.google.com/docs/auth/ios/phone-auth' },
domain: 'FIRAuthErrorDomain'
I've followed all the linked directions (https://firebase.google.com/docs/auth/ios/phone-auth) to enable phone authentication and add APNs Keys, etc.
What "token" is missing to cause this error?
Thanks.
We were having the same problem. Turns out we should have used a real device with a working SIM card inside.
Try it out. Hope it helps.
It looks like the answer was pretty simple, I was using an outdated version of the Firebase iOS components. I updated my Podfile and installed the newest version and everything started working.

Newest version of Forge v1.4.49 windows IOS app crashes

With the newest version of forge v1.4.49 when I try and test my IOS app from my windows comp the app installs but when I open it crashes.
I also tested using testFlight and get the same error. ( I get no error message as the console does not work in windows for debug, it just opens and then closes when I try and run the app )
I put the version back to version 1.4.48 and it works fine so I'm guessing it is something introduced in the newest version.
Thanks
Update: This is due to cross-platform line ending issues in the Python standard library: we deployed a fix on 18th July '13 which will fix all deployed platform versions.
Original answer:
The only iOS change that went into v1.4.49 was reading app entitlements information from your provisioning profile, rather than inferring it from active modules.
I'd recommend using the iPhone configuration utility to get the console output off the device: you may see a message about incorrect entitlements.
If the particular message doesn't help clear this up for you, get in touch at support#trigger.io, with your IPA and provisioning profile for us to check over.

Monotouch AMDeviceInstallApplication returned: 0xe8008018

I have recently installed iOS 6 beta on my device and updated to the latest mono develop release. Since this, I now get the following error when trying to deploy to my device, "Installation failed: AMDeviceInstallApplication returned: 0xe8008018" - Could not upload to the device.
I have tried other projects and get the same error. As far as I'm aware, there is no code signing problems - all appears fine in the log. It worked fine before I installed IOS6. I don't have another device with iOS 5 to test.
Any ideas as to why I am getting this error?
Thank you.
If you are using any non-standard names for the Xcode executables, check Xamarin's blog post on how to fix it:
http://blog.xamarin.com/2012/06/15/xcode-4-5-ios-6-and-mountain-lion/
Or even better, contact support#xamarin.com
I get this message once a year when my developer certificate expires on my build machine.
Yep my Macbook Pro is from 2010.
So just look in the iOS Developer console under Certificates. If it says you do not have one then you need to go through the process to create a new one. I also look in KeyChain to see if the one in there has a red X indicating it to be expired.
I hope this helps.

Resources