Безопасное удаление UIWebView из проекта ioni c + поддержка iOS 10 - PullRequest
1 голос
/ 25 февраля 2020

Я работаю над проектом ioni c, который использует Cordova и несколько плагинов.

По словам Apple, мы не сможем отправить обновления приложения в ближайшее время, так как в настоящее время мы получаем предупреждение о том, что мы используем UIWebview внутри нашего приложения:

Приложение Магазин больше не будет принимать новые приложения, использующие UIWebView по состоянию на апрель 2020 года, и обновления приложений, использующие UIWebView по состоянию на декабрь 2020 года.

Я провел множество исследований, чтобы выяснить, что конкретно решение, но ничего не кажется ясным. Некоторые люди говорят, что Apple просто обнаруживает, содержит ли весь проект строку, а другие говорят, что они обнаруживают, только если объект объявлен. Во всяком случае, я видел, что Cordova сам содержит некоторое UIWebView (Cordova 9.0.0 - Cordova-lib@9.0.1).

  • Может ли кто-нибудь отправить приложение в App Store Connect без предупреждения?
  • содержит ли проект комментарии UIWebview?
  • Безопасно ли просто заменить UIWebView на WKWebView и только это?
  • Можно ли получить Cordova версию без UIWebview?

У меня также возникает другая проблема, связанная с iOS 10. Для поддержки iOS 10 мы должны использовать cordova-plugin-webview 2.5.1 или менее. (iOS 10 в порядке, но css немного сломан во всем моем приложении). Проблема в том, что рекомендуется обновить этот плагин до 4.X причина UIWebview.

  • Тогда мне интересно, может ли кто-то поддерживать iOS 10 без получения ошибки UIWebview и как?

Вот некоторые конфигурации, которые я установил: - cordova-plugin-webview v4.1.3, - cordova-plugin-inappbrowser v3.2.0, - cordova- ios 5.1.1 - wkwebviewonly to true в конфигурации. xml

Вот некоторые интересные ссылки, которые я нашел:

https://github.com/ionic-team/cordova-plugin-ionic-webview/issues/418

Как удалить компонент UIWebView полностью в текущем проекте?

https://ionicframework.com/blog/understanding-itms-90809-uiwebview-api-deprecation/

Дайте мне знать, если вам нужна дополнительная информация о моей среде.

1 Ответ

0 голосов
/ 26 марта 2020

Это определенно не просто текстовый поиск. UIWebView появляется в моем приложении в нескольких разных местах. Например, это в плагине cordova-plugin-ioni c -webview, который предлагается в качестве решения этой проблемы. Больно пытаться отследить, что конкретно вызывает это в вашем приложении. Я не мог найти другой способ, кроме как многократно вносить изменения в Testflight. Для меня это оказался конденсатор-твиттер, который его загружает. Пропустив это, приложение было принято без предупреждения.

Мой совет - запустить

grep -iRl uiwebview. > uiwebview.instances

, а затем используйте uiwebview.instances в качестве отправной точки.

...