nativescript-community / https

Secure HTTP client with SSL pinning for Nativescript - iOS/Android
https://nativescript-community.github.io/https/
Other
51 stars 42 forks source link

iOS UIWebView is deprecated #47

Closed YaakovDavid closed 4 years ago

YaakovDavid commented 4 years ago

This plugin seems to be causing this error from Apple, the email from Apple is below

Dear Developer, We identified one or more issues with a recent delivery for your app. Your delivery was successful, but you may wish to correct the following issues in your next delivery:ITMS-90809: Deprecated API Usage - Apple will stop accepting submissions of apps that use UIWebView APIs. See https://developer.apple.com/documentation/uikit/uiwebview for more information. After you’ve corrected the issues, you can use Xcode or Application Loader to upload a new binary to App Store Connect. Best regards, The App Store Team

I went through all the plugins I'm using and it only throws this error when I add this plugin, is it possible for a fix to be released?

EddyVerbruggen commented 4 years ago

Thanks for letting me know about this warning, but it has to be fixed in the upstream AFNetworking library first. Please subscribe to a few of these to keep yourself posted: https://github.com/AFNetworking/AFNetworking/search?q=uiwebview&type=Issues

NachmanRoss commented 4 years ago

When I submitted my app which uses the nativescript-https plugin to Apple today, I received an email from them saying that they will not accept any apps that use the UIWebView api starting this April. I have to assume that most (if not all) of the NativeScript app developers require secure https communication so we really need a version that doesn't rely on these apis.

Is there anything on the horizon? This is critical.

EddyVerbruggen commented 4 years ago

@NachmanRoss You may have missed my previous comment. See fi. https://github.com/AFNetworking/AFNetworking/pull/4439

NachmanRoss commented 4 years ago

Thanks for the response. If I understand what’s going on is that everyone is depending on the AFNetworking team to get this resolved and they might be under more pressure due to Apple’s announcement. Is this an accurate assessment?

In general, can you give me your feelings as to how long it may take for the plugin to be updated once they do fix it? In my specific case, I’m not using pinning as my app connects to more than one domain and my understanding is that pinning can only be done with one domain (from the plugin page: “Once you've enabled SSL pinning you CAN NOT re-enable with a different host or certificate file.”).

I understand that you are not in a position to provide any timings and may be uncomfortable even providing a “gut feeling” but some guidance may go a long way in alleviating our concerns.  Thank you,

Nachman Ross CEO and Head of Development Ben Alter Development, LLC On Mar 6, 2020, 3:10 PM -0500, Eddy Verbruggen notifications@github.com, wrote:

@NachmanRoss You may have missed my previous comment. See fi. AFNetworking/AFNetworking#4439

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.

EddyVerbruggen commented 4 years ago

Your assessment is accurate.

If someone notifies me in this repo once AFNetworking has released a fixed version then it should not take more than say a week to get a new plugin version released.

NachmanRoss commented 4 years ago

I hope you don’t mind a “dumb” question but does it make any sense to create an update of the https plugin using this ElfSundae fork of the AFNetworking project (https://github.com/ElfSundae/AFNetworking/issues/1) that claims to have removed the UIWebView dependency? This would ensure that our NativeScript apps could still be deployed to the App Store.

Nachman Ross CEO and Head of Development Ben Alter Development, LLC On Mar 6, 2020, 3:32 PM -0500, Eddy Verbruggen notifications@github.com, wrote:

If someone notifies me in this repo once AFNetworking has released a fixed version then it should not take more than say a week to get a new plugin version released.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.

EddyVerbruggen commented 4 years ago

Hi, that's not a dumb question. But I don't want to use an unofficial AFNetworking release so I'd rather wait for the team to merge and publish that PR.

NachmanRoss commented 4 years ago

I hope that this email finds you in good health.

As shown below, it appears that the changes for replacing the AFNetworking uiwebview with wkwebview has been merged into the project. As the April deadline is quickly coming up, I was hoping that this is enough to allow you to update the nativescript-https plugin as we will be unable to get approval for new apps with the current state of the plugin.

Thank you, 

Nachman Ross CEO and Head of Development Ben Alter Development, LLC ---------- Forwarded message ---------- From: Arjun Gupta notifications@github.com Date: Mar 25, 2020, 1:31 PM -0400 To: AFNetworking/AFNetworking AFNetworking@noreply.github.com Cc: Subscribed subscribed@noreply.github.com Subject: Re: [AFNetworking/AFNetworking] Replaced uiwebview with wkwebview (#4521)

Closed #4521.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or unsubscribe.

EddyVerbruggen commented 4 years ago

Hi @NachmanRoss, the dealdine has moved to December 2020 so we have a bit more time. And thanks for the heads-up!

NachmanRoss commented 4 years ago

That’s great news. I was under the impression that the deadline to stop using the deprecated api for existing apps was December 2020 but that new apps had to stop using the api by April 2020. Is there an official Apple announcement url where this change is posted?

Nachman Ross CEO and Head of Development Ben Alter Development, LLC On Mar 25, 2020, 3:21 PM -0400, Eddy Verbruggen notifications@github.com, wrote:

Hi @NachmanRoss, the dealdine has moved to December 2020 so we have a bit more time. And thanks for the heads-up!

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.

EddyVerbruggen commented 4 years ago

Oh, that may very well be the case. I assumed your problem was with updates of existing apps.

EddyVerbruggen commented 4 years ago

FYI indeed https://github.com/AFNetworking/AFNetworking/pull/4521 has been closed, but a new version has not yet been published. I'm sure that will happen very shortly.

NachmanRoss commented 4 years ago

AFNetworking 4.0 was just released. Please update the nativescript-https plugin as soon as possible so we may publish our apps to the App Store.

Thank you.

Nachman Ross CEO and Head of Development Ben Alter Development, LLC On Mar 25, 2020, 3:50 PM -0400, Eddy Verbruggen notifications@github.com, wrote:

FYI indeed AFNetworking/AFNetworking#4521 has been closed, but a new version has not yet been published. I'm sure that will happen very shortly.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.

EddyVerbruggen commented 4 years ago

Thanks!

I had to refactor the iOS implementation a little after the bump of AFNetworking, but all the features of the demo app seem to work fine again. Bumped the Android lib a little as well.

Before installing, make sure to run pod repo update on your dev machine to get the latest version of the AFNetworking pod on your machine.

prabh08 commented 4 years ago

I have also received this deprecated mail from Apple.

I have ran this command 'pod repo update' over my MAC but nothing happened.
Here is some configuration:- pod --version ---- 1.9.1 AFNetworking (3.2.1) Ruby (2.7.0) But I am unable to update AFNetworking. Please let me know the steps to make this possible.

Thanks

EddyVerbruggen commented 4 years ago

Update this plugin and remove platforms and node_modules. AFNetworking should be at 4.0.