原创文章:转载复制请在明显位置注明来源出处:https://www.jianshu.com/p/dbca5fc22e19
当2020年新冠病毒在全球闹的正欢的时候,苹果也给开发者找了一个事情做:放弃UIWebView,2020年底全面拒绝使用UIWebView API的应用上架(其中新建项目2020年4月开始就拒绝上架)。
否则提交审核的时候会给出这样一个邮件:
由于我们的是新项目,虽然做的时候就注意着UIWebView 的一些API的使用,但是免不了一些三方的UIWebView的扩展等请情况的出现,所以就需要开始对项目进行彻底的排查一下。
下面是我仅供参考的排查步骤:
一、全局搜索UIWebView,搜到自己的代码含有UIWebView的就删除掉,处理好就行。
二、如果一些三方如AFN、WebViewJavascriptBridge等;
1 :比如AFN的处理:podfile 文件
pod 'AFNetworking', :subspecs => ['Serialization', 'Security', 'NSURLSession', 'Reachability'] #此处以Serialization, Security, NSURLSession为例
然后在你的PCH文件:
#import <AFHTTPSessionManager.h>
2:WebViewJavascriptBridge的处理
删除
WebViewJavascriptBridge.h
WebViewJavascriptBridge.m
使用
WebViewJavascriptBridgeBase.h
WebViewJavascriptBridgeBase.m
做完以上两步之后(甚至我都吧注释以及readme都删除了),让领导再次提交,发现还是有问题,于是再次彻底排查:
cd 到根目录:
执行:(注意后面的点,点前有空格)
grep -r UIWebView .
发现还是有问题,具体如下图:
主要是红框里的,把UserInterfaceState.xcuserstate给漏掉了,然后找到、删除!