Update strings

This commit is contained in:
topjohnwu 2019-10-29 07:36:50 -04:00
parent 321d11c2c6
commit f7aa451591
10 changed files with 141 additions and 102 deletions

View File

@ -24,6 +24,7 @@
<string name="advanced_settings_title">Configuració avançada</string> <string name="advanced_settings_title">Configuració avançada</string>
<string name="keep_force_encryption">Mantenir el xifrat forçat</string> <string name="keep_force_encryption">Mantenir el xifrat forçat</string>
<string name="keep_dm_verity">Mantenir AVB 2.0/dm-verity</string> <string name="keep_dm_verity">Mantenir AVB 2.0/dm-verity</string>
<string name="recovery_mode">Mode de Recuperació</string>
<string name="current_installed">Instal·lada: %1$s</string> <string name="current_installed">Instal·lada: %1$s</string>
<string name="latest_version">Última: %1$s</string> <string name="latest_version">Última: %1$s</string>
<string name="uninstall">Desinstal·lar</string> <string name="uninstall">Desinstal·lar</string>
@ -75,12 +76,12 @@
<string name="manager_update_title">Actualització de Magisk Manager disponible!</string> <string name="manager_update_title">Actualització de Magisk Manager disponible!</string>
<!-- Installation --> <!-- Installation -->
<string name="manager_download_install">Prem per descarregar i instalar.</string> <string name="manager_download_install">Premi per baixar i instalar.</string>
<string name="download_zip_only">Descarrega només el ZIP</string> <string name="download_zip_only">Únicament baixa el ZIP</string>
<string name="direct_install">Instal·lació directa (Recomanat)</string> <string name="direct_install">Instal·lació directa (Recomanat)</string>
<string name="install_inactive_slot">Instal·la a la ranura inactiva (Després d\'una OTA)</string> <string name="install_inactive_slot">Instal·la a la ranura inactiva (Després d\'una OTA)</string>
<string name="install_inactive_slot_msg">El teu dispositiu serà FORÇAT a arrancar en l\'actual ranura inactiva després del reinici!\nUtilitza aquesta opció NOMÉS quan l\'OTA s\'hagi fet.\nContinuar?</string> <string name="install_inactive_slot_msg">El teu dispositiu serà FORÇAT a arrancar en l\'actual ranura inactiva després del reinici!\nUtilitza aquesta opció NOMÉS quan l\'OTA s\'hagi fet.\nContinuar?</string>
<string name="select_method">Sel·lecciona mètode</string> <string name="select_method">Sel·lecciona un mètode</string>
<string name="setup_title">Instal·lació addicional</string> <string name="setup_title">Instal·lació addicional</string>
<string name="select_patch_file">Sel·lecciona i arranja un arxiu</string> <string name="select_patch_file">Sel·lecciona i arranja un arxiu</string>
<string name="patch_file_msg">Sel·lecciona una imatge crua (*.img) o un ODIN tarfile (*.tar)</string> <string name="patch_file_msg">Sel·lecciona una imatge crua (*.img) o un ODIN tarfile (*.tar)</string>
@ -109,23 +110,23 @@
<string name="restore_img_msg">Restaurant…</string> <string name="restore_img_msg">Restaurant…</string>
<string name="restore_done">Restauració feta!</string> <string name="restore_done">Restauració feta!</string>
<string name="restore_fail">La còpia de seguretat de Stock no existeix!</string> <string name="restore_fail">La còpia de seguretat de Stock no existeix!</string>
<string name="proprietary_title">Descarrega codi propietari</string> <string name="proprietary_title">Baixar codi propietari</string>
<string name="proprietary_notice">Magisk Manager és codi lliure i no conté codi de l\'API de SafetyNet, ja que és codi propietari de Google.\n\nPot permetre que Magisk Manager descarregui una extensió que conté el GoogleApiClient per poder fer la comprobació de SafetyNet?</string> <string name="proprietary_notice">Magisk Manager és codi lliure i no conté codi de l\'API de SafetyNet, ja que és codi propietari de Google.\n\nPot permetre que Magisk Manager baixi una extensió que conté el GoogleApiClient per poder fer la comprobació de SafetyNet?</string>
<string name="setup_fail">Instal·lació fallida.</string> <string name="setup_fail">Instal·lació fallida.</string>
<string name="env_fix_title">Es requereix instal·lació addicional</string> <string name="env_fix_title">Es requereix instal·lació addicional</string>
<string name="env_fix_msg">El teu dispositiu necessita instal·lació addicional per Magisk per funcionar correctament. Es descarregarà el ZIP d\'instal·lació de Magisk , vol procedir a l\'instalació ara?</string> <string name="env_fix_msg">El teu dispositiu necessita instal·lació addicional per Magisk per funcionar correctament. Es baixarà el ZIP d\'instal·lació de Magisk , vol procedir a l\'instalació ara?</string>
<string name="setup_msg">S\'està executant la configuració de l\'entorn…</string> <string name="setup_msg">S\'està executant la configuració de l\'entorn…</string>
<!--Settings Activity --> <!--Settings Activity -->
<string name="settings_general_category">General</string> <string name="settings_general_category">General</string>
<string name="settings_dark_theme_title">Tema obscur</string> <string name="settings_dark_theme_title">Tema fosc</string>
<string name="settings_dark_theme_summary">Habilitar el tema obscur</string> <string name="settings_dark_theme_summary">Habilitar el tema fosc</string>
<string name="settings_download_path_title">Directori de descàrrega</string> <string name="settings_download_path_title">Directori de baixades</string>
<string name="settings_download_path_message">Els arxius es desaràn a %1$s</string> <string name="settings_download_path_message">Els arxius es desaràn a %1$s</string>
<string name="settings_clear_cache_title">Netejar memòria cau del repositori</string> <string name="settings_clear_cache_title">Netejar memòria cau del repositori</string>
<string name="settings_clear_cache_summary">Neteja l\'informació en memòria cau per als repositoris en línia, força a l\'aplicació a actualitzar-se en línia.</string> <string name="settings_clear_cache_summary">Neteja l\'informació en memòria cau per als repositoris en línia, força a l\'aplicació a actualitzar-se en línia.</string>
<string name="settings_hide_manager_title">Amagar Magisk Manager</string> <string name="settings_hide_manager_title">Amagar Magisk Manager</string>
<string name="settings_hide_manager_summary">Re-empaquetar Magisk Manager amb un nom de paquet a l\'atzar</string> <string name="settings_hide_manager_summary">Reempaquetar Magisk Manager amb un nom de paquet a l\'atzar</string>
<string name="settings_restore_manager_title">Restaurar Magisk Manager</string> <string name="settings_restore_manager_title">Restaurar Magisk Manager</string>
<string name="settings_restore_manager_summary">Restaura Magisk Manager amb el nom de paquet original</string> <string name="settings_restore_manager_summary">Restaura Magisk Manager amb el nom de paquet original</string>
<string name="language">Idioma</string> <string name="language">Idioma</string>
@ -145,6 +146,10 @@
<string name="settings_hosts_summary">Suport per aplicacions tipus Adblock fora de la partició del sistema</string> <string name="settings_hosts_summary">Suport per aplicacions tipus Adblock fora de la partició del sistema</string>
<string name="settings_hosts_toast">Agregat el mòdul Systemless Hosts</string> <string name="settings_hosts_toast">Agregat el mòdul Systemless Hosts</string>
<string name="settings_app_name">Escriu el nom desitjat per l\'App</string>
<string name="settings_app_name_hint">Nou nom</string>
<string name="settings_app_name_helper">Es refarà l\'App amb aquest nom</string>
<string name="settings_app_name_error">Format invàl·lid</string>
<string name="settings_su_app_adb">Aplicacions y ADB</string> <string name="settings_su_app_adb">Aplicacions y ADB</string>
<string name="settings_su_app">Només aplicacions</string> <string name="settings_su_app">Només aplicacions</string>
<string name="settings_su_adb">Només ADB</string> <string name="settings_su_adb">Només ADB</string>
@ -160,8 +165,8 @@
<string name="request_timeout">Temps de petició</string> <string name="request_timeout">Temps de petició</string>
<string name="superuser_notification">Notificació de superusuari</string> <string name="superuser_notification">Notificació de superusuari</string>
<string name="request_timeout_summary">%1$d segons</string> <string name="request_timeout_summary">%1$d segons</string>
<string name="settings_su_reauth_title">Re-autenticació</string> <string name="settings_su_reauth_title">Demanar després d\'una actualització</string>
<string name="settings_su_reauth_summary">Demanar permisos de superusuari novament si una aplicació es actualitzada o reinstal·lada</string> <string name="settings_su_reauth_summary">Demanar permisos de superusuari novament si una aplicació és actualitzada o reinstal·lada</string>
<string name="settings_su_fingerprint_title">Autenticació per Empremta Dactilar</string> <string name="settings_su_fingerprint_title">Autenticació per Empremta Dactilar</string>
<string name="settings_su_fingerprint_summary">Utilitza el sensor d\'Empremta Dactilar per permetre les sol·licituds de superusuari</string> <string name="settings_su_fingerprint_summary">Utilitza el sensor d\'Empremta Dactilar per permetre les sol·licituds de superusuari</string>
<string name="auth_fingerprint">Autenticar Emprempta Digital</string> <string name="auth_fingerprint">Autenticar Emprempta Digital</string>

View File

@ -18,18 +18,18 @@
<string name="checking_safetyNet_status">Проверка статуса SafetyNet…</string> <string name="checking_safetyNet_status">Проверка статуса SafetyNet…</string>
<string name="safetyNet_check_success">Результат проверки SafetyNet</string> <string name="safetyNet_check_success">Результат проверки SafetyNet</string>
<string name="safetyNet_api_error">Ошибка SafetyNet API</string> <string name="safetyNet_api_error">Ошибка SafetyNet API</string>
<string name="safetyNet_res_invalid">Некорректный ответ.</string> <string name="safetyNet_res_invalid">Некорректный ответ</string>
<string name="magisk_up_to_date">Magisk актуален</string> <string name="magisk_up_to_date">Magisk актуален</string>
<string name="manager_up_to_date">Magisk Manager актуален</string> <string name="manager_up_to_date">Magisk Manager актуален</string>
<string name="advanced_settings_title">Расширенные опции</string> <string name="advanced_settings_title">Расширенные опции</string>
<string name="keep_force_encryption">Сохранить принудительное шифрование</string> <string name="keep_force_encryption">Не отключать шифрование /data</string>
<string name="keep_dm_verity">Сохранить AVB 2.0/dm-verity</string> <string name="keep_dm_verity">Не отключать AVB 2.0/dm-verity</string>
<string name="recovery_mode">Режим Recovery</string> <string name="recovery_mode">Режим установки в recovery</string>
<string name="current_installed">Установлена: %1$s</string> <string name="current_installed">Установлен: %1$s</string>
<string name="latest_version">Последняя: %1$s</string> <string name="latest_version">Последний: %1$s</string>
<string name="uninstall">Удаление</string> <string name="uninstall">Удаление</string>
<string name="uninstall_magisk_title">Удаление Magisk</string> <string name="uninstall_magisk_title">Удаление Magisk</string>
<string name="uninstall_magisk_msg">Все модули будут отключены/удалены. Root-права будут удалены. Шифрование будет активировано.</string> <string name="uninstall_magisk_msg">Все модули будут отключены/удалены!\nRoot-права будут удалены!\nШифрование будет активировано!</string>
<string name="update">Обновить</string> <string name="update">Обновить</string>
<string name="core_only_enabled">(Активирован режим Magisk Core)</string> <string name="core_only_enabled">(Активирован режим Magisk Core)</string>
@ -76,14 +76,14 @@
<string name="manager_update_title">Доступно обновление Magisk Manager!</string> <string name="manager_update_title">Доступно обновление Magisk Manager!</string>
<!-- Installation --> <!-- Installation -->
<string name="manager_download_install">Нажмите, чтобы загрузить и установить.</string> <string name="manager_download_install">Нажмите, чтобы загрузить и установить</string>
<string name="download_zip_only">Загрузка установочного ZIP</string> <string name="download_zip_only">Только загрузка ZIP</string>
<string name="direct_install">Прямая установка (Рекомендуется)</string> <string name="direct_install">Прямая установка (Рекомендуется)</string>
<string name="install_inactive_slot">Установка в неактивный слот (После OTA)</string> <string name="install_inactive_slot">Установка во второй слот (OTA)</string>
<string name="install_inactive_slot_msg">Ваше устройство будет принудительно перезагружено в неактивный слот!\nИспользуйте эту опцию только при установке OTA.\nПродолжить?</string> <string name="install_inactive_slot_msg">Ваше устройство будет принудительно перезагружено в неактивный (противоположный) слот!\nИспользуйте эту опцию только при интеграции после OTA.\nПродолжить?</string>
<string name="select_method">Выбор способа</string> <string name="select_method">Выбор способа</string>
<string name="setup_title">Дополнительная установка</string> <string name="setup_title">Дополнительная установка</string>
<string name="select_patch_file">Выбрать и пропатчить файл</string> <string name="select_patch_file">Вручную пропатчить образ</string>
<string name="patch_file_msg">Выберите файл образа (*.img) или архив ODIN (*.tar)</string> <string name="patch_file_msg">Выберите файл образа (*.img) или архив ODIN (*.tar)</string>
<string name="reboot_delay_toast">Перезагрузка через 5 секунд…</string> <string name="reboot_delay_toast">Перезагрузка через 5 секунд…</string>
@ -92,7 +92,7 @@
<string name="repo_install_msg">Установить %1$s ?</string> <string name="repo_install_msg">Установить %1$s ?</string>
<string name="download">Скачать</string> <string name="download">Скачать</string>
<string name="reboot">Перезагрузка</string> <string name="reboot">Перезагрузка</string>
<string name="settings_reboot_toast">Для применения настроек перезагрузите устройство.</string> <string name="settings_reboot_toast">Для применения настроек перезагрузите устройство</string>
<string name="release_notes">О версии</string> <string name="release_notes">О версии</string>
<string name="repo_cache_cleared">Кэш репозитория очищен</string> <string name="repo_cache_cleared">Кэш репозитория очищен</string>
@ -101,9 +101,9 @@
<string name="flashing">Прошивка…</string> <string name="flashing">Прошивка…</string>
<string name="done">Завершено!</string> <string name="done">Завершено!</string>
<string name="failure">Ошибка</string> <string name="failure">Ошибка</string>
<string name="hide_manager_title">Маскировка Magisk Manager…</string> <string name="hide_manager_title">Скрытие Magisk Manager…</string>
<string name="hide_manager_fail_toast">Не удалось пересобрать Magisk Manager</string> <string name="hide_manager_fail_toast">Не удалось пересобрать Magisk Manager</string>
<string name="open_link_failed_toast">Не найдено приложений для открытия ссылки.</string> <string name="open_link_failed_toast">Не найдено приложений для открытия ссылки</string>
<string name="warning">Предупреждение</string> <string name="warning">Предупреждение</string>
<string name="complete_uninstall">Полное удаление</string> <string name="complete_uninstall">Полное удаление</string>
<string name="restore_img">Восстановить разделы</string> <string name="restore_img">Восстановить разделы</string>
@ -111,8 +111,8 @@
<string name="restore_done">Восстановление завершено!</string> <string name="restore_done">Восстановление завершено!</string>
<string name="restore_fail">Резервная копия отсутствует!</string> <string name="restore_fail">Резервная копия отсутствует!</string>
<string name="proprietary_title">Загрузка SafetyNet</string> <string name="proprietary_title">Загрузка SafetyNet</string>
<string name="proprietary_notice">Magisk Manager — свободно распространяемый продукт, он не содержит собственный код SafetyNet API от Google.\n\nРазрешить Magisk Manager загрузить расширение для проверки SafetyNet? (содержит GoogleApiClient)</string> <string name="proprietary_notice">Magisk Manager — проект с открытым исходным кодом и не содержит проприетарный код SafetyNet API от Google.\n\nРазрешить Magisk Manager загрузить расширение для проверки SafetyNet? (содержит GoogleApiClient)</string>
<string name="setup_fail">Ошибка установки.</string> <string name="setup_fail">Ошибка установки</string>
<string name="env_fix_title">Требуется дополнительная установка</string> <string name="env_fix_title">Требуется дополнительная установка</string>
<string name="env_fix_msg">Вашему устройству требуется дополнительная установка Magisk для корректной работы. Будет загружен установочный ZIP Magisk, продолжить?</string> <string name="env_fix_msg">Вашему устройству требуется дополнительная установка Magisk для корректной работы. Будет загружен установочный ZIP Magisk, продолжить?</string>
<string name="setup_msg">Настройка рабочей среды…</string> <string name="setup_msg">Настройка рабочей среды…</string>
@ -120,32 +120,36 @@
<!--Settings Activity --> <!--Settings Activity -->
<string name="settings_general_category">Основные</string> <string name="settings_general_category">Основные</string>
<string name="settings_dark_theme_title">Тёмная тема</string> <string name="settings_dark_theme_title">Тёмная тема</string>
<string name="settings_dark_theme_summary">Включить тёмное оформление.</string> <string name="settings_dark_theme_summary">Включить тёмное оформление</string>
<string name="settings_download_path_title">Папка загрузки</string> <string name="settings_download_path_title">Папка загрузки</string>
<string name="settings_download_path_message">Файлы будут загружаться в %1$s</string> <string name="settings_download_path_message">Файлы будут загружаться в %1$s</string>
<string name="settings_clear_cache_title">Очистка кэша репозитория</string> <string name="settings_clear_cache_title">Очистка кэша репозитория</string>
<string name="settings_clear_cache_summary">Очистить кэш репозитория. Будет загружен заново.</string> <string name="settings_clear_cache_summary">Очистить кэш репозитория. Будет загружен заново</string>
<string name="settings_hide_manager_title">Маскировка Magisk Manager</string> <string name="settings_hide_manager_title">Скрытие Magisk Manager</string>
<string name="settings_hide_manager_summary">Пересобрать Magisk Manager со случайным именем пакета.</string> <string name="settings_hide_manager_summary">Пересобрать Magisk Manager со случайным названием и именем пакета</string>
<string name="settings_restore_manager_title">Восстановление Magisk Manager</string> <string name="settings_restore_manager_title">Восстановление Magisk Manager</string>
<string name="settings_restore_manager_summary">Восстановить Magisk Manager с исходным именем пакета.</string> <string name="settings_restore_manager_summary">Восстановить Magisk Manager с исходным названием и именем пакета</string>
<string name="language">Язык</string> <string name="language">Язык</string>
<string name="system_default">По умолчанию (Системный)</string> <string name="system_default">По умолчанию (Системный)</string>
<string name="settings_update">Настройки обновлений</string> <string name="settings_update">Настройки обновлений</string>
<string name="settings_check_update_title">Проверка обновлений</string> <string name="settings_check_update_title">Проверка обновлений</string>
<string name="settings_check_update_summary">Периодически проверять наличие обновлений в фоновом режиме.</string> <string name="settings_check_update_summary">Периодически проверять наличие обновлений в фоновом режиме</string>
<string name="settings_update_channel_title">Источник обновлений</string> <string name="settings_update_channel_title">Источник обновлений</string>
<string name="settings_update_stable">Стабильный канал</string> <string name="settings_update_stable">Стабильный канал</string>
<string name="settings_update_beta">Beta канал</string> <string name="settings_update_beta">Beta канал</string>
<string name="settings_update_custom">Сторонний канал</string> <string name="settings_update_custom">Сторонний канал</string>
<string name="settings_update_custom_msg">Укажите ссылку</string> <string name="settings_update_custom_msg">Укажите ссылку</string>
<string name="settings_core_only_title">Magisk Core</string> <string name="settings_core_only_title">Magisk Core</string>
<string name="settings_core_only_summary">Активировать только основные возможности. Модули не будут загружены. MagiskSU и Magisk Hide останутся активными.</string> <string name="settings_core_only_summary">Активировать только основные возможности. Модули не будут загружены. MagiskSU и Magisk Hide останутся активными</string>
<string name="settings_magiskhide_summary">Скрыть Magisk от различных обнаружений.</string> <string name="settings_magiskhide_summary">Скрывать Magisk от различных обнаружений</string>
<string name="settings_hosts_title">Внесистемные хосты</string> <string name="settings_hosts_title">Внесистемные хосты</string>
<string name="settings_hosts_summary">Поддержка внесистемных хостов для приложений, блокирующих рекламу.</string> <string name="settings_hosts_summary">Поддержка внесистемных хостов для приложений, блокирующих рекламу</string>
<string name="settings_hosts_toast">Добавлен модуль внесистемных хостов</string> <string name="settings_hosts_toast">Добавлен модуль внесистемных хостов</string>
<string name="settings_app_name">Укажите имя приложения</string>
<string name="settings_app_name_hint">Новое имя</string>
<string name="settings_app_name_helper">Приложение будет пересобрано с этим именем</string>
<string name="settings_app_name_error">Некорректный формат</string>
<string name="settings_su_app_adb">Приложения и ADB</string> <string name="settings_su_app_adb">Приложения и ADB</string>
<string name="settings_su_app">Только приложения</string> <string name="settings_su_app">Только приложения</string>
<string name="settings_su_adb">Только ADB</string> <string name="settings_su_adb">Только ADB</string>
@ -162,18 +166,18 @@
<string name="superuser_notification">Уведомления суперпользователя</string> <string name="superuser_notification">Уведомления суперпользователя</string>
<string name="request_timeout_summary">%1$d секунд</string> <string name="request_timeout_summary">%1$d секунд</string>
<string name="settings_su_reauth_title">Повторная аутентификация</string> <string name="settings_su_reauth_title">Повторная аутентификация</string>
<string name="settings_su_reauth_summary">Повторный запрос прав суперпользователя после обновления приложений.</string> <string name="settings_su_reauth_summary">Повторный запрос прав суперпользователя после обновления приложений</string>
<string name="settings_su_fingerprint_title">Биометрическая аутентификация</string> <string name="settings_su_fingerprint_title">Биометрическая аутентификация</string>
<string name="settings_su_fingerprint_summary">Использовать сканер отпечатков пальцев для запросов прав суперпользователя.</string> <string name="settings_su_fingerprint_summary">Использовать сканер отпечатков пальцев для запросов прав суперпользователя</string>
<string name="auth_fingerprint">Аутентифицировать отпечаток пальца</string> <string name="auth_fingerprint">Подтвердите отпечаток пальца</string>
<string name="multiuser_mode">Многопользовательский режим</string> <string name="multiuser_mode">Многопользовательский режим</string>
<string name="settings_owner_only">Только владелец</string> <string name="settings_owner_only">Только владелец</string>
<string name="settings_owner_manage">Регулировка владельцем</string> <string name="settings_owner_manage">Регулировка владельцем</string>
<string name="settings_user_independent">Правила пользователей</string> <string name="settings_user_independent">Правила пользователей</string>
<string name="owner_only_summary">Только владелец имеет Root-доступ.</string> <string name="owner_only_summary">Только владелец имеет Root-доступ</string>
<string name="owner_manage_summary">Только владелец управляет Root-доступом и обрабатывает запросы.</string> <string name="owner_manage_summary">Только владелец управляет Root-доступом и обрабатывает запросы</string>
<string name="user_indepenent_summary">Каждый пользователь имеет свои собственные правила Root-доступа.</string> <string name="user_indepenent_summary">Каждый пользователь имеет свои собственные правила Root-доступа</string>
<string name="mount_namespace_mode">Настройка пространств имён</string> <string name="mount_namespace_mode">Настройка пространств имён</string>
<string name="settings_ns_global">Общее пространство имён</string> <string name="settings_ns_global">Общее пространство имён</string>
@ -187,12 +191,12 @@
<!--Superuser--> <!--Superuser-->
<string name="su_request_title">Запрос прав суперпользователя</string> <string name="su_request_title">Запрос прав суперпользователя</string>
<string name="deny">Отказать</string> <string name="deny">Запретить</string>
<string name="prompt">Запрос</string> <string name="prompt">Запрос</string>
<string name="grant">Предоставить</string> <string name="grant">Разрешить</string>
<string name="su_warning">Предоставить полный доступ к устройству.\nЕсли не уверены - отклоните данное действие!</string> <string name="su_warning">Разрешить полный доступ к устройству?\nЕсли не уверены - отклоните данное действие!</string>
<string name="forever">Навсегда</string> <string name="forever">Навсегда</string>
<string name="once">Сейчас</string> <string name="once">Единожды</string>
<string name="tenmin">10 мин.</string> <string name="tenmin">10 мин.</string>
<string name="twentymin">20 мин.</string> <string name="twentymin">20 мин.</string>
<string name="thirtymin">30 мин.</string> <string name="thirtymin">30 мин.</string>
@ -218,6 +222,6 @@
<string name="command">Команда: %1$s</string> <string name="command">Команда: %1$s</string>
<!-- MagiskHide --> <!-- MagiskHide -->
<string name="show_system_app">Показать системные приложения</string> <string name="show_system_app">Системные приложения</string>
</resources> </resources>

View File

@ -18,7 +18,7 @@
<string name="checking_safetyNet_status">Checking SafetyNet status…</string> <string name="checking_safetyNet_status">Checking SafetyNet status…</string>
<string name="safetyNet_check_success">SafetyNet Check Success</string> <string name="safetyNet_check_success">SafetyNet Check Success</string>
<string name="safetyNet_api_error">SafetyNet API Error</string> <string name="safetyNet_api_error">SafetyNet API Error</string>
<string name="safetyNet_res_invalid">The response is invalid.</string> <string name="safetyNet_res_invalid">The response is invalid</string>
<string name="magisk_up_to_date">Magisk is up to date</string> <string name="magisk_up_to_date">Magisk is up to date</string>
<string name="manager_up_to_date">Magisk Manager is up to date</string> <string name="manager_up_to_date">Magisk Manager is up to date</string>
<string name="advanced_settings_title">Advanced Settings</string> <string name="advanced_settings_title">Advanced Settings</string>
@ -29,7 +29,7 @@
<string name="latest_version">Latest: %1$s</string> <string name="latest_version">Latest: %1$s</string>
<string name="uninstall">Uninstall</string> <string name="uninstall">Uninstall</string>
<string name="uninstall_magisk_title">Uninstall Magisk</string> <string name="uninstall_magisk_title">Uninstall Magisk</string>
<string name="uninstall_magisk_msg">All modules will be disabled/removed. Root will be removed, and your data potentially encrypted if not already.</string> <string name="uninstall_magisk_msg">All modules will be disabled/removed!\nRoot will be removed!\nYour data potentially encrypted if not already!</string>
<string name="update">Update</string> <string name="update">Update</string>
<string name="core_only_enabled">(Core only mode enabled)</string> <string name="core_only_enabled">(Core only mode enabled)</string>
@ -76,7 +76,7 @@
<string name="manager_update_title">Magisk Manager Update Available!</string> <string name="manager_update_title">Magisk Manager Update Available!</string>
<!-- Installation --> <!-- Installation -->
<string name="manager_download_install">Press to download and install.</string> <string name="manager_download_install">Press to download and install</string>
<string name="download_zip_only">Download Zip Only</string> <string name="download_zip_only">Download Zip Only</string>
<string name="direct_install">Direct Install (Recommended)</string> <string name="direct_install">Direct Install (Recommended)</string>
<string name="install_inactive_slot">Install to Inactive Slot (After OTA)</string> <string name="install_inactive_slot">Install to Inactive Slot (After OTA)</string>
@ -92,7 +92,7 @@
<string name="repo_install_msg">Do you want to install %1$s now?</string> <string name="repo_install_msg">Do you want to install %1$s now?</string>
<string name="download">Download</string> <string name="download">Download</string>
<string name="reboot">Reboot</string> <string name="reboot">Reboot</string>
<string name="settings_reboot_toast">Reboot to apply settings.</string> <string name="settings_reboot_toast">Reboot to apply settings</string>
<string name="release_notes">Release notes</string> <string name="release_notes">Release notes</string>
<string name="repo_cache_cleared">Repo cache cleared</string> <string name="repo_cache_cleared">Repo cache cleared</string>
@ -103,7 +103,7 @@
<string name="failure">Failed</string> <string name="failure">Failed</string>
<string name="hide_manager_title">Hiding Magisk Manager…</string> <string name="hide_manager_title">Hiding Magisk Manager…</string>
<string name="hide_manager_fail_toast">Hide Magisk Manager failed.</string> <string name="hide_manager_fail_toast">Hide Magisk Manager failed.</string>
<string name="open_link_failed_toast">No application found to open the link.</string> <string name="open_link_failed_toast">No application found to open the link</string>
<string name="warning">Warning</string> <string name="warning">Warning</string>
<string name="complete_uninstall">Complete Uninstall</string> <string name="complete_uninstall">Complete Uninstall</string>
<string name="restore_img">Restore Images</string> <string name="restore_img">Restore Images</string>
@ -112,7 +112,7 @@
<string name="restore_fail">Stock backup does not exist!</string> <string name="restore_fail">Stock backup does not exist!</string>
<string name="proprietary_title">Download Proprietary Code</string> <string name="proprietary_title">Download Proprietary Code</string>
<string name="proprietary_notice">Magisk Manager is FOSS and doesn\'t contain Google\'s proprietary SafetyNet API code.\n\nWill you allow Magisk Manager to download an extension (contains GoogleApiClient) for SafetyNet checks?</string> <string name="proprietary_notice">Magisk Manager is FOSS and doesn\'t contain Google\'s proprietary SafetyNet API code.\n\nWill you allow Magisk Manager to download an extension (contains GoogleApiClient) for SafetyNet checks?</string>
<string name="setup_fail">Setup failed.</string> <string name="setup_fail">Setup failed</string>
<string name="env_fix_title">Requires Additional Setup</string> <string name="env_fix_title">Requires Additional Setup</string>
<string name="env_fix_msg">Your device needs additional setup for Magisk to work properly. It will download the Magisk setup zip, do you want to proceed now?</string> <string name="env_fix_msg">Your device needs additional setup for Magisk to work properly. It will download the Magisk setup zip, do you want to proceed now?</string>
<string name="setup_msg">Running environment setup…</string> <string name="setup_msg">Running environment setup…</string>
@ -120,30 +120,30 @@
<!--Settings Activity --> <!--Settings Activity -->
<string name="settings_general_category">General</string> <string name="settings_general_category">General</string>
<string name="settings_dark_theme_title">Dark Theme</string> <string name="settings_dark_theme_title">Dark Theme</string>
<string name="settings_dark_theme_summary">Enable dark theme.</string> <string name="settings_dark_theme_summary">Enable dark theme</string>
<string name="settings_download_path_title">Download path</string> <string name="settings_download_path_title">Download path</string>
<string name="settings_download_path_message">Files will be saved to %1$s</string> <string name="settings_download_path_message">Files will be saved to %1$s</string>
<string name="settings_clear_cache_title">Clear Repo Cache</string> <string name="settings_clear_cache_title">Clear Repo Cache</string>
<string name="settings_clear_cache_summary">Clear the cached information for online repos. This forces the app to refresh online.</string> <string name="settings_clear_cache_summary">Clear the cached information for online repos. This forces the app to refresh online</string>
<string name="settings_hide_manager_title">Hide Magisk Manager</string> <string name="settings_hide_manager_title">Hide Magisk Manager</string>
<string name="settings_hide_manager_summary">Repackage Magisk Manager with random package name.</string> <string name="settings_hide_manager_summary">Repackage Magisk Manager with random package and app names</string>
<string name="settings_restore_manager_title">Restore Magisk Manager</string> <string name="settings_restore_manager_title">Restore Magisk Manager</string>
<string name="settings_restore_manager_summary">Restore Magisk Manager with original package</string> <string name="settings_restore_manager_summary">Restore Magisk Manager with original package and app names</string>
<string name="language">Language</string> <string name="language">Language</string>
<string name="system_default">(System Default)</string> <string name="system_default">(System Default)</string>
<string name="settings_update">Update Settings</string> <string name="settings_update">Update Settings</string>
<string name="settings_check_update_title">Check Updates</string> <string name="settings_check_update_title">Check Updates</string>
<string name="settings_check_update_summary">Periodically check for updates in the background.</string> <string name="settings_check_update_summary">Periodically check for updates in the background</string>
<string name="settings_update_channel_title">Update Channel</string> <string name="settings_update_channel_title">Update Channel</string>
<string name="settings_update_stable">Stable</string> <string name="settings_update_stable">Stable</string>
<string name="settings_update_beta">Beta</string> <string name="settings_update_beta">Beta</string>
<string name="settings_update_custom">Custom</string> <string name="settings_update_custom">Custom</string>
<string name="settings_update_custom_msg">Insert a custom URL</string> <string name="settings_update_custom_msg">Insert a custom URL</string>
<string name="settings_core_only_title">Magisk Core Only Mode</string> <string name="settings_core_only_title">Magisk Core Only Mode</string>
<string name="settings_core_only_summary">Enable only core features. MagiskSU and MagiskHide will still be enabled, but no modules will be loaded.</string> <string name="settings_core_only_summary">Enable only core features. MagiskSU and MagiskHide will still be enabled, but no modules will be loaded</string>
<string name="settings_magiskhide_summary">Hide Magisk from various forms of detection.</string> <string name="settings_magiskhide_summary">Hide Magisk from various forms of detection</string>
<string name="settings_hosts_title">Systemless hosts</string> <string name="settings_hosts_title">Systemless hosts</string>
<string name="settings_hosts_summary">Systemless hosts support for Adblock apps.</string> <string name="settings_hosts_summary">Systemless hosts support for Adblock apps</string>
<string name="settings_hosts_toast">Added systemless hosts module</string> <string name="settings_hosts_toast">Added systemless hosts module</string>
<string name="settings_app_name">Type desired app name</string> <string name="settings_app_name">Type desired app name</string>
@ -175,18 +175,18 @@
<string name="settings_owner_only">Device Owner Only</string> <string name="settings_owner_only">Device Owner Only</string>
<string name="settings_owner_manage">Device Owner Managed</string> <string name="settings_owner_manage">Device Owner Managed</string>
<string name="settings_user_independent">User-Independent</string> <string name="settings_user_independent">User-Independent</string>
<string name="owner_only_summary">Only owner has root access.</string> <string name="owner_only_summary">Only owner has root access</string>
<string name="owner_manage_summary">Only owner can manage root access and receive request prompts.</string> <string name="owner_manage_summary">Only owner can manage root access and receive request prompts</string>
<string name="user_indepenent_summary">Each user has his/her own separate root rules.</string> <string name="user_indepenent_summary">Each user has his/her own separate root rules</string>
<string name="mount_namespace_mode">Mount Namespace Mode</string> <string name="mount_namespace_mode">Mount Namespace Mode</string>
<string name="settings_ns_global">Global Namespace</string> <string name="settings_ns_global">Global Namespace</string>
<string name="settings_ns_requester">Inherit Namespace</string> <string name="settings_ns_requester">Inherit Namespace</string>
<string name="settings_ns_isolate">Isolated Namespace</string> <string name="settings_ns_isolate">Isolated Namespace</string>
<string name="global_summary">All root sessions use the global mount namespace.</string> <string name="global_summary">All root sessions use the global mount namespace</string>
<string name="requester_summary">Root sessions will inherit their requester\'s namespace.</string> <string name="requester_summary">Root sessions will inherit their requester\'s namespace</string>
<string name="isolate_summary">Each root session will have its own isolated namespace.</string> <string name="isolate_summary">Each root session will have its own isolated namespace</string>
<string name="disable_fingerprint">No fingerprints were set or no device support.</string> <string name="disable_fingerprint">No fingerprints were set or no device support</string>
<string name="settings_download_path_error">Error creating folder. It must be accessible from storage root directory and must not be a file.</string> <string name="settings_download_path_error">Error creating folder. It must be accessible from storage root directory and must not be a file.</string>
<!--Superuser--> <!--Superuser-->

View File

@ -15,8 +15,6 @@ import com.topjohnwu.magisk.utils.DynamicClassLoader;
import java.io.File; import java.io.File;
import java.lang.reflect.Method; import java.lang.reflect.Method;
import static com.topjohnwu.magisk.DownloadActivity.TAG;
public class DelegateApplication extends Application { public class DelegateApplication extends Application {
static File MANAGER_APK; static File MANAGER_APK;
@ -36,7 +34,7 @@ public class DelegateApplication extends Application {
if (Build.VERSION.SDK_INT >= 28) { if (Build.VERSION.SDK_INT >= 28) {
setUpDynAPK(); setUpDynAPK();
} else { } else {
MANAGER_APK = new File(base.getCacheDir(), "manager.apk"); MANAGER_APK = new File(base.getCacheDir(), "app.apk");
} }
} }
@ -72,7 +70,7 @@ public class DelegateApplication extends Application {
factory.delegate = (AppComponentFactory) df; factory.delegate = (AppComponentFactory) df;
factory.loader = cl; factory.loader = cl;
} catch (Exception e) { } catch (Exception e) {
Log.e(TAG, "dyn load", e); Log.e(getClass().getSimpleName(), "", e);
MANAGER_APK.delete(); MANAGER_APK.delete();
} }
} }

