【问题标题】:Apple will stop accepting submissions of apps that use UIWebView APIsApple 将停止接受使用 UIWebView API 的应用提交
【发布时间】:2020-04-09 00:49:55
【问题描述】:

我在 Testflight 中上传了应用程序并收到了包含以下内容的信: ITMS-90809:不推荐使用的 API 使用 - Apple 将停止接受使用 UIWebView API 的应用程序的提交。请参阅https://developer.apple.com/documentation/uikit/uiwebview 了解更多信息。

我重构了我的代码,但项目中仍然有 UIWebView+AFNetworking.h 文件。

我更新了 pod,现在我有了 AFNetworking (3.2.1)

请告诉我,如何从 AFNetworking 中删除 UIWebView。

【问题讨论】:

    标签: ios uiwebview afnetworking deprecated


    【解决方案1】:
    1. 将所有 AFNetworking 源文件复制到主目标中的文件夹中
    2. 从 Podfile 中删除 AFNetworking 条目并运行 Pod Install
    3. 删除文件 UIWebView+AFNetworking.*
    4. 如果您使用 Objective C,您可能需要在某些文件中将导入语法从 #import <AFNetworking/[FileName].h> 更改为:#import "[FileName].h"

    【讨论】:

    • 如果我将 AFNetworking 文件复制到目标目录中,然后安装该 pod,我将获得双重内容。不?请告诉我为什么要复制它?
    • 这个想法是您不使用 pod,而不是 pod,您只需将所有需要的文件复制到您的主要目标。这样您就可以删除 UIWebView 扩展而不会导致构建错误。
    【解决方案2】:

    更新还是删除?

    我遇到了同样的问题。我没有在任何地方的代码中使用 UIWebView,而是检查了两个具有 UIWebView 引用的外部库。所以我不得不删除引用。

    如何找出哪个外部库正在使用 UIWebView?

    $ grep -r "UIWebView" .  //Rookie mistake. Don't forget the . <-(dot)
    

    它会给出一个包含 UIWebView 引用的库列表。

    我在我的案例中找到了 2 个库?

    1. AFNetworking
    2. TwitterKit

    我是如何删除引用的?

    • UIWeb 视图

    似乎新版本已经删除了 UIWebView 引用,所以我将 Podfile 中的 AFNetworking 库更新为最新版本。

    pod 'AFNetworking', '~> 4.0'
    
    • TwitterKit

    TwitterKit 也有对 UIWebView 的引用。但问题是没有可用的新版本,并且他们在两年前正式停止了该库的开发。

    所以我不得不从项目中删除 TwitterKit。为此,我从 Podfile 中删除了 TwitterKit 依赖

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-03
      • 2020-01-03
      • 2020-01-02
      • 1970-01-01
      相关资源
      最近更新 更多