mirror of
https://github.com/ReVanced/revanced-manager.git
synced 2025-05-17 22:46:27 +08:00
Compare commits
11 Commits
v1.22.1-de
...
v1.23.0-de
Author | SHA1 | Date | |
---|---|---|---|
c52edc99c0 | |||
1c6c5d53ae | |||
1b110e5bd5 | |||
8872165a99 | |||
bd79496433 | |||
820cd720b5 | |||
31ff1e0492 | |||
8b429f03c2 | |||
a68a83940d | |||
1f95767aeb | |||
c7298424e5 |
19
.github/workflows/release.yml
vendored
19
.github/workflows/release.yml
vendored
@ -16,6 +16,8 @@ on:
|
||||
jobs:
|
||||
release:
|
||||
name: Release
|
||||
permissions:
|
||||
contents: write
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
@ -35,8 +37,7 @@ jobs:
|
||||
- name: Set up Flutter
|
||||
uses: subosito/flutter-action@v2
|
||||
with:
|
||||
channel: "stable"
|
||||
flutter-version: 3.24.x
|
||||
channel: stable
|
||||
|
||||
- name: Install dependencies
|
||||
run: npm ci
|
||||
@ -50,13 +51,15 @@ jobs:
|
||||
- name: Generate code files
|
||||
run: dart run build_runner build --delete-conflicting-outputs
|
||||
|
||||
- name: Setup keystore
|
||||
run: |
|
||||
echo "${{ secrets.KEYSTORE }}" | base64 --decode > "keystore.jks"}
|
||||
|
||||
- name: Release
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.REPOSITORY_PUSH_ACCESS }}
|
||||
signingKey: "keystore.jks"
|
||||
keyStorePassword: ${{ secrets.SIGNING_KEYSTORE_PASSWORD }}
|
||||
keyAlias: ${{ secrets.SIGNING_KEY_ALIAS }}
|
||||
keyPassword: ${{ secrets.SIGNING_KEY_PASSWORD }}
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
KEYSTORE_PASSWORD: ${{ secrets.KEYSTORE_PASSWORD }}
|
||||
KEYSTORE_ENTRY_ALIAS: ${{ secrets.KEYSTORE_ENTRY_ALIAS }}
|
||||
KEYSTORE_ENTRY_PASSWORD: ${{ secrets.KEYSTORE_ENTRY_PASSWORD }}
|
||||
run: |
|
||||
echo "${{ secrets.SIGNING_KEYSTORE }}" | base64 --decode > android/app/keystore.jks
|
||||
npx semantic-release
|
||||
|
3
.github/workflows/sync_crowdin.yml
vendored
3
.github/workflows/sync_crowdin.yml
vendored
@ -68,6 +68,5 @@ jobs:
|
||||
git config user.name revanced-bot
|
||||
git config user.email github@revanced.app
|
||||
sudo chown -R $USER:$USER .git
|
||||
git add assets/i18n/strings.*.json
|
||||
git commit -m "chore: Remove empty values from JSON" assets/i18n/strings.*.json
|
||||
git commit -m "chore: Remove empty values from JSON" assets/i18n/strings_*.json
|
||||
git push origin HEAD:feat/translations
|
||||
|
88
.gitignore
vendored
88
.gitignore
vendored
@ -1,41 +1,14 @@
|
||||
# See https://www.dartlang.org/guides/libraries/private-files
|
||||
|
||||
# Files and directories created by pub
|
||||
.dart_tool/
|
||||
.packages
|
||||
build/
|
||||
# If you're building an application, you may want to check-in your pubspec.lock
|
||||
# pubspec.lock
|
||||
|
||||
# Directory created by dartdoc
|
||||
# If you don't generate documentation locally you can remove this line.
|
||||
doc/api/
|
||||
|
||||
# dotenv environment variables file
|
||||
.env*
|
||||
|
||||
# Avoid committing generated Javascript files:
|
||||
*.dart.js
|
||||
*.info.json # Produced by the --dump-info flag.
|
||||
*.js # When generated by dart2js. Don't specify *.js if your
|
||||
# project includes source files written in JavaScript.
|
||||
*.js_
|
||||
*.js.deps
|
||||
*.js.map
|
||||
|
||||
.flutter-plugins
|
||||
.flutter-plugins-dependencies
|
||||
|
||||
# Generated Builder file
|
||||
**/*.g.dart
|
||||
**/*.locator.dart
|
||||
**/*.router.dart
|
||||
|
||||
flutter_*.png
|
||||
|
||||
#### Custom
|
||||
|
||||
local.properties
|
||||
# Miscellaneous
|
||||
*.class
|
||||
*.log
|
||||
*.pyc
|
||||
*.swp
|
||||
.DS_Store
|
||||
.atom/
|
||||
.buildlog/
|
||||
.history
|
||||
.svn/
|
||||
migrate_working_dir/
|
||||
|
||||
# IntelliJ related
|
||||
*.iml
|
||||
@ -43,8 +16,39 @@ local.properties
|
||||
*.iws
|
||||
.idea/
|
||||
|
||||
# Node Dependency directories
|
||||
node_modules/
|
||||
# The .vscode folder contains launch configuration and tasks you configure in
|
||||
# VS Code which you may wish to be included in version control, so this line
|
||||
# is commented out by default.
|
||||
#.vscode/
|
||||
|
||||
# Flutter/Dart/Pub related
|
||||
**/doc/api/
|
||||
**/ios/Flutter/.last_build_id
|
||||
.dart_tool/
|
||||
.flutter-plugins
|
||||
.flutter-plugins-dependencies
|
||||
.pub-cache/
|
||||
.pub/
|
||||
/build/
|
||||
|
||||
# Symbolication related
|
||||
app.*.symbols
|
||||
|
||||
# Obfuscation related
|
||||
app.*.map.json
|
||||
|
||||
# Android Studio will place build artifacts here
|
||||
/android/app/debug
|
||||
/android/app/profile
|
||||
/android/app/release
|
||||
|
||||
# Generated files
|
||||
**/*.g.dart
|
||||
**/*.locator.dart
|
||||
**/*.router.dart
|
||||
|
||||
# Project specific
|
||||
node_modules/
|
||||
.vscode/
|
||||
|
||||
|
||||
# FVM
|
||||
.fvm
|
29
.metadata
29
.metadata
@ -1,11 +1,11 @@
|
||||
# This file tracks properties of this Flutter project.
|
||||
# Used by Flutter tool to assess capabilities and perform upgrades etc.
|
||||
#
|
||||
# This file should be version controlled.
|
||||
# This file should be version controlled and should not be manually edited.
|
||||
|
||||
version:
|
||||
revision: 85684f9300908116a78138ea4c6036c35c9a1236
|
||||
channel: stable
|
||||
revision: "2663184aa79047d0a33a14a3b607954f8fdd8730"
|
||||
channel: "stable"
|
||||
|
||||
project_type: app
|
||||
|
||||
@ -13,26 +13,11 @@ project_type: app
|
||||
migration:
|
||||
platforms:
|
||||
- platform: root
|
||||
create_revision: 85684f9300908116a78138ea4c6036c35c9a1236
|
||||
base_revision: 85684f9300908116a78138ea4c6036c35c9a1236
|
||||
create_revision: 2663184aa79047d0a33a14a3b607954f8fdd8730
|
||||
base_revision: 2663184aa79047d0a33a14a3b607954f8fdd8730
|
||||
- platform: android
|
||||
create_revision: 85684f9300908116a78138ea4c6036c35c9a1236
|
||||
base_revision: 85684f9300908116a78138ea4c6036c35c9a1236
|
||||
- platform: ios
|
||||
create_revision: 85684f9300908116a78138ea4c6036c35c9a1236
|
||||
base_revision: 85684f9300908116a78138ea4c6036c35c9a1236
|
||||
- platform: linux
|
||||
create_revision: 85684f9300908116a78138ea4c6036c35c9a1236
|
||||
base_revision: 85684f9300908116a78138ea4c6036c35c9a1236
|
||||
- platform: macos
|
||||
create_revision: 85684f9300908116a78138ea4c6036c35c9a1236
|
||||
base_revision: 85684f9300908116a78138ea4c6036c35c9a1236
|
||||
- platform: web
|
||||
create_revision: 85684f9300908116a78138ea4c6036c35c9a1236
|
||||
base_revision: 85684f9300908116a78138ea4c6036c35c9a1236
|
||||
- platform: windows
|
||||
create_revision: 85684f9300908116a78138ea4c6036c35c9a1236
|
||||
base_revision: 85684f9300908116a78138ea4c6036c35c9a1236
|
||||
create_revision: 2663184aa79047d0a33a14a3b607954f8fdd8730
|
||||
base_revision: 2663184aa79047d0a33a14a3b607954f8fdd8730
|
||||
|
||||
# User provided section
|
||||
|
||||
|
@ -48,7 +48,8 @@
|
||||
"assets": [
|
||||
{
|
||||
"path": "build/app/outputs/apk/release/revanced-manager*.apk"
|
||||
}
|
||||
},
|
||||
"message": "chore: Release v${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"
|
||||
],
|
||||
"successComment": false
|
||||
}
|
||||
|
91
.vscode/tasks.json
vendored
91
.vscode/tasks.json
vendored
@ -1,91 +0,0 @@
|
||||
{
|
||||
"version": "2.0.0",
|
||||
"tasks": [
|
||||
{
|
||||
"label": "Generate (Builder)",
|
||||
"type": "shell",
|
||||
"command": "flutter packages pub run build_runner build --delete-conflicting-outputs",
|
||||
"problemMatcher": []
|
||||
},
|
||||
{
|
||||
"label": "Build (Android)",
|
||||
"type": "shell",
|
||||
"command": "flutter build apk",
|
||||
"problemMatcher": [],
|
||||
"group": {
|
||||
"kind": "build",
|
||||
"isDefault": true
|
||||
}
|
||||
},
|
||||
{
|
||||
"label": "Install (Android)",
|
||||
"type": "shell",
|
||||
"command": "adb install build\\app\\outputs\\flutter-apk\\app-release.apk",
|
||||
"problemMatcher": []
|
||||
},
|
||||
{
|
||||
"label": "Clean (Flutter)",
|
||||
"type": "shell",
|
||||
"command": "flutter clean && flutter pub get",
|
||||
"problemMatcher": []
|
||||
},
|
||||
{
|
||||
"label": "Clean (Builder)",
|
||||
"type": "shell",
|
||||
"command": "flutter packages pub run build_runner clean",
|
||||
"problemMatcher": []
|
||||
},
|
||||
{
|
||||
"label": "Build all (Android)",
|
||||
"dependsOrder": "sequence",
|
||||
"dependsOn": [
|
||||
"Generate (Builder)",
|
||||
"Build (Android)"
|
||||
],
|
||||
"problemMatcher": []
|
||||
},
|
||||
{
|
||||
"label": "Clean all",
|
||||
"dependsOrder": "sequence",
|
||||
"dependsOn": [
|
||||
"Clean (Flutter)",
|
||||
"Clean (Builder)"
|
||||
],
|
||||
"problemMatcher": []
|
||||
},
|
||||
{
|
||||
"label": "Clean all & Build all (Android)",
|
||||
"dependsOrder": "sequence",
|
||||
"dependsOn": [
|
||||
"Clean all",
|
||||
"Build all (Android)"
|
||||
],
|
||||
"problemMatcher": []
|
||||
},
|
||||
{
|
||||
"label": "Clean all & Install (Android)",
|
||||
"dependsOrder": "sequence",
|
||||
"dependsOn": [
|
||||
"Clean all",
|
||||
"Build all (Android)",
|
||||
"Install (Android)",
|
||||
],
|
||||
"problemMatcher": []
|
||||
},
|
||||
{
|
||||
"label": "Build & Install (Android)",
|
||||
"dependsOrder": "sequence",
|
||||
"dependsOn": [
|
||||
"Build (Android)",
|
||||
"Install (Android)"
|
||||
],
|
||||
"problemMatcher": []
|
||||
},
|
||||
{
|
||||
"label": "Validate translations",
|
||||
"type": "shell",
|
||||
"command": "flutter pub run flutter_i18n diff en.json pt.json",
|
||||
"problemMatcher": []
|
||||
}
|
||||
]
|
||||
}
|
2
android/.gitignore
vendored
2
android/.gitignore
vendored
@ -7,7 +7,7 @@ gradle-wrapper.jar
|
||||
GeneratedPluginRegistrant.java
|
||||
|
||||
# Remember to never publicly share your keystore.
|
||||
# See https://flutter.dev/docs/deployment/android#reference-the-keystore-from-the-app
|
||||
# See https://flutter.dev/to/reference-keystore
|
||||
key.properties
|
||||
**/*.keystore
|
||||
**/*.jks
|
||||
|
@ -1,3 +0,0 @@
|
||||
source "https://rubygems.org"
|
||||
|
||||
gem "fastlane"
|
@ -1,114 +0,0 @@
|
||||
plugins {
|
||||
id "com.android.application"
|
||||
id "kotlin-android"
|
||||
id "dev.flutter.flutter-gradle-plugin"
|
||||
}
|
||||
|
||||
def localProperties = new Properties()
|
||||
def localPropertiesFile = rootProject.file('local.properties')
|
||||
if (localPropertiesFile.exists()) {
|
||||
localPropertiesFile.withReader('UTF-8') { reader ->
|
||||
localProperties.load(reader)
|
||||
}
|
||||
}
|
||||
|
||||
def flutterVersionCode = localProperties.getProperty('flutter.versionCode')
|
||||
if (flutterVersionCode == null) {
|
||||
flutterVersionCode = '1'
|
||||
}
|
||||
|
||||
def flutterVersionName = localProperties.getProperty('flutter.versionName')
|
||||
if (flutterVersionName == null) {
|
||||
flutterVersionName = '1.0'
|
||||
}
|
||||
|
||||
android {
|
||||
compileSdk 34
|
||||
|
||||
compileOptions {
|
||||
coreLibraryDesugaringEnabled true
|
||||
sourceCompatibility JavaVersion.VERSION_17
|
||||
targetCompatibility JavaVersion.VERSION_17
|
||||
}
|
||||
kotlinOptions {
|
||||
jvmTarget = '17'
|
||||
}
|
||||
sourceSets {
|
||||
main.java.srcDirs += 'src/main/kotlin'
|
||||
}
|
||||
defaultConfig {
|
||||
applicationId "app.revanced.manager.flutter"
|
||||
minSdk 26
|
||||
targetSdk 34
|
||||
versionCode flutterVersionCode.toInteger()
|
||||
versionName flutterVersionName
|
||||
}
|
||||
buildTypes {
|
||||
configureEach {
|
||||
shrinkResources = false
|
||||
minifyEnabled = false
|
||||
signingConfig signingConfigs.debug
|
||||
ndk {
|
||||
abiFilters 'arm64-v8a', 'armeabi-v7a', 'x86_64'
|
||||
}
|
||||
}
|
||||
release {
|
||||
shrinkResources true
|
||||
minifyEnabled true
|
||||
if (System.getenv("signingKey") != null) {
|
||||
signingConfigs {
|
||||
create("release") {
|
||||
storeFile = file(System.getenv("signingKey"))
|
||||
storePassword = System.getenv("keyStorePassword")
|
||||
keyAlias = System.getenv("keyAlias")
|
||||
keyPassword = System.getenv("keyPassword")
|
||||
}
|
||||
}
|
||||
signingConfig = signingConfigs.release
|
||||
resValue "string", "app_name", "ReVanced Manager"
|
||||
applicationVariants.all { variant ->
|
||||
variant.outputs.all {
|
||||
outputFileName = "revanced-manager-v${flutterVersionName}.apk"
|
||||
}
|
||||
}
|
||||
} else {
|
||||
signingConfig = signingConfigs.debug
|
||||
resValue "string", "app_name", "ReVanced Manager (Debug)"
|
||||
applicationIdSuffix ".debug"
|
||||
}
|
||||
}
|
||||
debug {
|
||||
resValue "string", "app_name", "ReVanced Manager (Debug)"
|
||||
applicationIdSuffix ".debug"
|
||||
}
|
||||
profile {
|
||||
resValue "string", "app_name", "ReVanced Manager (Profile)"
|
||||
applicationIdSuffix ".profile"
|
||||
}
|
||||
}
|
||||
packagingOptions {
|
||||
jniLibs {
|
||||
useLegacyPackaging true
|
||||
excludes += ['/prebuilt/**']
|
||||
}
|
||||
resources {
|
||||
excludes += ['/prebuilt/**']
|
||||
}
|
||||
}
|
||||
|
||||
namespace 'app.revanced.manager.flutter'
|
||||
}
|
||||
|
||||
kotlin {
|
||||
jvmToolchain(17)
|
||||
}
|
||||
|
||||
flutter {
|
||||
source '../..'
|
||||
}
|
||||
|
||||
dependencies {
|
||||
coreLibraryDesugaring("com.android.tools:desugar_jdk_libs:2.0.4") // https://pub.dev/packages/flutter_local_notifications#gradle-setup
|
||||
implementation("app.revanced:revanced-patcher:19.3.1")
|
||||
implementation("app.revanced:revanced-library:2.2.1")
|
||||
}
|
91
android/app/build.gradle.kts
Normal file
91
android/app/build.gradle.kts
Normal file
@ -0,0 +1,91 @@
|
||||
plugins {
|
||||
id("com.android.application")
|
||||
id("kotlin-android")
|
||||
// The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins.
|
||||
id("dev.flutter.flutter-gradle-plugin")
|
||||
}
|
||||
|
||||
android {
|
||||
namespace = "app.revanced.manager.flutter"
|
||||
compileSdk = 34
|
||||
ndkVersion = "27.0.12077973"
|
||||
|
||||
compileOptions {
|
||||
isCoreLibraryDesugaringEnabled = true
|
||||
|
||||
sourceCompatibility = JavaVersion.VERSION_17
|
||||
targetCompatibility = JavaVersion.VERSION_17
|
||||
}
|
||||
|
||||
kotlinOptions {
|
||||
jvmTarget = JavaVersion.VERSION_17.toString()
|
||||
}
|
||||
|
||||
defaultConfig {
|
||||
applicationId = "app.revanced.manager.flutter"
|
||||
minSdk = 26
|
||||
targetSdk = 34
|
||||
versionCode = flutter.versionCode
|
||||
versionName = flutter.versionName
|
||||
}
|
||||
|
||||
buildTypes {
|
||||
configureEach {
|
||||
isShrinkResources = false
|
||||
isMinifyEnabled = false
|
||||
|
||||
signingConfig = signingConfigs["debug"]
|
||||
|
||||
ndk.abiFilters += setOf("armeabi-v7a", "arm64-v8a", "x86_64")
|
||||
}
|
||||
|
||||
release {
|
||||
isShrinkResources = true
|
||||
isMinifyEnabled = true
|
||||
|
||||
val keystoreFile = file("keystore.jks")
|
||||
if (keystoreFile.exists()) {
|
||||
signingConfig = signingConfigs.create("release") {
|
||||
storeFile = keystoreFile
|
||||
storePassword = System.getenv("KEYSTORE_PASSWORD")
|
||||
keyAlias = System.getenv("KEYSTORE_ENTRY_ALIAS")
|
||||
keyPassword = System.getenv("KEYSTORE_ENTRY_PASSWORD")
|
||||
}
|
||||
} else {
|
||||
resValue("string", "app_name", "ReVanced Manager (Debug)")
|
||||
applicationIdSuffix = ".debug"
|
||||
|
||||
signingConfig = signingConfigs["debug"]
|
||||
}
|
||||
|
||||
resValue("string", "app_name", "ReVanced Manager")
|
||||
}
|
||||
|
||||
debug {
|
||||
resValue("string", "app_name", "ReVanced Manager (Debug)")
|
||||
applicationIdSuffix = ".debug"
|
||||
}
|
||||
}
|
||||
|
||||
packaging {
|
||||
jniLibs {
|
||||
useLegacyPackaging = true
|
||||
excludes.add("/prebuilt/**")
|
||||
}
|
||||
|
||||
resources {
|
||||
excludes.add("/prebuilt/**")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
flutter {
|
||||
source = "../.."
|
||||
}
|
||||
|
||||
dependencies {
|
||||
coreLibraryDesugaring(libs.desugar.jdk.libs) // https://pub.dev/packages/flutter_local_notifications#gradle-setup
|
||||
implementation(libs.revanced.patcher)
|
||||
implementation(libs.revanced.library)
|
||||
}
|
||||
|
7
android/app/proguard-rules.pro
vendored
7
android/app/proguard-rules.pro
vendored
@ -1,10 +1,3 @@
|
||||
# Add project specific ProGuard rules here.
|
||||
# You can control the set of applied configuration files using the
|
||||
# proguardFiles setting in build.gradle.kts.kts.
|
||||
#
|
||||
# For more details, see
|
||||
# http://developer.android.com/guide/developing/tools/proguard.html
|
||||
|
||||
-dontobfuscate
|
||||
|
||||
-keep class app.revanced.** { *; }
|
||||
|
@ -1,3 +1,7 @@
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<!-- The INTERNET permission is required for development. Specifically,
|
||||
the Flutter tool needs it to communicate with the running application
|
||||
to allow setting breakpoints, to provide hot reload, etc.
|
||||
-->
|
||||
<uses-permission android:name="android.permission.INTERNET"/>
|
||||
</manifest>
|
||||
|
@ -219,6 +219,9 @@ class MainActivity : FlutterActivity() {
|
||||
keystorePassword: String
|
||||
) {
|
||||
val inFile = File(inFilePath)
|
||||
// Necessary because the file is copied from a nonwriteable location.
|
||||
inFile.setWritable(true)
|
||||
inFile.setReadable(true)
|
||||
val outFile = File(outFilePath)
|
||||
val integrations = File(integrationsPath)
|
||||
val keyStoreFile = File(keyStoreFilePath)
|
||||
|
@ -1,3 +1,7 @@
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<!-- The INTERNET permission is required for development. Specifically,
|
||||
the Flutter tool needs it to communicate with the running application
|
||||
to allow setting breakpoints, to provide hot reload, etc.
|
||||
-->
|
||||
<uses-permission android:name="android.permission.INTERNET"/>
|
||||
</manifest>
|
||||
|
@ -1,48 +0,0 @@
|
||||
allprojects {
|
||||
repositories {
|
||||
google()
|
||||
mavenCentral()
|
||||
maven {
|
||||
// A repository must be speficied for some reason. "registry" is a dummy.
|
||||
url = uri("https://maven.pkg.github.com/revanced/registry")
|
||||
credentials {
|
||||
username = project.findProperty("gpr.user") as String ?: System.getenv("GITHUB_ACTOR")
|
||||
password = project.findProperty("gpr.key") as String ?: System.getenv("GITHUB_TOKEN")
|
||||
}
|
||||
}
|
||||
mavenLocal()
|
||||
}
|
||||
}
|
||||
|
||||
rootProject.buildDir = '../build'
|
||||
// TODO: Bump SDK
|
||||
// Reference: https://github.com/flutter/flutter/issues/153281#issuecomment-2292201697
|
||||
subprojects {
|
||||
afterEvaluate { project ->
|
||||
if (project.extensions.findByName("android") != null) {
|
||||
Integer pluginCompileSdk = project.android.compileSdk
|
||||
if (pluginCompileSdk != null && pluginCompileSdk < 31) {
|
||||
project.logger.error(
|
||||
"Warning: Overriding compileSdk version in Flutter plugin: "
|
||||
+ project.name
|
||||
+ " from "
|
||||
+ pluginCompileSdk
|
||||
+ " to 31 (to work around https://issuetracker.google.com/issues/199180389)."
|
||||
+ "\nIf there is not a new version of " + project.name + ", consider filing an issue against "
|
||||
+ project.name
|
||||
+ " to increase their compileSdk to the latest (otherwise try updating to the latest version)."
|
||||
)
|
||||
project.android {
|
||||
compileSdk 31
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
project.buildDir = "${rootProject.buildDir}/${project.name}"
|
||||
project.evaluationDependsOn(":app")
|
||||
}
|
||||
|
||||
tasks.register("clean", Delete) {
|
||||
delete rootProject.buildDir
|
||||
}
|
30
android/build.gradle.kts
Normal file
30
android/build.gradle.kts
Normal file
@ -0,0 +1,30 @@
|
||||
import com.android.build.api.dsl.CommonExtension
|
||||
|
||||
allprojects {
|
||||
repositories {
|
||||
google()
|
||||
mavenCentral()
|
||||
maven {
|
||||
name = "GitHubPackages"
|
||||
url = uri("https://maven.pkg.github.com/revanced/registry")
|
||||
credentials {
|
||||
username = providers.gradleProperty("gpr.user").orNull ?: System.getenv("GITHUB_ACTOR")
|
||||
password = providers.gradleProperty("gpr.key").orNull ?: System.getenv("GITHUB_TOKEN")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
layout.buildDirectory = File("../build")
|
||||
|
||||
subprojects {
|
||||
afterEvaluate {
|
||||
extensions.findByName("android")?.let {
|
||||
it as CommonExtension<*, *, *, *, *, *>
|
||||
it.compileSdk = 34
|
||||
}
|
||||
}
|
||||
|
||||
layout.buildDirectory = rootProject.layout.buildDirectory.file(name).get().asFile
|
||||
evaluationDependsOn(":app")
|
||||
}
|
@ -1,8 +1,8 @@
|
||||
org.gradle.jvmargs=-Xmx4096m -XX:+UseParallelGC
|
||||
org.gradle.jvmargs=-Xmx4G -XX:MaxMetaspaceSize=2G -XX:+HeapDumpOnOutOfMemoryError
|
||||
android.useAndroidX=true
|
||||
org.gradle.parallel=true
|
||||
org.gradle.daemon=true
|
||||
org.gradle.caching=true
|
||||
android.useAndroidX=true
|
||||
android.defaults.buildfeatures.buildconfig=true
|
||||
android.nonTransitiveRClass=false
|
||||
android.nonFinalResIds=false
|
||||
|
9
android/gradle/libs.versions.toml
Normal file
9
android/gradle/libs.versions.toml
Normal file
@ -0,0 +1,9 @@
|
||||
[versions]
|
||||
revanced-patcher = "19.3.1" # TODO: Update to non-dev
|
||||
revanced-library = "2.2.1"
|
||||
desugar_jdk_libs = "2.1.2"
|
||||
|
||||
[libraries]
|
||||
revanced-patcher = { module = "app.revanced:revanced-patcher", version.ref = "revanced-patcher" }
|
||||
revanced-library = { module = "app.revanced:revanced-library", version.ref = "revanced-library" }
|
||||
desugar_jdk_libs = { module = "com.android.tools:desugar_jdk_libs", version.ref = "desugar_jdk_libs" }
|
@ -1,25 +0,0 @@
|
||||
pluginManagement {
|
||||
def flutterSdkPath = {
|
||||
def properties = new Properties()
|
||||
file("local.properties").withInputStream { properties.load(it) }
|
||||
def flutterSdkPath = properties.getProperty("flutter.sdk")
|
||||
assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
|
||||
return flutterSdkPath
|
||||
}
|
||||
settings.ext.flutterSdkPath = flutterSdkPath()
|
||||
|
||||
includeBuild("${settings.ext.flutterSdkPath}/packages/flutter_tools/gradle")
|
||||
|
||||
repositories {
|
||||
google()
|
||||
mavenCentral()
|
||||
}
|
||||
}
|
||||
|
||||
plugins {
|
||||
id "dev.flutter.flutter-plugin-loader" version "1.0.0"
|
||||
id "com.android.application" version "8.5.1" apply false
|
||||
id "org.jetbrains.kotlin.android" version "2.0.0" apply false
|
||||
}
|
||||
|
||||
include ":app"
|
24
android/settings.gradle.kts
Normal file
24
android/settings.gradle.kts
Normal file
@ -0,0 +1,24 @@
|
||||
pluginManagement {
|
||||
val properties = java.util.Properties().apply {
|
||||
load(file("local.properties").inputStream())
|
||||
}
|
||||
|
||||
val flutterSdkPath = properties.getProperty("flutter.sdk")
|
||||
assert(flutterSdkPath != null) { "flutter.sdk not set in local.properties" }
|
||||
|
||||
includeBuild("$flutterSdkPath/packages/flutter_tools/gradle")
|
||||
|
||||
repositories {
|
||||
google()
|
||||
mavenCentral()
|
||||
gradlePluginPortal()
|
||||
}
|
||||
}
|
||||
|
||||
plugins {
|
||||
id("dev.flutter.flutter-plugin-loader") version "1.0.0"
|
||||
id("com.android.application") version "8.7.0" apply false
|
||||
id("org.jetbrains.kotlin.android") version "2.0.20" apply false
|
||||
}
|
||||
|
||||
include(":app")
|
@ -55,7 +55,8 @@
|
||||
"widgetTitle": "Patcher",
|
||||
"patchButton": "Patch",
|
||||
"incompatibleArchWarningDialogText": "Patching on this architecture is not yet supported and might fail. Continue anyways?",
|
||||
"removedPatchesWarningDialogText": "The following patches have been removed since the last time you used them.\n\n${patches}\n\nContinue anyways?",
|
||||
"removedPatchesWarningDialogText": "Removed patches since the last time you patched this app:\n\n${patches}\n\n${newPatches}Continue anyways?",
|
||||
"addedPatchesDialogText": "Added patches since the last time you patched this app:\n\n${addedPatches}\n\n",
|
||||
"requiredOptionDialogText": "Some patch options have to be set."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
@ -290,4 +291,4 @@
|
||||
"install_failed_version_downgrade_description": "The installation failed due to the patched app being a lower version than the installed app.\n\nUninstall the app and try again?",
|
||||
"status_unknown_description": "The installation failed due to an unknown reason. Please try again."
|
||||
}
|
||||
}
|
||||
}
|
||||
|
0
assets/i18n/strings_af_ZA.i18n.json
Normal file → Executable file
0
assets/i18n/strings_af_ZA.i18n.json
Normal file → Executable file
0
assets/i18n/strings_am_ET.i18n.json
Normal file → Executable file
0
assets/i18n/strings_am_ET.i18n.json
Normal file → Executable file
2
assets/i18n/strings_ar_SA.i18n.json
Normal file → Executable file
2
assets/i18n/strings_ar_SA.i18n.json
Normal file → Executable file
@ -55,7 +55,7 @@
|
||||
"widgetTitle": "المُعَّدِّل",
|
||||
"patchButton": "تعديل",
|
||||
"incompatibleArchWarningDialogText": "لم يتم دعم التعديلات الخاصة بهذه البنية حتى الآن وقد تفشل. هل تريد المتابعة على أي حال؟",
|
||||
"removedPatchesWarningDialogText": "تم إزالة التعديلات التالية منذ آخر مرة استخدمتها فيها.\n\n${patches}\n\nتابع على أي حال؟",
|
||||
"removedPatchesWarningDialogText": "تم إزالة التعديلات التالية منذ آخر مرة استخدمتها فيها.\n\n${patches}\n\n${newPatches}تابع على أي حال؟",
|
||||
"requiredOptionDialogText": "يجب ضبط بعض خيارات التعديل."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
|
0
assets/i18n/strings_as_IN.i18n.json
Normal file → Executable file
0
assets/i18n/strings_as_IN.i18n.json
Normal file → Executable file
6
assets/i18n/strings_az_AZ.i18n.json
Normal file → Executable file
6
assets/i18n/strings_az_AZ.i18n.json
Normal file → Executable file
@ -25,7 +25,7 @@
|
||||
"updatesSubtitle": "Yeniləmələr",
|
||||
"lastPatchedAppSubtitle": "Son yamaqlanmış tətbiq",
|
||||
"patchedSubtitle": "Quraşdırılmış tətbiqlər",
|
||||
"changeLaterSubtitle": "Bunu daha sonra tənzimləmələrdə dəyişə bilərsiniz.",
|
||||
"changeLaterSubtitle": "Bunu sonra tənzimləmələrdə dəyişə bilərsiniz.",
|
||||
"noSavedAppFound": "Heç bir tətbiq tapılmadı",
|
||||
"noInstallations": "Yamaqlanmış tətbiq quraşdırılmayıb",
|
||||
"installUpdate": "Yeniləməni quraşdırmağa davam edilsin?",
|
||||
@ -55,7 +55,7 @@
|
||||
"widgetTitle": "Yamaqlayıcı",
|
||||
"patchButton": "Yamaqla",
|
||||
"incompatibleArchWarningDialogText": "Bu quruluşda yamaqlama hələ dəstəklənmir və uğursuz ola bilər. Yenə də davam edilsin?",
|
||||
"removedPatchesWarningDialogText": "Aşağıdakı yamaqlar son istifadənizdən bəri silindi.\n\n${patches}\n\nYenə də davam edilsin?",
|
||||
"removedPatchesWarningDialogText": "Aşağıdakı yamaqlar son istifadənizdən bəri silindi.\n\n${patches}\n\n${newPatches}Yenə də davam edilsin?",
|
||||
"requiredOptionDialogText": "Bəzi yamaq seçimləri təyin edilməlidir."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
@ -285,7 +285,7 @@
|
||||
"status_failure_invalid_description": "Yamaqlanmış tətbiq etibarsız olduğu üçün quraşdırma uğursuz oldu.\n\nTətbiqi silib yenidən sınayırsınız?",
|
||||
"status_failure_incompatible_description": "Tətbiq bu cihazla uyğun deyil.\n\nBu cihaz tərəfindən dəstəklənən APK istifadə et və təkrar cəhd et.",
|
||||
"status_failure_conflict_description": "Quraşdırma, tətbiqin mövcud quraşdırmasına görə əngəlləndi.\n\nQuraşdırılmış tətbiqi silib yenidən sınayırsınız?",
|
||||
"status_failure_blocked_description": "Quraşdırma, ${packageName} tərəfindən əngəlləndi.\n\nTəhlükəsizlik seçimlərinizi tənzimləyib yenidən sınayın.",
|
||||
"status_failure_blocked_description": "${packageName} quraşdırmanı əngəllədi.\n\nTəhlükəsizlik seçimlərinizi tənzimləyib yenidən sınayın.",
|
||||
"install_failed_verification_failure_description": "Təsdiqləmə probleminə görə quraşdırma uğursuz oldu.\n\nTəhlükəsizlik seçimlərinizi tənzimləyib təkrar sınayın.",
|
||||
"install_failed_version_downgrade_description": "Yamaqlanmış tətbiq, quraşdırılmış tətbiqdən daha aşağı versiyaya sahib olduğu üçün quraşdırma uğursuz oldu.\n\nTətbiqi silib yenidən sınayırsınız?",
|
||||
"status_unknown_description": "Naməlum səbəbə görə quraşdırma uğursuz oldu. Lütfən yenidən sınayın."
|
||||
|
2
assets/i18n/strings_be_BY.i18n.json
Normal file → Executable file
2
assets/i18n/strings_be_BY.i18n.json
Normal file → Executable file
@ -55,7 +55,7 @@
|
||||
"widgetTitle": "Праграма выпраўлення",
|
||||
"patchButton": "Выправіць",
|
||||
"incompatibleArchWarningDialogText": "Выпраўленні на гэтай архітэктуры пакуль не падтрымліваюцца і могуць не працаваць. Працягнуць?",
|
||||
"removedPatchesWarningDialogText": "Наступныя выпраўленні былі выдалены з моманту іх апошняга выкарыстання.\n\n${patches}\n\nУсё роўна працягнуць?",
|
||||
"removedPatchesWarningDialogText": "Наступныя выпраўленні былі выдалены з моманту іх апошняга выкарыстання.\n\n${patches}\n\n${newPatches}Усё роўна працягнуць?",
|
||||
"requiredOptionDialogText": "Неабходна задаць некаторыя параметры выпраўленняў."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
|
2
assets/i18n/strings_bg_BG.i18n.json
Normal file → Executable file
2
assets/i18n/strings_bg_BG.i18n.json
Normal file → Executable file
@ -55,7 +55,7 @@
|
||||
"widgetTitle": "Модификатор",
|
||||
"patchButton": "Модифицирайте",
|
||||
"incompatibleArchWarningDialogText": "Процесът на модифициране в момента не се поддържа на устройства с тази архитектура и може да се провали. Ще продължите ли?",
|
||||
"removedPatchesWarningDialogText": "Следните модификации са били премахнати след като са били употребени за последно от вас.\n\n${patches}\n\nПродължете въпреки това?",
|
||||
"removedPatchesWarningDialogText": "Следните модификации са били премахнати след като са били употребени за последно от вас.\n\n${patches}\n\n${newPatches}Продължете въпреки това?",
|
||||
"requiredOptionDialogText": "Опциите на някои модификации трябва да бъдат зададени."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
|
11
assets/i18n/strings_bn_BD.i18n.json
Normal file → Executable file
11
assets/i18n/strings_bn_BD.i18n.json
Normal file → Executable file
@ -23,7 +23,10 @@
|
||||
"refreshSuccess": "সফলভাবে রিফ্রেশ করা হয়েছে",
|
||||
"widgetTitle": "ড্যাশবোর্ড",
|
||||
"updatesSubtitle": "আপডেটসমূহ",
|
||||
"lastPatchedAppSubtitle": "সর্বশেষ প্যাচকৃত অ্যাপ",
|
||||
"patchedSubtitle": "ইনস্টল করা অ্যাপ",
|
||||
"changeLaterSubtitle": "পরবর্তীতে আপনি এটি সেটিং থেকে পরিবর্তন করতে পারবেন।",
|
||||
"noSavedAppFound": "কোনো অ্যাপ পাওয়া যায় নি",
|
||||
"noInstallations": "কোন প্যাচড অ্যাপ্লিকেশন ইনস্টল করা হয়নি",
|
||||
"installUpdate": "আপডেট ইনস্টল করতে এগিয়ে যেতে চান?",
|
||||
"updateSheetTitle": "ReVanced Manager আপডেট করুন",
|
||||
@ -51,7 +54,8 @@
|
||||
"patcherView": {
|
||||
"widgetTitle": "প্যাচার",
|
||||
"patchButton": "প্যাচ",
|
||||
"removedPatchesWarningDialogText": "আপনি এর আগে যখন ব্যবহার করেছিলেন তারপর এই প্যাচগুলো অপসারণ করা হয়।\n\n${patches}\n\nযেকোন ভাবে এগিয়ে যেতে চান?",
|
||||
"incompatibleArchWarningDialogText": "এই আর্কিটেকচারে প্যাচিং এখনো সমর্থিত নয় এবং সফল নাও হতে পারে। যেকোন ভাবে এগিয়ে যেতে চান?",
|
||||
"removedPatchesWarningDialogText": "আপনি এর আগে যখন ব্যবহার করেছিলেন তারপর এই প্যাচগুলো অপসারণ করা হয়।\n\n${patches}\n\n${newPatches}যেকোন ভাবে এগিয়ে যেতে চান?",
|
||||
"requiredOptionDialogText": "কিছু প্যাচ অপশন সেট করতে হবে।"
|
||||
},
|
||||
"appSelectorCard": {
|
||||
@ -100,11 +104,15 @@
|
||||
},
|
||||
"patchOptionsView": {
|
||||
"customValue": "কাস্টম ভ্যালু",
|
||||
"setToNull": "null সেট করুন",
|
||||
"nullValue": "এই অপশন ভ্যালু বর্তমানে null",
|
||||
"viewTitle": "প্যাচ অপশন",
|
||||
"saveOptions": "সংরক্ষণ করুন",
|
||||
"unselectPatch": "প্যাচ অনির্বাচন করুন",
|
||||
"tooltip": "আরও ইনপুট অপশন",
|
||||
"selectFilePath": "ফাইলের স্থান নির্বাচন করুন",
|
||||
"selectFolder": "ফোল্ডার নির্বাচন করুন",
|
||||
"requiredOption": "এই অপশনটি সেট করা আবশ্যক",
|
||||
"unsupportedOption": "এই অপশনসটি অসমর্থিত",
|
||||
"requiredOptionNull": "এই অপশনগুলো সেট করতে হবে:\n\n${options}"
|
||||
},
|
||||
@ -177,6 +185,7 @@
|
||||
"showUpdateDialogHint": "যখন হালনাগাদ উপলব্ধ থাকবে তখন একটি ডায়ালগ দেখান",
|
||||
"universalPatchesLabel": "বৈশ্বিক প্যাচসমূহ দেখান",
|
||||
"universalPatchesHint": "সকল অ্যাপ এবং বৈশ্বিক প্যাচসমূহ দেখায় (অ্যাপ লিস্ট দেখানো একটু ধীর হতে পারে)",
|
||||
"lastPatchedAppLabel": "প্যাচকৃত অ্যাপ সংরক্ষণ করুন",
|
||||
"versionCompatibilityCheckLabel": "সংস্করণ সামঞ্জস্যতা পরীক্ষা করা",
|
||||
"versionCompatibilityCheckHint": "নির্বাচিত অ্যাপ সংস্করণের সাথে সামঞ্জস্যপূর্ণ নয় এমন প্যাচ নির্বাচন করা আটকায়",
|
||||
"requireSuggestedAppVersionLabel": "প্রস্তাবিত অ্যাপ সংস্করণ প্রয়োজন",
|
||||
|
0
assets/i18n/strings_bs_BA.i18n.json
Normal file → Executable file
0
assets/i18n/strings_bs_BA.i18n.json
Normal file → Executable file
0
assets/i18n/strings_ca_ES.i18n.json
Normal file → Executable file
0
assets/i18n/strings_ca_ES.i18n.json
Normal file → Executable file
2
assets/i18n/strings_cs_CZ.i18n.json
Normal file → Executable file
2
assets/i18n/strings_cs_CZ.i18n.json
Normal file → Executable file
@ -55,7 +55,7 @@
|
||||
"widgetTitle": "Záplatovač",
|
||||
"patchButton": "Záplatovat",
|
||||
"incompatibleArchWarningDialogText": "Úprava této architektury není zatím podporována a může selhat. Přesto pokračovat?",
|
||||
"removedPatchesWarningDialogText": "Následující záplaty byly odstraněny od doby, kdy jste je naposledy použili.\n\n${patches}\n\nPřesto pokračovat?",
|
||||
"removedPatchesWarningDialogText": "Následující záplaty byly odstraněny od doby, kdy jste je naposledy použili.\n\n${patches}\n\n${newPatches}Přesto pokračovat?",
|
||||
"requiredOptionDialogText": "Je třeba nastavit některé možnosti záplat."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
|
2
assets/i18n/strings_da_DK.i18n.json
Normal file → Executable file
2
assets/i18n/strings_da_DK.i18n.json
Normal file → Executable file
@ -55,7 +55,7 @@
|
||||
"widgetTitle": "Patcher",
|
||||
"patchButton": "Patch",
|
||||
"incompatibleArchWarningDialogText": "Patching på denne arkitektur understøttes endnu ikke og kan mislykkes. Fortsæt alligevel?",
|
||||
"removedPatchesWarningDialogText": "Følgende patches er blevet fjernet siden sidste gang du brugte dem.\n\n${patches}\n\nFortsæt alligevel?",
|
||||
"removedPatchesWarningDialogText": "Følgende patches er blevet fjernet siden sidste gang du brugte dem.\n\n${patches}\n\n${newPatches}Fortsæt alligevel?",
|
||||
"requiredOptionDialogText": "Nogle patch muligheder skal indstilles."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
|
2
assets/i18n/strings_de_DE.i18n.json
Normal file → Executable file
2
assets/i18n/strings_de_DE.i18n.json
Normal file → Executable file
@ -55,7 +55,7 @@
|
||||
"widgetTitle": "Patcher",
|
||||
"patchButton": "Patchen",
|
||||
"incompatibleArchWarningDialogText": "Patches auf dieser Architektur werden noch nicht unterstützt und könnten fehlschlagen. Trotzdem fortfahren?",
|
||||
"removedPatchesWarningDialogText": "Die folgenden Patches wurden seit der letzten Verwendung entfernt.\n\n${patches}\n\nTrotzdem fortfahren?",
|
||||
"removedPatchesWarningDialogText": "Die folgenden Patches wurden seit der letzten Verwendung entfernt.\n\n${patches}\n\n${newPatches}Trotzdem fortfahren?",
|
||||
"requiredOptionDialogText": "Einige Patch-Optionen müssen gesetzt werden."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
|
2
assets/i18n/strings_el_GR.i18n.json
Normal file → Executable file
2
assets/i18n/strings_el_GR.i18n.json
Normal file → Executable file
@ -55,7 +55,7 @@
|
||||
"widgetTitle": "Τροποποιητής",
|
||||
"patchButton": "Τροποποίηση",
|
||||
"incompatibleArchWarningDialogText": "Η διαδικασία της τροποποίησης δεν υποστηρίζεται προς το παρόν σε συσκευές της συγκεκριμένης αρχιτεκτονικής και μπορεί να αποτύχει. Συνέχεια παρόλα αυτά;",
|
||||
"removedPatchesWarningDialogText": "Οι παρακάτω τροποποιήσεις αφαιρέθηκαν από την τελευταία φορά που τις χρησιμοποιήσατε.\n\n${patches}\n\nΣυνέχεια παρόλα αυτά;",
|
||||
"removedPatchesWarningDialogText": "Οι παρακάτω τροποποιήσεις αφαιρέθηκαν από την τελευταία φορά που τις χρησιμοποιήσατε.\n\n${patches}\n\n${newPatches}Συνέχεια παρόλα αυτά;",
|
||||
"requiredOptionDialogText": "Κάποιες επιλογές τροποποιήσεων πρέπει να οριστούν."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
|
@ -52,7 +52,7 @@
|
||||
"patcherView": {
|
||||
"widgetTitle": "Parcheador",
|
||||
"patchButton": "Parchear",
|
||||
"removedPatchesWarningDialogText": "Los siguientes parches fueron eliminados desde la última vez que los usaste.\n\n${patches}\n\n¿Continuar de todas formas?",
|
||||
"removedPatchesWarningDialogText": "Los siguientes parches fueron eliminados desde la última vez que los usaste.\n\n${patches}\n\n${newPatches}¿Continuar de todas formas?",
|
||||
"requiredOptionDialogText": "Algunas opciones de parche tienen que ser establecidas."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
|
2
assets/i18n/strings_es_ES.i18n.json
Normal file → Executable file
2
assets/i18n/strings_es_ES.i18n.json
Normal file → Executable file
@ -55,7 +55,7 @@
|
||||
"widgetTitle": "Parcheador",
|
||||
"patchButton": "Parchear",
|
||||
"incompatibleArchWarningDialogText": "El parche en esta arquitectura aún no está soportado y podría fallar. ¿Continuar de todos modos?",
|
||||
"removedPatchesWarningDialogText": "Los siguientes parches han sido eliminados desde la última vez que los usaste.\n\n${patches}\n\n¿Continuar de todos modos?",
|
||||
"removedPatchesWarningDialogText": "Los siguientes parches han sido eliminados desde la última vez que los usaste.\n\n${patches}\n\n${newPatches}¿Continuar de todos modos?",
|
||||
"requiredOptionDialogText": "Deben establecerse algunas opciones de parche."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
|
@ -52,7 +52,7 @@
|
||||
"patcherView": {
|
||||
"widgetTitle": "Parcheador",
|
||||
"patchButton": "Parchear",
|
||||
"removedPatchesWarningDialogText": "Los siguientes parches fueron removidos desde la última vez que los usaste.\n\n${patches}\n\n¿Quieres continuar de todas formas?",
|
||||
"removedPatchesWarningDialogText": "Los siguientes parches fueron removidos desde la última vez que los usaste.\n\n${patches}\n\n${newPatches}¿Quieres continuar de todas formas?",
|
||||
"requiredOptionDialogText": "Algunas opciones de parche tienen que ser establecidas."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
|
2
assets/i18n/strings_et_EE.i18n.json
Normal file → Executable file
2
assets/i18n/strings_et_EE.i18n.json
Normal file → Executable file
@ -51,7 +51,7 @@
|
||||
"patcherView": {
|
||||
"widgetTitle": "Parandaja",
|
||||
"patchButton": "Parandus",
|
||||
"removedPatchesWarningDialogText": "Väljatoodud parandused on vahepeal eemaldatud.\n\n${patches}\n\nJätka ikkagi? ",
|
||||
"removedPatchesWarningDialogText": "Väljatoodud parandused on vahepeal eemaldatud.\n\n${patches}\n\n${newPatches}Jätka ikkagi? ",
|
||||
"requiredOptionDialogText": "Mõned paranduste sätted on vaja valida. "
|
||||
},
|
||||
"appSelectorCard": {
|
||||
|
0
assets/i18n/strings_eu_ES.i18n.json
Normal file → Executable file
0
assets/i18n/strings_eu_ES.i18n.json
Normal file → Executable file
0
assets/i18n/strings_fa_IR.i18n.json
Normal file → Executable file
0
assets/i18n/strings_fa_IR.i18n.json
Normal file → Executable file
14
assets/i18n/strings_fi_FI.i18n.json
Normal file → Executable file
14
assets/i18n/strings_fi_FI.i18n.json
Normal file → Executable file
@ -1,7 +1,7 @@
|
||||
{
|
||||
"okButton": "OK",
|
||||
"cancelButton": "Peruuta",
|
||||
"dismissButton": "Sulje",
|
||||
"dismissButton": "Hylkää",
|
||||
"quitButton": "Sulje",
|
||||
"updateButton": "Päivitä",
|
||||
"suggested": "Ehdotettu: ${version}",
|
||||
@ -55,7 +55,7 @@
|
||||
"widgetTitle": "Paikkaaja",
|
||||
"patchButton": "Paikkaa",
|
||||
"incompatibleArchWarningDialogText": "Paikkaamista ei vielä tueta tällä kokoonpanolla, ja se saattaa epäonnistua. Jatketaanko silti?",
|
||||
"removedPatchesWarningDialogText": "Seuraavat paikkaukset on poistettu edellisen käyttökerran jälkeen.\n\n${patches}\n\nJatketaanko silti?",
|
||||
"removedPatchesWarningDialogText": "Seuraavat paikkaukset on poistettu edellisen käyttökerran jälkeen.\n\n${patches}\n\n${newPatches}Jatketaanko silti?",
|
||||
"requiredOptionDialogText": "Joitakin paikkausasetuksia on määritettävä."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
@ -82,7 +82,7 @@
|
||||
"selectFromStorageButton": "Valitse tallennustilasta",
|
||||
"errorMessage": "Valittua sovellusta ei voida käyttää",
|
||||
"downloadToast": "Lataustoiminto ei ole vielä käytettävissä",
|
||||
"requireSuggestedAppVersionDialogText": "Valitsemasi sovellusversio ei vastaa ehdotettua versiota ja tämä voi johtaa odottamattomia ongelmia. Käytä ehdotettua sovellusversiota.\n\nValittu versio: v${selected}\nEhdotettu versio: v${suggested}\n\nOhittaaksesi tämän, ota \"Vaadi ehdotettu sovellusversio\" -asetus käyttöön.",
|
||||
"requireSuggestedAppVersionDialogText": "Valitsemasi sovellusversio ei vastaa ehdotettua versiota ja tämä voi aiheuttaa odottamattomia ongelmia. Käytä ehdotettua sovellusversiota.\n\nValittu versio: v${selected}\nEhdotettu versio: v${suggested}\n\nOhittaaksesi tämän, ota \"Vaadi ehdotettu sovellusversio\" -asetus käyttöön.",
|
||||
"featureNotAvailable": "Ominaisuutta ei ole toteutettu",
|
||||
"featureNotAvailableText": "Tämä sovellus on jaettu APK ja se voidaan paikata ja asentaa luotettavasti vain root-oikeuksilla liitettynä. Voit kuitenkin paikata ja asentaa täyden APK:n valitsemalla sen tallennustilasta."
|
||||
},
|
||||
@ -100,19 +100,19 @@
|
||||
"loadPatchesSelection": "Lataa paikkausvalikoima",
|
||||
"noSavedPatches": "Valitulle sovellukselle ei ole tallennettu paikkausvalikoimaa.\nTallenna nykyinen valikoima painamalla \"Valmis\".",
|
||||
"noPatchesFound": "Valitulle sovellukselle ei löytynyt paikkauksia",
|
||||
"setRequiredOption": "Joillekin paikkauksille on määritettävä asetuksia:\n\n${patches}\n\nTee tarvittavat määritykset ennen kuin jatkat."
|
||||
"setRequiredOption": "Joillekin paikkauksille on määritettävä asetuksia:\n\n${patches}\n\nMääritä ne ennen kuin jatkat."
|
||||
},
|
||||
"patchOptionsView": {
|
||||
"customValue": "Oma arvo",
|
||||
"setToNull": "Aseta nollaksi",
|
||||
"nullValue": "Tämän asetuksen arvo on tällä hetkellä nolla",
|
||||
"nullValue": "Tämän asetuksen arvo on tällä hetkellä tyhjä",
|
||||
"viewTitle": "Paikkausasetukset",
|
||||
"saveOptions": "Tallenna",
|
||||
"unselectPatch": "Poista paikkauksen valinta",
|
||||
"tooltip": "Enemmän syöttöasetuksia",
|
||||
"selectFilePath": "Valitse tiedostosijainti",
|
||||
"selectFolder": "Valitse kansio",
|
||||
"requiredOption": "Tämän asetuksen asettaminen on pakollinen",
|
||||
"requiredOption": "Tämän valinnan asettaminen on pakollista",
|
||||
"unsupportedOption": "Tätä asetusta ei tueta",
|
||||
"requiredOptionNull": "Seuraavat asetukset on määritettävä:\n\n${options}"
|
||||
},
|
||||
@ -198,7 +198,7 @@
|
||||
"deleteTempDirLabel": "Poista väliaikaistiedostot",
|
||||
"deleteTempDirHint": "Poista käyttämättömät väliaikaistiedostot",
|
||||
"deletedTempDir": "Väliaikaistiedostot poistettiin",
|
||||
"exportPatchesLabel": "Vie paikkasvalikoima",
|
||||
"exportPatchesLabel": "Vie paikkausvalikoima",
|
||||
"exportPatchesHint": "Vie paikkausvalikoima JSON-tiedostoon",
|
||||
"exportedPatches": "Paikkausvalikoima vietiin",
|
||||
"noExportFileFound": "Vietäviä paikkausvalikoimia ei ole",
|
||||
|
2
assets/i18n/strings_fil_PH.i18n.json
Normal file → Executable file
2
assets/i18n/strings_fil_PH.i18n.json
Normal file → Executable file
@ -52,7 +52,7 @@
|
||||
"patcherView": {
|
||||
"widgetTitle": "Tagapagtapal",
|
||||
"patchButton": "Tapalan",
|
||||
"removedPatchesWarningDialogText": "Ang mga sumusunod na patches ay tinanggal mula noong huling beses mong gamitin ang mga ito.\n\n${patches}\n\nItuloy pa rin ba?",
|
||||
"removedPatchesWarningDialogText": "Ang mga sumusunod na patches ay tinanggal mula noong huling beses mong gamitin ang mga ito.\n\n${patches}\n\n${newPatches}Ituloy pa rin ba?",
|
||||
"requiredOptionDialogText": "Kailangan mo i-set ang ilang mga opsyon para sa patch."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
|
2
assets/i18n/strings_fr_FR.i18n.json
Normal file → Executable file
2
assets/i18n/strings_fr_FR.i18n.json
Normal file → Executable file
@ -55,7 +55,7 @@
|
||||
"widgetTitle": "Patcheur",
|
||||
"patchButton": "Patcher",
|
||||
"incompatibleArchWarningDialogText": "La correction sur cette architecture n'est pas encore prise en charge et pourrait échouer. Continuer quand même ?",
|
||||
"removedPatchesWarningDialogText": "Les patchs suivants ont été supprimés depuis la dernière fois que vous les avez utilisés.\n\n${patches}\n\nContinuer quand même ?",
|
||||
"removedPatchesWarningDialogText": "Les patchs suivants ont été supprimés depuis la dernière fois que vous les avez utilisés.\n\n${patches}\n\n${newPatches}Continuer quand même ?",
|
||||
"requiredOptionDialogText": "Certaines options de patch doivent être définies."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
|
2
assets/i18n/strings_ga_IE.i18n.json
Normal file → Executable file
2
assets/i18n/strings_ga_IE.i18n.json
Normal file → Executable file
@ -55,7 +55,7 @@
|
||||
"widgetTitle": "Paisteálaí",
|
||||
"patchButton": "Paiste",
|
||||
"incompatibleArchWarningDialogText": "Níl paisteáil ar an ailtireacht seo tacaítear leis go fóill agus d’fhéadfadh sé teip. Lean ar aghaidh fós?",
|
||||
"removedPatchesWarningDialogText": "Baineadh na paistí seo a leanas ón uair dheireanach a d'úsáid tú iad.\n\n${patches}\n\nLean ar aghaidh fós?",
|
||||
"removedPatchesWarningDialogText": "Baineadh na paistí seo a leanas ón uair dheireanach a d'úsáid tú iad.\n\n${patches}\n\n${newPatches}Lean ar aghaidh fós?",
|
||||
"requiredOptionDialogText": "Caithfear roinnt roghanna paiste a shocrú."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
|
0
assets/i18n/strings_gl_ES.i18n.json
Normal file → Executable file
0
assets/i18n/strings_gl_ES.i18n.json
Normal file → Executable file
0
assets/i18n/strings_gu_IN.i18n.json
Normal file → Executable file
0
assets/i18n/strings_gu_IN.i18n.json
Normal file → Executable file
2
assets/i18n/strings_he_IL.i18n.json
Normal file → Executable file
2
assets/i18n/strings_he_IL.i18n.json
Normal file → Executable file
@ -51,7 +51,7 @@
|
||||
"patcherView": {
|
||||
"widgetTitle": "Patcher",
|
||||
"patchButton": "תיקון",
|
||||
"removedPatchesWarningDialogText": "התיקונים הבאים הוסרו מאז הפעם האחרונה שהשתמשת בהם.\n${patches}\nלהמשיך בכל זאת?",
|
||||
"removedPatchesWarningDialogText": "התיקונים הבאים הוסרו מאז הפעם האחרונה שהשתמשת בהם.\n\n${patches}\n\n${newPatches}להמשיך בכל זאת?",
|
||||
"requiredOptionDialogText": "כמה אפשרויות תיקון חייבות להיקבע."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
|
0
assets/i18n/strings_hi_IN.i18n.json
Normal file → Executable file
0
assets/i18n/strings_hi_IN.i18n.json
Normal file → Executable file
0
assets/i18n/strings_hr_HR.i18n.json
Normal file → Executable file
0
assets/i18n/strings_hr_HR.i18n.json
Normal file → Executable file
2
assets/i18n/strings_hu_HU.i18n.json
Normal file → Executable file
2
assets/i18n/strings_hu_HU.i18n.json
Normal file → Executable file
@ -55,7 +55,7 @@
|
||||
"widgetTitle": "Patchelő",
|
||||
"patchButton": "Patch",
|
||||
"incompatibleArchWarningDialogText": "Ezen az architektúrán a patchelés még nem támogatott, és sikertelen lehet. Mégis folytatod?",
|
||||
"removedPatchesWarningDialogText": "A következő patcheket a legutóbbi használatuk óta eltávolították.\n\n${patches}\n\nMindenképpen folytatja?",
|
||||
"removedPatchesWarningDialogText": "A következő patcheket a legutóbbi használatuk óta eltávolították.\n\n${patches}\n\n${newPatches}Mindenképpen folytatja?",
|
||||
"requiredOptionDialogText": "Néhány patch lehetőséget be kell állítani."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
|
0
assets/i18n/strings_hy_AM.i18n.json
Normal file → Executable file
0
assets/i18n/strings_hy_AM.i18n.json
Normal file → Executable file
42
assets/i18n/strings_id_ID.i18n.json
Normal file → Executable file
42
assets/i18n/strings_id_ID.i18n.json
Normal file → Executable file
@ -23,11 +23,11 @@
|
||||
"refreshSuccess": "Berhasil Memuat Ulang",
|
||||
"widgetTitle": "Dasbor",
|
||||
"updatesSubtitle": "Pembaruan",
|
||||
"lastPatchedAppSubtitle": "Patch terakhir app",
|
||||
"patchedSubtitle": "App terinstal",
|
||||
"lastPatchedAppSubtitle": "Aplikasi terakhir yang ditambal",
|
||||
"patchedSubtitle": "Aplikasi terpasang",
|
||||
"changeLaterSubtitle": "Anda dapat mengubahnya di pengaturan nanti.",
|
||||
"noSavedAppFound": "App tidak ditemukan",
|
||||
"noInstallations": "Aplikasi tambalan tidak terpasang",
|
||||
"noInstallations": "Aplikasi tertambal tidak terpasang",
|
||||
"installUpdate": "Lanjutkan untuk mengunduh pembaruan?",
|
||||
"updateSheetTitle": "Perbarui Manajer ReVanced",
|
||||
"updateDialogTitle": "Pembaruan terkini telah tersedia",
|
||||
@ -54,9 +54,9 @@
|
||||
"patcherView": {
|
||||
"widgetTitle": "Penambal",
|
||||
"patchButton": "Tambalan",
|
||||
"incompatibleArchWarningDialogText": "Patching pada arsitektur ini belum didukung dan mungkin gagal. Lanjutkan saja?",
|
||||
"removedPatchesWarningDialogText": "Patch berikut telah dihapus sejak terakhir kali Anda menggunakannya.\n\n${patches}\n\nTetap lanjut?",
|
||||
"requiredOptionDialogText": "Beberapa opsi patch harus diatur."
|
||||
"incompatibleArchWarningDialogText": "Menambal pada arsitektur ini belum didukung dan kemungkinan gagal. Lanjutkan saja?",
|
||||
"removedPatchesWarningDialogText": "Tambalan berikut telah dihapus sejak terakhir kali Anda menggunakannya.\n\n${patches}\n\n${newPatches}Tetap lanjut?",
|
||||
"requiredOptionDialogText": "Beberapa pilihan tambalan harus diatur."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
"widgetTitle": "Pilih aplikasi",
|
||||
@ -84,32 +84,32 @@
|
||||
"downloadToast": "Fungsi mengunduh belum tersedia",
|
||||
"requireSuggestedAppVersionDialogText": "Versi aplikasi yang Anda pilih tidak sesuai dengan versi yang disarankan yang dapat menyebabkan masalah yang tidak diharapkan. Silakan gunakan versi yang disarankan.\n\nVersi yang dipilih: ${selected}\nVersi yang disarankan: ${suggested}\n\nUntuk melanjutkan, nonaktifkan \"Memerlukan versi aplikasi yang disarankan\" di pengaturan.",
|
||||
"featureNotAvailable": "Fitur tidak diimplementasi",
|
||||
"featureNotAvailableText": "Aplikasi ini adalah APK terpisah yang hanya dapat ditambal dan dipasang melalui cara mount dengan izin root. Namun, APK lengkap dapat Anda tambal dan pasang dengan memilihnya dari penyimpanan."
|
||||
"featureNotAvailableText": "Aplikasi ini adalah APK terpisah yang hanya dapat ditambal dan dipasang melalui cara mount dengan izin root. Namun, Anda dapat menambal dan memasang APK lengkap dengan memilihnya dari penyimpanan."
|
||||
},
|
||||
"patchesSelectorView": {
|
||||
"viewTitle": "Pilih tambalan",
|
||||
"searchBarHint": "Cari tambalan",
|
||||
"universalPatches": "Patch universal",
|
||||
"newPatches": "Patch baru",
|
||||
"patches": "Patch",
|
||||
"universalPatches": "Tambalan universal",
|
||||
"newPatches": "Tambalan baru",
|
||||
"patches": "Tambalan",
|
||||
"doneButton": "Selesai",
|
||||
"defaultChip": "Bawaan",
|
||||
"defaultTooltip": "Pilih semua tambalan bawaan",
|
||||
"noneChip": "Tidak ada",
|
||||
"noneTooltip": "Batalkan semua tambalan",
|
||||
"loadPatchesSelection": "Muat patch terpilih",
|
||||
"loadPatchesSelection": "Muat tambalan terpilih",
|
||||
"noSavedPatches": "Tidak ada pilihan tambalan yang disimpan untuk aplikasi yang dipilih.\nTekan Selesai untuk menyimpan pilihan saat ini.",
|
||||
"noPatchesFound": "Tidak ada tambalan untuk aplikasi",
|
||||
"setRequiredOption": "Beberapa patch memerlukan opsi untuk diatur:\n\n${patches}\n\nAturlah sebelum melanjutkan."
|
||||
"setRequiredOption": "Beberapa tambalan memerlukan pilihan untuk diatur:\n\n${patches}\n\nAturlah sebelum melanjutkan."
|
||||
},
|
||||
"patchOptionsView": {
|
||||
"customValue": "Nilai kustom",
|
||||
"setToNull": "Setel ke null",
|
||||
"nullValue": "Nilai opsi ini saat ini adalah null",
|
||||
"viewTitle": "Opsi tambalan",
|
||||
"nullValue": "Nilai pilihan ini saat ini adalah null",
|
||||
"viewTitle": "Pilihan tambalan",
|
||||
"saveOptions": "Simpan",
|
||||
"unselectPatch": "Batalkan pilihan patch",
|
||||
"tooltip": "Opsi masukan lainnya",
|
||||
"unselectPatch": "Batalkan pilihan tambalan",
|
||||
"tooltip": "Pilihan masukan lainnya",
|
||||
"selectFilePath": "Pilih lokasi berkas",
|
||||
"selectFolder": "Pilih folder",
|
||||
"requiredOption": "Pengaturan opsi ini diperlukan",
|
||||
@ -117,10 +117,10 @@
|
||||
"requiredOptionNull": "Pilihan ini harus terpilih:\n\n${options}"
|
||||
},
|
||||
"patchItem": {
|
||||
"unsupportedDialogText": "Memilih tambalan ini akan menyebabkan galat tambal.\n\nVersi apli: ${packageVersion}\nVersi anjuran:\n${supportedVersions}",
|
||||
"unsupportedDialogText": "Memilih tambalan ini akan menyebabkan kegagalan tambal.\n\nVersi apli: ${packageVersion}\nVersi anjuran:\n${supportedVersions}",
|
||||
"unsupportedPatchVersion": "Tambalan ini tidak mendukung versi aplikasi ini.",
|
||||
"unsupportedRequiredOption": "Patch ini berisi opsi wajib yang tidak didukung oleh aplikasi ini",
|
||||
"patchesChangeWarningDialogText": "Direkomendasikan untuk menggunakan pilihan dan opsi tambalan default. Mengubahnya dapat mengakibatkan masalah yang tidak diharapkan.\n\nAnda harus mengaktifkan \"Izinkan perubahan pilihan tambalan\" dalam pengaturan sebelum mengubah pilihan tambalan.",
|
||||
"unsupportedRequiredOption": "Tambalan ini berisi opsi wajib yang tidak didukung oleh aplikasi ini",
|
||||
"patchesChangeWarningDialogText": "Direkomendasikan untuk menggunakan pilihan dan opsi tambalan bawaan. Mengubahnya dapat mengakibatkan masalah yang tidak diharapkan.\n\nAnda harus mengaktifkan \"Izinkan perubahan pilihan tambalan\" dalam pengaturan sebelum mengubah pilihan tambalan.",
|
||||
"patchesChangeWarningDialogButton": "Gunakan pemilihan bawaan"
|
||||
},
|
||||
"installerView": {
|
||||
@ -279,7 +279,7 @@
|
||||
"status_unknown": "Pemasangan gagal",
|
||||
"mount_version_mismatch_description": "Penginstalan gagal karena aplikasi yang diinstal merupakan versi yang berbeda dari aplikasi yang ditambal.\n\nInstal versi aplikasi yang anda pasang dan coba lagi.",
|
||||
"mount_no_root_description": "Pemasangan ini gagal karena akses root belum dizinkan.\n\nIzinkan akses root ke ReVanced Manager dan coba lagi.",
|
||||
"mount_missing_installation_description": "Penginstalan gagal karena aplikasi yang belum ditambal tidak diinstal pada perangkat ini untuk dipasang di atasnya.\n\nInstal aplikasi yang belum ditambal sebelum memasang dan coba lagi.",
|
||||
"mount_missing_installation_description": "Pemasangan gagal karena aplikasi yang belum ditambal tidak terpasang pada perangkat ini supaya dipasang di atasnya.\n\nPasang aplikasi yang belum ditambal sebelum memasang dan coba lagi.",
|
||||
"status_failure_timeout_description": "Instalasi memakan waktu terlalu lama untuk diselesaikan.\n\nApakah anda ingin mencoba lagi?",
|
||||
"status_failure_storage_description": "Instalasi gagal karena penyimpanan tidak mencukupi.\n\nKosongkan sebagian ruang dan coba kembali.",
|
||||
"status_failure_invalid_description": "Instalasi gagal karena aplikasi yang ditambal tidak valid.\n\nCopot pemasangan aplikasi dan coba lagi?",
|
||||
@ -287,7 +287,7 @@
|
||||
"status_failure_conflict_description": "Penginstalan dicegah oleh aplikasi yang sudah ada.\n\nCopot pemasangan aplikasi yang terpasang dan coba kembali?",
|
||||
"status_failure_blocked_description": "Instalasi diblokir oleh ${packageName}.\n\nSesuaikan pengaturan keamanan anda dan coba kembali.",
|
||||
"install_failed_verification_failure_description": "Instalasi gagal karena masalah verifikasi.\n\nSesuaikan pengaturan keamanan anda dan coba kembali.",
|
||||
"install_failed_version_downgrade_description": "Instalasi gagal karena aplikasi tambalan memiliki versi yang lebih rendah daripada aplikasi yang sudah ada.\n\nCopot pemasangan aplikasi dan coba kembali?",
|
||||
"install_failed_version_downgrade_description": "Pemasangan gagal karena aplikasi tambalan memiliki versi yang lebih rendah daripada aplikasi yang sudah terpasang.\n\nCopot pemasangan aplikasi dan coba kembali?",
|
||||
"status_unknown_description": "Instalasi gagal karena alasan yang tidak diketahui. Silakan coba kembali."
|
||||
}
|
||||
}
|
2
assets/i18n/strings_is_IS.i18n.json
Normal file → Executable file
2
assets/i18n/strings_is_IS.i18n.json
Normal file → Executable file
@ -51,7 +51,7 @@
|
||||
"patcherView": {
|
||||
"widgetTitle": "Patcher",
|
||||
"patchButton": "Bót",
|
||||
"removedPatchesWarningDialogText": "Eftirfarandi patches hafa verið fjarlægðir síðan þú notaðir þá síðast.\n\n${patches}\n\nHalda samt áfram?",
|
||||
"removedPatchesWarningDialogText": "Eftirfarandi patches hafa verið fjarlægðir síðan þú notaðir þá síðast.\n\n${patches}\n\n${newPatches}Halda samt áfram?",
|
||||
"requiredOptionDialogText": "Það þarf að stilla nokkra patch valkosti."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
|
2
assets/i18n/strings_it_IT.i18n.json
Normal file → Executable file
2
assets/i18n/strings_it_IT.i18n.json
Normal file → Executable file
@ -55,7 +55,7 @@
|
||||
"widgetTitle": "Patcher",
|
||||
"patchButton": "Patch",
|
||||
"incompatibleArchWarningDialogText": "La patch su questa architettura non è ancora supportata e potrebbe fallire. Continuare comunque?",
|
||||
"removedPatchesWarningDialogText": "Le seguenti patch sono state rimosse dall'ultima volta che le hai usate.\n\n${patches}\n\nContinuare comunque?",
|
||||
"removedPatchesWarningDialogText": "Le seguenti patch sono state rimosse dall'ultima volta che le hai usate.\n\n${patches}\n\n${newPatches}Continuare comunque?",
|
||||
"requiredOptionDialogText": "Alcune opzioni di patch devono essere impostate."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
|
2
assets/i18n/strings_ja_JP.i18n.json
Normal file → Executable file
2
assets/i18n/strings_ja_JP.i18n.json
Normal file → Executable file
@ -55,7 +55,7 @@
|
||||
"widgetTitle": "パッチャー",
|
||||
"patchButton": "パッチ",
|
||||
"incompatibleArchWarningDialogText": "このアーキテクチャへのパッチ適用はまだサポートされておらず、失敗する可能性があります。とにかく続けますか?",
|
||||
"removedPatchesWarningDialogText": "以下のパッチはもう使用できません。\n\n${patches}\n\n続行しますか?",
|
||||
"removedPatchesWarningDialogText": "以下のパッチはもう使用できません。\n\n${patches}\n\n${newPatches}続行しますか?",
|
||||
"requiredOptionDialogText": "一部のパッチオプションを設定する必要があります。"
|
||||
},
|
||||
"appSelectorCard": {
|
||||
|
0
assets/i18n/strings_ka_GE.i18n.json
Normal file → Executable file
0
assets/i18n/strings_ka_GE.i18n.json
Normal file → Executable file
0
assets/i18n/strings_kk_KZ.i18n.json
Normal file → Executable file
0
assets/i18n/strings_kk_KZ.i18n.json
Normal file → Executable file
0
assets/i18n/strings_km_KH.i18n.json
Normal file → Executable file
0
assets/i18n/strings_km_KH.i18n.json
Normal file → Executable file
0
assets/i18n/strings_kn_IN.i18n.json
Normal file → Executable file
0
assets/i18n/strings_kn_IN.i18n.json
Normal file → Executable file
4
assets/i18n/strings_ko_KR.i18n.json
Normal file → Executable file
4
assets/i18n/strings_ko_KR.i18n.json
Normal file → Executable file
@ -55,7 +55,7 @@
|
||||
"widgetTitle": "Patcher",
|
||||
"patchButton": "패치하기",
|
||||
"incompatibleArchWarningDialogText": "이 아키텍처에 대한 패치는 아직 지원되지 않으므로 실패할 수 있습니다. 그래도 계속하시겠습니까?",
|
||||
"removedPatchesWarningDialogText": "최근 적용된 패치들 중 다음 패치가 제거됩니다.\n\n${patches}\n\n그래도 계속하시겠습니까?",
|
||||
"removedPatchesWarningDialogText": "최근 적용된 패치들 중 다음 패치가 제거됩니다.\n\n${patches}\n\n${newPatches}그래도 계속하시겠습니까?",
|
||||
"requiredOptionDialogText": "일부 패치 옵션을 설정해야 합니다."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
@ -186,7 +186,7 @@
|
||||
"universalPatchesLabel": "공용 패치 보기",
|
||||
"universalPatchesHint": "기기에 설치된 모든 앱과 공용 패치를 표시합니다 (앱 목록이 느려질 수 있음)",
|
||||
"lastPatchedAppLabel": "패치된 앱 저장",
|
||||
"lastPatchedAppHint": "나중에 설치하거나 내보낼 마지막으로 패치된 앱을 저장할 수 있습니다",
|
||||
"lastPatchedAppHint": "마지막으로 패치된 앱을 저장하여 나중에 설치하거나 내보낼 수 있습니다",
|
||||
"versionCompatibilityCheckLabel": "버전 호환성 체크",
|
||||
"versionCompatibilityCheckHint": "선택한 앱 버전과 호환되지 않는 패치를 선택할 수 없습니다",
|
||||
"requireSuggestedAppVersionLabel": "권장 앱 버전 요구",
|
||||
|
0
assets/i18n/strings_ky_KG.i18n.json
Normal file → Executable file
0
assets/i18n/strings_ky_KG.i18n.json
Normal file → Executable file
0
assets/i18n/strings_lo_LA.i18n.json
Normal file → Executable file
0
assets/i18n/strings_lo_LA.i18n.json
Normal file → Executable file
0
assets/i18n/strings_lt_LT.i18n.json
Normal file → Executable file
0
assets/i18n/strings_lt_LT.i18n.json
Normal file → Executable file
2
assets/i18n/strings_lv_LV.i18n.json
Normal file → Executable file
2
assets/i18n/strings_lv_LV.i18n.json
Normal file → Executable file
@ -50,7 +50,7 @@
|
||||
"patcherView": {
|
||||
"widgetTitle": "Pačeris",
|
||||
"patchButton": "Pačot",
|
||||
"removedPatchesWarningDialogText": "Kopš pēdējās lietošanas reizes ir noņemti šādi ielāpi.\n\n${patches}\n\nTurpināt jebkurā gadījumā?"
|
||||
"removedPatchesWarningDialogText": "Kopš pēdējās lietošanas reizes ir noņemti šādi ielāpi.\n\n${patches}\n\n${newPatches}Turpināt jebkurā gadījumā?"
|
||||
},
|
||||
"appSelectorCard": {
|
||||
"widgetTitle": "Izvēlaties lietotni",
|
||||
|
0
assets/i18n/strings_mk_MK.i18n.json
Normal file → Executable file
0
assets/i18n/strings_mk_MK.i18n.json
Normal file → Executable file
0
assets/i18n/strings_ml_IN.i18n.json
Normal file → Executable file
0
assets/i18n/strings_ml_IN.i18n.json
Normal file → Executable file
0
assets/i18n/strings_mn_MN.i18n.json
Normal file → Executable file
0
assets/i18n/strings_mn_MN.i18n.json
Normal file → Executable file
0
assets/i18n/strings_mr_IN.i18n.json
Normal file → Executable file
0
assets/i18n/strings_mr_IN.i18n.json
Normal file → Executable file
0
assets/i18n/strings_ms_MY.i18n.json
Normal file → Executable file
0
assets/i18n/strings_ms_MY.i18n.json
Normal file → Executable file
0
assets/i18n/strings_my_MM.i18n.json
Normal file → Executable file
0
assets/i18n/strings_my_MM.i18n.json
Normal file → Executable file
0
assets/i18n/strings_nb_NO.i18n.json
Normal file → Executable file
0
assets/i18n/strings_nb_NO.i18n.json
Normal file → Executable file
0
assets/i18n/strings_ne_IN.i18n.json
Normal file → Executable file
0
assets/i18n/strings_ne_IN.i18n.json
Normal file → Executable file
2
assets/i18n/strings_nl_NL.i18n.json
Normal file → Executable file
2
assets/i18n/strings_nl_NL.i18n.json
Normal file → Executable file
@ -55,7 +55,7 @@
|
||||
"widgetTitle": "Patcher",
|
||||
"patchButton": "Patch",
|
||||
"incompatibleArchWarningDialogText": "Patchen op deze architectuur wordt nog niet ondersteund en zal mogelijk mislukken. Toch doorgaan?",
|
||||
"removedPatchesWarningDialogText": "De volgende patches zijn verwijderd sinds de laatste keer dat je ze hebt gebruikt.\n\n${patches}\n\nToch doorgaan?",
|
||||
"removedPatchesWarningDialogText": "De volgende patches zijn verwijderd sinds de laatste keer dat je ze hebt gebruikt.\n\n${patches}\n\n${newPatches}Toch doorgaan?",
|
||||
"requiredOptionDialogText": "Er moeten enkele patch-opties worden ingesteld."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
|
0
assets/i18n/strings_or_IN.i18n.json
Normal file → Executable file
0
assets/i18n/strings_or_IN.i18n.json
Normal file → Executable file
0
assets/i18n/strings_pa_IN.i18n.json
Normal file → Executable file
0
assets/i18n/strings_pa_IN.i18n.json
Normal file → Executable file
2
assets/i18n/strings_pl_PL.i18n.json
Normal file → Executable file
2
assets/i18n/strings_pl_PL.i18n.json
Normal file → Executable file
@ -55,7 +55,7 @@
|
||||
"widgetTitle": "Program łatający",
|
||||
"patchButton": "Popraw",
|
||||
"incompatibleArchWarningDialogText": "Aktualizowanie na tej architekturze nie jest jeszcze obsługiwane i może się nie powieść. Czy chcesz kontynuować mimo to?",
|
||||
"removedPatchesWarningDialogText": "Następujące łatki zostały usunięte od ostatniego użycia.\n\n${patches}\n\nKontynuować mimo to?",
|
||||
"removedPatchesWarningDialogText": "Następujące łatki zostały usunięte od ostatniego użycia.\n\n${patches}\n\n${newPatches}Kontynuować mimo to?",
|
||||
"requiredOptionDialogText": "Niektóre opcje muszą być ustawione."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
|
5
assets/i18n/strings_pt_BR.i18n.json
Normal file → Executable file
5
assets/i18n/strings_pt_BR.i18n.json
Normal file → Executable file
@ -55,7 +55,7 @@
|
||||
"widgetTitle": "Patcher",
|
||||
"patchButton": "Patch",
|
||||
"incompatibleArchWarningDialogText": "A aplicação de patches nesta arquitetura ainda não é suportada e pode falhar. Continuar mesmo assim?",
|
||||
"removedPatchesWarningDialogText": "Os seguintes patches foram removidos desde a última vez que você os utilizou:\n\n${patches}\n\nContinuar mesmo assim?",
|
||||
"removedPatchesWarningDialogText": "Os seguintes patches foram removidos desde a última vez que você os utilizou:\n\n${patches}\n\n${newPatches}Continuar mesmo assim?",
|
||||
"requiredOptionDialogText": "Algumas opções de patch tiveram que ser definidas."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
@ -68,7 +68,7 @@
|
||||
"patchSelectorCard": {
|
||||
"widgetTitle": "Selecionar patches",
|
||||
"widgetTitleSelected": "Patches selecionados",
|
||||
"widgetSubtitle": "Selecione um aplicativo primeiro",
|
||||
"widgetSubtitle": "Selecione um app primeiro",
|
||||
"widgetEmptySubtitle": "Nenhum patch selecionado"
|
||||
},
|
||||
"socialMediaCard": {
|
||||
@ -283,6 +283,7 @@
|
||||
"status_failure_timeout_description": "A instalação levou muito tempo para terminar.\n\nGostaria de tentar novamente?",
|
||||
"status_failure_storage_description": "A instalação falhou devido ao armazenamento insuficiente.\n\nLibere algum espaço e tente novamente.",
|
||||
"status_failure_invalid_description": "A instalação falhou porque o app patcheado era inválido.\n\nDesinstalar o app e tentar de novo?",
|
||||
"status_failure_incompatible_description": "O app é incompatível com este dispositivo.\n\nUse um APK que seja suportado por este dispositivo e tente de novo.",
|
||||
"status_failure_conflict_description": "A instalação foi impedida por uma instalação existente do app.\n\nDesinstalar o app instalado e tentar de novo?",
|
||||
"status_failure_blocked_description": "A instalação foi bloqueada por ${packageName}.\n\nAjuste suas configurações de segurança e tente novamente.",
|
||||
"install_failed_verification_failure_description": "A instalação falhou devido a um problema de verificação. U\n\nAjuste suas configurações de segurança e tente novamente.",
|
||||
|
2
assets/i18n/strings_pt_PT.i18n.json
Normal file → Executable file
2
assets/i18n/strings_pt_PT.i18n.json
Normal file → Executable file
@ -55,7 +55,7 @@
|
||||
"widgetTitle": "Modificador",
|
||||
"patchButton": "Modificar",
|
||||
"incompatibleArchWarningDialogText": "Patrulhar nesta arquitetura ainda não é suportado e pode falhar. Continuar mesmo assim?",
|
||||
"removedPatchesWarningDialogText": "As seguintes modificações foram removidas desde a última vez que as utilizaste.\n\n${patches}\n\nContinuar na mesma?",
|
||||
"removedPatchesWarningDialogText": "As seguintes modificações foram removidas desde a última vez que as utilizaste.\n\n${patches}\n\n${newPatches}Continuar na mesma?",
|
||||
"requiredOptionDialogText": "Algumas opções das Modificações precisam ser definidas."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
|
2
assets/i18n/strings_ro_RO.i18n.json
Normal file → Executable file
2
assets/i18n/strings_ro_RO.i18n.json
Normal file → Executable file
@ -55,7 +55,7 @@
|
||||
"widgetTitle": "Patcher",
|
||||
"patchButton": "Patch",
|
||||
"incompatibleArchWarningDialogText": "Patcharea după această arhitectură nu este încă suportată și ar putea eșua. Continuați oricum?",
|
||||
"removedPatchesWarningDialogText": "Următoarele patch-uri au fost eliminate de la ultima dată când le-ați folosit.\n\n${patches}\n\nContinuați oricum?",
|
||||
"removedPatchesWarningDialogText": "Următoarele patch-uri au fost eliminate de la ultima dată când le-ați folosit.\n\n${patches}\n\n${newPatches}Continuați oricum?",
|
||||
"requiredOptionDialogText": "Unele opțiuni pentru patch-uri trebuie setate."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
|
2
assets/i18n/strings_ru_RU.i18n.json
Normal file → Executable file
2
assets/i18n/strings_ru_RU.i18n.json
Normal file → Executable file
@ -55,7 +55,7 @@
|
||||
"widgetTitle": "Патчер",
|
||||
"patchButton": "Пропатчить",
|
||||
"incompatibleArchWarningDialogText": "Патчинг на этой архитектуре еще не поддерживается и может завершиться неудачей. Продолжить?",
|
||||
"removedPatchesWarningDialogText": "Следующие патчи были удалены с момента их последнего использования.\n\n ${patches}\n\n Все равно продолжить?",
|
||||
"removedPatchesWarningDialogText": "Следующие патчи были удалены с момента их последнего использования.\n\n ${patches}\n\n ${newPatches}Все равно продолжить?",
|
||||
"requiredOptionDialogText": "Некоторые параметры патчей должны быть обязательно установлены."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
|
0
assets/i18n/strings_si_LK.i18n.json
Normal file → Executable file
0
assets/i18n/strings_si_LK.i18n.json
Normal file → Executable file
0
assets/i18n/strings_sk_SK.i18n.json
Normal file → Executable file
0
assets/i18n/strings_sk_SK.i18n.json
Normal file → Executable file
2
assets/i18n/strings_sl_SI.i18n.json
Normal file → Executable file
2
assets/i18n/strings_sl_SI.i18n.json
Normal file → Executable file
@ -45,7 +45,7 @@
|
||||
"patcherView": {
|
||||
"widgetTitle": "Popravljalnik",
|
||||
"patchButton": "Popravi",
|
||||
"removedPatchesWarningDialogText": "Spodnji popravki so bili odstranjeni, odkar ste jih nazadnje uporabili.\n\n${patches}\n\nVseeno nadaljujem?"
|
||||
"removedPatchesWarningDialogText": "Spodnji popravki so bili odstranjeni, odkar ste jih nazadnje uporabili.\n\n${patches}\n\n${newPatches}Vseeno nadaljujem?"
|
||||
},
|
||||
"appSelectorCard": {
|
||||
"widgetTitle": "Izberi aplikacijo",
|
||||
|
0
assets/i18n/strings_sq_AL.i18n.json
Normal file → Executable file
0
assets/i18n/strings_sq_AL.i18n.json
Normal file → Executable file
2
assets/i18n/strings_sr_CS.i18n.json
Normal file → Executable file
2
assets/i18n/strings_sr_CS.i18n.json
Normal file → Executable file
@ -55,7 +55,7 @@
|
||||
"widgetTitle": "Pečer",
|
||||
"patchButton": "Pečuj",
|
||||
"incompatibleArchWarningDialogText": "Pečovanje na ovoj arhitekturi još uvek nije podržano i možda neće uspeti. Ipak nastaviti?",
|
||||
"removedPatchesWarningDialogText": "Sledeći pečevi su uklonjeni od poslednjeg puta kada ste ih koristili.\n\n${patches}\n\nIpak nastaviti?",
|
||||
"removedPatchesWarningDialogText": "Sledeći pečevi su uklonjeni od poslednjeg puta kada ste ih koristili.\n\n${patches}\n\n${newPatches}Ipak nastaviti?",
|
||||
"requiredOptionDialogText": "Neke opcije moraju biti izabrane."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
|
2
assets/i18n/strings_sr_SP.i18n.json
Normal file → Executable file
2
assets/i18n/strings_sr_SP.i18n.json
Normal file → Executable file
@ -55,7 +55,7 @@
|
||||
"widgetTitle": "Печер",
|
||||
"patchButton": "Печуј",
|
||||
"incompatibleArchWarningDialogText": "Печовање на овој архитектури још увек није подржано и можда неће успети. Ипак наставити?",
|
||||
"removedPatchesWarningDialogText": "Следећи печеви су уклоњени од последњег пута када сте их користили.\n\n${patches}\n\nИпак наставити?",
|
||||
"removedPatchesWarningDialogText": "Следећи печеви су уклоњени од последњег пута када сте их користили.\n\n${patches}\n\n${newPatches}Ипак наставити?",
|
||||
"requiredOptionDialogText": "Неке опције морају бити изабране."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
|
2
assets/i18n/strings_sv_SE.i18n.json
Normal file → Executable file
2
assets/i18n/strings_sv_SE.i18n.json
Normal file → Executable file
@ -55,7 +55,7 @@
|
||||
"widgetTitle": "Patcher",
|
||||
"patchButton": "Patch",
|
||||
"incompatibleArchWarningDialogText": "Patchning av denna arkitektur stöds ännu inte och kan misslyckas. Fortsätt ändå?",
|
||||
"removedPatchesWarningDialogText": "Följande patchar har tagits bort sedan du senast använde dem.\n\n${patches}\n\nFortsätt ändå?",
|
||||
"removedPatchesWarningDialogText": "Följande patchar har tagits bort sedan du senast använde dem.\n\n${patches}\n\n${newPatches}Fortsätt ändå?",
|
||||
"requiredOptionDialogText": "Vissa patchalternativ måste anges."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
|
0
assets/i18n/strings_sw_KE.i18n.json
Normal file → Executable file
0
assets/i18n/strings_sw_KE.i18n.json
Normal file → Executable file
2
assets/i18n/strings_ta_IN.i18n.json
Normal file → Executable file
2
assets/i18n/strings_ta_IN.i18n.json
Normal file → Executable file
@ -55,7 +55,7 @@
|
||||
"widgetTitle": "இணைப்பான்",
|
||||
"patchButton": "இணைப்பு",
|
||||
"incompatibleArchWarningDialogText": "இந்தக் கட்டமைப்பில் பிறழுதல் இன்னும் ஆதரிக்கப்படவில்லை மற்றும் தோல்வியடையக்கூடும். எப்படியும் தொடரவா?",
|
||||
"removedPatchesWarningDialogText": "நீங்கள் கடைசியாகப் பயன்படுத்தியதிலிருந்து பின்வரும் பிறழ்கள் அகற்றப்பட்டன\n\n${patches}\n\nஎப்படியும் தொடரவா?",
|
||||
"removedPatchesWarningDialogText": "நீங்கள் கடைசியாகப் பயன்படுத்தியதிலிருந்து பின்வரும் பிறழ்கள் அகற்றப்பட்டன\n\n${patches}\n\n${newPatches}எப்படியும் தொடரவா?",
|
||||
"requiredOptionDialogText": "சில பிறழ்களுக்கு விருப்பங்களை அமைக்க வேண்டும்."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
|
0
assets/i18n/strings_te_IN.i18n.json
Normal file → Executable file
0
assets/i18n/strings_te_IN.i18n.json
Normal file → Executable file
0
assets/i18n/strings_th_TH.i18n.json
Normal file → Executable file
0
assets/i18n/strings_th_TH.i18n.json
Normal file → Executable file
0
assets/i18n/strings_tl_PH.i18n.json
Normal file → Executable file
0
assets/i18n/strings_tl_PH.i18n.json
Normal file → Executable file
2
assets/i18n/strings_tr_TR.i18n.json
Normal file → Executable file
2
assets/i18n/strings_tr_TR.i18n.json
Normal file → Executable file
@ -55,7 +55,7 @@
|
||||
"widgetTitle": "Yamalayıcı",
|
||||
"patchButton": "Yamala",
|
||||
"incompatibleArchWarningDialogText": "Bu mimari cihazlarda yamalama henüz desteklenmiyor ve başarısız olabilir. Yine de devam edilsin mi?",
|
||||
"removedPatchesWarningDialogText": "Aşağıdaki yamalar son kullanımınızdan sonra kaldırıldı.\n\n${patches}\n\nYine de devam edilsin mi?",
|
||||
"removedPatchesWarningDialogText": "Aşağıdaki yamalar son kullanımınızdan sonra kaldırıldı.\n\n${patches}\n\n${newPatches}Yine de devam edilsin mi?",
|
||||
"requiredOptionDialogText": "Bazı yama seçeneklerinin ayarlanması gerekiyor."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
|
2
assets/i18n/strings_uk_UA.i18n.json
Normal file → Executable file
2
assets/i18n/strings_uk_UA.i18n.json
Normal file → Executable file
@ -55,7 +55,7 @@
|
||||
"widgetTitle": "Патчер",
|
||||
"patchButton": "Патчити",
|
||||
"incompatibleArchWarningDialogText": "Патчінг на цій архітектурі ще не підтримується і може не спрацювати. Продовжити в будь-якому випадку?",
|
||||
"removedPatchesWarningDialogText": "Наступні патчі було видалено з моменту останнього використання.\n\n${patches}\n\nВсе одно продовжити?",
|
||||
"removedPatchesWarningDialogText": "Наступні патчі було видалено з моменту останнього використання.\n\n${patches}\n\n${newPatches}Все одно продовжити?",
|
||||
"requiredOptionDialogText": "Потрібно встановити деякі параметри патчу."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
|
0
assets/i18n/strings_ur_IN.i18n.json
Normal file → Executable file
0
assets/i18n/strings_ur_IN.i18n.json
Normal file → Executable file
0
assets/i18n/strings_uz_UZ.i18n.json
Normal file → Executable file
0
assets/i18n/strings_uz_UZ.i18n.json
Normal file → Executable file
3
assets/i18n/strings_vi_VN.i18n.json
Normal file → Executable file
3
assets/i18n/strings_vi_VN.i18n.json
Normal file → Executable file
@ -55,7 +55,7 @@
|
||||
"widgetTitle": "Trình vá",
|
||||
"patchButton": "Vá",
|
||||
"incompatibleArchWarningDialogText": "Việc vá ứng dụng trên kiến trúc này hiện chưa được hỗ trợ và có thể thất bại. Bạn vẫn muốn tiếp tục?",
|
||||
"removedPatchesWarningDialogText": "Những bản vá sau đây đã bị loại bỏ từ lần cuối bạn dùng chúng.\n\n${patches}\n\nVẫn tiếp tục?",
|
||||
"removedPatchesWarningDialogText": "Những bản vá sau đây đã bị loại bỏ từ lần cuối bạn dùng chúng.\n\n${patches}\n\n${newPatches}Vẫn tiếp tục?",
|
||||
"requiredOptionDialogText": "Một số tùy chọn bản vá cần được thiết đặt."
|
||||
},
|
||||
"appSelectorCard": {
|
||||
@ -283,6 +283,7 @@
|
||||
"status_failure_timeout_description": "Việc cài đặt mất quá lâu để hoàn thành.\n\nBạn có muốn thử lại?",
|
||||
"status_failure_storage_description": "Việc cài đặt đã thất bại do không đủ bộ nhớ.\n\nGiải phóng một phần bộ nhớ và thử lại.",
|
||||
"status_failure_invalid_description": "Việc cài đặt đã thất bại do ứng dụng đã vá không hợp lệ.\n\nGỡ cài đặt ứng dụng và thử lại?",
|
||||
"status_failure_incompatible_description": "Ứng dụng không tương thích với thiết bị này.\n\nDùng một APK được hỗ trợ bởi thiết bị và thử lại.",
|
||||
"status_failure_conflict_description": "Việc cài đặt đã bị ngăn chặn bởi bản cài đã có của ứng dụng.\n\nGỡ cài đặt ứng dụng đã cài và thử lại?",
|
||||
"status_failure_blocked_description": "Việc cài đặt đã đã bị chặn bởi ${packageName}.\n\nĐiều chỉnh thiết lập bảo mật của bạn và thử lại.",
|
||||
"install_failed_verification_failure_description": "Việc cài đặt đã thất bại do phát sinh xác minh.\n\nĐiều chỉnh thiết lập bảo mật của bạn và thử lại.",
|
||||
|
2
assets/i18n/strings_zh_CN.i18n.json
Normal file → Executable file
2
assets/i18n/strings_zh_CN.i18n.json
Normal file → Executable file
@ -55,7 +55,7 @@
|
||||
"widgetTitle": "修补器",
|
||||
"patchButton": "修补",
|
||||
"incompatibleArchWarningDialogText": "对此架构的修补尚不支持或可能失败。仍要继续吗?",
|
||||
"removedPatchesWarningDialogText": "自您上次使用以下补丁以来,它们已被删除。\n\n${patches}\n\n还是继续吗?",
|
||||
"removedPatchesWarningDialogText": "自您上次使用以下补丁以来,它们已被删除。\n\n${patches}\n\n${newPatches}还是继续吗?",
|
||||
"requiredOptionDialogText": "某些补丁选项必须设置。"
|
||||
},
|
||||
"appSelectorCard": {
|
||||
|
0
assets/i18n/strings_zh_HK.i18n.json
Normal file → Executable file
0
assets/i18n/strings_zh_HK.i18n.json
Normal file → Executable file
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user