View File

@ -8,7 +8,6 @@ import android.app.Service;
import android.content.BroadcastReceiver; import android.content.BroadcastReceiver;
import android.content.ContentProvider; import android.content.ContentProvider;
import android.content.Intent; import android.content.Intent;
import android.util.Log;
import com.topjohnwu.magisk.dummy.DummyActivity; import com.topjohnwu.magisk.dummy.DummyActivity;
import com.topjohnwu.magisk.dummy.DummyProvider; import com.topjohnwu.magisk.dummy.DummyProvider;
@ -16,8 +15,6 @@ import com.topjohnwu.magisk.dummy.DummyReceiver;
import com.topjohnwu.magisk.dummy.DummyService; import com.topjohnwu.magisk.dummy.DummyService;
import com.topjohnwu.magisk.obfuscate.Mapping; import com.topjohnwu.magisk.obfuscate.Mapping;
import static com.topjohnwu.magisk.DownloadActivity.TAG;
@SuppressLint("NewApi") @SuppressLint("NewApi")
public class DelegateComponentFactory extends AppComponentFactory { public class DelegateComponentFactory extends AppComponentFactory {
@ -27,14 +24,12 @@ public class DelegateComponentFactory extends AppComponentFactory {
@Override @Override
public Application instantiateApplication(ClassLoader cl, String className) { public Application instantiateApplication(ClassLoader cl, String className) {
if (loader == null) loader = cl; if (loader == null) loader = cl;
Log.d(TAG, className);
return new DelegateApplication(this); return new DelegateApplication(this);
} }
@Override @Override
public Activity instantiateActivity(ClassLoader cl, String className, Intent intent) public Activity instantiateActivity(ClassLoader cl, String className, Intent intent)
throws ClassNotFoundException, IllegalAccessException, InstantiationException { throws ClassNotFoundException, IllegalAccessException, InstantiationException {
Log.d(TAG, className);
if (delegate != null) if (delegate != null)
return delegate.instantiateActivity(loader, Mapping.get(className), intent); return delegate.instantiateActivity(loader, Mapping.get(className), intent);
return create(className, DummyActivity.class); return create(className, DummyActivity.class);
@ -43,7 +38,6 @@ public class DelegateComponentFactory extends AppComponentFactory {
@Override @Override
public BroadcastReceiver instantiateReceiver(ClassLoader cl, String className, Intent intent) public BroadcastReceiver instantiateReceiver(ClassLoader cl, String className, Intent intent)
throws ClassNotFoundException, IllegalAccessException, InstantiationException { throws ClassNotFoundException, IllegalAccessException, InstantiationException {
Log.d(TAG, className);
if (delegate != null) if (delegate != null)
return delegate.instantiateReceiver(loader, Mapping.get(className), intent); return delegate.instantiateReceiver(loader, Mapping.get(className), intent);
return create(className, DummyReceiver.class); return create(className, DummyReceiver.class);
@ -52,7 +46,6 @@ public class DelegateComponentFactory extends AppComponentFactory {
@Override @Override
public Service instantiateService(ClassLoader cl, String className, Intent intent) public Service instantiateService(ClassLoader cl, String className, Intent intent)
throws ClassNotFoundException, IllegalAccessException, InstantiationException { throws ClassNotFoundException, IllegalAccessException, InstantiationException {
Log.d(TAG, className);
if (delegate != null) if (delegate != null)
return delegate.instantiateService(loader, Mapping.get(className), intent); return delegate.instantiateService(loader, Mapping.get(className), intent);
return create(className, DummyService.class); return create(className, DummyService.class);
@ -61,7 +54,6 @@ public class DelegateComponentFactory extends AppComponentFactory {
@Override @Override
public ContentProvider instantiateProvider(ClassLoader cl, String className) public ContentProvider instantiateProvider(ClassLoader cl, String className)
throws ClassNotFoundException, IllegalAccessException, InstantiationException { throws ClassNotFoundException, IllegalAccessException, InstantiationException {
Log.d(TAG, className);
if (loader == null) loader = cl; if (loader == null) loader = cl;
if (delegate != null) if (delegate != null)
return delegate.instantiateProvider(loader, Mapping.get(className)); return delegate.instantiateProvider(loader, Mapping.get(className));
@ -73,7 +65,6 @@ public class DelegateComponentFactory extends AppComponentFactory {
*/ */
private <T> T create(String name, Class<? extends T> dummy) private <T> T create(String name, Class<? extends T> dummy)
throws InstantiationException, IllegalAccessException { throws InstantiationException, IllegalAccessException {
Log.d(TAG, "create " + name);
try { try {
return (T) loader.loadClass(name).newInstance(); return (T) loader.loadClass(name).newInstance();
} catch (IllegalAccessException | InstantiationException | ClassNotFoundException ignored) { } catch (IllegalAccessException | InstantiationException | ClassNotFoundException ignored) {

View File

@ -11,31 +11,33 @@ import android.util.Log;
import com.topjohnwu.magisk.net.ErrorHandler; import com.topjohnwu.magisk.net.ErrorHandler;
import com.topjohnwu.magisk.net.Networking; import com.topjohnwu.magisk.net.Networking;
import com.topjohnwu.magisk.net.ResponseListener; import com.topjohnwu.magisk.net.ResponseListener;
import com.topjohnwu.magisk.obfuscate.RawData;
import com.topjohnwu.magisk.utils.APKInstall; import com.topjohnwu.magisk.utils.APKInstall;
import org.json.JSONException; import org.json.JSONException;
import org.json.JSONObject; import org.json.JSONObject;
import static android.R.string.no;
import static android.R.string.ok;
import static android.R.string.yes;
import static com.topjohnwu.magisk.DelegateApplication.MANAGER_APK; import static com.topjohnwu.magisk.DelegateApplication.MANAGER_APK;
public class DownloadActivity extends Activity { public class DownloadActivity extends Activity {
static final String TAG = "MMStub";
private static final String URL = private static final String URL =
BuildConfig.DEV_CHANNEL != null ? BuildConfig.DEV_CHANNEL : BuildConfig.DEV_CHANNEL != null ? BuildConfig.DEV_CHANNEL :
"https://raw.githubusercontent.com/topjohnwu/magisk_files/" + RawData.urlBase() + (BuildConfig.DEBUG ? RawData.canary() : RawData.stable());
(BuildConfig.DEBUG ? "canary/debug.json" : "master/stable.json");
private String apkLink; private String apkLink;
private ErrorHandler err = (conn, e) -> { private ErrorHandler err = (conn, e) -> {
Log.e(TAG, "network error", e); Log.e(getClass().getSimpleName(), "", e);
finish(); finish();
}; };
private void showDialog() { private void showDialog() {
ProgressDialog.show(this, ProgressDialog.show(this,
getString(R.string.dling), RawData.dling(),
getString(R.string.dling) + " " + getString(R.string.app_name), RawData.dling() + " " + RawData.appName(),
true); true);
} }
@ -58,7 +60,9 @@ public class DownloadActivity extends Activity {
@Override @Override
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
RawData.res = getResources();
Networking.init(this); Networking.init(this);
if (Networking.checkNetworkStatus(this)) { if (Networking.checkNetworkStatus(this)) {
Networking.get(URL) Networking.get(URL)
.setErrorHandler(err) .setErrorHandler(err)
@ -66,9 +70,9 @@ public class DownloadActivity extends Activity {
} else { } else {
new AlertDialog.Builder(this) new AlertDialog.Builder(this)
.setCancelable(false) .setCancelable(false)
.setTitle(R.string.app_name) .setTitle(RawData.appName())
.setMessage(R.string.no_internet_msg) .setMessage(RawData.no_internet_msg())
.setNegativeButton(android.R.string.ok, (d, w) -> finish()) .setNegativeButton(ok, (d, w) -> finish())
.show(); .show();
} }
} }
@ -82,10 +86,10 @@ public class DownloadActivity extends Activity {
apkLink = manager.getString("link"); apkLink = manager.getString("link");
new AlertDialog.Builder(DownloadActivity.this) new AlertDialog.Builder(DownloadActivity.this)
.setCancelable(false) .setCancelable(false)
.setTitle(R.string.app_name) .setTitle(RawData.appName())
.setMessage(R.string.upgrade_msg) .setMessage(RawData.upgrade_msg())
.setPositiveButton(android.R.string.yes, (d, w) -> dlAPK()) .setPositiveButton(yes, (d, w) -> dlAPK())
.setNegativeButton(android.R.string.no, (d, w) -> finish()) .setNegativeButton(no, (d, w) -> finish())
.show(); .show();
} catch (JSONException e) { } catch (JSONException e) {
finish(); finish();

View File

@ -0,0 +1,38 @@
package com.topjohnwu.magisk.obfuscate;
import android.content.res.Resources;
import com.topjohnwu.magisk.R;
public class RawData {
public static Resources res;
public static String appName() {
return "Magisk Manager";
}
public static String urlBase() {
return "https://raw.githubusercontent.com/topjohnwu/magisk_files/";
}
public static String canary() {
return "canary/debug.json";
}
public static String stable() {
return "master/stable.json";
}
public static String no_internet_msg() {
return res.getString(R.string.no_internet_msg);
}
public static String upgrade_msg() {
return res.getString(R.string.upgrade_msg);
}
public static String dling() {
return res.getString(R.string.dling);
}
}

View File

@ -1,4 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<resources> <resources>
<string name="upgrade_msg">Fes una actualització total de Magisk Manager per finalitzar l\'instalació. Descarregar i instalar?</string> <string name="upgrade_msg">Fes una actualització total de Magisk Manager per finalitzar l\'instalació. Descarregar i instalar?</string>
<string name="no_internet_msg">Si us plau, connecta\'t a internet! Es necessari fer una actualització total de Magisk Manager.</string> <string name="no_internet_msg">Si us plau, connecta\'t a internet! Es necessari fer una actualització total de Magisk Manager.</string>
<string name="dling">Baixant</string>
</resources> </resources>

View File

@ -1,4 +1,5 @@
<resources> <resources>
<string name="upgrade_msg">Обновите Magisk Manager для завершения установки. Загрузить и установить?</string> <string name="upgrade_msg">Обновите Magisk Manager для завершения установки. Загрузить и установить?</string>
<string name="no_internet_msg">Пожалуйста, подключитесь к интернету! Требуется обновление Magisk Manager.</string> <string name="no_internet_msg">Пожалуйста, подключитесь к интернету! Требуется обновление Magisk Manager.</string>
<string name="dling">Загрузка</string>
</resources> </resources>

View File

@ -1,4 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name" translatable="false">Magisk Manager</string>
</resources>