Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ITMS-90809: Deprecated API Usage #264

Open
Cniklasson opened this issue Mar 20, 2024 · 21 comments
Open

ITMS-90809: Deprecated API Usage #264

Cniklasson opened this issue Mar 20, 2024 · 21 comments

Comments

@Cniklasson
Copy link

PayPal SDK Version

1.1.0

Environment

Sandbox

Xcode Version

Xcode

OS Version & Device

Iphone 14 , 17.2.1

Integration type

Swfit Package Manager

Development Processor

Both

Describe the bug

Dear Developer,

We identified one or more issues with a recent delivery for your app, "Beliri" 1.0.1 (12). Please correct the following issues, then upload again.

ITMS-90809: Deprecated API Usage - New apps that use UIWebView are no longer accepted. Instead, use WKWebView for improved security and reliability. Learn more (https://developer.apple.com/documentation/uikit/uiwebview).

To reproduce

This is the result -

apple@apples-MacBook-Pro-2 Nuvicci % grep -R UIWebView *
Binary file Resources/Paypal/libPayPalMobile.a matches

PayPal Native payments followed this link

https://developer.paypal.com/docs/checkout/advanced/ios/

How to my developers move forward from here? We are stuck

Expected behavior

To run smoothly.

Screenshots

IMG_4889
IMG_4890
IMG_4891
IMG_4848

@Cniklasson
Copy link
Author

@scannillo

This is the result -

apple@apples-MacBook-Pro-2 Nuvicci % grep -R UIWebView *
Binary file Resources/Paypal/libPayPalMobile.a matches

@KunJeongPark
Copy link
Collaborator

Thank you for reaching out to us.
I will consult with Sammy as well as related team about this issue.

@KunJeongPark
Copy link
Collaborator

KunJeongPark commented Mar 21, 2024

I was told that the latest version of PayPalCheckout (1.2.0) which is used in our latest PPCP version does not use this deprecated method.

@KunJeongPark
Copy link
Collaborator

I see that you commented out the line with older version of PayPalCheckout, did your app submission include that line?

@Cniklasson
Copy link
Author

I was told that the latest version of PayPalCheckout (1.2.0) which is used in our latest PPCP version does not use this deprecated method.

I've enlisted developers to handle the task, and I'll ensure they receive all necessary details promptly.

After discussions with Luka Jakovac, Partner Sales & Onboarding Specialist, we've decided to omit Braintree as it's not applicable in our scenario.

Additionally, the PayPal Mobile Checkout SDK is tailored for existing app beta users, while for new users, we're currently utilizing Version 1.1.0 of the PayPal Mobile iOS SDK for Native Payments.

Followed by this link Native Payments https://developer.paypal.com/docs/checkout/advanced/ios/

Could you confirm if the latest version for PayPalNativePayments is 1.2.0, as the latest version for PayPalCheckout is indeed 1.2.0?

It's crucial to ensure we're focusing on PayPalNativePayments rather than PayPalCheckout to avoid any further issues, given the extensive effort we've already invested in this endeavor.

@KunJeongPark
Copy link
Collaborator

KunJeongPark commented Mar 22, 2024

We are working actively to build our PPCP to improve the experience for all users as well as existing merchants.
Yes, PPCP iOS version 1.1.0 is definitely using PayPalCheckout 1.2.0.

PayPalNativePayments underneath the hood is just wrapping PayPalCheckout.

A suggestion from a teammate is to check if your pods are not cached somewhere.

Thank you so much and keep us posted on this issue as well as suggestions for future improvements.
Another point is to make sure that you don't use PayPalCheckout on its own.

@Cniklasson
Copy link
Author

We are working actively to build our PPCP to improve the experience for all users as well as existing merchants. Yes, PPCP iOS version 1.1.0 is definitely using PayPalCheckout 1.2.0.

PayPalNativePayments underneath the hood is just wrapping PayPalCheckout.

A suggestion from a teammate is to check if your pods are not cached somewhere.

Thank you so much and keep us posted on this issue as well as suggestions for future improvements. Another point is to make sure that you don't use PayPalCheckout on its own.

Iam happy for the quick replies and support!
So to start we should upload PayPal Native Payments to version 1.2.0? And check what is happening from there. As we have version 1.1.0

@KunJeongPark
Copy link
Collaborator

We are happy to support you using our SDK.
Yes, that is correct.
Make sure you don't include the portions you commented out.

@Cniklasson
Copy link
Author

Cniklasson commented Mar 28, 2024

We are happy to support you using our SDK. Yes, that is correct. Make sure you don't include the portions you commented out.

They tried to upload.

Reply from developers
” We are getting error. The version is not compatible”

Checked attached photo.

Reply from developers (does not include it.)
”FYI - commented code will never act”

”all pods cached cleared whenever we run,
we run pod update command”

IMG_5581
IMG_5582

@Cniklasson
Copy link
Author

Any idea @KunJeongPark

@KunJeongPark
Copy link
Collaborator

KunJeongPark commented Apr 8, 2024

Hello, can you tell me what your app's deployment target target is and what version of Xcode you are using? I tried pod install with PayPal/PayPalNativePayments using target 17.4, 15.0 and 14.0 and I didn't get any errors.

@Cniklasson
Copy link
Author

Hello, can you tell me what your app's deployment target target is and what version of Xcode you are using? I tried pod install with PayPal/PayPalNativePayments using target 17.4, 15.0 and 14.0 and I didn't get any errors.

Sorry for late reply. I need to wait replies from developer.

Please check the versions :

Minimum Deployment target - 14.1
Xcode version - 15.1 (15C65)

@Cniklasson
Copy link
Author

Hello, i told developers to start from beginning.

They recive this error now. Any idea?

PayPal checkout button stuck infinite loading spinner and unable to complete the transaction

IMG_5767

@KunJeongPark
Copy link
Collaborator

Hello,
I just tested this with our demo app and I am not seeing any issues.
Do you see any error output in your console?

@Cniklasson
Copy link
Author

Hello, I just tested this with our demo app and I am not seeing any issues. Do you see any error output in your console?

The specific problem manifests as an infinite loading spinner on the PayPal checkout button, preventing any transactions from being completed. Additionally, I am receiving the following error messages in the Xcode console:

Error acquiring assertion: <Error Domain=RBSServiceErrorDomain Code=1 "target is not running or doesn't have entitlement com.apple.runningboard.assertions.webkit" UserInfo={NSLocalizedFailureReason=target is not running or doesn't have entitlement com.apple.runningboard.assertions.webkit}>

0x119020ea0 - ProcessAssertion::acquireSync Failed to acquire RBS assertion 'XPCConnectionTerminationWatchdog' for process with PID=5635, error: Error Domain=RBSServiceErrorDomain Code=1 "target is not running or doesn't have entitlement com.apple.runningboard.assertions.webkit" UserInfo={NSLocalizedFailureReason=target is not running or doesn't have entitlement com.apple.runningboard.assertions.webkit}

@Cniklasson
Copy link
Author

https://streamable.com/r7q2ti

To provide a clearer picture of the issue, I have attached a video showcasing the integration process and the error as it occurs.

@KunJeongPark
Copy link
Collaborator

KunJeongPark commented Apr 15, 2024

Thank you for the details. The error seems to be related to use of WKWebView with iOS 15.
I found this thread, let me know if those suggestions solve the problem:
https://forums.developer.apple.com/forums/thread/709919
"Goto MenuBar and find product -> Goto Menu menu -> Scheme -> Edit Scheme -> It comes up with popup -> Select "Run" - -> Select "Arguments" -> Then Environment Variables -> after this click on "+" button set "OS_ACTIVITY_MODE = disable""
I will talk to the team about this issue as well.

@harsukhbir
Copy link

harsukhbir commented Apr 17, 2024

Goto MenuBar and find product -> Goto Menu menu -> Scheme -> Edit Scheme -> It comes up with popup -> Select "Run" - -> Select "Arguments" -> Then Environment Variables -> after this click on "+" button set "OS_ACTIVITY_MODE = disable""
Also tried for solution of background modes

I have tried this solution. But it does not help

@Cniklasson
Copy link
Author

Thank you for the details. The error seems to be related to use of WKWebView with iOS 15. I found this thread, let me know if those suggestions solve the problem: https://forums.developer.apple.com/forums/thread/709919 "Goto MenuBar and find product -> Goto Menu menu -> Scheme -> Edit Scheme -> It comes up with popup -> Select "Run" - -> Select "Arguments" -> Then Environment Variables -> after this click on "+" button set "OS_ACTIVITY_MODE = disable"" I will talk to the team about this issue as well.

@harsukhbir is our developer he have tried this solution but its not working.

@KunJeongPark
Copy link
Collaborator

KunJeongPark commented Apr 18, 2024

Hello, thank you for your patience. We won't be able to get a fix for this issue because this PayPalNativePayments is being deprecated in the near future. I don't know the exact timeline yet, but we are encouraging merchants to use PayPalWebPayments instead.

In the meantime, if you give us your PayPal clientID, we can set it up so that you fall back to web checkout flow within PayPalNativePayments. Our recommendation is to use PayPalWebPayments since you are just integrating.

Thank you.

@KunJeongPark
Copy link
Collaborator

We generally close out issues on one topic and if you have another, you can open another issue.
As soon as you reply to my comment, I will close out this issue and you can open new one to inquire about web fallback option with PayPalNativePayments or integrating PayPalWebPayments.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants