How to solve ITMS-90809: Deprecated API Usage with ReactNative <0.60 in CI pipeline

Ivan Pagáč
1 min readFeb 29, 2020

For a while I was ignoring the issue described in email from Apple App Store Connect for an application submission as there was no deadline mentioned. However, things changed this week when I saw there deadline mentioned is April 2020.

ITMS-90809: Deprecated API Usage — Apple will stop accepting submissions of apps that use UIWebView APIs starting from April 2020

Ok, I did a quick search and found an article that pointed me in the right way https://medium.com/@NumberShapes/uiwebview-app-store-submission-kickback-issue-bb07d77a902

So, I did a quick bash script to remove the files before build, couple of rm commands and ….. it was not working in CI pipeline.

Here is the thing: If you are removing the files using Xcode, Xcode is modifying the .pbxproj file for you. Records in this file are then used during build/archive phase. As there is no tool to edit the .pbxproj file from the command line I come with a simple solution. Meet your new friend — sed command. SED stands for Stream EDitor.

Now, to complete the round, you just have to remove lines that are matching the pattern RCTWebView, remove the backup and remove the files.

You can build the app with your favorite CI tool.

--

--

Ivan Pagáč

Now: ReactNative developer, app architect, Past: .NET dev, SharePoint Dev