не работает

Issue #118 resolved
Kirill Shalaginov created an issue

я так понял с el capitan вы не работаете?

https://bitbucket.org/tkInc/yandex.radio/issues/116/-----------

Comments (5)

  1. Denis Tkachenko

    проект рабочий с йосемита (10.10), проблема в последних версиях вебкита, которые пришли с обновлениями на эти системы. опишите вашу проблему подробнее, пожалуйста

  2. Kirill Shalaginov reporter

    я же уже описал. пробовал и 134 и 135 и 139 версии но всеравно не работает. может какуюто инструкцию скините?

    macos 10.11.6 (el capitan. последняя доступная для моего macbook). версия программы 2.0.0 (140). как посмотреть webkit? перезапустил webview не помогло

    https://yadi.sk/i/-77VHUO88T1_dQ

  3. Denis Tkachenko

    Проблема в используемой для WKWebWit приложений версии WebKit, она используется с некоторой задержкой от версии основного вебкита в сафари для стабильности. В 10.11 проблема усугубляется снятием с поддержки операционной системы и веб браузера сафари.

    Решение есть, но оно потребует подмены библиотек WebKit и последней доступной для 10.11 версии сафари 11.1.2 (устанавливается через обновление в AppStore), внизу определен порядок действий и два скрипта: для подмены и возврата, если необходимо старых версий.

    Порядок действий: 1. Отключаем SIP, потому что подменяем системные либы. Команда crsutil disable в терминале в recovery режиме. https://osxdaily.com/2015/10/05/disable-rootless-system-integrity-protection-mac-os-x/ 2. После нормальной загрузки системы, в терминале запускаем Скрипт1. он делает проверки на применимость себя и запускает под sudo переименования и создание ссылок, что естественно требует повышение прав текущего пользователя, потому что мы работаем с системными либами. 3. Возвращаем SIP командой crsutil enable в терминале в recovery режиме, аналогично пунку 1

        • Скрипт1: для замены библиотек - - -
    echo Change to StagedFrameworks &&
    if [ ! -d /System/Library/StagedFrameworks/Safari/JavaScriptCore.framework ]; then echo "ERROR StagedFrameworks NOT exist, install Safari from AppStroreUpdate, please"; return 1; fi && echo AllOK
    if [ -d "/System/Library/Frameworks/WebKit.framework.old" ]; then echo "ERROR WebKit.framework.old exist"; return 1; fi && 
    if [ -L "/System/Library/Frameworks/WebKit.framework" ]; then echo "ERROR WebKit.framework is link"; return 1; fi &&  
    echo start renaming to *.old… &&
    sudo mv /System/Library/Frameworks/WebKit.framework /System/Library/Frameworks/WebKit.framework.old &&
    sudo mv /System/Library/Frameworks/JavaScriptCore.framework /System/Library/Frameworks/JavaScriptCore.framework.old &&
    echo rename completed, start create symlinks… &&
    sudo ln -s /System/Library/StagedFrameworks/Safari/JavaScriptCore.framework /System/Library/Frameworks/JavaScriptCore.framework &&
    sudo ln -s /System/Library/StagedFrameworks/Safari/WebKit.framework /System/Library/Frameworks/WebKit.framework &&
    sudo ln -s /System/Library/StagedFrameworks/Safari/WebKitLegacy.framework /System/Library/Frameworks/WebKitLegacy.framework &&
    sudo ln -s /System/Library/StagedFrameworks/Safari/WebCore.framework /System/Library/Frameworks/WebCore.framework &&
    sudo ln -s /System/Library/StagedFrameworks/Safari/WebInspector.framework /System/Library/Frameworks/WebInspector.framework &&
    sudo ln -s /System/Library/StagedFrameworks/Safari/WebInspectorUI.framework /System/Library/Frameworks/WebInspectorUI.framework && 
    echo All OK, completed in /System/Library/Frameworks
    

    Если потребуется вернуть старые WebKit либы – порядок действий аналогичный приведенному выше, только запускаем Скрипт2

        • Скрипт2: для возврата старых библиотек - - -
    echo Return to SystemFrameworks &&
    sudo unlink /System/Library/Frameworks/JavaScriptCore.framework &&
    sudo mv /System/Library/Frameworks/JavaScriptCore.framework.old /System/Library/Frameworks/JavaScriptCore.framework &&
    sudo unlink /System/Library/Frameworks/WebKit.framework &&
    sudo mv /System/Library/Frameworks/WebKit.framework.old /System/Library/Frameworks/WebKit.framework &&
    sudo unlink /System/Library/Frameworks/WebKitLegacy.framework &&
    sudo unlink /System/Library/Frameworks/WebCore.framework &&
    sudo unlink /System/Library/Frameworks/WebInspector.framework &&
    sudo unlink /System/Library/Frameworks/WebInspectorUI.framework && 
    echo All OK, return to SystemFrameworks completed in /System/Library/Frameworks
    

    PS Скрипт написан в одну строку чтобы его можно было просто скопировать (строки между линиями с - - - , не включая их) и запустить

  4. Log in to comment