diff --git a/assets/translations/ru.json b/assets/translations/ru.json index 6a5e25859..7e5e70734 100644 --- a/assets/translations/ru.json +++ b/assets/translations/ru.json @@ -52,6 +52,9 @@ "appAlreadyAdded": "Приложение уже добавлено", "alreadyUpToDateQuestion": "Приложение уже обновлено?", "addApp": "Добавить", + "addAppUrl": "Добавить URL приложения", + "bulkSearchDeviceApps": "Массовый импорт приложений устройства", + "importGitHubStarredRepositories": "Импорт репозиториев, отмеченных звёздочкой на GitHub", "appSourceURL": "URL-адрес источника приложения", "error": "Ошибка", "add": "Добавить", @@ -62,7 +65,10 @@ "searchableInBrackets": "(поиск)", "appsString": "Приложения", "noApps": "Нет приложений", + "noAppsSubtitle": "Добавьте приложение, чтобы начать отслеживать обновления.", "noAppsForFilter": "Нет приложений для фильтра", + "noAppsForFilterSubtitle": "Попробуйте ввести другой запрос или сбросить фильтры.", + "clearFilters": "Очистить фильтры", "byX": "От {}", "percentProgress": "Прогресс: {}%", "pleaseWait": "Пожалуйста, подождите", @@ -98,6 +104,17 @@ "invalidInput": "Неверный ввод", "importedX": "Импортировано {}", "obtainiumImport": "Импорт в ObtainX", + "obtainiumRestore": "Восстановить", + "restoredX": "Восстановлено {}", + "restoreBackupConfirmTitle": "Сбросить ObtainX и восстановить резервную копию?", + "restoreBackupConfirmBody": "Это приведет к сбросу ObtainX до заводских значений по умолчанию — удалению всех отслеживаемых в данный момент приложений и сбросу настроек — а затем к восстановлению только что выбранных вами данных из резервной копии. Это действие нельзя отменить. Установленные на вашем устройстве приложения и их данные не затронуты.", + "restoreBackupHelpTitle": "Импорт или Восстановление", + "restoreBackupHelpBody": "При импорте резервная копия объединяется с уже имеющимися данными: приложения, совпадающие по ID, обновляются данными из резервной копии, остальные добавляются, а все импортированные настройки накладываются на текущие. При восстановлении сначала ObtainX сбрасывается до заводских настроек по умолчанию — как приложения, так и настройки — а затем применяются только те данные из резервной копии, которые вы выберете, что позволяет выполнить полное восстановление с чистого листа.", + "importSettingsTitle": "Настройки ObtainX", + "withSecrets": "Включает секреты", + "noSecrets": "Без секретов", + "alreadyTrackedApps": "Уже отслеживаемые приложения", + "newApps": "Новые приложения", "importFromURLList": "Импорт из списка URL-адресов", "searchQuery": "Поисковый запрос", "appURLList": "Список URL-адресов приложений", @@ -115,6 +132,13 @@ "light": "Светлая", "followSystem": "Как в системе", "useBlackTheme": "Использовать чёрную тему", + "settingsCustomFontTitle": "Используемый шрифт", + "settingsCustomFontChoose": "Импорт шрифта", + "settingsCustomFontChooseExplanation": "Выберите файл пользовательского шрифта (.ttf или .otf) из хранилища, чтобы применить его к пользовательскому интерфейсу.", + "settingsCustomFontDefault": "Системный шрифт по умолчанию", + "settingsCustomFontSuccess": "Пользовательский шрифт успешно применён.", + "settingsCustomFontResetSuccess": "Возвращён системный шрифт по умолчанию.", + "settingsCustomFontErrorInvalid": "Не удалось загрузить: файл шрифта неверный или поврежден.", "authorName": "Автор/название", "nameAuthor": "Название/автор", "asAdded": "Порядок добавления", @@ -124,16 +148,18 @@ "neverManualOnly": "Никогда - только вручную", "appearance": "Внешний вид", "showWebInAppView": "Показывать исходную веб-страницу на странице приложения", + "updateButtonsAtTopOfAppPage": "Кнопки обновления в верхней части страницы приложения", "pinUpdates": "Показывать обновления приложений вверху списка", "updates": "Обновления", "sourceSpecific": "Настройки источников", "appSource": "Источник", + "sourceAny": "Любой", "noLogs": "Нет журналов", "appLogs": "Журналы", "close": "Закрыть", "share": "Поделиться", "appNotFound": "Приложение не найдено", - "obtainiumExportHyphenatedLowercase": "экспорт-obtainium", + "obtainiumExportHyphenatedLowercase": "obtainx-export", "pickAnAPK": "Выберите APK-файл", "appHasMoreThanOnePackage": "{} имеет более одного пакета:", "deviceSupportsXArch": "Ваше устройство поддерживает архитектуру процессора {}", @@ -181,6 +207,8 @@ "markInstalled": "Отметить установленным", "update": "Обновить", "markUpdated": "Отметить обновлённым", + "pin": "Закрепить", + "unpin": "Открепить", "additionalOptions": "Дополнительные настройки", "downloadingX": "Загрузка {}", "downloadX": "Загрузить {}", @@ -200,6 +228,7 @@ "label": "Метка", "language": "Язык", "copiedToClipboard": "Скопировано в буфер обмена", + "certificateHashCopiedToClipboard": "Хеш сертификата скопирован в буфер обмена", "storagePermissionDenied": "Отказано в доступе к хранилищу", "filterAPKsByRegEx": "Фильтровать APK-файлы\n(регулярное выражение)", "uninstallFromDevice": "Удалить с устройства", @@ -223,16 +252,15 @@ "requiresCredentialsInSettings": "{}: для этого требуются дополнительные учётные данные (в настройках)", "checkOnStart": "Проверять наличие обновлений при запуске", "tryInferAppIdFromCode": "Пытаться определить ID приложения из исходного кода", + "inferAppIdOverriddenByCustom": "Не используется, если ниже указан пользовательский ID приложения — приоритет имеет пользовательское значение.", "removeOnExternalUninstall": "Автоматически убирать из списка удалённые извне приложения", "openAppInfoInAppManager": "Открыть сведения о приложении в App Manager", - "appManagerNotInstalledSnackbar": "\"App Manager\" needs to be installed before this can be enabled", + "appManagerNotInstalledSnackbar": "Прежде чем включить эту функцию, необходимо установить приложение \"App Manager\"", "integrations": "Интеграции", "enableLetMeDowngrade": "Включить «Let Me Downgrade»", - "letMeDowngradeNotInstalledSnackbar": "\"Let Me Downgrade\" needs to be installed before this can be enabled", + "letMeDowngradeNotInstalledSnackbar": "Чтобы включить эту функцию, необходимо сначала установить приложение \"Let Me Downgrade\"", "pickHighestVersionCode": "Автовыбор актуальной версии кода APK", "checkUpdateOnDetailPage": "Проверять наличие обновлений при открытии страницы приложения", - "disablePageTransitions": "Отключить анимацию перехода между страницами", - "reversePageTransitions": "Реверс анимации перехода между страницами", "minStarCount": "Минимальное количество звёзд", "addInfoBelow": "Добавьте эту информацию ниже", "addInfoInSettings": "Добавьте эту информацию в «Настройки»", @@ -244,7 +272,7 @@ "appsPossiblyUpdatedNotifDescription": "Уведомление о возможных обновлениях одного или нескольких приложений в фоновом режиме", "xWasPossiblyUpdatedToY": "{} возможно был обновлён до {}", "enableBackgroundUpdates": "Фоновая установка обновлений", - "backgroundUpdateReqsExplanation": "Фоновые обновления могут быть возможны не для всех приложений", + "backgroundUpdateReqsExplanation": "Когда функция включена, ObtainX автоматически устанавливает обновления в фоновом режиме всякий раз, когда выбранный вами установщик может это сделать без запроса: Shizuku всегда может, встроенный установщик — только для уже установленных приложений, а сторонний установщик — никогда (для него требуется нажатие). Когда функция выключена, ObtainX только проверяет наличие обновлений и уведомляет вас; ничего не устанавливается.", "backgroundUpdateLimitsExplanation": "Успешность фоновой установки можно определить только после открытия ObtainX", "verifyLatestTag": "Проверять метку «latest»", "intermediateLinkRegex": "Фильтр для «промежуточной» ссылки для посещения", @@ -271,6 +299,7 @@ "runBgCheckNow": "Запустить проверку фонового обновления сейчас", "versionExtractWholePage": "Применить регулярное выражение версии ко всей странице", "installing": "Устанавливается", + "installFailed": "Установка не удалась", "skipUpdateNotifications": "Не оповещать об обновлениях", "updatesAvailableNotifChannel": "Доступны обновления", "appsUpdatedNotifChannel": "Приложения обновлены", @@ -285,7 +314,8 @@ "selectX": "Выбрать {}", "parallelDownloads": "Использовать параллельные загрузки", "useShizuku": "Использовать Dhizuku, Shizuku или Sui для установки", - "shizukuBinderNotFound": "Совместимые службы Dhizuku или Shizuku не найдены, возможно, они не запущены", + "shizukuBinderNotFound": "Сервисы Shizuku не запущены", + "dhizukuBinderNotFound": "Сервисы Dhizuku не запущены", "shizukuOld": "Устаревшая версия Shizuku (<11), обновите", "shizukuOldAndroidWithADB": "Shizuku работает на Android < 8.1 с ADB, обновите Android или используйте Dhizuku или Sui", "shizukuPretendToBeGooglePlay": "Указывать Google Play как источник установки (если используется Shizuku)", @@ -311,16 +341,17 @@ "stayOneVersionBehind": "Оставаться на одну версию ниже последней", "useFirstApkOfVersion": "Автовыбор первого из нескольких APK", "refreshBeforeDownload": "Обновлять информацию о приложении перед загрузкой", + "perAppVirusTotalScanTooltip": "Сканировать загруженные APK-файлы этого приложения перед установкой с помощью VirusTotal. Отключите эту функцию, чтобы исключить данное приложение из сканирования.\n\nЭта настройка действует только в том случае, если в настройках включена опция \"Сканировать APK-файлы с помощью VirusTotal\" и указан действительный ключ API.", "tencentAppStore": "Tencent App Store", "coolApk": "CoolApk", "vivoAppStore": "vivo App Store (CN)", "huaweiAppGallery": "Huawei AppGallery", - "name": "Имя", - "smartname": "Имя (умное)", + "name": "Название", + "smartname": "Название (умное)", "sortMethod": "Метод сортировки", "welcome": "Добро пожаловать", "fileDeletionError": "Не удалось удалить файл (попробуйте удалить его вручную, а затем повторите попытку): «{}»", - "foregroundService": "Приоритетная служба ObtainX", + "foregroundService": "Служба переднего плана ObtainX", "fgServiceNotice": "Это уведомление необходимо для фоновой проверки обновлений (оно может быть скрыто в настройках ОС)", "GHReqPrefix": "Использовать «sky22333/hubproxy» для запросов на GitHub", "includeZips": "Включить ZIP-файлы", @@ -427,7 +458,6 @@ "aboutByline": "Сделано с любовью ❤️ разработчиком Bikram Agarwal", "aboutStarOnGithub": "Поставить звезду на GitHub", "aboutOpenWiki": "Открыть вики", - "aboutAppVault": "Хранилище приложений", "aboutOtherApps": "Другие приложения от Bikram", "aboutRememberName": "Remember", "aboutRememberTagline": "Заметки, задачи, напоминания - как надо", @@ -459,6 +489,7 @@ "GHReqPrefixUseToken": "Использовать PAT в прокси-запросах к GitHub", "apply": "Применить", "trackedSource": "Отслеживаемый источник", + "sources": "Источники", "edit": "Изменить", "verdict": "Вердикт", "playStore": "Play Store", @@ -473,15 +504,14 @@ "fixPackageIdExplanation": "Введите правильный ID пакета приложения (например, com.vendor.app). ObtainX снова проверит установленную версию на этом устройстве.", "itsNotInstalled": "Оно не установлено", "invalidAndroidPackageId": "Некорректный ID пакета приложения", - "addBySearch": "Поиск", - "addFromDevice": "Устройство", - "searchSourcesAddApp": "Поиск по магазинам", - "searchSourceAddApps": "Search source, add apps", - "searchSourcesAddAppTooltip": "Search **multiple sources** at once. Select a single app from the results to **customize its configuration** before adding it to your list.", - "searchSourceAddAppsTooltip": "Search within a **single source**. From the results, select and **batch-add multiple apps** instantly using their default configurations.", + "searchSourcesAddApp": "Поиск источника, добавление приложения", + "searchSourceAddApps": "Поиск источника, добавление приложений", + "searchSourcesAddAppTooltip": "Выполнить поиск по **нескольким источникам** одновременно. Выберите одно приложение из результатов, чтобы **настроить его параметры**, прежде чем добавить его в свой список.", + "searchSourceAddAppsTooltip": "Выполнить поиск в **одном источнике**. Из результатов выберите и **одновременно добавьте несколько приложений**, используя их настройки по умолчанию.", "onDemandOnly": "Только по запросу", "onDemandOnlyDescription": "Скрывать из основного списка приложений. Проверка обновлений выполняется только при обновлении жестом «потянуть» на экране «Только по запросу» или на этой странице сведений о приложении.", "onDemandOnlyAppsTitle": "Только по запросу", + "onDemandOnlyEmptyTitle": "Нет приложений по запросу", "onDemandOnlyEmpty": "Нет приложений в режиме «по запросу». Включите «Только по запросу» в дополнительных настройках любого приложения.", "openApp": "Открыть приложение", "appIconActionsTitle": "Значок приложения", @@ -499,13 +529,23 @@ "deselectAll": "Снять выделение", "expandAll": "Развернуть всё", "importExportCardUpdateAssets": "Резервная копия файлов обновлений", + "importExportCardAppIcons": "Значки приложений", "importExportCardObtainxBackup": "Резервная копия ObtainX", + "pickIconsDir": "Выберите папку со значками приложений", + "appIconsFolderDescription": "Здесь сохраняются как настраиваемые, так и автоматически определённые значки приложений, чтобы их можно было восстановить при переустановке или на новом устройстве.", + "iconsRestoredFromFolder": "Восстановлено {} значков приложений из папки", + "iconsNoneToRestore": "В папке нет новых значков для восстановления", + "iconsExportedToFolder": "Экспортировано {} значков приложений в папку", + "iconsNoneToExport": "Новых значков для экспорта нет", + "iconsFolderRestoreHint": "Эта резервная копия содержит ссылку на папку со значками приложений. Подключите её заново в разделе \"Значки приложений\" выше, чтобы восстановить значки.", "importExportIncludeInBackup": "Включить в резервную копию", "importExportBackupScopeOnlyApps": "Только приложения", "importExportBackupScopeAppsSettingsNoSecrets": "Приложения и настройки (без секретов)", "importExportBackupScopeAllAppsAndSettings": "Приложения и настройки (с секретами)", "pickConfigExportFolder": "Выбрать папку для резервной копии ObtainX", "configExportFolderDescription": "Куда ObtainX экспортирует резервную копию в формате JSON.", + "exportFolderAccessUnavailable": "Доступ к папке резервного копирования был утрачен. Заново выберите папку в настройках.", + "apkSaveFolderAccessUnavailable": "Доступ к папке сохранения APK-файлов был утрачен. Заново выберите папку в настройках.", "appPageAppInfo": "Сведения о приложении", "addAppSearchResultsTitle": "Выбрать", "settingsThemeColorsHint": "Акцентный и динамический источник цвета", @@ -592,11 +632,13 @@ "showAppTypeBadge": "Тип приложения", "showTrackedStoreBadge": "Отслеживаемый магазин", "showCategoriesBadge": "Категории", + "showAuthorBadge": "Автор", + "showVersionBadge": "Версия", "plusMore": "+{}", - "groupSeparately": "Group separately", - "groupSeparatelyDescription": "Create a separate group for these types of apps, overriding 'Group by'", + "groupSeparately": "Группировать отдельно", + "groupSeparatelyDescription": "Создать отдельную группу для приложений этого типа, переопределив параметр 'Группировать по'", "groupNonInstalledSeparately": "Группировать неустановленные отдельно", - "groupTrackOnlySeparately": "Group track-only apps separately", + "groupTrackOnlySeparately": "Группировать приложения только для отслеживания отдельно", "groupUpdatesSeparately": "Группировать обновления отдельно", "updatesGroup": "Обновления", "pickApkSaveDir": "Выбрать папку для сохранения APK", @@ -606,6 +648,7 @@ "installerMode": "Режим установки", "installerModeStock": "Стандартный", "installerModeShizuku": "Shizuku", + "installerModeDhizuku": "Dhizuku", "installerModeThirdParty": "Сторонний", "effectivelyEqual": "Одинаковая сборка (разные метки)", "sameVersion": "Актуально", @@ -622,11 +665,11 @@ "undo": "Отменить", "xAppsRemoved": "Удалено приложений: {}", "updatesOnly": "Только с обновлениями", - "visibilityFilterUpToDate": "Up-to-date", - "visibilityFilterInstalled": "Installed", - "visibilityFilterCycleHint": "Tap to cycle: (+) Must be, (x) Exclude, tap again to reset", + "visibilityFilterUpToDate": "Актуально", + "visibilityFilterInstalled": "Установлено", + "visibilityFilterCycleHint": "Нажмите, чтобы переключить: (+) Должен быть, (x) Исключить, нажмите снова, чтобы сбросить", "installedOnly": "Только установленные", - "notInstalledOnly": "Not installed only", + "notInstalledOnly": "Только не установленные", "gestures": "Жесты", "rightSwipeAction": "Действие при свайпе вправо", "leftSwipeAction": "Действие при свайпе влево", @@ -669,6 +712,8 @@ "done": "Готово", "added": "Добавлено", "failed": "Ошибка", + "failedToImport": "Импорт не удался", + "backupCreatedByNewerVersion": "Этот бэкап был создан в более новой версии ObtainX (схема v{}, текущая версия v{}). Обновите ObtainX, чтобы импортировать его.", "appOptions": "Параметры приложения", "save": "Сохранить", "editAppInfo": "Изменить сведения о приложении", @@ -676,12 +721,16 @@ "newFolder": "Новая папка", "editFolder": "Изменить папку", "deleteFolder": "Удалить папку", + "delete": "Удалить", "folderName": "Название папки", "folderRule": "Автоматическое правило (необязательно)", "folderRuleMatch": "Тип совпадения", "folderRuleMatchContains": "Содержит", "folderRuleMatchEquals": "Равно", "folderRuleMatchStartsWith": "Начинается с", + "folderConditions": "Условия (опционально)", + "folderConditionsHint": "Приложения, соответствующие всем активным условиям, автоматически добавляются в эту папку. Оставьте все поля пустыми, чтобы создать папку для ручного добавления.", + "folderConditionNot": "Не {label}", "addToFolder": "Добавить в папку", "saveAsFolder": "Сохранить как папку", "showFolderedAppsOnMainPage": "Показывать приложения из папок на главной странице", @@ -689,6 +738,7 @@ "deleteFolderConfirm": "Удалить папку «{name}»?\n\nПриложения вернутся в основной список.", "ruleMatchesXApps": "Правилу сейчас соответствует приложений: {count}", "manageFolders": "Управление папками", + "appsInFoldersHeader": "Найдены в ваших папках", "noFolders": "Папок пока нет", "rawJson": "Необработанный JSON", "enforceReproducibleBuilds": "Требовать проверку сборки", @@ -721,6 +771,8 @@ "githubRateLimitWarningText": "Поиск заблокирован лимитом запросов GitHub. Добавьте ", "githubRateLimitWarningLink": "персональный токен доступа", "githubRateLimitWarningTextEnd": ", чтобы обойти ограничения и повторить поиск.", + "githubRateLimitWithTokenText": "Был достигнут лимит запросов на поиск в GitHub, даже с вашим токеном. Некоторые приложения могут отсутствовать — попробуйте выполнить сканирование снова через несколько минут.", + "githubScanRatePace": "Во избежание превышения ограничения на частоту запросов в поиске GitHub, поиск на GitHub выполняется с частотой ~{}с/приложение.", "searchAgain": "Повторить поиск", "personalAccessTokenPAT": "Персональный токен доступа (PAT)", "patExplanationTooltip": "Неаутентифицированный GitHub позволяет 60 запросов в час. Если у вас много приложений из GitHub, поиск/проверка обновлений могут блокироваться. Персональный токен доступа (PAT) увеличивает лимиты, обеспечивая бесперебойную работу поиска и обновлений.\n\nТо же самое верно для GitLab.", @@ -732,66 +784,69 @@ "discardUnsavedPATChangesExplanation": "У вас есть несохранённые изменения персонального токена доступа. При переключении вкладок эти изменения будут отменены. Продолжить?", "saved": "Сохранено", "bulkScanDiscardResultsBody": "У вас есть несохранённые результаты поиска. Уход с этой страницы приведёт к их потере. Продолжить?", - "shareToAppVerifierTooltip": "During new app installs (not updates), pass the APK to verifier apps like AppVerifier to check their certificate signature before installation.", - "enableVirusTotalScanning": "Scan APKs with VirusTotal", - "virusTotalScanningTooltip": "Scan downloaded APKs via VirusTotal before they are installed. A flagged or failed scan prompts you to decide during interactive installs, and skips that app (with a notification) during background updates.\n\nEach scan can take a few minutes to finish, especially for an APK VirusTotal hasn't seen before.\n\nYou need a VirusTotal API key to use this feature. The free tier allows 4 requests per minute.", - "virusTotalApiKeyLabel": "VirusTotal API key", - "virusTotalKeyValidated": "VirusTotal API key validated", - "virusTotalNotValidatedSnackbar": "Save and validate a VirusTotal API key below before enabling this", - "malwareScanCleanToast": "{}: scanned clean by VirusTotal", - "malwareScanFlaggedTitle": "VirusTotal flagged this APK", - "malwareScanErrorTitle": "VirusTotal scan could not be completed", - "cancelInstall": "Cancel install", - "installAnyway": "Install anyway", - "virusTotalViewReport": "View on VirusTotal", - "malwareScanFlaggedSkippedTitle": "{} was not updated - VirusTotal flagged its APK", - "malwareScanErrorSkippedTitle": "{} was not updated - VirusTotal scan failed", + "shareToAppVerifierTooltip": "При установке новых приложений (не обновлений) передавать APK на верификацию в приложения, такие как AppVerifier, для проверки подписи сертификата перед установкой.", + "enableVirusTotalScanning": "Сканировать APK-файлы с помощью VirusTotal", + "virusTotalScanningTooltip": "Сканировать загруженные APK с помощью VirusTotal перед установкой. Если в ходе сканирования обнаружены проблемы или оно завершилось с ошибкой, при интерактивной установке вам будет предложено принять решение, а при фоновых обновлениях это приложение будет пропущено (с отображением уведомления).\n\nКаждое сканирование может занять несколько минут, особенно если речь идет об APK-файле, с которым VirusTotal ранее не сталкивался.\n\nВам понадобится API ключ VirusTotal для использования этой функции. В рамках бесплатной версии допускается 4 запроса в минуту.", + "virusTotalApiKeyLabel": "VirusTotal API ключ", + "virusTotalKeyValidated": "VirusTotal API ключ подтвержден", + "virusTotalNotValidatedSnackbar": "Перед включением этой функции сохраните и подтвердите ключ API VirusTotal, указанный ниже", + "malwareScanCleanToast": "{}: проверено на VirusTotal и признано чистым", + "malwareScanFlaggedTitle": "VirusTotal пометил этот APK", + "malwareScanErrorTitle": "Сканирование VirusTotal не удалось завершить", + "cancelInstall": "Отменить установку", + "installAnyway": "Установить в любом случае", + "virusTotalViewReport": "Посмотреть на VirusTotal", + "virusTotalRetryScan": "Повторить сканирование", + "malwareScanFlaggedSkippedTitle": "{} не был обновлен - VirusTotal пометил его APK", + "malwareScanErrorSkippedTitle": "{} не был обновлен - проверка на VirusTotal закончилась неудачей", "malwareScanSkippedPluralTitle": { - "one": "{} and 1 more app was not updated - VirusTotal scan issues", - "other": "{} and {} more apps were not updated - VirusTotal scan issues" + "one": "{} и ещё одно приложение не было обновлено - проблемы со сканированием на VirusTotal", + "few": "{} и ещё {} приложений не были обновлены - проблемы со сканированием на VirusTotal", + "other": "{} и {} других приложений не были обновлены - проблемы со сканированием на VirusTotal" }, - "malwareScanSkippedNotifChannel": "VirusTotal scan skipped an update", - "malwareScanSkippedNotifDescription": "Shown when a background update is skipped because its VirusTotal scan was flagged or failed", - "errorInstallingUpdate": "Error installing update", - "errorInstallingUpdateNotifChannel": "Error installing an update", - "errorInstallingUpdateNotifDescription": "Shown when an already-downloaded update failed to install", - "errorChangingIcon": "Error changing icon", - "errorLoadingPage": "Error loading page", - "errorDownloadingAssets": "Error downloading assets", - "malwareScanFlaggedChip": "VirusTotal: Flagged", - "malwareScanErrorChip": "VirusTotal: Couldn't Scan", - "malwareScanCleanChip": "VirusTotal: Clean", - "virusTotalErrorApiKeyRejected": "VirusTotal API key was rejected. Verify and enter a correct key.", - "virusTotalErrorRateLimited": "VirusTotal rate limit reached (free tier allows about 4 requests/minute). Try again shortly.", - "virusTotalErrorServerTrouble": "VirusTotal is having trouble right now. Try again later.", - "virusTotalErrorRequestFailed": "VirusTotal request failed (HTTP {}).", - "virusTotalErrorAnalysisTimedOut": "VirusTotal is still analyzing this file. Try again in a minute.", - "virusTotalErrorGeneric": "VirusTotal scan failed: {}", - "virusTotalDetectionSummary": "{}/{} engines flagged this file", - "stayHere": "Stay here", - "scanningWithVirusTotal": "Scanning with VirusTotal", - "flaggedByVirusTotal": "Flagged by VirusTotal", - "virusTotalScanFailed": "VirusTotal scan failed", - "alwaysUsePhoneLayout": "Постоянное телефонное расположение элементов", - "categoryName": "Category name", - "colourScheme": "Colour scheme", - "copyToClipboard": "Copy to clipboard", - "couldNotGetIdFromApk": "Could not get ID from APK", - "downloadFailed": "Download failed", - "downloadedXNotifChannel": "Downloaded {}", - "expressive": "Expressive", - "import": "Import", - "newCategory": "New category", - "retry": "Retry", - "installMethod": "Installation method", - "chooseExternalInstaller": "Choose an installer app", - "externalInstallerUnset": "None chosen", - "externalInstallerRequired": "Choose an external installer in Settings first", + "malwareScanSkippedNotifChannel": "Сканирование VirusTotal пропустило обновление", + "malwareScanSkippedNotifDescription": "Отображается, когда фоновое обновление пропускается из-за того, что при проверке на VirusTotal оно было помечено как подозрительное или проверка завершилась с ошибкой", + "errorInstallingUpdate": "Ошибка установки обновления", + "errorInstallingUpdateNotifChannel": "Ошибка при установке обновления", + "errorInstallingUpdateNotifDescription": "Отображается, если установка уже загруженного обновления завершилась сбоем", + "errorChangingIcon": "Ошибка при смене значка", + "errorLoadingPage": "Ошибка при загрузке страницы", + "errorDownloadingAssets": "Ошибка при загрузке ресурсов", + "malwareScanFlaggedChip": "VirusTotal: Помечено", + "malwareScanErrorChip": "VirusTotal: Не удалось провести сканирование", + "malwareScanCleanChip": "VirusTotal: Чисто", + "virusTotalErrorApiKeyRejected": "Ключ API VirusTotal был отклонен. Проверьте и введите правильный ключ.", + "virusTotalErrorRateLimited": "Достигнут лимит запросов к VirusTotal (в бесплатной версии допускается около 4 запросов в минуту). Повторите попытку позже.", + "virusTotalErrorServerTrouble": "В данный момент у VirusTotal возникли проблемы. Попробуйте позже.", + "virusTotalErrorRequestFailed": "Ошибка при отправке запроса на VirusTotal (HTTP {}).", + "virusTotalErrorAnalysisTimedOut": "VirusTotal пока анализирует этот файл. Попробуйте снова через минуту.", + "virusTotalErrorRequestTimedOut": "VirusTotal не ответил вовремя. Проверьте подключение и попробуйте ещё раз.", + "virusTotalErrorGeneric": "Сканирование VirusTotal не удалось: {}", + "virusTotalDetectionSummary": "{}/{} движков пометили этот файл", + "stayHere": "Остаться здесь", + "scanningWithVirusTotal": "Сканирование с помощью VirusTotal", + "flaggedByVirusTotal": "Помечено VirusTotal", + "virusTotalScanFailed": "Сканирование VirusTotal не удалось", + "alwaysUsePhoneLayout": "Всегда использовать телефонную компоновку", + "categoryName": "Название категории", + "colourScheme": "Цветовая гамма", + "copyToClipboard": "Копировать в буфер обмена", + "couldNotGetIdFromApk": "Не удалось получить ID из APK", + "downloadFailed": "Загрузка не удалась", + "downloadedXNotifChannel": "Загружено {}", + "expressive": "Выразительный", + "import": "Импорт", + "newCategory": "Новая категория", + "retry": "Повторить", + "installMethod": "Способ установки", + "chooseExternalInstaller": "Выберите установщик", + "externalInstallerUnset": "Ничего не выбрано", + "externalInstallerRequired": "Сначала выберите внешний установщик в настройках", "telegramApp": "Telegram App", - "tooManyRedirects": "Too many redirects", - "vibrant": "Vibrant", + "tooManyRedirects": "Слишком много перенаправлений", + "vibrant": "Яркий", "action": { - "one": "Action", - "other": "Actions" + "one": "Действие", + "other": "Действия" } }