From 489cf0b2ea4971e85a44fb77f1844d9e6f932d49 Mon Sep 17 00:00:00 2001 From: Fr4nzD13trich Date: Thu, 20 Nov 2025 13:08:39 +0100 Subject: [PATCH] Repo created --- LICENSE.md | 674 +++++ README.md | 79 +- analysis_options.yaml | 28 + android/.gitignore | 13 + android/app/build.gradle.kts | 107 + android/app/proguard-rules.pro | 32 + android/app/src/debug/AndroidManifest.xml | 8 + android/app/src/debug/res/values/string.xml | 4 + android/app/src/main/AndroidManifest.xml | 96 + .../dev/imranr/obtainium/MainActivity.kt | 5 + .../res/drawable-v21/launch_background.xml | 12 + .../res/drawable/ic_launcher_foreground.xml | 46 + .../src/main/res/drawable/ic_notification.png | Bin 0 -> 8325 bytes .../main/res/drawable/launch_background.xml | 12 + .../res/mipmap-anydpi-v26/ic_launcher.xml | 6 + .../mipmap-anydpi-v26/ic_launcher_round.xml | 6 + .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 3514 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 2378 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 4646 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 7272 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 9849 bytes android/app/src/main/res/raw/keep.xml | 3 + .../app/src/main/res/values-night/styles.xml | 18 + android/app/src/main/res/values/colors.xml | 4 + android/app/src/main/res/values/string.xml | 4 + android/app/src/main/res/values/styles.xml | 18 + android/app/src/main/res/xml/file_paths.xml | 6 + .../app/src/main/res/xml/locales_config.xml | 22 + android/app/src/profile/AndroidManifest.xml | 8 + android/build.gradle.kts | 25 + android/gradle.properties | 3 + .../gradle/wrapper/gradle-wrapper.properties | 5 + android/settings.gradle.kts | 25 + assets/ca/lets-encrypt-r3.pem | 30 + assets/fonts/Montserrat-Regular.ttf | Bin 0 -> 330948 bytes assets/graphics/badge_obtainium.png | Bin 0 -> 17992 bytes .../badge_obtainium_zh-Hans.png | Bin 0 -> 26217 bytes assets/graphics/banner.png | Bin 0 -> 67400 bytes assets/graphics/icon-512x512.png | Bin 0 -> 44689 bytes assets/graphics/icon.png | Bin 0 -> 67744 bytes assets/graphics/icon.svg | 78 + assets/graphics/icon_small.png | Bin 0 -> 7798 bytes assets/graphics/obtainium.psd | Bin 0 -> 872338 bytes assets/screenshots/1.apps.png | Bin 0 -> 354202 bytes assets/screenshots/2.dark_theme.png | Bin 0 -> 362644 bytes assets/screenshots/3.material_you.png | Bin 0 -> 271199 bytes assets/screenshots/4.app.png | Bin 0 -> 232191 bytes assets/screenshots/5.app_opts.png | Bin 0 -> 182349 bytes assets/screenshots/6.app_webview.png | Bin 0 -> 269809 bytes assets/translations/ar.json | 402 +++ assets/translations/bs.json | 402 +++ assets/translations/ca.json | 402 +++ assets/translations/cs.json | 415 +++ assets/translations/da.json | 402 +++ assets/translations/de.json | 402 +++ assets/translations/en-EO.json | 402 +++ assets/translations/en.json | 402 +++ assets/translations/es.json | 402 +++ assets/translations/fa.json | 402 +++ assets/translations/fr.json | 402 +++ assets/translations/hu.json | 402 +++ assets/translations/id.json | 402 +++ assets/translations/it.json | 402 +++ assets/translations/ja.json | 402 +++ assets/translations/ko.json | 402 +++ assets/translations/ml.json | 402 +++ assets/translations/nl.json | 402 +++ assets/translations/pl.json | 432 +++ assets/translations/pt-BR.json | 402 +++ assets/translations/pt.json | 402 +++ assets/translations/ru.json | 414 +++ assets/translations/standardize.js | 137 + assets/translations/sv.json | 402 +++ assets/translations/tr.json | 402 +++ assets/translations/uk.json | 402 +++ assets/translations/vi.json | 402 +++ assets/translations/zh-Hant-TW.json | 402 +++ assets/translations/zh.json | 402 +++ build.sh | 47 + docker/Dockerfile | 86 + docker/builder.sh | 21 + docker/mkbuilder.sh | 14 + .../metadata/android/de/full_description.txt | 58 + .../metadata/android/de/short_description.txt | 1 + fastlane/metadata/android/de/title.txt | 1 + .../android/en-US/full_description.txt | 48 + .../android/en-US/images/featureGraphic.png | 1 + .../metadata/android/en-US/images/icon.png | 1 + .../en-US/images/phoneScreenshots/1.png | 1 + .../en-US/images/phoneScreenshots/2.png | 1 + .../en-US/images/phoneScreenshots/3.png | 1 + .../en-US/images/phoneScreenshots/4.png | 1 + .../en-US/images/phoneScreenshots/5.png | 1 + .../en-US/images/phoneScreenshots/6.png | 1 + .../android/en-US/short_description.txt | 1 + fastlane/metadata/android/en-US/title.txt | 1 + .../metadata/android/ru/full_description.txt | 48 + .../metadata/android/ru/short_description.txt | 1 + fastlane/metadata/android/ru/title.txt | 1 + lib/app_sources/apkcombo.dart | 136 + lib/app_sources/apkmirror.dart | 138 + lib/app_sources/apkpure.dart | 219 ++ lib/app_sources/aptoide.dart | 94 + lib/app_sources/codeberg.dart | 65 + lib/app_sources/coolapk.dart | 193 ++ lib/app_sources/directAPKLink.dart | 83 + lib/app_sources/farsroid.dart | 95 + lib/app_sources/fdroid.dart | 291 ++ lib/app_sources/fdroidrepo.dart | 275 ++ lib/app_sources/github.dart | 769 +++++ lib/app_sources/gitlab.dart | 260 ++ lib/app_sources/html.dart | 471 +++ lib/app_sources/huaweiappgallery.dart | 113 + lib/app_sources/izzyondroid.dart | 61 + lib/app_sources/jenkins.dart | 76 + lib/app_sources/liteapks.dart | 87 + lib/app_sources/mullvad.dart | 75 + lib/app_sources/neutroncode.dart | 122 + lib/app_sources/rustore.dart | 110 + lib/app_sources/sourceforge.dart | 129 + lib/app_sources/sourcehut.dart | 142 + lib/app_sources/telegramapp.dart | 46 + lib/app_sources/tencent.dart | 84 + lib/app_sources/uptodown.dart | 145 + lib/app_sources/vivoappstore.dart | 111 + lib/components/custom_app_bar.dart | 30 + lib/components/generated_form.dart | 850 ++++++ lib/components/generated_form_modal.dart | 99 + lib/custom_errors.dart | 178 ++ lib/main.dart | 423 +++ lib/main_fdroid.dart | 6 + lib/mass_app_sources/githubstars.dart | 67 + lib/pages/add_app.dart | 771 +++++ lib/pages/app.dart | 695 +++++ lib/pages/apps.dart | 1372 +++++++++ lib/pages/home.dart | 351 +++ lib/pages/import_export.dart | 969 ++++++ lib/pages/settings.dart | 1173 ++++++++ lib/providers/apps_provider.dart | 2612 +++++++++++++++++ lib/providers/logs_provider.dart | 127 + lib/providers/native_provider.dart | 22 + lib/providers/notifications_provider.dart | 323 ++ lib/providers/settings_provider.dart | 525 ++++ lib/providers/source_provider.dart | 1331 +++++++++ pubspec.lock | 1204 ++++++++ pubspec.yaml | 153 + sign.sh | 38 + test/widget_test.dart | 30 + 148 files changed, 30898 insertions(+), 2 deletions(-) create mode 100644 LICENSE.md create mode 100644 analysis_options.yaml create mode 100644 android/.gitignore create mode 100644 android/app/build.gradle.kts create mode 100644 android/app/proguard-rules.pro create mode 100644 android/app/src/debug/AndroidManifest.xml create mode 100644 android/app/src/debug/res/values/string.xml create mode 100644 android/app/src/main/AndroidManifest.xml create mode 100644 android/app/src/main/kotlin/dev/imranr/obtainium/MainActivity.kt create mode 100644 android/app/src/main/res/drawable-v21/launch_background.xml create mode 100644 android/app/src/main/res/drawable/ic_launcher_foreground.xml create mode 100755 android/app/src/main/res/drawable/ic_notification.png create mode 100644 android/app/src/main/res/drawable/launch_background.xml create mode 100644 android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml create mode 100644 android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml create mode 100644 android/app/src/main/res/mipmap-hdpi/ic_launcher.png create mode 100644 android/app/src/main/res/mipmap-mdpi/ic_launcher.png create mode 100644 android/app/src/main/res/mipmap-xhdpi/ic_launcher.png create mode 100644 android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 android/app/src/main/res/raw/keep.xml create mode 100644 android/app/src/main/res/values-night/styles.xml create mode 100644 android/app/src/main/res/values/colors.xml create mode 100644 android/app/src/main/res/values/string.xml create mode 100644 android/app/src/main/res/values/styles.xml create mode 100644 android/app/src/main/res/xml/file_paths.xml create mode 100644 android/app/src/main/res/xml/locales_config.xml create mode 100644 android/app/src/profile/AndroidManifest.xml create mode 100644 android/build.gradle.kts create mode 100644 android/gradle.properties create mode 100644 android/gradle/wrapper/gradle-wrapper.properties create mode 100644 android/settings.gradle.kts create mode 100644 assets/ca/lets-encrypt-r3.pem create mode 100644 assets/fonts/Montserrat-Regular.ttf create mode 100644 assets/graphics/badge_obtainium.png create mode 100644 assets/graphics/badge_obtainium_i18n/badge_obtainium_zh-Hans.png create mode 100755 assets/graphics/banner.png create mode 100644 assets/graphics/icon-512x512.png create mode 100644 assets/graphics/icon.png create mode 100644 assets/graphics/icon.svg create mode 100644 assets/graphics/icon_small.png create mode 100755 assets/graphics/obtainium.psd create mode 100644 assets/screenshots/1.apps.png create mode 100644 assets/screenshots/2.dark_theme.png create mode 100644 assets/screenshots/3.material_you.png create mode 100644 assets/screenshots/4.app.png create mode 100644 assets/screenshots/5.app_opts.png create mode 100644 assets/screenshots/6.app_webview.png create mode 100644 assets/translations/ar.json create mode 100644 assets/translations/bs.json create mode 100644 assets/translations/ca.json create mode 100644 assets/translations/cs.json create mode 100644 assets/translations/da.json create mode 100644 assets/translations/de.json create mode 100644 assets/translations/en-EO.json create mode 100644 assets/translations/en.json create mode 100644 assets/translations/es.json create mode 100644 assets/translations/fa.json create mode 100644 assets/translations/fr.json create mode 100644 assets/translations/hu.json create mode 100644 assets/translations/id.json create mode 100644 assets/translations/it.json create mode 100644 assets/translations/ja.json create mode 100644 assets/translations/ko.json create mode 100644 assets/translations/ml.json create mode 100644 assets/translations/nl.json create mode 100644 assets/translations/pl.json create mode 100644 assets/translations/pt-BR.json create mode 100644 assets/translations/pt.json create mode 100644 assets/translations/ru.json create mode 100644 assets/translations/standardize.js create mode 100644 assets/translations/sv.json create mode 100644 assets/translations/tr.json create mode 100644 assets/translations/uk.json create mode 100644 assets/translations/vi.json create mode 100644 assets/translations/zh-Hant-TW.json create mode 100644 assets/translations/zh.json create mode 100755 build.sh create mode 100644 docker/Dockerfile create mode 100755 docker/builder.sh create mode 100755 docker/mkbuilder.sh create mode 100644 fastlane/metadata/android/de/full_description.txt create mode 100644 fastlane/metadata/android/de/short_description.txt create mode 100644 fastlane/metadata/android/de/title.txt create mode 100644 fastlane/metadata/android/en-US/full_description.txt create mode 120000 fastlane/metadata/android/en-US/images/featureGraphic.png create mode 120000 fastlane/metadata/android/en-US/images/icon.png create mode 120000 fastlane/metadata/android/en-US/images/phoneScreenshots/1.png create mode 120000 fastlane/metadata/android/en-US/images/phoneScreenshots/2.png create mode 120000 fastlane/metadata/android/en-US/images/phoneScreenshots/3.png create mode 120000 fastlane/metadata/android/en-US/images/phoneScreenshots/4.png create mode 120000 fastlane/metadata/android/en-US/images/phoneScreenshots/5.png create mode 120000 fastlane/metadata/android/en-US/images/phoneScreenshots/6.png create mode 100644 fastlane/metadata/android/en-US/short_description.txt create mode 100644 fastlane/metadata/android/en-US/title.txt create mode 100644 fastlane/metadata/android/ru/full_description.txt create mode 100644 fastlane/metadata/android/ru/short_description.txt create mode 100644 fastlane/metadata/android/ru/title.txt create mode 100644 lib/app_sources/apkcombo.dart create mode 100644 lib/app_sources/apkmirror.dart create mode 100644 lib/app_sources/apkpure.dart create mode 100644 lib/app_sources/aptoide.dart create mode 100644 lib/app_sources/codeberg.dart create mode 100644 lib/app_sources/coolapk.dart create mode 100644 lib/app_sources/directAPKLink.dart create mode 100644 lib/app_sources/farsroid.dart create mode 100644 lib/app_sources/fdroid.dart create mode 100644 lib/app_sources/fdroidrepo.dart create mode 100644 lib/app_sources/github.dart create mode 100644 lib/app_sources/gitlab.dart create mode 100644 lib/app_sources/html.dart create mode 100644 lib/app_sources/huaweiappgallery.dart create mode 100644 lib/app_sources/izzyondroid.dart create mode 100644 lib/app_sources/jenkins.dart create mode 100644 lib/app_sources/liteapks.dart create mode 100644 lib/app_sources/mullvad.dart create mode 100644 lib/app_sources/neutroncode.dart create mode 100644 lib/app_sources/rustore.dart create mode 100644 lib/app_sources/sourceforge.dart create mode 100644 lib/app_sources/sourcehut.dart create mode 100644 lib/app_sources/telegramapp.dart create mode 100644 lib/app_sources/tencent.dart create mode 100644 lib/app_sources/uptodown.dart create mode 100644 lib/app_sources/vivoappstore.dart create mode 100644 lib/components/custom_app_bar.dart create mode 100644 lib/components/generated_form.dart create mode 100644 lib/components/generated_form_modal.dart create mode 100644 lib/custom_errors.dart create mode 100644 lib/main.dart create mode 100644 lib/main_fdroid.dart create mode 100644 lib/mass_app_sources/githubstars.dart create mode 100644 lib/pages/add_app.dart create mode 100644 lib/pages/app.dart create mode 100644 lib/pages/apps.dart create mode 100644 lib/pages/home.dart create mode 100644 lib/pages/import_export.dart create mode 100644 lib/pages/settings.dart create mode 100644 lib/providers/apps_provider.dart create mode 100644 lib/providers/logs_provider.dart create mode 100644 lib/providers/native_provider.dart create mode 100644 lib/providers/notifications_provider.dart create mode 100644 lib/providers/settings_provider.dart create mode 100644 lib/providers/source_provider.dart create mode 100644 pubspec.lock create mode 100644 pubspec.yaml create mode 100755 sign.sh create mode 100644 test/widget_test.dart diff --git a/LICENSE.md b/LICENSE.md new file mode 100644 index 0000000..f288702 --- /dev/null +++ b/LICENSE.md @@ -0,0 +1,674 @@ + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + Copyright (C) + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an "about box". + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +. + + The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +. diff --git a/README.md b/README.md index c145668..2832b4d 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,78 @@ -# obtainium +
Support Palestine
-Android Repository Client \ No newline at end of file +# ![Obtainium Icon](./assets/graphics/icon_small.png) Obtainium + +Get Android app updates straight from the source. + +Obtainium allows you to install and update apps directly from their releases pages, and receive notifications when new releases are made available. + +More info: +- [Obtainium Wiki](https://wiki.obtainium.imranr.dev/) ([repository](https://github.com/ImranR98/Obtainium-Wiki)) +- [Obtainium 101](https://www.youtube.com/watch?v=0MF_v2OBncw) - Tutorial video +- [AppVerifier](https://github.com/soupslurpr/AppVerifier) - App verification tool (recommended, integrates with Obtainium) +- [apps.obtainium.imranr.dev](https://apps.obtainium.imranr.dev/) - Crowdsourced app configurations ([repository](https://github.com/ImranR98/apps.obtainium.imranr.dev)) +- [Side Of Burritos - You should use this instead of F-Droid | How to use app RSS feed](https://youtu.be/FFz57zNR_M0) - Original motivation for this app +- [Website](https://obtainium.imranr.dev) ([repository](https://github.com/ImranR98/obtainium.imranr.dev)) +- [Source code](https://github.com/ImranR98/Obtainium) + +Currently supported App sources: +- Open Source - General: + - [GitHub](https://github.com/) + - [GitLab](https://gitlab.com/) + - [Forgejo](https://forgejo.org/) ([Codeberg](https://codeberg.org/)) + - [F-Droid](https://f-droid.org/) + - Third Party F-Droid Repos + - [IzzyOnDroid](https://android.izzysoft.de/) + - [SourceHut](https://git.sr.ht/) +- Other - General: + - [APKPure](https://apkpure.net/) + - [Aptoide](https://aptoide.com/) + - [Uptodown](https://uptodown.com/) + - [Huawei AppGallery](https://appgallery.huawei.com/) + - [Tencent App Store](https://sj.qq.com/) + - [CoolApk](https://coolapk.com/) + - [vivo App Store (CN)](https://h5.appstore.vivo.com.cn/) + - [RuStore](https://rustore.ru/) + - [Farsroid](https://www.farsroid.com) + - Jenkins Jobs + - [APKMirror](https://apkmirror.com/) (Track-Only) +- Other - App-Specific: + - [Telegram App](https://telegram.org/) + - [Neutron Code](https://neutroncode.com/) +- Direct APK Link +- "HTML" (Fallback): Any other URL that returns an HTML page with links to APK files + +## Finding App Configurations + +You can find crowdsourced app configurations at [apps.obtainium.imranr.dev](https://apps.obtainium.imranr.dev). + +If you can't find the configuration for an app you want, feel free to leave a request on the [discussions page](https://github.com/ImranR98/apps.obtainium.imranr.dev/discussions/new?category=app-requests). + +Or, contribute some configurations to the website by creating a PR at [this repo](https://github.com/ImranR98/apps.obtainium.imranr.dev). + +## Installation + +[Get it on GitHub](https://github.com/ImranR98/Obtainium/releases) +[Get it on IzzyOnDroid](https://apt.izzysoft.de/fdroid/index/apk/dev.imranr.obtainium) +[Get it on F-Droid](https://f-droid.org/packages/dev.imranr.obtainium.fdroid/) + +Verification info: +- Package ID: `dev.imranr.obtainium` +- SHA-256 hash of signing certificate: `B3:53:60:1F:6A:1D:5F:D6:60:3A:E2:F5:0B:E8:0C:F3:01:36:7B:86:B6:AB:8B:1F:66:24:3D:A9:6C:D5:73:62` + - Note: The above signature is also valid for the F-Droid flavour of Obtainium, thanks to [reproducible builds](https://f-droid.org/docs/Reproducible_Builds/). +- [PGP Public Key](https://keyserver.ubuntu.com/pks/lookup?search=contact%40imranr.dev&fingerprint=on&op=index) (to verify APK hashes) + +## Limitations +- For some sources, data is gathered using Web scraping and can easily break due to changes in website design. In such cases, more reliable methods may be unavailable. + +## Screenshots + +| Apps Page | Dark Theme | Material You | +| ------------------------------------------------------ | ----------------------------------------------------------------------- | -------------------------------------------------------------------- | +| App Page | App Options | App Web View | diff --git a/analysis_options.yaml b/analysis_options.yaml new file mode 100644 index 0000000..0d29021 --- /dev/null +++ b/analysis_options.yaml @@ -0,0 +1,28 @@ +# This file configures the analyzer, which statically analyzes Dart code to +# check for errors, warnings, and lints. +# +# The issues identified by the analyzer are surfaced in the UI of Dart-enabled +# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be +# invoked from the command line by running `flutter analyze`. + +# The following line activates a set of recommended lints for Flutter apps, +# packages, and plugins designed to encourage good coding practices. +include: package:flutter_lints/flutter.yaml + +linter: + # The lint rules applied to this project can be customized in the + # section below to disable rules from the `package:flutter_lints/flutter.yaml` + # included above or to enable additional rules. A list of all available lints + # and their documentation is published at https://dart.dev/lints. + # + # Instead of disabling a lint rule for the entire project in the + # section below, it can also be suppressed for a single line of code + # or a specific dart file by using the `// ignore: name_of_lint` and + # `// ignore_for_file: name_of_lint` syntax on the line or in the file + # producing the lint. + rules: + # avoid_print: false # Uncomment to disable the `avoid_print` rule + # prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule + +# Additional information about this file can be found at +# https://dart.dev/guides/language/analysis-options diff --git a/android/.gitignore b/android/.gitignore new file mode 100644 index 0000000..55afd91 --- /dev/null +++ b/android/.gitignore @@ -0,0 +1,13 @@ +gradle-wrapper.jar +/.gradle +/captures/ +/gradlew +/gradlew.bat +/local.properties +GeneratedPluginRegistrant.java + +# Remember to never publicly share your keystore. +# See https://flutter.dev/to/reference-keystore +key.properties +**/*.keystore +**/*.jks diff --git a/android/app/build.gradle.kts b/android/app/build.gradle.kts new file mode 100644 index 0000000..256320a --- /dev/null +++ b/android/app/build.gradle.kts @@ -0,0 +1,107 @@ +import java.io.FileInputStream +import java.util.Properties +import com.android.build.api.variant.FilterConfiguration.FilterType.* +import com.android.build.gradle.internal.api.ApkVariantOutputImpl + +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") +} + +val localProperties = Properties() +val localPropertiesFile = rootProject.file("local.properties") +if (localPropertiesFile.exists()) { + localPropertiesFile.reader(Charsets.UTF_8).use { reader -> + localProperties.load(reader) + } +} + +var flutterVersionCode = localProperties.getProperty("flutter.versionCode") ?: "1" +var flutterVersionName = localProperties.getProperty("flutter.versionName") ?: "1.0" + +val keystoreProperties = Properties() +val keystorePropertiesFile = rootProject.file("key.properties") +if (keystorePropertiesFile.exists()) { + keystoreProperties.load(FileInputStream(keystorePropertiesFile)) +} + +android { + namespace = "dev.imranr.obtainium" + compileSdk = flutter.compileSdkVersion + ndkVersion = "27.0.12077973" // 'flutter.ndkVersion' produces warnings (TODO can/should we switch back?) + + compileOptions { + isCoreLibraryDesugaringEnabled = true + sourceCompatibility = JavaVersion.VERSION_11 + targetCompatibility = JavaVersion.VERSION_11 + } + + kotlinOptions { + jvmTarget = JavaVersion.VERSION_11.toString() + } + + defaultConfig { + applicationId = "dev.imranr.obtainium" + // You can update the following values to match your application needs. + // For more information, see: https://flutter.dev/to/review-gradle-config. + minSdk = 24 + targetSdk = flutter.targetSdkVersion + versionCode = flutterVersionCode.toInt() + versionName = flutterVersionName + } + + flavorDimensions("flavor") + + productFlavors { + create("normal") { + dimension = "flavor" + applicationIdSuffix = "" + } + create("fdroid") { + dimension = "flavor" + applicationIdSuffix = ".fdroid" + } + } + + signingConfigs { + create("release") { + keyAlias = keystoreProperties["keyAlias"].toString() + keyPassword = keystoreProperties["keyPassword"].toString() + storeFile = keystoreProperties["storeFile"]?.let { file(it) } + storePassword = keystoreProperties["storePassword"].toString() + } + } + + buildTypes { + getByName("release") { + signingConfig = signingConfigs.getByName("release") + } + getByName("debug") { + applicationIdSuffix = ".debug" + versionNameSuffix = "-debug" + } + } +} + +val abiCodes = mapOf("x86_64" to 1, "armeabi-v7a" to 2, "arm64-v8a" to 3) + +android.applicationVariants.configureEach { + val variant = this + variant.outputs.forEach { output -> + val abiVersionCode = abiCodes[output.filters.find { it.filterType == "ABI" }?.identifier] + if (abiVersionCode != null) { + (output as ApkVariantOutputImpl).versionCodeOverride = variant.versionCode * 10 + abiVersionCode + } + } +} + + +dependencies { + coreLibraryDesugaring("com.android.tools:desugar_jdk_libs:2.1.5") +} + +flutter { + source = "../.." +} diff --git a/android/app/proguard-rules.pro b/android/app/proguard-rules.pro new file mode 100644 index 0000000..ea6dd79 --- /dev/null +++ b/android/app/proguard-rules.pro @@ -0,0 +1,32 @@ +##---------------Begin: proguard configuration for Gson ---------- +# Gson uses generic type information stored in a class file when working with fields. Proguard +# removes such information by default, so configure it to keep all of it. +-keepattributes Signature + +# For using GSON @Expose annotation +-keepattributes *Annotation* + +# Gson specific classes +-dontwarn sun.misc.** +#-keep class com.google.gson.stream.** { *; } + +# Application classes that will be serialized/deserialized over Gson +-keep class com.google.gson.examples.android.model.** { ; } + +# Prevent proguard from stripping interface information from TypeAdapter, TypeAdapterFactory, +# JsonSerializer, JsonDeserializer instances (so they can be used in @JsonAdapter) +-keep class * extends com.google.gson.TypeAdapter +-keep class * implements com.google.gson.TypeAdapterFactory +-keep class * implements com.google.gson.JsonSerializer +-keep class * implements com.google.gson.JsonDeserializer + +# Prevent R8 from leaving Data object members always null +-keepclassmembers,allowobfuscation class * { + @com.google.gson.annotations.SerializedName ; +} + +# Retain generic signatures of TypeToken and its subclasses with R8 version 3.0 and higher. +-keep,allowobfuscation,allowshrinking class com.google.gson.reflect.TypeToken +-keep,allowobfuscation,allowshrinking class * extends com.google.gson.reflect.TypeToken + +##---------------End: proguard configuration for Gson ---------- \ No newline at end of file diff --git a/android/app/src/debug/AndroidManifest.xml b/android/app/src/debug/AndroidManifest.xml new file mode 100644 index 0000000..48e11d2 --- /dev/null +++ b/android/app/src/debug/AndroidManifest.xml @@ -0,0 +1,8 @@ + + + + diff --git a/android/app/src/debug/res/values/string.xml b/android/app/src/debug/res/values/string.xml new file mode 100644 index 0000000..a01a60a --- /dev/null +++ b/android/app/src/debug/res/values/string.xml @@ -0,0 +1,4 @@ + + + Obtainium Debug + \ No newline at end of file diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml new file mode 100644 index 0000000..3331999 --- /dev/null +++ b/android/app/src/main/AndroidManifest.xml @@ -0,0 +1,96 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/android/app/src/main/kotlin/dev/imranr/obtainium/MainActivity.kt b/android/app/src/main/kotlin/dev/imranr/obtainium/MainActivity.kt new file mode 100644 index 0000000..71920ac --- /dev/null +++ b/android/app/src/main/kotlin/dev/imranr/obtainium/MainActivity.kt @@ -0,0 +1,5 @@ +package dev.imranr.obtainium + +import io.flutter.embedding.android.FlutterActivity + +class MainActivity : FlutterActivity() diff --git a/android/app/src/main/res/drawable-v21/launch_background.xml b/android/app/src/main/res/drawable-v21/launch_background.xml new file mode 100644 index 0000000..f74085f --- /dev/null +++ b/android/app/src/main/res/drawable-v21/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/android/app/src/main/res/drawable/ic_launcher_foreground.xml b/android/app/src/main/res/drawable/ic_launcher_foreground.xml new file mode 100644 index 0000000..df283b7 --- /dev/null +++ b/android/app/src/main/res/drawable/ic_launcher_foreground.xml @@ -0,0 +1,46 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/android/app/src/main/res/drawable/ic_notification.png b/android/app/src/main/res/drawable/ic_notification.png new file mode 100755 index 0000000000000000000000000000000000000000..a37d7fb1a6c5f1be153b8591059d7038d6a7a29c GIT binary patch literal 8325 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 V$Tpt79&i|r>leb=IwJO${{`R*=GFiJ literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/drawable/launch_background.xml b/android/app/src/main/res/drawable/launch_background.xml new file mode 100644 index 0000000..304732f --- /dev/null +++ b/android/app/src/main/res/drawable/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml b/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml new file mode 100644 index 0000000..b26e945 --- /dev/null +++ b/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml b/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml new file mode 100644 index 0000000..b26e945 --- /dev/null +++ b/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/android/app/src/main/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..c915a75a073ab8c05b1bad8dcc4fc34eee5523f8 GIT binary patch literal 3514 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 literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/android/app/src/main/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..d739ed13445670fa9d650e682ec91c5a8814ad1e GIT binary patch literal 2378 zcmV-Q3AOf#P)EX>4Tx04R}tkv&MmKpe$iQ%glEA{G&G2-rGV5EXIMDionYsTEpvFuC+YXws0R zxHt-~1qVMCs}3&Cx;nTDg5U>;tBaGOi`{MF9QiMHIslGxgb2Dhbc=bq^n3?_xa5``n+STgjUY@QK7TOgAjzb>gW_ zOXs{#9A+g+AwDM_HRyuGk6f2se&bwpSm2pqBa@yZ4ik&THkR9%l?;`5k~pHM8s!UF zmle)ioYiubHSft^7|LtQOI)Wpgaj6_h!jM~sA2U7%63?eAmTZkz!AXW&X}`73o``jhlp zON$%`lz_>`lz@?NuyqoOy$xgZqEy+rQkr=^|zR&I5b@)i~&Mh0s*pm{FvLiKh{!&*rx}*%{v$d|z_}yh8pU{5W z_RVoQxj$yfmH#auvLzJY?!0LJ+waG3AwzUDx;u1GeeOQ|dhQ-x|Fxh;5pZ3?hsd{F zLFCRePm0BaPd?qVH+1FMLI4!AGzX!8ZAtGZvu&-dsFJTMRYU%PW*E{VM&f$p;s4(h z_u;yt6PAPsA@cQSKqwkND}z_~EcW*fjk;7-oKIT-hsC#DzbW=rBC^O33eC!XxKY{# zf~RdDVErs`oHGq{dOc1YeJB7ODFlUz!ZxTVYK4`X=Yn+0vt!0&G8wQnAu-`n;sgW) z`G-f$5b^%uIKze{H%XkEyW-)S^`3FSZXgn-U&D5JtiL3b|G+6(GBwg9AHtf09qQmhTBGo zz&{8coqz~uv*Qb$cs7d{`n_0LU1D}ITNL1f!(3ZG?)_U=dSD3EKlbP_G3D6~qk!jv zg;0{!0`5y^fTQy?IDNFiWIZrh4Dbt`ZHWTT!P|$n09QBjrL(@Q8+1DT2#-GYaDC+i zW9hV?$%d4l1C91Se^U=bi2kuq+%_=$Y2flK?~86YEVWw{VDDfr81Hujxmwu+-1~@0 zT5#>HK)gx>-eE%H&DtZN2nOW^t)}^pe}8E;@z&xX5RA)#Pymx*1q>#PdvD*~sD-=D znumEj!lN1u3JhxuZ0$_FT63ub?%wG$S;RtTE_jJ&5(;2ifyEMTRsf3O3$lN(&jHxe zN4NcUL2Z)Dk36dFK_EA+0nX>PKy-pTcn8fgMxrEF^=Gt@VG%D$-Atln4t;$ZvlYmq z00UavTH8eK3m1(3eQ}ro+8TS|=C!WjYGS&G@3i#7S07h`o0mNVNnJoudK)J{yk79i zgE3GDTRoSMya70cHrfJeYier!mX8(S=)!@GpUs2%%W5b%+61>%y<;ko;kr)Q0o9f5 zW1{6Nc?ukz%x*6xsHv@~r7fVmyrN>uJL}et*JcR6r@sI^o_BzYdAA|&yG9sL>&))F zBdv&_O;#(sNfP4>zG1WA%*iGwJlP0CeTZ2R zT)s8_C^?6efHGOt^{&3wTeJnVt5vGvf(zx*vCAbylX38R{z}3;SRUg7r_ySmlVoE0v&&(IVzKn2?%YKJ%_FsV; zb)Dd~bQZXK&LGu4Wq0ZUoxVp+WJf3f-w)8Fci!GwDY+=;*|8}-4;!NPLdYEO4|ajV zoEso=8MCE~i&ELOhK%nIr;@QHm5lYx%B$NF|GD$qll%7>?$fEl&?hQ(J}KLd_MU($M7*RFkSLtXtv8P&ct2w-sh)EA%0ubh`1{NnJ}E28~<7&N1y>DQqL_kVX{&*wXn zwFBx-I%ClG;Eh{XFRxs^%va*~@;^REPEL-94iww4&F|PF(RsI5my!NM?x8~m_qDax zU8BpvfC;4lh9_0o<^1fj*!*lKM~?*&;gQkHBoc`i4$*8U5!aSwjiMNIcWJdMRdbV4 zsjQO8WdA!~R+Kk5)O~Lvb3YLQBhh}Zu`VOi@Hw>4aLoWKJhNCF3@}{7;1hczGa7%{ wJ2DIq4F98i-cJ=%FZm`LQvxO%e|rJ{2lScQP-i>FSpWb407*qoM6N<$g3mdB<^TWy literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..f27927714ea5754007b6a91d087ca237eca6f139 GIT binary patch literal 4646 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 literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..6ceb87e6cc253b28e7fc80c24341acf29c82c21c GIT binary patch literal 7272 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 literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..652ac54bd758f533070fb082c30707127d1c59d4 GIT binary patch literal 9849 zcmc(l)l(cyu=W?X;I>$>Ai;tMcL?t85Zr?XcMINhnr{Y0xOf5Sv4MF#)?m~ygG>i=@@{|i*)f2;bc0}22D7j7#lsVXNa zN#)||Y-Q_U2>>uA`6mg>{t+V|G|^CyW}+d&{eik9poc^FV~&ZSNTQNZ--G@4t)$IN zVre@cdL0sqC{Z;Q+eC*zJ9@|_N>p`BN^wl;V^8T6&3~ag0g%pzc3%|KJ5G)9cn-07 z7TUb1nB~=9KtE{!>`3jQ!eqJ}5}sbP>gf~9WMbXAf$jnc~x?DxVQl_UlF zMPwlVzFIK)$W`cj--Xk7|3G^V!7qehV(42Ge4kOFTJzb(cc@b?;LUnd-u{W%!}K}j zR$n2898MV8JLsX1@(?seVY(@o@nIzCl{;Jl?x$#p^C+Buo7iF%)WD6h0$VJiLw+5A z64@)8)U+tHzP7v$?Xk{=!2l`At}Xi&6FdOGr+PUlam}A_XL%@w8jHk3*a~9z>trM$ z=zQo*zi4RMT^73R8{a#gy`U=sZyxit9@@1f@g0P?#Eg76NXt~dlk5m2VY>yyQn+%m zz~5gW5AzRO;TgO6VK=@H>u!@>Iz+OvsIe?|2(q%O66ir;Q;G0Y)ZC>2Syar=06YoF z|J|)1Wici3Z!%iqP$`4uIb9`jou1Czs=DOj>~wHMcU5jkYI1CDYH>?!>W7EQ8FH*h zqsi^L#!Lr&iZ~_KQVVSk-M=&P`ajTW>#7pfQ}U#X2#KaL)5zxvs+lFw3-b;cvpn0T zJV{NaqJ-Zgx(4okaHc{2HV5+OD*LG9pjKk^EVSp@I zKx~#0(s1~UzhhTwT0%-QmmV%OZp>+1nek|6K06oNdd#zM_zkfA>lyA5eF@c`4L2l^ zGIXm1g%6v2#Xcylx;w8J5?=-nIvhpc+YL!fPv1tDiT66x`^@{+AsEz%(b-*qK^NIw zNYzT@x(!OhHRG6Er;iBxMA*}wp-q}UbB_H@Oco9`IJl}cJ*Dx$<{@CcBofn=vg)9; z(Au;f6`hIGyfqZ+08im2y*}+5mY#j#I{QP5j&{g$Nd4hc_qc*D2@&qKz`eMbgqf@= zPf04h_Rc2)b%39$`c$eX4~bwv@r(KU8?8g+1F)E;+G!56RnH`7p4YD9dTLC=xGJL} z{VtWKtL7%T+lT;`seW@haRSB0pQMPJ=%kETQ5KR!FC=-k6Xx!6IAF`-wpuYi;CL>l zS6+jz)!-6m=KXg+x>U3a>l%qAnG~`{e9yUMquSk`CMF^NGNU)|KF7O_sSYr-DBCM+ zYh3(Fn@i7{%jx#Y-MLl8G`ivn8n+{ES}W}vQ6PJc1+IGOcidEdg=21mxouq^P3;CM z6Kc{~7lN_B;1~l!WB+@2^W0VG>^cyLYauO#=WI&;(MC*EbIsYH9&$D2aN9-fu!Ixf zwbjA(?au_FRNb1ceu`GuipU&}Ho%G$3%MD^aYfj+Xp#FHB@c<7x9uFghXDF$6T5py zlKX}lKC!aUM&Qaa*TKE$lZ&~pmZLbP9aL4E56*@;%SQ3E(=WW|{dG@xsIqc|Ir?jI zC`u~NuIVbL0^LL92`_T~U5?vpy@tWMMZVzB87;dSl->!IE=cV@rlRI*!_T3Y#Zie) zNy7h@XnIN~h~y+!F+zFu$MsCUclBFGtCh0)k4v&S&uDy!pTYUR$~t-u-u#<&eE+tR zf@WGtpD2Qo;y7R3Tk30@UzQJi!IW=jYBPOnEW9NjTaC60$1qG|*OKL!)9XY}dDp~x zI%P86+Z~a~g70%JnVc^=Y+v>eL}pbC*P0lA^L>JEHOf=UxI7;xufKyVm1bV*U8bJ0Hem6*Qtxx*oHo;WbpTk zDkQ;r#RBuIn40EzU2e< z8ni{u+D>X>*#P8t%=pO|KcaQM+N;)#L^n8Mh|G zc1~j5Dpa9!xUwyPxm}M=$9x~ye$6}P_V0Gro51W@o!;^MKw9%}rTvK*5I0bZOi-E@wG{R<|!L}?C;U18?$-5$J$7;D;fFwHTCtHpv zD(RR2l1&9fKqqdVo*oK3$?lHhR|t~ne@=oEjS6}mW;z_XRx#}H=pPWK=l zXLa_%U30?*q7%ImrCje&DAm`!;ZO?Vin|KVU(Bk|Pb_%U017&d*0`H@$d-UX4&-i! zz@gz(RB*M1tJ%{?=*Imj(+5j~M!V@x7odS4a_>7f`HhjK8Qa?6{)s2goCksFpT4W^ z%9QmwbU6VCS*vh=kS|=U=d0Nk1e3Pna}}QRaq%bfX$^`67{t|ne`Yu`Ywt^m8g!Pl zohYcQ52v~yz_7F6^j4lIUt@f)0?DDh;bMaX2CQK+RH5&!1!(T_?CGei`OZ7WgE{RC zWTg;JuxpmKwlZ^@wx-70PKZjt-*DOqd&9b`(^Yh5$HGy^(%hwQ71K=b7P2-5Co#L9 zi}(&X?0g@C72po5b!}NPMSU@|_NkWJeaQL{FUsCucFc!&d~%hm2g(5Hz90FxO{;>5 z>;y02BmV?92_ahyYD+3vQaHm@Zj70z=;AIwKwgo{wd`PokD@sT?`$uR9CP|X*=-V(u}LcGG=ncz^^4&b69*ux9>lt-d_t1azVE>=U%V>)8~ zZgc_`hG@x8GDXB`Z zUzc_usib^e0v~G(=X$-O`46+VzpC>d`3j~9E@n7%;kWJ!&Vjj6bl`z|kFeXMH{ST4 z^(%s;e~a97yd)17{!BJtKbd>v{l#3I$MT8TIz>B?F>|Bhuqr z1=`J@j934{C{oJEmHhHe8Niwaf$3W+-N~&3focv7FUZmZ2bKumxN4>BO}(SQFqGd5 z8+m&KhK@g7lZ&8-Y7Iq1^-BEwBmDew96U*bp{hQ(czwP;%VLR4@nU-yM~rb$3@-cJ zjvLfD&t1@6qC~C+onAJ@$|Y0^U;1X5_}US20KxRSE1%eSjejp=&lW-HoY4f++0T!8WS?+TRZQInUtsJTZdP%xIidRBe-NfRiWf^NLSjZTfOhOH$Wz^o_XZs^_vGfr?6)mF^^P-2YS*= zY%aTJw){>18iz|~mwnA{|F%2m9N2y7OM*#>OKphSyXdiST?fg>-p@=G>cE-!Qp2wA z^;Vwn8Ht;(TLhhawWV)z1Nj5%v}MN6Kzll8FN>P@vD?rdYOZ3mVWiDM(WQXh+wMPQ zotJBrWH?QS)$o+YT9dDr#**DBWsarAP_NW(tSIv{Y>^HH3$@vJ+pMa-n99 zF1rz^*cWk9ojYxEK&AXYJeyjkA0b$yp}{3_rXfA7AiF59M!Q`xA@{8Nx3z?BnSowf_YF#LJ5 z`bi^MIdWhqEpfC9%4K&P?n#3jhoE;+-SN-a~{ZCK}vF5Ok4nnGfPYx|xbP*vuQjnRb zF2b)SJ1Firu6wQjmX@^_Y~m$3hnkiav*f?_7i4KW#%aC1Vb20_dI0hF$>{y4@9!jA zno+-X;G{qMncq@UAo9iW^FvT5HLyhrz6ymSeBL5d{q_}3yj6d)FB`{?x@}L;F9poM zVNa!4D(h}`2=q88V~fGpQTc9J66!=dD}S*;VBe=CMi2Pf)@OXZHof;+5uqh{xkUq~ zj96>O^w2vHk}X7aeTrml@yOOZB?i(^B5#?9DjneVPkH z5Gnpa>HyI9vBAU5TT^7wnj|69nc;F(OHC+8o;sQTHUzJR?eWne z3vFaM{BV3t_^3oVV8|(ky&FPw2SP+v;R1+1DQ(0qL>?w4$Kx7RFFrzR%PRqF=dUQ2 z0%Z0mN>iFVUK31_0D?VQ+#n6-3S-96!6;0Y1Ag(FEbS?Ee8floBvTaTFQt-BG=z#2 zkCTpIcXb30BX36L(km}j@d@Us#_%@ZpbF~Y(PFZgq!W4s;WKhyY0IL|Ca3UIs@#X= zjx`Q!=dK)}RDt2RTG;OE_(cSj7_dOFpnuIM<ZbHyT^I=*71QUMzIzJHJ+Ny<(Dxm>hLNYCN`d;C*gefF?8eO07Y|9#|?d{J&2tw3Ix zH}`OCEqu)S>$iw;iaFCMMA|4!W;g^4Iv4U9%&s*LF+JD`;nir&Q6iBJbqJL~8`Q1% z-+{ztcN>?MM!0wPA?x<9(2oq(060*l0i%7i2_TgPIn|0o%00l0qGk{4>ZOA2AE;Vb z_!)Pb6t%b?Q&H|tBN}XXmc(Y=9&HRH+nYT)gAKq#x;OU$wG<&>V=vY8uPvZYApmZz z+rNZb1ETQc{ymCO6D6CSKGhUsR`m(kB|#gm)t(6ry!+=Ev;t=JcWz%1jU@dPB?q(3 zuQ{{#S7+J(N%DjP0!e`}zSn|X9UqembiiG(*Fm?i9&MvOL?0#LFXtN{w~aHzei+9c zh7eq4$@tr^b$@9^n4VHc9CQ+p#iJeEK%AK-@~y{k3t;Jaubx)LDZg3rG`qc9aBREz z9=1My1UPtq1sdcPCFB@)o*gr$&UcuNi+}3+akU8Opf@+VBgsJ^yD2=?;61P&BEn&F z=v(f#v;WHP{Osc)?Cs*d2%mx5VQM=6HcvdNaCj-w0*ZDF8DKI*b>Ec5Hx}SD?){JY zmdCMW8yzQ=^&EaLtrUsjuNOPg2sh)HHMc!V+jR7!J4++3i9Ioo3q>`yXI(Z$wid}1 zALX&01NAAIdIs&;%yH~SgZA;7YSLIxxfPZw+Id{+)pW~Amn8Q!Wd{#%nd>jV)8%r zfC%~;!xL^l+_Q&lewK2Z~7eWqfB8{@Z{dXZ_g&RRAy~BP0a&wf8oeM;j`PK z%_=;4=L$kk{BK)4*do064MVKf!RQ-}1KGNhb^E>0$Z$w%MBi!&ZGS${431x{)&jgz zPF#n!c$v$=q8=yL3@oSf3Hlxw5?Uf@~y@ub1d2ivQ3UT*=9IFIn*TAGScAR!p(s z6-Lm1<*tG5#}iIVl)@aPh9FRsi!vg7*wqsxxjzV_he2$(l{~X)hUl*^n6)V*Nf+)Z zYkqv?zF#14Y;jd+ugrbn!Ky1A2jyk9=!SSb$e*^5VLPEgl3j3{^a7N^Dm{#eF=T6A)Ax`4UD6njd;Vl zpwYdXLuB@SW7aA}hE7MwR}hpi8l1v|Dos6}-&9-VwNdy3hfsI+U_w!T+K3`d%rUF$$}4*UegSJ!5mD3I^KJK~<(=!jZui8|?oi(J|0>#&hUx(lnh7dbjYF zcGteP-syW+Z6+Aw_AyKX+y^t2V)FWF7z z@307-b)KWj$JiI8t0l%2JNzU1@2}fqb$T084`U(yFBvv)+TUn20{yMg0SE>Kvu?p0OYK#Xy+wZ~F=lw(iYNOwg*Uly zjT1xLSRwk!CI~M&k)eM86qg1T7@iX=IK7=OF-$Cd#bi8{cgt3w&uk#G#UJR=)IpHZ zfyX9z+}XiTYlBVJTuE6GD9aQ&lRg490perG6-$e+yh%_@bB_lWq<8NV4{l_rl zvCzvGq~6lzC&BtcdeoM4NO5%ecd3JID?mhfp1|fhHNl<+HG?QWsn(MXV&WTbQ&kw8 zUB~uXeltJmGdlbEH)bIBG>#Lca`>YT!8Ccx_@Y$8{$-&5*y5|zKR(9MRTQPDHMy>7 z)Y1~90DEa!Ny}H7hvB+_I2#hC{*Vn{aXU?ZL%~ZpbS}GtDKKgp5Fp=h;vag)8O_z% zxfmCavqKgP+E}8xxIC+ec`CAxeGZtI@jeqZ^%liVaM1v}Ov0KWY{`#tCbk^XtM-Vk z$oqUw-(xq)OeBAL3ZtCoD#H1kE#??txEgPAkBG*HQ>8`)aJeP$C~*RSk%yIIj?VVyZgc%e6SXr1@Rv(2s^7Rmb6TH;ckb!QI&vCI8q=4l4adt54hkX8|8I9{5vGq~%nl4&WlJ zTwhLy&7~vQJB3E?a!{`s<)h8$12qI5?9q~%^;gI7V0muyU~NP@D|r*(5F3aqd?SJ% z6r&GH&W@eg?A;wQ#!&RT5>hL{{cf-IXx53bTdLXjWYkFM<{9QP<>_f7jT=GU_O!nh zx&e7FPbF9olRbnf0A!JaM1vIpz^&=Udctz-Tb_pgA)4BL(-}#^1qw>kBCqDH=f+PU z#@D;7sfe|J?Kn~DJUw}{+&L|QD~SDAR-9w*ZYhj zIg}He)5akLNyhS;^tZ|EWlO#Re;j}6@c#7J#V{!izNr}&!itKoDP$-u1S3=eKp)WW z-p(o>A||s0mEiToO@dj&Ijx+qfg&U1=lL)I9I?jFv8_GK*V?!tFLQ`bd%2IItY*22Ip=9gMJ(pmS0dP_!}ZJB`8aNaM=)$)Nu4l&Ujz|v zJ*{_7bcg!Qs2TGN@fMBU%j&DprV)NF(sS9(cX;x>$ahF!Y)6OB~U6zukBrU_bQza*F}f;Gvc$Q zHOcp3S&TYV7Ye1fffB*WOSZRbU)DA3))7m1co+0f37l#%t7j8MYF$ns0dpcICYvNGGyoGHVf&)YNf zSaU_Zd-&}*fd6*dMcaBH!j{pK5*Q2-JIizYs(^EwQzQ!9?A?#5C4#XAL*9~VG zm360+WI$VfLa}PWhP2~14Hw#=rj?ps3I|TP54pd$Bjb&2NmLGjjD7#XB+VpJg~=b! z2uta%4UmfOaG1bTuS=hkaba?DEaA|HFBFw17SRQ)A!Kl-VFSjGJ0pY9811b9k;Th% zF&}}G{-l%dTSsf$?S4!|oFb{wLcHt_sf0k_PEY^9J>OF6k(s>sd@}~f(H5%?F;U}9 zWM>kg;^Cg+cR*-ew1ovX7{$S@Jqh2ZH|lD^<-rw?d;^9I(u%cm!x4#;%)$8n9}Pq4 zJ;qpQ4&|ouROQ}Xt~|1xL3SuJoGIjQd;89RTR(1KUiV*ZV9Q1bEUo6RAAErVqvR7G ze}&}`;}_Op87$wN{D4>f69mZA1xa3XKTx6%9a3^D>i%F9>tG_|3blf>(a;!M(pg+VIqis@njeJbl~a4~w)4w0kxk zcF9rxUa{SClT)C96nHAqk~1nhDdmVE>hc*7n^PqC_1W-L)M`!$V|8U|Ia9CdPZ7py z{56c556nP5qd}TJ^>Eb;=V;_tk@%fw9^5Man?ySJMHNbex+}}D%ZWOs_aQEiz zg-wh(w@-y&zyC8H9APG+eaXp(A^*$Hlt2gY^WZ|1HtVYsMXsKXig?paOv9!&0N6M3 z?QN-T!t$~%up(ARJ0;dIV*>t!5&NF|n`4CPK+l&D)}HgH-%&*Ol zcX;1+UeUc;IOdlWDu9;Jb}^lT`7HO|Fz>LU2)f5b_bGn(QfLWsbQsZ}U4g9zr9sD| z1vmu;x$Vu*kRVqR7B~p-E+`qRnJZpg?^iwtF_km_l&2s~f=Q(O8|Q(~y+X&) zNEz+l>?KAD13+8(*mn~5!dRy@cjlGx<_wCH@QQwyZAThAe>Iz^9C|2l&Nm#YOJ1^4 z(dY?|sH8tHYNB4I`N)#RERCDGmQ3DeH(`(witV`{uC0in2*KB2z%)kZ6U^bT? zzc%xi+%VLyy^h@vk|95lDk${Ve1`O!Hf+wlp&n0AK+|_MSBKWZ?&Av;&;TX*zL7q_ z&a;f%aE>oT6NVm6BUU;T4rhvZ)5GIcVT2g<{~?B-=gC{r%PBe~fZX}vxRZ6=5Be^K zw)0$@JXdu)hhE4KxL&_dh7cQzPDZ4?4SnfSdUJz|F$(s?$WSgHLkE=9@Up%yorOzo z4E{BS6<8`P#G05^7t6{-KdNhrh5JK8n%}!!%>C8oLj(DGB^=c&X7{>+`>M>t%E*_~ z8+b4OrUaQx)~}ok{#}qGYt?IqAKSrh&qwU3eSdLx*pDt#)aDn-a5+TmfB;B8S1U~l z;>>EJ#2cskvIo!FAq=0Th6W zN!|{D{dK)JZRg4xo9{chlroB7O;s(1e4M6P=FRQOsN~r|SSxMG?nIIgR_)lpy>zfD zyiI9Dmb5oP*G|v$nA5ojKcDYxaT)%8LY5;fL;ciU50<!^!142Vq)t z`DG(LI7>5ZK>Uv^*ytWvLZyoe!5Auu@HP^k&m?_hSL<5q@e-W4Mc99?QXPzlDrX+; zb1V%h${VP-YF8^Ol$#22G_mCc`q1*ZQNvSE!zaYDEM3nrzIdtzr?NqUDPrQ;NjD&C3w_)-ME zo-H8`vDUEg^>x0e?-dLE+u#n9j6P~wQa&}WWCx%W5EeFGxs|#w&@&X@9(40kzp9h0 ze(toaP~8c0v5$F^eD2`uT;j9K(Oj=V>B?!wXLZy~zK%x&m*))(@L@P}emha`imJGc+G zxTyfhASrDT<|4svi=}00N2M#E!DGCUM6l_)$!8|Equ=M8A6yI{=d0Pg)T(LaZ<#Ur zdx)zPFo4)qM=-|1{POb>WVv6$6%~f^e_-7C|5l+_%GxUl9pRT%v455_fSk0lRGoxr G$o~Moh5PjY literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/raw/keep.xml b/android/app/src/main/res/raw/keep.xml new file mode 100644 index 0000000..c721bb9 --- /dev/null +++ b/android/app/src/main/res/raw/keep.xml @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/android/app/src/main/res/values-night/styles.xml b/android/app/src/main/res/values-night/styles.xml new file mode 100644 index 0000000..06952be --- /dev/null +++ b/android/app/src/main/res/values-night/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/android/app/src/main/res/values/colors.xml b/android/app/src/main/res/values/colors.xml new file mode 100644 index 0000000..c5d5899 --- /dev/null +++ b/android/app/src/main/res/values/colors.xml @@ -0,0 +1,4 @@ + + + #FFFFFF + \ No newline at end of file diff --git a/android/app/src/main/res/values/string.xml b/android/app/src/main/res/values/string.xml new file mode 100644 index 0000000..7293118 --- /dev/null +++ b/android/app/src/main/res/values/string.xml @@ -0,0 +1,4 @@ + + + Obtainium + \ No newline at end of file diff --git a/android/app/src/main/res/values/styles.xml b/android/app/src/main/res/values/styles.xml new file mode 100644 index 0000000..cb1ef88 --- /dev/null +++ b/android/app/src/main/res/values/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/android/app/src/main/res/xml/file_paths.xml b/android/app/src/main/res/xml/file_paths.xml new file mode 100644 index 0000000..d0973ae --- /dev/null +++ b/android/app/src/main/res/xml/file_paths.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/android/app/src/main/res/xml/locales_config.xml b/android/app/src/main/res/xml/locales_config.xml new file mode 100644 index 0000000..3e5674b --- /dev/null +++ b/android/app/src/main/res/xml/locales_config.xml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/android/app/src/profile/AndroidManifest.xml b/android/app/src/profile/AndroidManifest.xml new file mode 100644 index 0000000..48e11d2 --- /dev/null +++ b/android/app/src/profile/AndroidManifest.xml @@ -0,0 +1,8 @@ + + + + diff --git a/android/build.gradle.kts b/android/build.gradle.kts new file mode 100644 index 0000000..72266b6 --- /dev/null +++ b/android/build.gradle.kts @@ -0,0 +1,25 @@ +allprojects { + repositories { + google() + mavenCentral() + maven { + // [required] background_fetch + url = uri("${project(":background_fetch").projectDir}/libs") + } + } +} + +val newBuildDir: Directory = rootProject.layout.buildDirectory.dir("../../build").get() +rootProject.layout.buildDirectory.value(newBuildDir) + +subprojects { + val newSubprojectBuildDir: Directory = newBuildDir.dir(project.name) + project.layout.buildDirectory.value(newSubprojectBuildDir) +} +subprojects { + project.evaluationDependsOn(":app") +} + +tasks.register("clean") { + delete(rootProject.layout.buildDirectory) +} diff --git a/android/gradle.properties b/android/gradle.properties new file mode 100644 index 0000000..f018a61 --- /dev/null +++ b/android/gradle.properties @@ -0,0 +1,3 @@ +org.gradle.jvmargs=-Xmx8G -XX:MaxMetaspaceSize=4G -XX:ReservedCodeCacheSize=512m -XX:+HeapDumpOnOutOfMemoryError +android.useAndroidX=true +android.enableJetifier=true diff --git a/android/gradle/wrapper/gradle-wrapper.properties b/android/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..ac3b479 --- /dev/null +++ b/android/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,5 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-8.12-all.zip diff --git a/android/settings.gradle.kts b/android/settings.gradle.kts new file mode 100644 index 0000000..ab39a10 --- /dev/null +++ b/android/settings.gradle.kts @@ -0,0 +1,25 @@ +pluginManagement { + val flutterSdkPath = run { + val properties = java.util.Properties() + file("local.properties").inputStream().use { properties.load(it) } + val flutterSdkPath = properties.getProperty("flutter.sdk") + require(flutterSdkPath != null) { "flutter.sdk not set in local.properties" } + flutterSdkPath + } + + 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.3" apply false + id("org.jetbrains.kotlin.android") version "2.1.0" apply false +} + +include(":app") diff --git a/assets/ca/lets-encrypt-r3.pem b/assets/ca/lets-encrypt-r3.pem new file mode 100644 index 0000000..43b222a --- /dev/null +++ b/assets/ca/lets-encrypt-r3.pem @@ -0,0 +1,30 @@ +-----BEGIN CERTIFICATE----- +MIIFFjCCAv6gAwIBAgIRAJErCErPDBinU/bWLiWnX1owDQYJKoZIhvcNAQELBQAw +TzELMAkGA1UEBhMCVVMxKTAnBgNVBAoTIEludGVybmV0IFNlY3VyaXR5IFJlc2Vh +cmNoIEdyb3VwMRUwEwYDVQQDEwxJU1JHIFJvb3QgWDEwHhcNMjAwOTA0MDAwMDAw +WhcNMjUwOTE1MTYwMDAwWjAyMQswCQYDVQQGEwJVUzEWMBQGA1UEChMNTGV0J3Mg +RW5jcnlwdDELMAkGA1UEAxMCUjMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK +AoIBAQC7AhUozPaglNMPEuyNVZLD+ILxmaZ6QoinXSaqtSu5xUyxr45r+XXIo9cP +R5QUVTVXjJ6oojkZ9YI8QqlObvU7wy7bjcCwXPNZOOftz2nwWgsbvsCUJCWH+jdx +sxPnHKzhm+/b5DtFUkWWqcFTzjTIUu61ru2P3mBw4qVUq7ZtDpelQDRrK9O8Zutm +NHz6a4uPVymZ+DAXXbpyb/uBxa3Shlg9F8fnCbvxK/eG3MHacV3URuPMrSXBiLxg +Z3Vms/EY96Jc5lP/Ooi2R6X/ExjqmAl3P51T+c8B5fWmcBcUr2Ok/5mzk53cU6cG +/kiFHaFpriV1uxPMUgP17VGhi9sVAgMBAAGjggEIMIIBBDAOBgNVHQ8BAf8EBAMC +AYYwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsGAQUFBwMBMBIGA1UdEwEB/wQIMAYB +Af8CAQAwHQYDVR0OBBYEFBQusxe3WFbLrlAJQOYfr52LFMLGMB8GA1UdIwQYMBaA +FHm0WeZ7tuXkAXOACIjIGlj26ZtuMDIGCCsGAQUFBwEBBCYwJDAiBggrBgEFBQcw +AoYWaHR0cDovL3gxLmkubGVuY3Iub3JnLzAnBgNVHR8EIDAeMBygGqAYhhZodHRw +Oi8veDEuYy5sZW5jci5vcmcvMCIGA1UdIAQbMBkwCAYGZ4EMAQIBMA0GCysGAQQB +gt8TAQEBMA0GCSqGSIb3DQEBCwUAA4ICAQCFyk5HPqP3hUSFvNVneLKYY611TR6W +PTNlclQtgaDqw+34IL9fzLdwALduO/ZelN7kIJ+m74uyA+eitRY8kc607TkC53wl +ikfmZW4/RvTZ8M6UK+5UzhK8jCdLuMGYL6KvzXGRSgi3yLgjewQtCPkIVz6D2QQz +CkcheAmCJ8MqyJu5zlzyZMjAvnnAT45tRAxekrsu94sQ4egdRCnbWSDtY7kh+BIm +lJNXoB1lBMEKIq4QDUOXoRgffuDghje1WrG9ML+Hbisq/yFOGwXD9RiX8F6sw6W4 +avAuvDszue5L3sz85K+EC4Y/wFVDNvZo4TYXao6Z0f+lQKc0t8DQYzk1OXVu8rp2 +yJMC6alLbBfODALZvYH7n7do1AZls4I9d1P4jnkDrQoxB3UqQ9hVl3LEKQ73xF1O +yK5GhDDX8oVfGKF5u+decIsH4YaTw7mP3GFxJSqv3+0lUFJoi5Lc5da149p90Ids +hCExroL1+7mryIkXPeFM5TgO9r0rvZaBFOvV2z0gp35Z0+L4WPlbuEjN/lxPFin+ +HlUjr8gRsI3qfJOQFy/9rKIJR0Y/8Omwt/8oTWgy1mdeHmmjk7j1nYsvC9JSQ6Zv +MldlTTKB3zhThV1+XWYp6rjd5JW1zbVWEkLNxE7GJThEUG3szgBVGP7pSWTUTsqX +nLRbwHOoq7hHwg== +-----END CERTIFICATE----- diff --git a/assets/fonts/Montserrat-Regular.ttf b/assets/fonts/Montserrat-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..48ba65ed33dff18e74c62b0f08d8165db64a3085 GIT binary patch literal 330948 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

$JBKc4(%@}E;wQ~ahhnbLAf%#@K+@~7;ba%0M$ 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


sQQo^)p_<~$js%pv+isRedPgtAX$UP=k0 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 LNvTQ3d&B<+rysaJ literal 0 HcmV?d00001 diff --git a/assets/graphics/badge_obtainium.png b/assets/graphics/badge_obtainium.png new file mode 100644 index 0000000000000000000000000000000000000000..a4cf4f9cac89dc2c40b067ff13ab88275f94f271 GIT binary patch literal 17992 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≻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 literal 0 HcmV?d00001 diff --git a/assets/graphics/badge_obtainium_i18n/badge_obtainium_zh-Hans.png b/assets/graphics/badge_obtainium_i18n/badge_obtainium_zh-Hans.png new file mode 100644 index 0000000000000000000000000000000000000000..4d7408352c0b8478648a04c6758d7d8d04754578 GIT binary patch literal 26217 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 literal 0 HcmV?d00001 diff --git a/assets/graphics/banner.png b/assets/graphics/banner.png new file mode 100755 index 0000000000000000000000000000000000000000..cc4481484c4f5ca25a3937520c9f8eacc5afd7dd GIT binary patch literal 67400 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 z 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 literal 0 HcmV?d00001 diff --git a/assets/graphics/icon-512x512.png b/assets/graphics/icon-512x512.png new file mode 100644 index 0000000000000000000000000000000000000000..2cbf341fe113895f0e19372f5ec455d6a6c1ab52 GIT binary patch literal 44689 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�aAta!dZ8!J$~ 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 ZlZTN}8f{EBUU!q6LX + + + diff --git a/assets/graphics/icon_small.png b/assets/graphics/icon_small.png new file mode 100644 index 0000000000000000000000000000000000000000..6e6a126972dbb6b587e13827ca4bb486e58bf2a2 GIT binary patch literal 7798 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 E3l?ZxrT_o{ literal 0 HcmV?d00001 diff --git a/assets/graphics/obtainium.psd b/assets/graphics/obtainium.psd new file mode 100755 index 0000000000000000000000000000000000000000..d310ea6fb2e723f6c51b8dae691964f75db0b233 GIT binary patch literal 872338 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�g5d2^QVAi)2qz^?kjg5qJ=LKEL+b9# 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

DXp0p>DY6wl|EsU(c9gWRJ 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
rTfa4pF1gh`d{39?2K5uYzq5f-~aqb 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 literal 0 HcmV?d00001 diff --git a/assets/screenshots/4.app.png b/assets/screenshots/4.app.png new file mode 100644 index 0000000000000000000000000000000000000000..0b9ce1d0cc569af46f5eb8eb44189dccbd8eb788 GIT binary patch literal 232191 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 Uc7z>HD=fCMtaRSYN4D?9rOcS&?LOQ0y4)CL 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 z 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

gpuRtc}WZBDjZqt0=Uc}CIeN8Ms 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

    3+>L|4Z6JVS$;m?}Hv?qkR})Kn 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

    Obtainium erlaubt Ihnen die Installation und Aktualisierung von Apps direkt von deren Veröffentlichungsseiten aus; Sie erhalten außerdem Benachrichtigungen, wenn neue Versionen verfügbar sind.

    +

    Lesen Sie das Wiki

    +

    + Derzeit unterstützte App-Quellen: +

    +
      +
    • Open Source – Allgemein: +
        +
      • F-Droid
      • +
      • Third Party F-Droid Repos
      • +
      • Forgejo (Codeberg)
      • +
      • GitHub
      • +
      • GitLab
      • +
      • IzzyOnDroid
      • +
      • SourceHut
      • +
      +
    • +
    • Andere – Allgemein: +
        +
      • alternative Stores
      • +
          +
        • CoolApk
        • +
        • Tencent App Store
        • +
        • RuStore
        • +
        +
      • OEM-Stores
      • +
          +
        • Huawei AppGallery
        • +
        • vivo App Store (China)
        • +
        +
      • Mods
      • +
          +
        • Farsroid
        • +
        +
      • Reupload-Stores
      • +
          +
        • APKMirror (nur Updatebenachrchtigungen; kein APK-Download möglich)
        • +
        • APKPure
        • +
        • Aptoide
        • +
        • Uptodown
        • +
        +
      • Jenkins Jobs
      • +
      +
    • +
    • Andere - App-Spezifisch: +
        +
      • Telegram App
      • +
      • Neutron Code
      • +
      +
    • +
    • „HTML“ (Fallback): Jede andere URL, die eine HTML-Seite mit Links zu APK-Dateien zurückgibt.
    • +
    +

    + Einschränkungen: +

    +

    + Bei einigen Quellen werden die Daten mithilfe von Web Scraping gesammelt und können aufgrund von Änderungen am Design der Website leicht beschädigt werden. In solchen Fällen sind zuverlässigere Methoden nicht verfügbar. +

    diff --git a/fastlane/metadata/android/de/short_description.txt b/fastlane/metadata/android/de/short_description.txt new file mode 100644 index 0000000..870ca81 --- /dev/null +++ b/fastlane/metadata/android/de/short_description.txt @@ -0,0 +1 @@ +… Android-App-Updates direkt von der Quelle erhalten \ No newline at end of file diff --git a/fastlane/metadata/android/de/title.txt b/fastlane/metadata/android/de/title.txt new file mode 100644 index 0000000..45ccf2a --- /dev/null +++ b/fastlane/metadata/android/de/title.txt @@ -0,0 +1 @@ +Obtainium diff --git a/fastlane/metadata/android/en-US/full_description.txt b/fastlane/metadata/android/en-US/full_description.txt new file mode 100644 index 0000000..ecdd345 --- /dev/null +++ b/fastlane/metadata/android/en-US/full_description.txt @@ -0,0 +1,48 @@ +

    Obtainium allows you to install and update Apps directly from their releases pages, and receive notifications when new releases are made available.

    +

    Read the Wiki

    +

    + Currently supported App sources: +

    +
      +
    • +

      Open Source - General:

      +
        +
      • GitHub
      • +
      • GitLab
      • +
      • Forgejo (Codeberg)
      • +
      • F-Droid
      • +
      • Third Party F-Droid Repos
      • +
      • IzzyOnDroid
      • +
      • SourceHut
      • +
      +
    • +
    • +

      Other - General:

      +
        +
      • APKPure
      • +
      • Aptoide
      • +
      • Uptodown
      • +
      • APKMirror (Track-Only)
      • +
      • Huawei AppGallery
      • +
      • Tencent App Store
      • +
      • CoolApk
      • +
      • vivo App Store (CN)
      • +
      • Jenkins Jobs
      • +
      • RuStore
      • +
      +
    • +
    • +

      Other - App-Specific:

      +
        +
      • Telegram App
      • +
      • Neutron Code
      • +
      +
    • +
    • "HTML" (Fallback): Any other URL that returns an HTML page with links to APK files

    • +
    +

    + Limitations: +

    +

    + For some sources, data is gathered using Web scraping and can easily break due to changes in website design. In such cases, more reliable methods may be unavailable. +

    diff --git a/fastlane/metadata/android/en-US/images/featureGraphic.png b/fastlane/metadata/android/en-US/images/featureGraphic.png new file mode 120000 index 0000000..1c313f1 --- /dev/null +++ b/fastlane/metadata/android/en-US/images/featureGraphic.png @@ -0,0 +1 @@ +../../../../../assets/graphics/banner.png \ No newline at end of file diff --git a/fastlane/metadata/android/en-US/images/icon.png b/fastlane/metadata/android/en-US/images/icon.png new file mode 120000 index 0000000..90c4bd9 --- /dev/null +++ b/fastlane/metadata/android/en-US/images/icon.png @@ -0,0 +1 @@ +../../../../../assets/graphics/icon-512x512.png \ No newline at end of file diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/1.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/1.png new file mode 120000 index 0000000..c78483b --- /dev/null +++ b/fastlane/metadata/android/en-US/images/phoneScreenshots/1.png @@ -0,0 +1 @@ +../../../../../../assets/screenshots/1.apps.png \ No newline at end of file diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/2.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/2.png new file mode 120000 index 0000000..3101b70 --- /dev/null +++ b/fastlane/metadata/android/en-US/images/phoneScreenshots/2.png @@ -0,0 +1 @@ +../../../../../../assets/screenshots/2.dark_theme.png \ No newline at end of file diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/3.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/3.png new file mode 120000 index 0000000..481e3d9 --- /dev/null +++ b/fastlane/metadata/android/en-US/images/phoneScreenshots/3.png @@ -0,0 +1 @@ +../../../../../../assets/screenshots/3.material_you.png \ No newline at end of file diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/4.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/4.png new file mode 120000 index 0000000..dc799e0 --- /dev/null +++ b/fastlane/metadata/android/en-US/images/phoneScreenshots/4.png @@ -0,0 +1 @@ +../../../../../../assets/screenshots/4.app.png \ No newline at end of file diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/5.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/5.png new file mode 120000 index 0000000..bbdd89f --- /dev/null +++ b/fastlane/metadata/android/en-US/images/phoneScreenshots/5.png @@ -0,0 +1 @@ +../../../../../../assets/screenshots/5.app_opts.png \ No newline at end of file diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/6.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/6.png new file mode 120000 index 0000000..29d4972 --- /dev/null +++ b/fastlane/metadata/android/en-US/images/phoneScreenshots/6.png @@ -0,0 +1 @@ +../../../../../../assets/screenshots/6.app_webview.png \ No newline at end of file diff --git a/fastlane/metadata/android/en-US/short_description.txt b/fastlane/metadata/android/en-US/short_description.txt new file mode 100644 index 0000000..962f353 --- /dev/null +++ b/fastlane/metadata/android/en-US/short_description.txt @@ -0,0 +1 @@ +Get Android app updates directly from the source diff --git a/fastlane/metadata/android/en-US/title.txt b/fastlane/metadata/android/en-US/title.txt new file mode 100644 index 0000000..e980f94 --- /dev/null +++ b/fastlane/metadata/android/en-US/title.txt @@ -0,0 +1 @@ +Obtainium diff --git a/fastlane/metadata/android/ru/full_description.txt b/fastlane/metadata/android/ru/full_description.txt new file mode 100644 index 0000000..61e9331 --- /dev/null +++ b/fastlane/metadata/android/ru/full_description.txt @@ -0,0 +1,48 @@ +

    Obtainium позволяет вам устанавливать и обновлять приложения прямо с их объявлений о выпусках и получать уведомления о новых выпусках.

    +

    Для деталей читайте Вики

    +

    + Поддерживаемые источники приложений: +

    +
      +
    • +

      Свободное ПО - Общие:

      +
        +
      • GitHub
      • +
      • GitLab
      • +
      • Forgejo (Codeberg)
      • +
      • F-Droid
      • +
      • Third Party F-Droid Repos
      • +
      • IzzyOnDroid
      • +
      • SourceHut
      • +
      +
    • +
    • +

      Другие - Общие:

      +
        +
      • APKPure
      • +
      • Aptoide
      • +
      • Uptodown
      • +
      • APKMirror (Track-Only)
      • +
      • Huawei AppGallery
      • +
      • Tencent App Store
      • +
      • CoolApk
      • +
      • vivo App Store (CN)
      • +
      • Jenkins Jobs
      • +
      • RuStore
      • +
      +
    • +
    • +

      Другие - Для отдельных приложений:

      +
        +
      • Telegram App
      • +
      • Neutron Code
      • +
      +
    • +
    • "HTML" (Подстраховка): Любой другой URL-адрес, который возвращает HTML-страницу со ссылками на APK-файлы.

    • +
    +

    + Ограничения: +

    +

    + Для некоторых источников данные собираются с помощью веб-скрапинга и могут легко сломаться из-за изменений в дизайне веб-сайта. В таких случаях более надежные методы могут быть недоступны. +

    diff --git a/fastlane/metadata/android/ru/short_description.txt b/fastlane/metadata/android/ru/short_description.txt new file mode 100644 index 0000000..cb303f6 --- /dev/null +++ b/fastlane/metadata/android/ru/short_description.txt @@ -0,0 +1 @@ +Получайте обновления приложений прямо из источника \ No newline at end of file diff --git a/fastlane/metadata/android/ru/title.txt b/fastlane/metadata/android/ru/title.txt new file mode 100644 index 0000000..e980f94 --- /dev/null +++ b/fastlane/metadata/android/ru/title.txt @@ -0,0 +1 @@ +Obtainium diff --git a/lib/app_sources/apkcombo.dart b/lib/app_sources/apkcombo.dart new file mode 100644 index 0000000..37f6b2b --- /dev/null +++ b/lib/app_sources/apkcombo.dart @@ -0,0 +1,136 @@ +import 'package:easy_localization/easy_localization.dart'; +import 'package:html/parser.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/providers/source_provider.dart'; + +class APKCombo extends AppSource { + APKCombo() { + hosts = ['apkcombo.com']; + showReleaseDateAsVersionToggle = true; + } + + @override + String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) { + RegExp standardUrlRegEx = RegExp( + '^https?://(www\\.)?${getSourceRegex(hosts)}/+[^/]+/+[^/]+', + caseSensitive: false, + ); + var match = standardUrlRegEx.firstMatch(url); + if (match == null) { + throw InvalidURLError(name); + } + return match.group(0)!; + } + + @override + Future tryInferringAppId( + String standardUrl, { + Map additionalSettings = const {}, + }) async { + return Uri.parse(standardUrl).pathSegments.last; + } + + @override + Future?> getRequestHeaders( + Map additionalSettings, { + bool forAPKDownload = false, + }) async { + return { + "User-Agent": "curl/8.0.1", + "Accept": "*/*", + "Connection": "keep-alive", + "Host": hosts[0], + }; + } + + Future>> getApkUrls( + String standardUrl, + Map additionalSettings, + ) async { + var res = await sourceRequest('$standardUrl/download/apk', {}); + if (res.statusCode != 200) { + throw getObtainiumHttpError(res); + } + var html = parse(res.body); + return html + .querySelectorAll('#variants-tab > div > ul > li') + .map((e) { + String? arch = e + .querySelector('code') + ?.text + .trim() + .replaceAll(',', '') + .replaceAll(':', '-') + .replaceAll(' ', '-'); + return e.querySelectorAll('a').map((e) { + String? url = e.attributes['href']; + if (url != null && + !Uri.parse(url).path.toLowerCase().endsWith('.apk')) { + url = null; + } + String verCode = + e.querySelector('.info .header .vercode')?.text.trim() ?? ''; + return MapEntry( + arch != null ? '$arch-$verCode.apk' : '', + url ?? '', + ); + }).toList(); + }) + .reduce((value, element) => [...value, ...element]) + .where((element) => element.value.isNotEmpty) + .toList(); + } + + @override + Future assetUrlPrefetchModifier( + String assetUrl, + String standardUrl, + Map additionalSettings, + ) async { + var freshURLs = await getApkUrls(standardUrl, additionalSettings); + var path2Match = Uri.parse(assetUrl).path; + for (var url in freshURLs) { + if (Uri.parse(url.value).path == path2Match) { + return url.value; + } + } + throw NoAPKError(); + } + + @override + Future getLatestAPKDetails( + String standardUrl, + Map additionalSettings, + ) async { + String appId = (await tryInferringAppId(standardUrl))!; + var preres = await sourceRequest(standardUrl, additionalSettings); + if (preres.statusCode != 200) { + throw getObtainiumHttpError(preres); + } + var res = parse(preres.body); + String? version = res.querySelector('div.version')?.text.trim(); + if (version == null) { + throw NoVersionError(); + } + String appName = res.querySelector('div.app_name')?.text.trim() ?? appId; + String author = res.querySelector('div.author')?.text.trim() ?? appName; + List infoArray = res + .querySelectorAll('div.information-table > .item > div.value') + .map((e) => e.text.trim()) + .toList(); + DateTime? releaseDate; + if (infoArray.length >= 2) { + try { + releaseDate = DateFormat('MMMM d, yyyy').parse(infoArray[1]); + } catch (e) { + // ignore + } + } + return APKDetails( + version, + await getApkUrls(standardUrl, additionalSettings), + AppNames(author, appName), + releaseDate: releaseDate, + ); + } +} diff --git a/lib/app_sources/apkmirror.dart b/lib/app_sources/apkmirror.dart new file mode 100644 index 0000000..11c4fa3 --- /dev/null +++ b/lib/app_sources/apkmirror.dart @@ -0,0 +1,138 @@ +import 'dart:io'; + +import 'package:easy_localization/easy_localization.dart'; +import 'package:html/parser.dart'; +import 'package:http/http.dart'; +import 'package:obtainium/components/generated_form.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/providers/apps_provider.dart'; +import 'package:obtainium/providers/settings_provider.dart'; +import 'package:obtainium/providers/source_provider.dart'; + +class APKMirror extends AppSource { + APKMirror() { + hosts = ['apkmirror.com']; + enforceTrackOnly = true; + showReleaseDateAsVersionToggle = true; + + additionalSourceAppSpecificSettingFormItems = [ + [ + GeneratedFormSwitch( + 'fallbackToOlderReleases', + label: tr('fallbackToOlderReleases'), + defaultValue: true, + ), + ], + [ + GeneratedFormTextField( + 'filterReleaseTitlesByRegEx', + label: tr('filterReleaseTitlesByRegEx'), + required: false, + additionalValidators: [ + (value) { + return regExValidator(value); + }, + ], + ), + ], + ]; + } + + @override + Future?> getRequestHeaders( + Map additionalSettings, { + bool forAPKDownload = false, + }) async { + return { + "User-Agent": + "Obtainium/${(await getInstalledInfo(obtainiumId))?.versionName ?? '1.0.0'}", + }; + } + + @override + String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) { + RegExp standardUrlRegEx = RegExp( + '^https?://(www\\.)?${getSourceRegex(hosts)}/apk/[^/]+/[^/]+', + caseSensitive: false, + ); + RegExpMatch? match = standardUrlRegEx.firstMatch(url); + if (match == null) { + throw InvalidURLError(name); + } + return match.group(0)!; + } + + @override + String? changeLogPageFromStandardUrl(String standardUrl) => + '$standardUrl/#whatsnew'; + + @override + Future getLatestAPKDetails( + String standardUrl, + Map additionalSettings, + ) async { + bool fallbackToOlderReleases = + additionalSettings['fallbackToOlderReleases'] == true; + String? regexFilter = + (additionalSettings['filterReleaseTitlesByRegEx'] as String?) + ?.isNotEmpty == + true + ? additionalSettings['filterReleaseTitlesByRegEx'] + : null; + Response res = await sourceRequest( + '$standardUrl/feed/', + additionalSettings, + ); + if (res.statusCode == 200) { + var items = parse(res.body).querySelectorAll('item'); + dynamic targetRelease; + for (int i = 0; i < items.length; i++) { + if (!fallbackToOlderReleases && i > 0) break; + String? nameToFilter = items[i].querySelector('title')?.innerHtml; + if (regexFilter != null && + nameToFilter != null && + !RegExp(regexFilter).hasMatch(nameToFilter.trim())) { + continue; + } + targetRelease = items[i]; + break; + } + String? titleString = targetRelease?.querySelector('title')?.innerHtml; + String? dateString = targetRelease + ?.querySelector('pubDate') + ?.innerHtml + .split(' ') + .sublist(0, 5) + .join(' '); + DateTime? releaseDate = dateString != null + ? HttpDate.parse('$dateString GMT') + : null; + String? version = titleString + ?.substring( + RegExp('[0-9]').firstMatch(titleString)?.start ?? 0, + RegExp(' by ').allMatches(titleString).last.start, + ) + .trim(); + if (version == null || version.isEmpty) { + version = titleString; + } + if (version == null || version.isEmpty) { + throw NoVersionError(); + } + return APKDetails( + version, + [], + getAppNames(standardUrl), + releaseDate: releaseDate, + ); + } else { + throw getObtainiumHttpError(res); + } + } + + AppNames getAppNames(String standardUrl) { + String temp = standardUrl.substring(standardUrl.indexOf('://') + 3); + List names = temp.substring(temp.indexOf('/') + 1).split('/'); + return AppNames(names[1], names[2]); + } +} diff --git a/lib/app_sources/apkpure.dart b/lib/app_sources/apkpure.dart new file mode 100644 index 0000000..75733ce --- /dev/null +++ b/lib/app_sources/apkpure.dart @@ -0,0 +1,219 @@ +import 'dart:convert'; + +import 'package:device_info_plus/device_info_plus.dart'; +import 'package:easy_localization/easy_localization.dart'; +import 'package:obtainium/components/generated_form.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/providers/source_provider.dart'; + +extension Unique on List { + List unique([Id Function(E element)? id, bool inplace = true]) { + final ids = {}; + var list = inplace ? this : List.from(this); + list.retainWhere((x) => ids.add(id != null ? id(x) : x as Id)); + return list; + } +} + +class APKPure extends AppSource { + APKPure() { + hosts = ['apkpure.net', 'apkpure.com']; + allowSubDomains = true; + naiveStandardVersionDetection = true; + showReleaseDateAsVersionToggle = true; + additionalSourceAppSpecificSettingFormItems = [ + [ + GeneratedFormSwitch( + 'fallbackToOlderReleases', + label: tr('fallbackToOlderReleases'), + defaultValue: true, + ), + ], + [ + GeneratedFormSwitch( + 'stayOneVersionBehind', + label: tr('stayOneVersionBehind'), + defaultValue: false, + ), + ], + [ + GeneratedFormSwitch( + 'useFirstApkOfVersion', + label: tr('useFirstApkOfVersion'), + defaultValue: true, + ), + ], + ]; + } + + @override + String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) { + RegExp standardUrlRegExB = RegExp( + '^https?://m.${getSourceRegex(hosts)}(/+[^/]{2})?/+[^/]+/+[^/]+', + caseSensitive: false, + ); + RegExpMatch? match = standardUrlRegExB.firstMatch(url); + if (match != null) { + var uri = Uri.parse(url); + url = 'https://${uri.host.substring(2)}${uri.path}'; + } + RegExp standardUrlRegExA = RegExp( + '^https?://(www\\.)?${getSourceRegex(hosts)}(/+[^/]{2})?/+[^/]+/+[^/]+', + caseSensitive: false, + ); + match = standardUrlRegExA.firstMatch(url); + if (match == null) { + throw InvalidURLError(name); + } + return match.group(0)!; + } + + @override + Future tryInferringAppId( + String standardUrl, { + Map additionalSettings = const {}, + }) async { + return Uri.parse(standardUrl).pathSegments.last; + } + + Future getDetailsForVersion( + List> versionVariants, + List supportedArchs, + Map additionalSettings, + ) async { + var apkUrls = versionVariants + .map((e) { + String appId = e['package_name']; + String versionCode = e['version_code']; + + List architectures = e['native_code']?.cast(); + String architectureString = architectures.join(','); + if (architectures.contains("universal") || + architectures.contains("unlimited")) { + architectures = []; + } + if (additionalSettings['autoApkFilterByArch'] == true && + architectures.isNotEmpty && + architectures.where((a) => supportedArchs.contains(a)).isEmpty) { + return null; + } + + String type = e['asset']['type']; + String downloadUri = e['asset']['url']; + + return MapEntry( + '$appId-$versionCode-$architectureString.${type.toLowerCase()}', + downloadUri, + ); + }) + .nonNulls + .toList() + .unique((e) => e.key); + + if (apkUrls.isEmpty) { + throw NoAPKError(); + } + + // get version details from first variant + var v = versionVariants.first; + String version = v['version_name']; + String author = v['developer']; + String appName = v['title']; + DateTime releaseDate = DateTime.parse(v['update_date']); + String? changeLog = v['whatsnew']; + if (changeLog != null && changeLog.isEmpty) { + changeLog = null; + } + + if (additionalSettings['useFirstApkOfVersion'] == true) { + apkUrls = [apkUrls.first]; + } + + return APKDetails( + version, + apkUrls, + AppNames(author, appName), + releaseDate: releaseDate, + changeLog: changeLog, + ); + } + + @override + Future?> getRequestHeaders( + Map additionalSettings, { + bool forAPKDownload = false, + }) async { + if (forAPKDownload) { + return null; + } else { + return { + "Ual-Access-Businessid": "projecta", + "Ual-Access-ProjectA": + '{"device_info":{"os_ver":"${((await DeviceInfoPlugin().androidInfo).version.sdkInt)}"}}', + }; + } + } + + @override + Future getLatestAPKDetails( + String standardUrl, + Map additionalSettings, + ) async { + String appId = (await tryInferringAppId(standardUrl))!; + + List supportedArchs = + (await DeviceInfoPlugin().androidInfo).supportedAbis; + + // request versions from API + var res = await sourceRequest( + "https://tapi.pureapk.com/v3/get_app_his_version?package_name=$appId&hl=en", + additionalSettings, + ); + if (res.statusCode != 200) { + throw getObtainiumHttpError(res); + } + List> apks = jsonDecode( + res.body, + )['version_list'].cast>(); + + // group by version + List>> versions = apks + .fold>>>({}, ( + Map>> val, + Map element, + ) { + String v = element['version_name']; + if (!val.containsKey(v)) { + val[v] = []; + } + val[v]?.add(element); + return val; + }) + .values + .toList(); + + if (versions.isEmpty) { + throw NoReleasesError(); + } + + for (var i = 0; i < versions.length; i++) { + var v = versions[i]; + try { + if (i == 0 && additionalSettings['stayOneVersionBehind'] == true) { + throw NoReleasesError(); + } + return await getDetailsForVersion( + v, + supportedArchs, + additionalSettings, + ); + } catch (e) { + if (additionalSettings['fallbackToOlderReleases'] != true || + i == versions.length - 1) { + rethrow; + } + } + } + throw NoAPKError(); + } +} diff --git a/lib/app_sources/aptoide.dart b/lib/app_sources/aptoide.dart new file mode 100644 index 0000000..7a1ee5b --- /dev/null +++ b/lib/app_sources/aptoide.dart @@ -0,0 +1,94 @@ +import 'dart:convert'; + +import 'package:easy_localization/easy_localization.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/providers/source_provider.dart'; + +class Aptoide extends AppSource { + Aptoide() { + hosts = ['aptoide.com']; + name = 'Aptoide'; + allowSubDomains = true; + naiveStandardVersionDetection = true; + showReleaseDateAsVersionToggle = true; + } + + @override + String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) { + RegExp standardUrlRegEx = RegExp( + '^https?://([^\\.]+\\.){2,}${getSourceRegex(hosts)}', + caseSensitive: false, + ); + RegExpMatch? match = standardUrlRegEx.firstMatch(url); + if (match == null) { + throw InvalidURLError(name); + } + return match.group(0)!; + } + + @override + Future tryInferringAppId( + String standardUrl, { + Map additionalSettings = const {}, + }) async { + return (await getAppDetailsJSON( + standardUrl, + additionalSettings, + ))['package']; + } + + Future> getAppDetailsJSON( + String standardUrl, + Map additionalSettings, + ) async { + var res = await sourceRequest(standardUrl, additionalSettings); + if (res.statusCode != 200) { + throw getObtainiumHttpError(res); + } + var idMatch = RegExp('"app":{"id":[0-9]+').firstMatch(res.body); + String? id; + if (idMatch != null) { + id = res.body.substring(idMatch.start + 12, idMatch.end); + } else { + throw NoReleasesError(); + } + var res2 = await sourceRequest( + 'https://ws2.aptoide.com/api/7/getApp/app_id/$id', + additionalSettings, + ); + if (res2.statusCode != 200) { + throw getObtainiumHttpError(res); + } + return jsonDecode(res2.body)?['nodes']?['meta']?['data']; + } + + @override + Future getLatestAPKDetails( + String standardUrl, + Map additionalSettings, + ) async { + var appDetails = await getAppDetailsJSON(standardUrl, additionalSettings); + String appName = appDetails['name'] ?? tr('app'); + String author = appDetails['developer']?['name'] ?? name; + String? dateStr = appDetails['updated']; + String? version = appDetails['file']?['vername']; + String? apkUrl = appDetails['file']?['path']; + if (version == null) { + throw NoVersionError(); + } + if (apkUrl == null) { + throw NoAPKError(); + } + DateTime? relDate; + if (dateStr != null) { + relDate = DateTime.parse(dateStr); + } + + return APKDetails( + version, + getApkUrlsFromUrls([apkUrl]), + AppNames(author, appName), + releaseDate: relDate, + ); + } +} diff --git a/lib/app_sources/codeberg.dart b/lib/app_sources/codeberg.dart new file mode 100644 index 0000000..6e395f1 --- /dev/null +++ b/lib/app_sources/codeberg.dart @@ -0,0 +1,65 @@ +import 'package:obtainium/app_sources/github.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/providers/source_provider.dart'; + +class Codeberg extends AppSource { + GitHub gh = GitHub(hostChanged: true); + Codeberg() { + name = 'Forgejo (Codeberg)'; + hosts = ['codeberg.org']; + + additionalSourceAppSpecificSettingFormItems = + gh.additionalSourceAppSpecificSettingFormItems; + + canSearch = true; + searchQuerySettingFormItems = gh.searchQuerySettingFormItems; + } + + @override + String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) { + RegExp standardUrlRegEx = RegExp( + '^https?://(www\\.)?${getSourceRegex(hosts)}/[^/]+/[^/]+', + caseSensitive: false, + ); + RegExpMatch? match = standardUrlRegEx.firstMatch(url); + if (match == null) { + throw InvalidURLError(name); + } + return match.group(0)!; + } + + @override + String? changeLogPageFromStandardUrl(String standardUrl) => + '$standardUrl/releases'; + + @override + Future getLatestAPKDetails( + String standardUrl, + Map additionalSettings, + ) async { + return await gh.getLatestAPKDetailsCommon2(standardUrl, additionalSettings, ( + bool useTagUrl, + ) async { + return 'https://${hosts[0]}/api/v1/repos${standardUrl.substring('https://${hosts[0]}'.length)}/${useTagUrl ? 'tags' : 'releases'}?per_page=100'; + }, null); + } + + AppNames getAppNames(String standardUrl) { + String temp = standardUrl.substring(standardUrl.indexOf('://') + 3); + List names = temp.substring(temp.indexOf('/') + 1).split('/'); + return AppNames(names[0], names[1]); + } + + @override + Future>> search( + String query, { + Map querySettings = const {}, + }) async { + return gh.searchCommon( + query, + 'https://${hosts[0]}/api/v1/repos/search?q=${Uri.encodeQueryComponent(query)}&limit=100', + 'data', + querySettings: querySettings, + ); + } +} diff --git a/lib/app_sources/coolapk.dart b/lib/app_sources/coolapk.dart new file mode 100644 index 0000000..4d2bf2c --- /dev/null +++ b/lib/app_sources/coolapk.dart @@ -0,0 +1,193 @@ +import 'dart:convert'; +import 'package:bcrypt/bcrypt.dart'; +import 'package:crypto/crypto.dart'; +import 'package:easy_localization/easy_localization.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/providers/source_provider.dart'; +import 'dart:math'; + +// kanged from https://github.com/DUpdateSystem/UpgradeAll/blob/b2f92c9/core-websdk/src/main/java/net/xzos/upgradeall/core/websdk/api/client_proxy/hubs/CoolApk.kt +class CoolApk extends AppSource { + CoolApk() { + name = tr('coolApk'); + hosts = ['www.coolapk.com', 'api2.coolapk.com']; + allowSubDomains = true; + naiveStandardVersionDetection = true; + allowOverride = false; + } + + @override + String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) { + RegExp standardUrlRegEx = RegExp( + r'^https?://(www\.)?coolapk\.com/apk/[^/]+', + caseSensitive: false, + ); + var match = standardUrlRegEx.firstMatch(url); + if (match == null) { + throw InvalidURLError(name); + } + String standardizedUrl = match.group(0)!; + return standardizedUrl; + } + + @override + Future tryInferringAppId( + String standardUrl, { + Map additionalSettings = const {}, + }) async { + String appId = Uri.parse(standardUrl).pathSegments.last; + return appId; + } + + @override + Future getLatestAPKDetails( + String standardUrl, + Map additionalSettings, + ) async { + String appId = (await tryInferringAppId(standardUrl))!; + String apiUrl = 'https://api2.coolapk.com'; + + // get latest + var detailUrl = '$apiUrl/v6/apk/detail?id=$appId'; + var headers = await getRequestHeaders(additionalSettings); + var res = await sourceRequest(detailUrl, additionalSettings); + + if (res.statusCode != 200) { + throw getObtainiumHttpError(res); + } + + var json = jsonDecode(res.body); + if (json['status'] == -2 || json['data'] == null) { + throw NoReleasesError(); + } + + var detail = json['data']; + String version = detail['apkversionname'].toString(); + String appName = detail['title'].toString(); + String author = detail['developername']?.toString() ?? 'CoolApk'; + String changelog = detail['changelog']?.toString() ?? ''; + int? releaseDate = detail['lastupdate'] != null + ? (detail['lastupdate'] is int + ? detail['lastupdate'] * 1000 + : int.parse(detail['lastupdate'].toString()) * 1000) + : null; + String aid = detail['id'].toString(); + + // get apk url + String apkUrl = await _getLatestApkUrl( + apiUrl, + appId, + aid, + version, + headers, + ); + if (apkUrl.isEmpty) { + throw NoAPKError(); + } + + String apkName = '${appId}_$version.apk'; + + return APKDetails( + version, + [MapEntry(apkName, apkUrl)], + AppNames(author, appName), + releaseDate: releaseDate != null + ? DateTime.fromMillisecondsSinceEpoch(releaseDate) + : null, + changeLog: changelog, + ); + } + + Future _getLatestApkUrl( + String apiUrl, + String appId, + String aid, + String version, + Map? headers, + ) async { + String url = '$apiUrl/v6/apk/download?pn=$appId&aid=$aid'; + var res = await sourceRequest(url, {}, followRedirects: false); + if (res.statusCode >= 300 && res.statusCode < 400) { + String location = res.headers['location'] ?? ''; + return location; + } + return ''; + } + + @override + Future?> getRequestHeaders( + Map additionalSettings, { + bool forAPKDownload = false, + }) async { + var tokenPair = _getToken(); + // CoolAPK header + return { + 'User-Agent': + 'Dalvik/2.1.0 (Linux; U; Android 9; MI 8 SE MIUI/9.5.9) (#Build; Xiaomi; MI 8 SE; PKQ1.181121.001; 9) +CoolMarket/12.4.2-2208241-universal', + 'X-App-Id': 'com.coolapk.market', + 'X-Requested-With': 'XMLHttpRequest', + 'X-Sdk-Int': '30', + 'X-App-Mode': 'universal', + 'X-App-Channel': 'coolapk', + 'X-Sdk-Locale': 'zh-CN', + 'X-App-Version': '12.4.2', + 'X-Api-Supported': '2208241', + 'X-App-Code': '2208241', + 'X-Api-Version': '12', + 'X-App-Device': tokenPair['deviceCode']!, + 'X-Dark-Mode': '0', + 'X-App-Token': tokenPair['token']!, + }; + } + + Map _getToken() { + final rand = Random(); + + String randHexString(int n) => List.generate( + n, + (_) => rand.nextInt(256).toRadixString(16).padLeft(2, '0'), + ).join().toUpperCase(); + + String randMacAddress() => List.generate( + 6, + (_) => rand.nextInt(256).toRadixString(16).padLeft(2, '0'), + ).join(':'); + + // 加密算法来自 https://github.com/XiaoMengXinX/FuckCoolapkTokenV2、https://github.com/Coolapk-UWP/Coolapk-UWP + // device + String aid = randHexString(16); + String mac = randMacAddress(); + const manufactor = 'Google'; + const brand = 'Google'; + const model = 'Pixel 5a'; + const buildNumber = 'SQ1D.220105.007'; + + // generate deviceCode + String deviceCode = base64.encode( + '$aid; ; ; $mac; $manufactor; $brand; $model; $buildNumber'.codeUnits, + ); + + // generate timestamp + String timeStamp = (DateTime.now().millisecondsSinceEpoch ~/ 1000) + .toString(); + String base64TimeStamp = base64.encode(timeStamp.codeUnits); + String md5TimeStamp = md5.convert(timeStamp.codeUnits).toString(); + String md5DeviceCode = md5.convert(deviceCode.codeUnits).toString(); + + // generate token + String token = + 'token://com.coolapk.market/dcf01e569c1e3db93a3d0fcf191a622c?$md5TimeStamp\$$md5DeviceCode&com.coolapk.market'; + String base64Token = base64.encode(token.codeUnits); + String md5Base64Token = md5.convert(base64Token.codeUnits).toString(); + String md5Token = md5.convert(token.codeUnits).toString(); + + // generate salt and hash + String bcryptSalt = + '\$2a\$10\$${base64TimeStamp.substring(0, 14)}/${md5Token.substring(0, 6)}u'; + String bcryptResult = BCrypt.hashpw(md5Base64Token, bcryptSalt); + String reBcryptResult = bcryptResult.replaceRange(0, 3, '\$2y'); + String finalToken = 'v2${base64.encode(reBcryptResult.codeUnits)}'; + + return {'deviceCode': deviceCode, 'token': finalToken}; + } +} diff --git a/lib/app_sources/directAPKLink.dart b/lib/app_sources/directAPKLink.dart new file mode 100644 index 0000000..998f7bc --- /dev/null +++ b/lib/app_sources/directAPKLink.dart @@ -0,0 +1,83 @@ +import 'package:easy_localization/easy_localization.dart'; +import 'package:obtainium/app_sources/html.dart'; +import 'package:obtainium/components/generated_form.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/providers/source_provider.dart'; + +class DirectAPKLink extends AppSource { + HTML html = HTML(); + + DirectAPKLink() { + name = tr('directAPKLink'); + additionalSourceAppSpecificSettingFormItems = [ + ...html.additionalSourceAppSpecificSettingFormItems + .where( + (element) => element + .where((element) => element.key == 'requestHeader') + .isNotEmpty, + ) + , + [ + GeneratedFormDropdown( + 'defaultPseudoVersioningMethod', + [ + MapEntry('partialAPKHash', tr('partialAPKHash')), + MapEntry('ETag', 'ETag'), + ], + label: tr('defaultPseudoVersioningMethod'), + defaultValue: 'partialAPKHash', + ), + ], + ]; + excludeCommonSettingKeys = [ + 'versionExtractionRegEx', + 'matchGroupToUse', + 'versionDetection', + 'useVersionCodeAsOSVersion', + 'apkFilterRegEx', + 'autoApkFilterByArch', + ]; + } + + @override + String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) { + if (!forSelection) { + return url; + } + RegExp standardUrlRegExA = RegExp('.+\\.apk\$', caseSensitive: false); + var match = standardUrlRegExA.firstMatch(url); + if (match == null) { + throw InvalidURLError(name); + } + return match.group(0)!; + } + + @override + Future?> getRequestHeaders( + Map additionalSettings, { + bool forAPKDownload = false, + }) { + return html.getRequestHeaders( + additionalSettings, + forAPKDownload: forAPKDownload, + ); + } + + @override + Future getLatestAPKDetails( + String standardUrl, + Map additionalSettings, + ) async { + var additionalSettingsNew = getDefaultValuesFromFormItems( + html.combinedAppSpecificSettingFormItems, + ); + for (var s in additionalSettings.keys) { + if (additionalSettingsNew.containsKey(s)) { + additionalSettingsNew[s] = additionalSettings[s]; + } + } + additionalSettingsNew['directAPKLink'] = true; + additionalSettingsNew['versionDetection'] = false; + return html.getLatestAPKDetails(standardUrl, additionalSettingsNew); + } +} diff --git a/lib/app_sources/farsroid.dart b/lib/app_sources/farsroid.dart new file mode 100644 index 0000000..c4faece --- /dev/null +++ b/lib/app_sources/farsroid.dart @@ -0,0 +1,95 @@ +import 'dart:convert'; + +import 'package:easy_localization/easy_localization.dart'; +import 'package:html/parser.dart'; +import 'package:obtainium/app_sources/html.dart'; +import 'package:obtainium/components/generated_form.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/providers/source_provider.dart'; + +class Farsroid extends AppSource { + Farsroid() { + hosts = ['farsroid.com']; + name = 'Farsroid'; + naiveStandardVersionDetection = true; + + additionalSourceAppSpecificSettingFormItems = [ + [ + GeneratedFormSwitch( + 'useFirstApkOfVersion', + label: tr('useFirstApkOfVersion'), + defaultValue: true, + ), + ], + ]; + } + + @override + String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) { + RegExp standardUrlRegEx = RegExp( + '^https?://([^\\.]+\\.)${getSourceRegex(hosts)}/[^/]+', + caseSensitive: false, + ); + RegExpMatch? match = standardUrlRegEx.firstMatch(url); + if (match == null) { + throw InvalidURLError(name); + } + return match.group(0)!; + } + + @override + Future getLatestAPKDetails( + String standardUrl, + Map additionalSettings, + ) async { + String appName = Uri.parse(standardUrl).pathSegments.last; + + var res = await sourceRequest(standardUrl, additionalSettings); + if (res.statusCode != 200) { + throw getObtainiumHttpError(res); + } + var html = parse(res.body); + var dlinks = html.querySelectorAll('.download-links'); + if (dlinks.isEmpty) { + throw NoReleasesError(); + } + var postId = dlinks.first.attributes['data-post-id'] ?? ''; + var version = dlinks.first.attributes['data-post-version'] ?? ''; + + if (postId.isEmpty || version.isEmpty) { + throw NoVersionError(); + } + + var res2 = await sourceRequest( + Uri.encodeFull( + 'https://${hosts[0]}/api/download-box/?post_id=$postId&post_version=$version', + ), + additionalSettings, + ); + var html2 = jsonDecode(res2.body)?['data']?['content'] as String? ?? ''; + if (html2.isEmpty) { + throw NoAPKError(); + } + var apkLinks = (await grabLinksCommon( + html2, + res2.request!.url, + additionalSettings, + )).map((l) => MapEntry(Uri.parse(l.key).pathSegments.last, l.key)).toList(); + + if (additionalSettings['useFirstApkOfVersion'] == true) { + apkLinks = apkLinks + .where( + (l) => l.key.toLowerCase().startsWith( + '$appName-$version'.toLowerCase(), + ), + ) + .toList(); + } + + if (apkLinks.isEmpty) { + throw NoAPKError(); + } + + return APKDetails(version, apkLinks, AppNames(name, appName)); + } +} diff --git a/lib/app_sources/fdroid.dart b/lib/app_sources/fdroid.dart new file mode 100644 index 0000000..e78fc82 --- /dev/null +++ b/lib/app_sources/fdroid.dart @@ -0,0 +1,291 @@ +import 'dart:convert'; + +import 'package:easy_localization/easy_localization.dart'; +import 'package:html/parser.dart'; +import 'package:http/http.dart'; +import 'package:obtainium/app_sources/github.dart'; +import 'package:obtainium/app_sources/gitlab.dart'; +import 'package:obtainium/components/generated_form.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/providers/source_provider.dart'; + +class FDroid extends AppSource { + FDroid() { + hosts = ['f-droid.org']; + name = tr('fdroid'); + naiveStandardVersionDetection = true; + canSearch = true; + additionalSourceAppSpecificSettingFormItems = [ + [ + GeneratedFormTextField( + 'filterVersionsByRegEx', + label: tr('filterVersionsByRegEx'), + required: false, + additionalValidators: [ + (value) { + return regExValidator(value); + }, + ], + ), + ], + [ + GeneratedFormSwitch( + 'trySelectingSuggestedVersionCode', + label: tr('trySelectingSuggestedVersionCode'), + defaultValue: true, + ), + ], + [ + GeneratedFormSwitch( + 'autoSelectHighestVersionCode', + label: tr('autoSelectHighestVersionCode'), + ), + ], + ]; + } + + @override + String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) { + RegExp standardUrlRegExB = RegExp( + '^https?://(www\\.)?${getSourceRegex(hosts)}/+[^/]+/+packages/+[^/]+', + caseSensitive: false, + ); + RegExpMatch? match = standardUrlRegExB.firstMatch(url); + if (match != null) { + url = + 'https://${Uri.parse(match.group(0)!).host}/packages/${Uri.parse(url).pathSegments.where((s) => s.trim().isNotEmpty).last}'; + } + RegExp standardUrlRegExA = RegExp( + '^https?://(www\\.)?${getSourceRegex(hosts)}/+packages/+[^/]+', + caseSensitive: false, + ); + match = standardUrlRegExA.firstMatch(url); + if (match == null) { + throw InvalidURLError(name); + } + return match.group(0)!; + } + + @override + Future tryInferringAppId( + String standardUrl, { + Map additionalSettings = const {}, + }) async { + return Uri.parse(standardUrl).pathSegments.last; + } + + @override + Future getLatestAPKDetails( + String standardUrl, + Map additionalSettings, + ) async { + String? appId = await tryInferringAppId(standardUrl); + String host = Uri.parse(standardUrl).host; + var details = getAPKUrlsFromFDroidPackagesAPIResponse( + await sourceRequest( + 'https://$host/api/v1/packages/$appId', + additionalSettings, + ), + 'https://$host/repo/$appId', + standardUrl, + name, + additionalSettings: additionalSettings, + ); + if (!hostChanged) { + try { + var res = await sourceRequest( + 'https://gitlab.com/fdroid/fdroiddata/-/raw/master/metadata/$appId.yml', + additionalSettings, + ); + var lines = res.body.split('\n'); + var authorLines = lines.where((l) => l.startsWith('AuthorName: ')); + if (authorLines.isNotEmpty) { + details.names.author = authorLines.first + .split(': ') + .sublist(1) + .join(': '); + } + var changelogUrls = lines + .where((l) => l.startsWith('Changelog: ')) + .map((e) => e.split(' ').sublist(1).join(' ')); + if (changelogUrls.isNotEmpty) { + details.changeLog = changelogUrls.first; + bool isGitHub = false; + bool isGitLab = false; + try { + GitHub( + hostChanged: true, + ).sourceSpecificStandardizeURL(details.changeLog!); + isGitHub = true; + } catch (e) { + // + } + try { + GitLab( + hostChanged: true, + ).sourceSpecificStandardizeURL(details.changeLog!); + isGitLab = true; + } catch (e) { + // + } + if ((isGitHub || isGitLab) && + (details.changeLog?.indexOf('/blob/') ?? -1) >= 0) { + details.changeLog = (await sourceRequest( + details.changeLog!.replaceFirst('/blob/', '/raw/'), + additionalSettings, + )).body; + } + } + } catch (e) { + // Fail silently + } + if ((details.changeLog?.length ?? 0) > 2048) { + details.changeLog = '${details.changeLog!.substring(0, 2048)}...'; + } + } + return details; + } + + @override + Future>> search( + String query, { + Map querySettings = const {}, + }) async { + Response res = await sourceRequest( + 'https://search.${hosts[0]}/?q=${Uri.encodeQueryComponent(query)}', + {}, + ); + if (res.statusCode == 200) { + Map> urlsWithDescriptions = {}; + parse(res.body).querySelectorAll('.package-header').forEach((e) { + String? url = e.attributes['href']; + if (url != null) { + try { + standardizeUrl(url); + } catch (e) { + url = null; + } + } + if (url != null) { + urlsWithDescriptions[url] = [ + e.querySelector('.package-name')?.text.trim() ?? '', + e.querySelector('.package-summary')?.text.trim() ?? + tr('noDescription'), + ]; + } + }); + return urlsWithDescriptions; + } else { + throw getObtainiumHttpError(res); + } + } + + APKDetails getAPKUrlsFromFDroidPackagesAPIResponse( + Response res, + String apkUrlPrefix, + String standardUrl, + String sourceName, { + Map additionalSettings = const {}, + }) { + var autoSelectHighestVersionCode = + additionalSettings['autoSelectHighestVersionCode'] == true; + var trySelectingSuggestedVersionCode = + additionalSettings['trySelectingSuggestedVersionCode'] == true; + var filterVersionsByRegEx = + (additionalSettings['filterVersionsByRegEx'] as String?)?.isNotEmpty == + true + ? additionalSettings['filterVersionsByRegEx'] + : null; + var apkFilterRegEx = + (additionalSettings['apkFilterRegEx'] as String?)?.isNotEmpty == true + ? additionalSettings['apkFilterRegEx'] + : null; + if (res.statusCode == 200) { + var response = jsonDecode(res.body); + List releases = response['packages'] ?? []; + if (apkFilterRegEx != null) { + releases = releases.where((rel) { + String apk = '${apkUrlPrefix}_${rel['versionCode']}.apk'; + return filterApks( + [MapEntry(apk, apk)], + apkFilterRegEx, + false, + ).isNotEmpty; + }).toList(); + } + if (releases.isEmpty) { + throw NoReleasesError(); + } + String? version; + Iterable releaseChoices = []; + // Grab the versionCode suggested if the user chose to do that + // Only do so at this stage if the user has no release filter + if (trySelectingSuggestedVersionCode && + response['suggestedVersionCode'] != null && + filterVersionsByRegEx == null) { + var suggestedReleases = releases.where( + (element) => + element['versionCode'] == response['suggestedVersionCode'], + ); + if (suggestedReleases.isNotEmpty) { + releaseChoices = suggestedReleases; + version = suggestedReleases.first['versionName']; + } + } + // Apply the release filter if any + if (filterVersionsByRegEx?.isNotEmpty == true) { + version = null; + releaseChoices = []; + for (var i = 0; i < releases.length; i++) { + if (RegExp( + filterVersionsByRegEx!, + ).hasMatch(releases[i]['versionName'])) { + version = releases[i]['versionName']; + } + } + if (version == null) { + throw NoVersionError(); + } + } + // Default to the highest version + version ??= releases[0]['versionName']; + if (version == null) { + throw NoVersionError(); + } + // If a suggested release was not already picked, pick all those with the selected version + if (releaseChoices.isEmpty) { + releaseChoices = releases.where( + (element) => element['versionName'] == version, + ); + } + // For the remaining releases, use the toggles to auto-select one if possible + if (releaseChoices.length > 1) { + if (autoSelectHighestVersionCode) { + releaseChoices = [releaseChoices.first]; + } else if (trySelectingSuggestedVersionCode && + response['suggestedVersionCode'] != null) { + var suggestedReleases = releaseChoices.where( + (element) => + element['versionCode'] == response['suggestedVersionCode'], + ); + if (suggestedReleases.isNotEmpty) { + releaseChoices = suggestedReleases; + } + } + } + if (releaseChoices.isEmpty) { + throw NoReleasesError(); + } + List apkUrls = releaseChoices + .map((e) => '${apkUrlPrefix}_${e['versionCode']}.apk') + .toList(); + return APKDetails( + version, + getApkUrlsFromUrls(apkUrls.toSet().toList()), + AppNames(sourceName, Uri.parse(standardUrl).pathSegments.last), + ); + } else { + throw getObtainiumHttpError(res); + } + } +} diff --git a/lib/app_sources/fdroidrepo.dart b/lib/app_sources/fdroidrepo.dart new file mode 100644 index 0000000..157fedb --- /dev/null +++ b/lib/app_sources/fdroidrepo.dart @@ -0,0 +1,275 @@ +import 'package:easy_localization/easy_localization.dart'; +import 'package:html/parser.dart'; +import 'package:http/http.dart'; +import 'package:obtainium/components/generated_form.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/providers/source_provider.dart'; + +class FDroidRepo extends AppSource { + FDroidRepo() { + name = tr('fdroidThirdPartyRepo'); + canSearch = true; + includeAdditionalOptsInMainSearch = true; + neverAutoSelect = true; + showReleaseDateAsVersionToggle = true; + + additionalSourceAppSpecificSettingFormItems = [ + [ + GeneratedFormTextField( + 'appIdOrName', + label: tr('appIdOrName'), + hint: tr('reposHaveMultipleApps'), + required: true, + ), + ], + [ + GeneratedFormSwitch( + 'pickHighestVersionCode', + label: tr('pickHighestVersionCode'), + defaultValue: false, + ), + ], + [ + GeneratedFormSwitch( + 'trySelectingSuggestedVersionCode', + label: tr('trySelectingSuggestedVersionCode'), + defaultValue: true, + ), + ], + ]; + } + + String removeQueryParamsFromUrl(String url, {List keep = const []}) { + var uri = Uri.parse(url); + Map resultParams = {}; + uri.queryParameters.forEach((key, value) { + if (keep.contains(key)) { + resultParams[key] = value; + } + }); + url = uri.replace(queryParameters: resultParams).toString(); + if (url.endsWith('?')) { + url = url.substring(0, url.length - 1); + } + return url; + } + + @override + String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) { + var standardUri = Uri.parse(url); + var pathSegments = standardUri.pathSegments; + if (pathSegments.isNotEmpty && pathSegments.last == 'index.xml') { + pathSegments.removeLast(); + standardUri = standardUri.replace(path: pathSegments.join('/')); + } + return removeQueryParamsFromUrl(standardUri.toString(), keep: ['appId']); + } + + @override + Future>> search( + String query, { + Map querySettings = const {}, + }) async { + String? url = querySettings['url']; + if (url == null) { + throw NoReleasesError(); + } + url = removeQueryParamsFromUrl(standardizeUrl(url)); + var res = await sourceRequestWithURLVariants(url, {}); + if (res.statusCode == 200) { + var body = parse(res.body); + Map> results = {}; + body.querySelectorAll('application').toList().forEach((app) { + String appId = app.attributes['id']!; + String appName = app.querySelector('name')?.innerHtml ?? appId; + String appDesc = app.querySelector('desc')?.innerHtml ?? ''; + if (query.isEmpty || + appId.contains(query) || + appName.contains(query) || + appDesc.contains(query)) { + results['${res.request!.url.toString().split('/').reversed.toList().sublist(1).reversed.join('/')}?appId=$appId'] = + [appName, appDesc]; + } + }); + return results; + } else { + throw getObtainiumHttpError(res); + } + } + + @override + void runOnAddAppInputChange(String userInput) { + additionalSourceAppSpecificSettingFormItems = + additionalSourceAppSpecificSettingFormItems.map((row) { + row = row.map((item) { + if (item.key == 'appIdOrName') { + try { + var appId = Uri.parse(userInput).queryParameters['appId']; + if (appId != null && item is GeneratedFormTextField) { + item.required = false; + } + } catch (e) { + // + } + } + return item; + }).toList(); + return row; + }).toList(); + } + + @override + App endOfGetAppChanges(App app) { + var uri = Uri.parse(app.url); + String? appId; + if (!isTempId(app)) { + appId = app.id; + } else if (uri.queryParameters['appId'] != null) { + appId = uri.queryParameters['appId']; + } + if (appId != null) { + app.url = uri + .replace( + queryParameters: Map.fromEntries([ + ...uri.queryParameters.entries, + MapEntry('appId', appId), + ]), + ) + .toString(); + app.additionalSettings['appIdOrName'] = appId; + app.id = appId; + } + return app; + } + + Future sourceRequestWithURLVariants( + String url, + Map additionalSettings, + ) async { + var res = await sourceRequest( + '$url${url.endsWith('/index.xml') ? '' : '/index.xml'}', + additionalSettings, + ); + if (res.statusCode != 200) { + var base = url.endsWith('/index.xml') + ? url.split('/').reversed.toList().sublist(1).reversed.join('/') + : url; + res = await sourceRequest('$base/repo/index.xml', additionalSettings); + if (res.statusCode != 200) { + res = await sourceRequest( + '$base/fdroid/repo/index.xml', + additionalSettings, + ); + } + } + return res; + } + + @override + Future getLatestAPKDetails( + String standardUrl, + Map additionalSettings, + ) async { + String? appIdOrName = additionalSettings['appIdOrName']; + var standardUri = Uri.parse(standardUrl); + if (standardUri.queryParameters['appId'] != null) { + appIdOrName = standardUri.queryParameters['appId']; + } + standardUrl = removeQueryParamsFromUrl(standardUrl); + bool pickHighestVersionCode = additionalSettings['pickHighestVersionCode']; + bool trySelectingSuggestedVersionCode = additionalSettings['trySelectingSuggestedVersionCode']; + if (appIdOrName == null) { + throw NoReleasesError(); + } + additionalSettings['appIdOrName'] = appIdOrName; + var res = await sourceRequestWithURLVariants( + standardUrl, + additionalSettings, + ); + if (res.statusCode == 200) { + var body = parse(res.body); + var foundApps = body.querySelectorAll('application').where((element) { + return element.attributes['id'] == appIdOrName; + }).toList(); + if (foundApps.isEmpty) { + foundApps = body.querySelectorAll('application').where((element) { + return element.querySelector('name')?.innerHtml.toLowerCase() == + appIdOrName!.toLowerCase(); + }).toList(); + } + if (foundApps.isEmpty) { + foundApps = body.querySelectorAll('application').where((element) { + return element + .querySelector('name') + ?.innerHtml + .toLowerCase() + .contains(appIdOrName!.toLowerCase()) ?? + false; + }).toList(); + } + if (foundApps.isEmpty) { + throw ObtainiumError(tr('appWithIdOrNameNotFound')); + } + var authorName = body.querySelector('repo')?.attributes['name'] ?? name; + String appId = foundApps[0].attributes['id']!; + foundApps[0].querySelector('name')?.innerHtml ?? appId; + var appName = foundApps[0].querySelector('name')?.innerHtml ?? appId; + var releases = foundApps[0].querySelectorAll('package'); + if (releases.isEmpty) { + throw NoReleasesError(); + } + String? changeLog = foundApps[0].querySelector('changelog')?.innerHtml; + String? latestVersion = releases[0].querySelector('version')?.innerHtml; + if (latestVersion == null) { + throw NoVersionError(); + } + String? marketvercodeStr = foundApps[0].querySelector('marketvercode')?.innerHtml; + int? marketvercode = int.tryParse(marketvercodeStr ?? ''); + List selectedReleases = []; + if (trySelectingSuggestedVersionCode && marketvercode != null) { + selectedReleases = releases.where((e) => + int.tryParse(e.querySelector('versioncode')?.innerHtml ?? '') == marketvercode && + e.querySelector('apkname') != null + ).toList(); + } + String? appAuthorName = foundApps[0].querySelector('author')?.innerHtml; + if (appAuthorName != null) { + authorName = appAuthorName; + } + if (selectedReleases.isEmpty) { + selectedReleases = releases.where((e) => + e.querySelector('version')?.innerHtml == latestVersion && + e.querySelector('apkname') != null + ).toList(); + if (selectedReleases.length > 1 && pickHighestVersionCode) { + selectedReleases.sort((e1, e2) { + return int.parse(e2.querySelector('versioncode')!.innerHtml) + .compareTo(int.parse(e1.querySelector('versioncode')!.innerHtml)); + }); + selectedReleases = [selectedReleases[0]]; + } + } + String? selectedVersion = selectedReleases[0].querySelector('version')?.innerHtml; + if (selectedVersion == null) { + throw NoVersionError(); + } + String? added = selectedReleases[0].querySelector('added')?.innerHtml; + DateTime? releaseDate = added != null ? DateTime.parse(added) : null; + List apkUrls = selectedReleases + .map( + (e) => + '${res.request!.url.toString().split('/').reversed.toList().sublist(1).reversed.join('/')}/${e.querySelector('apkname')!.innerHtml}', + ) + .toList(); + return APKDetails( + selectedVersion, + getApkUrlsFromUrls(apkUrls), + AppNames(authorName, appName), + releaseDate: releaseDate, + changeLog: changeLog, + ); + } else { + throw getObtainiumHttpError(res); + } + } +} diff --git a/lib/app_sources/github.dart b/lib/app_sources/github.dart new file mode 100644 index 0000000..8b9060a --- /dev/null +++ b/lib/app_sources/github.dart @@ -0,0 +1,769 @@ +import 'dart:convert'; +import 'dart:io'; +import 'package:easy_localization/easy_localization.dart'; +import 'package:flutter/material.dart'; +import 'package:http/http.dart'; +import 'package:obtainium/app_sources/html.dart'; +import 'package:obtainium/components/generated_form.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/providers/apps_provider.dart'; +import 'package:obtainium/providers/logs_provider.dart'; +import 'package:obtainium/providers/settings_provider.dart'; +import 'package:obtainium/providers/source_provider.dart'; +import 'package:url_launcher/url_launcher_string.dart'; + +class GitHub extends AppSource { + GitHub({hostChanged = false}) { + hosts = ['github.com']; + appIdInferIsOptional = true; + showReleaseDateAsVersionToggle = true; + this.hostChanged = hostChanged; + allowIncludeZips = true; + + sourceConfigSettingFormItems = [ + GeneratedFormTextField( + 'github-creds', + label: tr('githubPATLabel'), + password: true, + required: false, + belowWidgets: [ + const SizedBox(height: 4), + GestureDetector( + onTap: () { + launchUrlString( + 'https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token', + mode: LaunchMode.externalApplication, + ); + }, + child: Text( + tr('about'), + style: const TextStyle( + decoration: TextDecoration.underline, + fontSize: 12, + ), + ), + ), + const SizedBox(height: 4), + ], + ), + GeneratedFormTextField( + 'GHReqPrefix', + label: tr('GHReqPrefix'), + hint: 'gh-proxy.com', + required: false, + additionalValidators: [ + (value) { + try { + if (value != null && Uri.parse(value).scheme.isNotEmpty) { + throw true; + } + if (value != null) { + Uri.parse('https://${value}/api.github.com'); + } + } catch (e) { + return tr('invalidInput'); + } + return null; + }, + ], + belowWidgets: [ + const SizedBox(height: 4), + GestureDetector( + onTap: () { + launchUrlString( + 'https://github.com/sky22333/hubproxy', + mode: LaunchMode.externalApplication, + ); + }, + child: Text( + tr('about'), + style: const TextStyle( + decoration: TextDecoration.underline, + fontSize: 12, + ), + ), + ), + const SizedBox(height: 4), + ], + ), + ]; + + additionalSourceAppSpecificSettingFormItems = [ + [ + GeneratedFormSwitch( + 'includePrereleases', + label: tr('includePrereleases'), + defaultValue: false, + ), + ], + [ + GeneratedFormSwitch( + 'fallbackToOlderReleases', + label: tr('fallbackToOlderReleases'), + defaultValue: true, + ), + ], + [ + GeneratedFormTextField( + 'filterReleaseTitlesByRegEx', + label: tr('filterReleaseTitlesByRegEx'), + required: false, + additionalValidators: [ + (value) { + return regExValidator(value); + }, + ], + ), + ], + [ + GeneratedFormTextField( + 'filterReleaseNotesByRegEx', + label: tr('filterReleaseNotesByRegEx'), + required: false, + additionalValidators: [ + (value) { + return regExValidator(value); + }, + ], + ), + ], + [GeneratedFormSwitch('verifyLatestTag', label: tr('verifyLatestTag'))], + [ + GeneratedFormDropdown( + 'sortMethodChoice', + [ + MapEntry('date', tr('releaseDate')), + MapEntry('smartname', tr('smartname')), + MapEntry('none', tr('none')), + MapEntry( + 'smartname-datefallback', + '${tr('smartname')} x ${tr('releaseDate')}', + ), + MapEntry('name', tr('name')), + ], + label: tr('sortMethod'), + defaultValue: 'date', + ), + ], + [ + GeneratedFormSwitch( + 'useLatestAssetDateAsReleaseDate', + label: tr('useLatestAssetDateAsReleaseDate'), + defaultValue: false, + ), + ], + [ + GeneratedFormSwitch( + 'releaseTitleAsVersion', + label: tr('releaseTitleAsVersion'), + defaultValue: false, + ), + ], + ]; + + canSearch = true; + searchQuerySettingFormItems = [ + GeneratedFormTextField( + 'minStarCount', + label: tr('minStarCount'), + defaultValue: '0', + additionalValidators: [ + (value) { + try { + int.parse(value ?? '0'); + } catch (e) { + return tr('invalidInput'); + } + return null; + }, + ], + ), + ]; + } + + @override + Future tryInferringAppId( + String standardUrl, { + Map additionalSettings = const {}, + }) async { + const possibleBuildGradleLocations = [ + '/app/build.gradle', + 'android/app/build.gradle', + 'src/app/build.gradle', + ]; + for (var path in possibleBuildGradleLocations) { + try { + var res = await sourceRequest( + '${await convertStandardUrlToAPIUrl(standardUrl, additionalSettings)}/contents/$path', + additionalSettings, + ); + if (res.statusCode == 200) { + try { + var body = jsonDecode(res.body); + var trimmedLines = utf8 + .decode( + base64.decode( + body['content'].toString().split('\n').join(''), + ), + ) + .split('\n') + .map((e) => e.trim()); + var appIds = trimmedLines.where( + (l) => + l.startsWith('applicationId "') || + l.startsWith('applicationId \''), + ); + appIds = appIds.map( + (appId) => appId.split( + appId.startsWith('applicationId "') ? '"' : '\'', + )[1], + ); + appIds = appIds + .map((appId) { + if (appId.startsWith('\${') && appId.endsWith('}')) { + appId = trimmedLines + .where( + (l) => l.startsWith( + 'def ${appId.substring(2, appId.length - 1)}', + ), + ) + .first; + appId = appId.split(appId.contains('"') ? '"' : '\'')[1]; + } + return appId; + }) + .where((appId) => appId.isNotEmpty); + if (appIds.length == 1) { + return appIds.first; + } + } catch (err) { + LogsProvider().add( + 'Error parsing build.gradle from ${res.request!.url.toString()}: ${err.toString()}', + ); + } + } + } catch (err) { + // Ignore - ID will be extracted from the APK + } + } + return null; + } + + @override + String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) { + RegExp standardUrlRegEx = RegExp( + '^https?://(www\\.)?${getSourceRegex(hosts)}/[^/]+/[^/]+', + caseSensitive: false, + ); + RegExpMatch? match = standardUrlRegEx.firstMatch(url); + if (match == null) { + throw InvalidURLError(name); + } + return match.group(0)!; + } + + @override + Future?> getRequestHeaders( + Map additionalSettings, { + bool forAPKDownload = false, + }) async { + var token = await getTokenIfAny(additionalSettings); + var headers = {}; + if (token != null && token.isNotEmpty) { + headers[HttpHeaders.authorizationHeader] = 'Token $token'; + } + if (forAPKDownload == true) { + headers[HttpHeaders.acceptHeader] = 'application/octet-stream'; + } + if (headers.isNotEmpty) { + return headers; + } else { + return null; + } + } + + Future getTokenIfAny(Map additionalSettings) async { + SettingsProvider settingsProvider = SettingsProvider(); + await settingsProvider.initializeSettings(); + var sourceConfig = await getSourceConfigValues( + additionalSettings, + settingsProvider, + ); + String? creds = sourceConfig['github-creds']; + if ((additionalSettings['GHReqPrefix'] as String? ?? '').isNotEmpty) { + creds = null; + } + if (creds != null) { + var userNameEndIndex = creds.indexOf(':'); + if (userNameEndIndex > 0) { + creds = creds.substring( + userNameEndIndex + 1, + ); // For old username-included token inputs + } + return creds; + } else { + return null; + } + } + + @override + Future getSourceNote() async { + if (!hostChanged && (await getTokenIfAny({})) == null) { + return '${tr('githubSourceNote')} ${hostChanged ? tr('addInfoBelow') : tr('addInfoInSettings')}'; + } + return null; + } + + @override + Future generalReqPrefetchModifier( + String reqUrl, + Map additionalSettings, + ) async { + if ((additionalSettings['GHReqPrefix'] as String? ?? '').isNotEmpty) { + var uri = Uri.parse(reqUrl); + return 'https://${additionalSettings['GHReqPrefix']}/${uri.toString().substring('https://'.length)}'; + } + return reqUrl; + } + + Future getAPIHost(Map additionalSettings) async => + 'https://api.${hosts[0]}'; + + Future convertStandardUrlToAPIUrl( + String standardUrl, + Map additionalSettings, + ) async => + '${await getAPIHost(additionalSettings)}/repos${standardUrl.substring('https://${hosts[0]}'.length)}'; + + @override + String? changeLogPageFromStandardUrl(String standardUrl) => + '$standardUrl/releases'; + + Future getLatestAPKDetailsCommon( + String requestUrl, + String standardUrl, + Map additionalSettings, { + Function(Response)? onHttpErrorCode, + }) async { + SettingsProvider settingsProvider = SettingsProvider(); + await settingsProvider.initializeSettings(); + var sourceConfigSettingValues = await getSourceConfigValues( + additionalSettings, + settingsProvider, + ); + bool includePrereleases = additionalSettings['includePrereleases'] == true; + bool fallbackToOlderReleases = + additionalSettings['fallbackToOlderReleases'] == true; + String? regexFilter = + (additionalSettings['filterReleaseTitlesByRegEx'] as String?) + ?.isNotEmpty == + true + ? additionalSettings['filterReleaseTitlesByRegEx'] + : null; + String? regexNotesFilter = + (additionalSettings['filterReleaseNotesByRegEx'] as String?) + ?.isNotEmpty == + true + ? additionalSettings['filterReleaseNotesByRegEx'] + : null; + bool verifyLatestTag = additionalSettings['verifyLatestTag'] == true; + bool useLatestAssetDateAsReleaseDate = + additionalSettings['useLatestAssetDateAsReleaseDate'] == true; + String sortMethod = + additionalSettings['sortMethodChoice'] ?? 'smartname-datefallback'; + bool includeZips = additionalSettings['includeZips'] == true; + dynamic latestRelease; + if (verifyLatestTag) { + var temp = requestUrl.split('?'); + Response res = await sourceRequest( + '${temp[0]}/latest${temp.length > 1 ? '?${temp.sublist(1).join('?')}' : ''}', + additionalSettings, + ); + if (res.statusCode != 200) { + if (onHttpErrorCode != null) { + onHttpErrorCode(res); + } + throw getObtainiumHttpError(res); + } + latestRelease = jsonDecode(res.body); + } + Response res = await sourceRequest(requestUrl, additionalSettings); + if (res.statusCode == 200) { + var releases = jsonDecode(res.body) as List; + if (latestRelease != null) { + var latestTag = latestRelease['tag_name'] ?? latestRelease['name']; + if (releases + .where( + (element) => + (element['tag_name'] ?? element['name']) == latestTag, + ) + .isEmpty) { + releases = [latestRelease, ...releases]; + } + } + + findReleaseAssetUrls(dynamic release) => + (release['assets'] as List?)?.map((e) { + var ext = e['name'].toString().toLowerCase().split('.').last; + var url = !(ext == 'apk' || ext == 'xapk' || (includeZips && ext == 'zip')) + ? (e['browser_download_url'] ?? e['url']) + : (e['url'] ?? e['browser_download_url']); + url = undoGHProxyMod(url, sourceConfigSettingValues); + e['final_url'] = (e['name'] != null) && (url != null) + ? MapEntry(e['name'] as String, url as String) + : const MapEntry('', ''); + return e; + }).toList() ?? + []; + + DateTime? getPublishDateFromRelease(dynamic rel) => + rel?['published_at'] != null + ? DateTime.parse(rel['published_at']) + : rel?['commit']?['created'] != null + ? DateTime.parse(rel['commit']['created']) + : null; + DateTime? getNewestAssetDateFromRelease(dynamic rel) { + var allAssets = rel['assets'] as List?; + var filteredAssets = rel['filteredAssets'] as List?; + var t = (filteredAssets ?? allAssets) + ?.map((e) { + return e?['updated_at'] != null + ? DateTime.parse(e['updated_at']) + : null; + }) + .where((e) => e != null) + .toList(); + t?.sort((a, b) => b!.compareTo(a!)); + if (t?.isNotEmpty == true) { + return t!.first; + } + return null; + } + + DateTime? getReleaseDateFromRelease(dynamic rel, bool useAssetDate) => + !useAssetDate + ? getPublishDateFromRelease(rel) + : getNewestAssetDateFromRelease(rel); + + if (sortMethod == 'none') { + releases = releases.reversed.toList(); + } else { + releases.sort((a, b) { + // See #478 and #534 + if (a == b) { + return 0; + } else if (a == null) { + return -1; + } else if (b == null) { + return 1; + } else { + var nameA = a['tag_name'] ?? a['name']; + var nameB = b['tag_name'] ?? b['name']; + var stdFormats = findStandardFormatsForVersion( + nameA, + false, + ).intersection(findStandardFormatsForVersion(nameB, false)); + if (sortMethod == 'date' || + (sortMethod == 'smartname-datefallback' && + stdFormats.isEmpty)) { + return (getReleaseDateFromRelease( + a, + useLatestAssetDateAsReleaseDate, + ) ?? + DateTime(1)) + .compareTo( + getReleaseDateFromRelease( + b, + useLatestAssetDateAsReleaseDate, + ) ?? + DateTime(0), + ); + } else { + if (sortMethod != 'name' && stdFormats.isNotEmpty) { + var reg = RegExp(stdFormats.last); + var matchA = reg.firstMatch(nameA); + var matchB = reg.firstMatch(nameB); + return compareAlphaNumeric( + (nameA as String).substring(matchA!.start, matchA.end), + (nameB as String).substring(matchB!.start, matchB.end), + ); + } else { + // 'name' + return compareAlphaNumeric( + (nameA as String), + (nameB as String), + ); + } + } + } + }); + } + if (latestRelease != null && + (latestRelease['tag_name'] ?? latestRelease['name']) != null && + releases.isNotEmpty && + latestRelease != + (releases[releases.length - 1]['tag_name'] ?? + releases[0]['name'])) { + var ind = releases.indexWhere( + (element) => + (latestRelease['tag_name'] ?? latestRelease['name']) == + (element['tag_name'] ?? element['name']), + ); + if (ind >= 0) { + releases.add(releases.removeAt(ind)); + } + } + releases = releases.reversed.toList(); + dynamic targetRelease; + var prerrelsSkipped = 0; + for (int i = 0; i < releases.length; i++) { + if (!fallbackToOlderReleases && i > prerrelsSkipped) break; + if (!includePrereleases && releases[i]['prerelease'] == true) { + prerrelsSkipped++; + continue; + } + if (releases[i]['draft'] == true) { + // Draft releases not supported + continue; + } + var nameToFilter = releases[i]['name'] as String?; + if (nameToFilter == null || nameToFilter.trim().isEmpty) { + // Some leave titles empty so tag is used + nameToFilter = releases[i]['tag_name'] as String; + } + if (regexFilter != null && + !RegExp(regexFilter).hasMatch(nameToFilter.trim())) { + continue; + } + if (regexNotesFilter != null && + !RegExp( + regexNotesFilter, + ).hasMatch(((releases[i]['body'] as String?) ?? '').trim())) { + continue; + } + var allAssetsWithUrls = findReleaseAssetUrls(releases[i]); + List> allAssetUrls = allAssetsWithUrls + .map((e) => e['final_url'] as MapEntry) + .toList(); + var apkAssetsWithUrls = allAssetsWithUrls.where((element) { + var ext = (element['final_url'] as MapEntry).key + .toLowerCase() + .split('.') + .last; + return ext == 'apk' || ext == 'xapk' || (includeZips && ext == 'zip'); + }).toList(); + + var filteredApkUrls = filterApks( + apkAssetsWithUrls + .map((e) => e['final_url'] as MapEntry) + .toList(), + additionalSettings['apkFilterRegEx'], + additionalSettings['invertAPKFilter'], + ); + var filteredApks = apkAssetsWithUrls + .where( + (e) => filteredApkUrls + .where( + (e2) => + e2.key == + (e['final_url'] as MapEntry).key, + ) + .isNotEmpty, + ) + .toList(); + + if (filteredApks.isEmpty && additionalSettings['trackOnly'] != true) { + continue; + } + targetRelease = releases[i]; + targetRelease['apkUrls'] = filteredApkUrls; + targetRelease['filteredAssets'] = filteredApks; + targetRelease['version'] = + additionalSettings['releaseTitleAsVersion'] == true + ? nameToFilter + : targetRelease['tag_name'] ?? targetRelease['name']; + if (targetRelease['tarball_url'] != null) { + allAssetUrls.add( + MapEntry( + (targetRelease['version'] ?? 'source') + '.tar.gz', + undoGHProxyMod( + targetRelease['tarball_url'], + sourceConfigSettingValues, + ), + ), + ); + } + if (targetRelease['zipball_url'] != null) { + allAssetUrls.add( + MapEntry( + (targetRelease['version'] ?? 'source') + '.zip', + undoGHProxyMod( + targetRelease['zipball_url'], + sourceConfigSettingValues, + ), + ), + ); + } + targetRelease['allAssetUrls'] = allAssetUrls; + break; + } + if (targetRelease == null) { + throw NoReleasesError(); + } + String? version = targetRelease['version']; + + DateTime? releaseDate = getReleaseDateFromRelease( + targetRelease, + useLatestAssetDateAsReleaseDate, + ); + if (version == null) { + throw NoVersionError(); + } + var changeLog = (targetRelease['body'] ?? '').toString(); + return APKDetails( + version, + targetRelease['apkUrls'] as List>, + getAppNames(standardUrl), + releaseDate: releaseDate, + changeLog: changeLog.isEmpty ? null : changeLog, + allAssetUrls: + targetRelease['allAssetUrls'] as List>, + ); + } else { + if (onHttpErrorCode != null) { + onHttpErrorCode(res); + } + throw getObtainiumHttpError(res); + } + } + + Future getLatestAPKDetailsCommon2( + String standardUrl, + Map additionalSettings, + Future Function(bool) reqUrlGenerator, + dynamic Function(Response)? onHttpErrorCode, + ) async { + try { + return await getLatestAPKDetailsCommon( + await reqUrlGenerator(false), + standardUrl, + additionalSettings, + onHttpErrorCode: onHttpErrorCode, + ); + } catch (err) { + if (err is NoReleasesError && additionalSettings['trackOnly'] == true) { + return await getLatestAPKDetailsCommon( + await reqUrlGenerator(true), + standardUrl, + additionalSettings, + onHttpErrorCode: onHttpErrorCode, + ); + } else { + rethrow; + } + } + } + + @override + Future getLatestAPKDetails( + String standardUrl, + Map additionalSettings, + ) async { + return await getLatestAPKDetailsCommon2( + standardUrl, + additionalSettings, + (bool useTagUrl) async { + return '${await convertStandardUrlToAPIUrl(standardUrl, additionalSettings)}/${useTagUrl ? 'tags' : 'releases'}?per_page=100'; + }, + (Response res) { + rateLimitErrorCheck(res); + }, + ); + } + + AppNames getAppNames(String standardUrl) { + String temp = standardUrl.substring(standardUrl.indexOf('://') + 3); + List names = temp.substring(temp.indexOf('/') + 1).split('/'); + return AppNames(names[0], names.sublist(1).join('/')); + } + + Future>> searchCommon( + String query, + String requestUrl, + String rootProp, { + Function(Response)? onHttpErrorCode, + Map querySettings = const {}, + }) async { + Response res = await sourceRequest(requestUrl, {}); + if (res.statusCode == 200) { + int minStarCount = querySettings['minStarCount'] != null + ? int.parse(querySettings['minStarCount']) + : 0; + Map> urlsWithDescriptions = {}; + for (var e in (jsonDecode(res.body)[rootProp] as List)) { + if ((e['stargazers_count'] ?? e['stars_count'] ?? 0) >= minStarCount) { + urlsWithDescriptions.addAll({ + e['html_url'] as String: [ + e['full_name'] as String, + ((e['archived'] == true ? '[ARCHIVED] ' : '') + + (e['description'] != null + ? e['description'] as String + : tr('noDescription'))), + ], + }); + } + } + return urlsWithDescriptions; + } else { + if (onHttpErrorCode != null) { + onHttpErrorCode(res); + } + throw getObtainiumHttpError(res); + } + } + + undoGHProxyMod( + String reqUrl, + Map sourceConfigSettingValues, + ) => reqUrl.replaceFirst( + 'https://${sourceConfigSettingValues['GHReqPrefix']}/', + '', + ); + + @override + Future>> search( + String query, { + Map querySettings = const {}, + }) async { + var sp = SettingsProvider(); + await sp.initializeSettings(); + var sourceConfigSettingValues = await getSourceConfigValues({}, sp); + var results = await searchCommon( + query, + '${await getAPIHost({})}/search/repositories?q=${Uri.encodeQueryComponent(query)}&per_page=100', + 'items', + onHttpErrorCode: (Response res) { + rateLimitErrorCheck(res); + }, + querySettings: querySettings, + ); + if ((sourceConfigSettingValues['GHReqPrefix'] ?? '').isNotEmpty) { + Map> results2 = {}; + results.forEach((k, v) { + results2[undoGHProxyMod(k, sourceConfigSettingValues)] = v; + }); + return results2; + } else { + return results; + } + } + + void rateLimitErrorCheck(Response res) { + if (res.headers['x-ratelimit-remaining'] == '0') { + throw RateLimitError( + (int.parse(res.headers['x-ratelimit-reset'] ?? '1800000000') / 60000000) + .round(), + ); + } + } +} diff --git a/lib/app_sources/gitlab.dart b/lib/app_sources/gitlab.dart new file mode 100644 index 0000000..18617f1 --- /dev/null +++ b/lib/app_sources/gitlab.dart @@ -0,0 +1,260 @@ +import 'dart:convert'; +import 'dart:io'; + +import 'package:flutter/material.dart'; +import 'package:http/http.dart'; +import 'package:obtainium/app_sources/github.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/providers/settings_provider.dart'; +import 'package:obtainium/providers/source_provider.dart'; +import 'package:obtainium/components/generated_form.dart'; +import 'package:easy_localization/easy_localization.dart'; +import 'package:url_launcher/url_launcher_string.dart'; + +class GitLab extends AppSource { + GitLab({bool hostChanged = false}) { + hosts = ['gitlab.com']; + canSearch = true; + showReleaseDateAsVersionToggle = true; + this.hostChanged = hostChanged; + + sourceConfigSettingFormItems = [ + GeneratedFormTextField( + 'gitlab-creds', + label: tr('gitlabPATLabel'), + password: true, + required: false, + belowWidgets: [ + const SizedBox(height: 4), + GestureDetector( + onTap: () { + launchUrlString( + 'https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html#create-a-personal-access-token', + mode: LaunchMode.externalApplication, + ); + }, + child: Text( + tr('about'), + style: const TextStyle( + decoration: TextDecoration.underline, + fontSize: 12, + ), + ), + ), + const SizedBox(height: 4), + ], + ), + ]; + + additionalSourceAppSpecificSettingFormItems = [ + [ + GeneratedFormSwitch( + 'fallbackToOlderReleases', + label: tr('fallbackToOlderReleases'), + defaultValue: true, + ), + ], + ]; + } + + @override + String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) { + var urlSegments = url.split('/'); + var cutOffIndex = urlSegments.indexWhere((s) => s == '-'); + url = urlSegments + .sublist(0, cutOffIndex <= 0 ? null : cutOffIndex) + .join('/'); + RegExp standardUrlRegEx = RegExp( + '^https?://(www\\.)?${getSourceRegex(hosts)}/[^/]+(/[^((\b/\b)|(\b/-/\b))]+){1,20}', + caseSensitive: false, + ); + RegExpMatch? match = standardUrlRegEx.firstMatch(url); + if (match == null) { + throw InvalidURLError(name); + } + return match.group(0)!; + } + + Future getPATIfAny(Map additionalSettings) async { + SettingsProvider settingsProvider = SettingsProvider(); + await settingsProvider.initializeSettings(); + var sourceConfig = await getSourceConfigValues( + additionalSettings, + settingsProvider, + ); + String? creds = sourceConfig['gitlab-creds']; + return creds != null && creds.isNotEmpty ? creds : null; + } + + @override + Future>> search( + String query, { + Map querySettings = const {}, + }) async { + var url = + 'https://${hosts[0]}/api/v4/projects?search=${Uri.encodeQueryComponent(query)}'; + var res = await sourceRequest(url, {}); + if (res.statusCode != 200) { + throw getObtainiumHttpError(res); + } + var json = jsonDecode(res.body) as List; + Map> results = {}; + for (var element in json) { + results['https://${hosts[0]}/${element['path_with_namespace']}'] = [ + element['name_with_namespace'], + element['description'] ?? tr('noDescription'), + ]; + } + return results; + } + + @override + String? changeLogPageFromStandardUrl(String standardUrl) => + '$standardUrl/-/releases'; + + @override + Future?> getRequestHeaders( + Map additionalSettings, { + bool forAPKDownload = false, + }) async { + // Change headers to pacify, e.g. cloudflare protection + // Related to: (#1397, #1389, #1384, #1382, #1381, #1380, #1359, #854, #785, #697) + var headers = {}; + headers[HttpHeaders.refererHeader] = 'https://${hosts[0]}'; + if (headers.isNotEmpty) { + return headers; + } else { + return null; + } + } + + @override + Future assetUrlPrefetchModifier( + String assetUrl, + String standardUrl, + Map additionalSettings, + ) async { + String? PAT = await getPATIfAny(hostChanged ? additionalSettings : {}); + String optionalAuth = (PAT != null) ? 'private_token=$PAT' : ''; + return '$assetUrl${(Uri.parse(assetUrl).query.isEmpty ? '?' : '&')}$optionalAuth'; + } + + @override + Future getLatestAPKDetails( + String standardUrl, + Map additionalSettings, + ) async { + // Prepare request params + var names = GitHub(hostChanged: true).getAppNames(standardUrl); + String projectUriComponent = + '${Uri.encodeComponent(names.author)}%2F${Uri.encodeComponent(names.name)}'; + String? PAT = await getPATIfAny(hostChanged ? additionalSettings : {}); + String optionalAuth = (PAT != null) ? 'private_token=$PAT' : ''; + + bool trackOnly = additionalSettings['trackOnly'] == true; + + // Get project ID + Response res0 = await sourceRequest( + 'https://${hosts[0]}/api/v4/projects/$projectUriComponent?$optionalAuth', + additionalSettings, + ); + if (res0.statusCode != 200) { + throw getObtainiumHttpError(res0); + } + int? projectId = jsonDecode(res0.body)['id']; + if (projectId == null) { + throw NoReleasesError(); + } + + // Request data from REST API + Response res = await sourceRequest( + 'https://${hosts[0]}/api/v4/projects/$projectUriComponent/${trackOnly ? 'repository/tags' : 'releases'}?$optionalAuth', + additionalSettings, + ); + if (res.statusCode != 200) { + throw getObtainiumHttpError(res); + } + + // Extract .apk details from received data + Iterable apkDetailsList = []; + var json = jsonDecode(res.body) as List; + apkDetailsList = json.map((e) { + var apkUrlsFromAssets = (e['assets']?['links'] as List? ?? []) + .map((e) { + var url = (e['direct_asset_url'] ?? e['url'] ?? '') as String; + var parsedUrl = url.isNotEmpty ? Uri.parse(url) : null; + return MapEntry( + (e['name'] ?? + (parsedUrl != null && parsedUrl.pathSegments.isNotEmpty + ? parsedUrl.pathSegments.last + : 'unknown')) + as String, + (e['direct_asset_url'] ?? e['url'] ?? '') as String, + ); + }) + .where((s) => s.key.isNotEmpty) + .toList(); + var uploadedAPKsFromDescription = ((e['description'] ?? '') as String) + .split('](') + .join('\n') + .split('.apk)') + .join('.apk\n') + .split('\n') + .where((s) => s.startsWith('/uploads/') && s.endsWith('apk')) + .map((s) => 'https://${hosts[0]}/-/project/$projectId$s') + .map((l) => MapEntry(Uri.parse(l).pathSegments.last, l)) + .toList(); + Map apkUrls = {}; + for (var entry in apkUrlsFromAssets) { + apkUrls[entry.key] = entry.value; + } + for (var entry in uploadedAPKsFromDescription) { + apkUrls[entry.key] = entry.value; + } + var releaseDateString = + e['released_at'] ?? e['created_at'] ?? e['commit']?['created_at']; + DateTime? releaseDate = releaseDateString != null + ? DateTime.parse(releaseDateString) + : null; + return APKDetails( + e['tag_name'] ?? e['name'], + apkUrls.entries.toList(), + AppNames(names.author, names.name.split('/').last), + releaseDate: releaseDate, + ); + }); + if (apkDetailsList.isEmpty) { + throw NoReleasesError(); + } + var finalResult = apkDetailsList.first; + + // Fallback procedure + bool fallbackToOlderReleases = + additionalSettings['fallbackToOlderReleases'] == true; + if (finalResult.apkUrls.isEmpty && fallbackToOlderReleases && !trackOnly) { + apkDetailsList = apkDetailsList + .where((e) => e.apkUrls.isNotEmpty) + .toList(); + finalResult = apkDetailsList.first; + } + + if (finalResult.apkUrls.isEmpty && !trackOnly) { + throw NoAPKError(); + } + + finalResult.apkUrls = finalResult.apkUrls.map((apkUrl) { + if (RegExp( + '^$standardUrl/-/jobs/[0-9]+/artifacts/file/[^/]+', + ).hasMatch(apkUrl.value)) { + return MapEntry( + apkUrl.key, + apkUrl.value.replaceFirst('/file/', '/raw/'), + ); + } else { + return apkUrl; + } + }).toList(); + + return finalResult; + } +} diff --git a/lib/app_sources/html.dart b/lib/app_sources/html.dart new file mode 100644 index 0000000..15874ad --- /dev/null +++ b/lib/app_sources/html.dart @@ -0,0 +1,471 @@ +import 'dart:convert'; + +import 'package:easy_localization/easy_localization.dart'; +import 'package:html/parser.dart'; +import 'package:http/http.dart'; +import 'package:obtainium/components/generated_form.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/providers/apps_provider.dart'; +import 'package:obtainium/providers/source_provider.dart'; + +String ensureAbsoluteUrl(String ambiguousUrl, Uri referenceAbsoluteUrl) { + try { + if (Uri.parse(ambiguousUrl).isAbsolute) { + return ambiguousUrl; // #2315 + } + } catch (e) { + // + } + return referenceAbsoluteUrl.resolve(ambiguousUrl).toString(); +} + +int compareAlphaNumeric(String a, String b) { + List aParts = _splitAlphaNumeric(a); + List bParts = _splitAlphaNumeric(b); + + for (int i = 0; i < aParts.length && i < bParts.length; i++) { + String aPart = aParts[i]; + String bPart = bParts[i]; + + bool aIsNumber = _isNumeric(aPart); + bool bIsNumber = _isNumeric(bPart); + + if (aIsNumber && bIsNumber) { + int aNumber = int.parse(aPart); + int bNumber = int.parse(bPart); + int cmp = aNumber.compareTo(bNumber); + if (cmp != 0) { + return cmp; + } + } else if (!aIsNumber && !bIsNumber) { + int cmp = aPart.compareTo(bPart); + if (cmp != 0) { + return cmp; + } + } else { + // Alphanumeric strings come before numeric strings + return aIsNumber ? 1 : -1; + } + } + + return aParts.length.compareTo(bParts.length); +} + +List collectAllStringsFromJSONObject(dynamic obj) { + List extractor(dynamic obj) { + final results = []; + if (obj is String) { + results.add(obj); + } else if (obj is List) { + for (final item in obj) { + results.addAll(extractor(item)); + } + } else if (obj is Map) { + for (final value in obj.values) { + results.addAll(extractor(value)); + } + } + + return results; + } + + return extractor(obj); +} + +List _splitAlphaNumeric(String s) { + List parts = []; + StringBuffer sb = StringBuffer(); + + bool isNumeric = _isNumeric(s[0]); + sb.write(s[0]); + + for (int i = 1; i < s.length; i++) { + bool currentIsNumeric = _isNumeric(s[i]); + if (currentIsNumeric == isNumeric) { + sb.write(s[i]); + } else { + parts.add(sb.toString()); + sb.clear(); + sb.write(s[i]); + isNumeric = currentIsNumeric; + } + } + + parts.add(sb.toString()); + + return parts; +} + +bool _isNumeric(String s) { + return s.codeUnitAt(0) >= 48 && s.codeUnitAt(0) <= 57; +} + +List> getLinksInLines(String lines) => + RegExp( + r'(http|ftp|https)://([\w_-]+(?:(?:\.[\w_-]+)+))([\w.,@?^=%&:/~+#-]*[\w@?^=%&/~+#-])?', + ) + .allMatches(lines) + .map( + (match) => + MapEntry(match.group(0)!, match.group(0)?.split('/').last ?? ''), + ) + .toList(); + +// Given an HTTP response, grab some links according to the common additional settings +// (those that apply to intermediate and final steps) +Future>> grabLinksCommonFromRes( + Response res, + Map additionalSettings, +) async { + if (res.statusCode != 200) { + throw getObtainiumHttpError(res); + } + return grabLinksCommon(res.body, res.request!.url, additionalSettings); +} + +// Note keys are URLs, values are filenames (opposite to the AppSource apkUrls) +Future>> grabLinksCommon( + String rawBody, + Uri reqUrl, + Map additionalSettings, +) async { + bool matchLinksOutsideATags = + additionalSettings['matchLinksOutsideATags'] == true; + var html = parse(rawBody); + List> allLinks = html + .querySelectorAll('a') + .map( + (element) => MapEntry( + element.attributes['href'] ?? '', + element.text.isNotEmpty + ? element.text + : (element.attributes['href'] ?? '').split('/').last, + ), + ) + .where((element) => element.key.isNotEmpty) + .map((e) => MapEntry(ensureAbsoluteUrl(e.key, reqUrl), e.value)) + .toList(); + if (allLinks.isEmpty || matchLinksOutsideATags) { + // Decode the body if the response is a JSON + try { + var jsonStrings = collectAllStringsFromJSONObject(jsonDecode(rawBody)); + allLinks = getLinksInLines(jsonStrings.join('\n')); + if (allLinks.isEmpty) { + allLinks = getLinksInLines( + jsonStrings + .map((l) { + return ensureAbsoluteUrl(l, reqUrl); + }) + .join('\n'), + ); + } + } catch (e) { + allLinks = getLinksInLines(rawBody); + } + } + List> links = []; + bool skipSort = additionalSettings['skipSort'] == true; + bool filterLinkByText = additionalSettings['filterByLinkText'] == true; + if ((additionalSettings['customLinkFilterRegex'] as String?)?.isNotEmpty == + true) { + var reg = RegExp(additionalSettings['customLinkFilterRegex']); + links = allLinks.where((element) { + var link = element.key; + try { + link = Uri.decodeFull(element.key); + } catch (e) { + // Some links may not have valid encoding + } + return reg.hasMatch(filterLinkByText ? element.value : link); + }).toList(); + } else { + links = allLinks.where((element) { + var link = element.key; + try { + link = Uri.decodeFull(element.key); + } catch (e) { + // Some links may not have valid encoding + } + return Uri.parse( + filterLinkByText ? element.value : link, + ).path.toLowerCase().endsWith('.apk'); + }).toList(); + } + if (!skipSort) { + links.sort( + (a, b) => additionalSettings['sortByLastLinkSegment'] == true + ? compareAlphaNumeric( + a.key.split('/').where((e) => e.isNotEmpty).last, + b.key.split('/').where((e) => e.isNotEmpty).last, + ) + : compareAlphaNumeric(a.key, b.key), + ); + } + if (additionalSettings['reverseSort'] == true) { + links = links.reversed.toList(); + } + return links; +} + +class HTML extends AppSource { + @override + List> get combinedAppSpecificSettingFormItems { + return super.combinedAppSpecificSettingFormItems.map((r) { + return r.map((e) { + if (e.key == 'versionExtractionRegEx') { + e.label = tr('versionExtractionRegEx'); + } + if (e.key == 'matchGroupToUse') { + e.label = tr('matchGroupToUse'); + } + return e; + }).toList(); + }).toList(); + } + + var finalStepFormitems = [ + [ + GeneratedFormTextField( + 'customLinkFilterRegex', + label: tr('customLinkFilterRegex'), + hint: 'download/(.*/)?(android|apk|mobile)', + required: false, + additionalValidators: [ + (value) { + return regExValidator(value); + }, + ], + ), + ], + [ + GeneratedFormSwitch( + 'versionExtractWholePage', + label: tr('versionExtractWholePage'), + ), + ], + ]; + var commonFormItems = [ + [GeneratedFormSwitch('filterByLinkText', label: tr('filterByLinkText'))], + [ + GeneratedFormSwitch( + 'matchLinksOutsideATags', + label: tr('matchLinksOutsideATags') + ), + ], + [GeneratedFormSwitch('skipSort', label: tr('skipSort'))], + [GeneratedFormSwitch('reverseSort', label: tr('takeFirstLink'))], + [ + GeneratedFormSwitch( + 'sortByLastLinkSegment', + label: tr('sortByLastLinkSegment'), + ), + ], + ]; + var intermediateFormItems = [ + [ + GeneratedFormTextField( + 'customLinkFilterRegex', + label: tr('intermediateLinkRegex'), + hint: '([0-9]+.)*[0-9]+/\$', + required: true, + additionalValidators: [(value) => regExValidator(value)], + ), + ], + [ + GeneratedFormSwitch( + 'autoLinkFilterByArch', + label: tr('autoLinkFilterByArch'), + defaultValue: false, + ), + ], + ]; + HTML() { + additionalSourceAppSpecificSettingFormItems = [ + [ + GeneratedFormSubForm('intermediateLink', [ + ...intermediateFormItems, + ...commonFormItems, + ], label: tr('intermediateLink')), + ], + finalStepFormitems[0], + ...commonFormItems, + ...finalStepFormitems.sublist(1), + [ + GeneratedFormSubForm( + 'requestHeader', + [ + [ + GeneratedFormTextField( + 'requestHeader', + label: tr('requestHeader'), + required: false, + additionalValidators: [ + (value) { + if ((value ?? 'empty:valid') + .split(':') + .map((e) => e.trim()) + .where((e) => e.isNotEmpty) + .length < + 2) { + return tr('invalidInput'); + } + return null; + }, + ], + ), + ], + ], + label: tr('requestHeader'), + defaultValue: [ + { + 'requestHeader': + 'User-Agent: Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Mobile Safari/537.36', + }, + ], + ), + ], + [ + GeneratedFormDropdown( + 'defaultPseudoVersioningMethod', + [ + MapEntry('partialAPKHash', tr('partialAPKHash')), + MapEntry('APKLinkHash', tr('APKLinkHash')), + MapEntry('ETag', 'ETag'), + ], + label: tr('defaultPseudoVersioningMethod'), + defaultValue: 'partialAPKHash', + ), + ], + ]; + } + + @override + Future?> getRequestHeaders( + Map additionalSettings, { + bool forAPKDownload = false, + }) async { + if (additionalSettings.isNotEmpty) { + if (additionalSettings['requestHeader']?.isNotEmpty != true) { + additionalSettings['requestHeader'] = []; + } + additionalSettings['requestHeader'] = additionalSettings['requestHeader'] + .where((l) => l['requestHeader'].isNotEmpty == true) + .toList(); + Map requestHeaders = {}; + for (int i = 0; i < (additionalSettings['requestHeader'].length); i++) { + var temp = + (additionalSettings['requestHeader'][i]['requestHeader'] as String) + .split(':'); + requestHeaders[temp[0].trim()] = temp.sublist(1).join(':').trim(); + } + return requestHeaders; + } + return null; + } + + @override + String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) { + return url; + } + + @override + Future getLatestAPKDetails( + String standardUrl, + Map additionalSettings, + ) async { + var currentUrl = standardUrl; + if (additionalSettings['intermediateLink']?.isNotEmpty != true) { + additionalSettings['intermediateLink'] = []; + } + additionalSettings['intermediateLink'] = + additionalSettings['intermediateLink'] + .where((l) => l['customLinkFilterRegex'].isNotEmpty == true) + .toList(); + for (int i = 0; i < (additionalSettings['intermediateLink'].length); i++) { + var intLinks = await grabLinksCommonFromRes( + await sourceRequest(currentUrl, additionalSettings), + additionalSettings['intermediateLink'][i], + ); + if (intLinks.isEmpty) { + throw NoReleasesError(note: currentUrl); + } else { + if (additionalSettings['intermediateLink'][i]['autoLinkFilterByArch'] == + true) { + intLinks = await filterApksByArch(intLinks); + } + currentUrl = intLinks.last.key; + } + } + var uri = Uri.parse(currentUrl); + List> links = []; + String versionExtractionWholePageString = currentUrl; + if (additionalSettings['directAPKLink'] != true) { + Response res = await sourceRequest(currentUrl, additionalSettings); + versionExtractionWholePageString = res.body + .split('\r\n') + .join('\n') + .split('\n') + .join('\\n'); + links = await grabLinksCommonFromRes(res, additionalSettings); + links = filterApks( + links, + additionalSettings['apkFilterRegEx'], + additionalSettings['invertAPKFilter'], + ); + if (links.isEmpty) { + throw NoReleasesError(note: currentUrl); + } + } else { + links = [MapEntry(currentUrl, currentUrl)]; + } + var rel = links.last.key; + var relDecoded = rel; + try { + relDecoded = Uri.decodeFull(rel); + } catch (e) { + // Some links may not have valid encoding + } + String? version; + version = extractVersion( + additionalSettings['versionExtractionRegEx'] as String?, + additionalSettings['matchGroupToUse'] as String?, + additionalSettings['versionExtractWholePage'] == true + ? versionExtractionWholePageString + : relDecoded, + ); + var apkReqHeaders = await getRequestHeaders( + additionalSettings, + forAPKDownload: true, + ); + if (version == null && + additionalSettings['defaultPseudoVersioningMethod'] == 'ETag') { + version = await checkETagHeader( + rel, + headers: apkReqHeaders, + allowInsecure: additionalSettings['allowInsecure'] == true, + ); + if (version == null) { + throw NoVersionError(); + } + } + version ??= + additionalSettings['defaultPseudoVersioningMethod'] == 'APKLinkHash' + ? rel.hashCode.toString() + : (await checkPartialDownloadHashDynamic( + rel, + headers: apkReqHeaders, + allowInsecure: additionalSettings['allowInsecure'] == true, + )).toString(); + return APKDetails( + version, + [rel].map((e) { + var uri = Uri.parse(e); + var fileName = uri.pathSegments.isNotEmpty + ? uri.pathSegments.last + : uri.origin; + return MapEntry('${e.hashCode}-$fileName', e); + }).toList(), + AppNames(uri.host, tr('app')), + ); + } +} diff --git a/lib/app_sources/huaweiappgallery.dart b/lib/app_sources/huaweiappgallery.dart new file mode 100644 index 0000000..7ecffd3 --- /dev/null +++ b/lib/app_sources/huaweiappgallery.dart @@ -0,0 +1,113 @@ +import 'package:easy_localization/easy_localization.dart'; +import 'package:http/http.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/providers/source_provider.dart'; + +class HuaweiAppGallery extends AppSource { + HuaweiAppGallery() { + name = 'Huawei AppGallery'; + hosts = ['appgallery.huawei.com', 'appgallery.cloud.huawei.com']; + versionDetectionDisallowed = true; + showReleaseDateAsVersionToggle = true; + } + + @override + String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) { + RegExp standardUrlRegEx = RegExp( + '^https?://(www\\.)?${getSourceRegex(hosts)}(/#)?/(app|appdl)/[^/]+', + caseSensitive: false, + ); + RegExpMatch? match = standardUrlRegEx.firstMatch(url); + if (match == null) { + throw InvalidURLError(name); + } + return match.group(0)!; + } + + String getDlUrl(String standardUrl) => + 'https://${hosts[0].replaceAll('appgallery.huawei', 'appgallery.cloud.huawei')}/appdl/${standardUrl.split('/').last}'; + + Future requestAppdlRedirect( + String dlUrl, + Map additionalSettings, + ) async { + Response res = await sourceRequest( + dlUrl, + additionalSettings, + followRedirects: false, + ); + if (res.statusCode == 200 || + res.statusCode == 302 || + res.statusCode == 304) { + return res; + } else { + throw getObtainiumHttpError(res); + } + } + + String appIdFromRedirectDlUrl(String redirectDlUrl) { + var parts = redirectDlUrl + .split('?')[0] + .split('/') + .last + .split('.') + .reversed + .toList(); + parts.removeAt(0); + parts.removeAt(0); + return parts.reversed.join('.'); + } + + @override + Future tryInferringAppId( + String standardUrl, { + Map additionalSettings = const {}, + }) async { + String dlUrl = getDlUrl(standardUrl); + Response res = await requestAppdlRedirect(dlUrl, additionalSettings); + return res.headers['location'] != null + ? appIdFromRedirectDlUrl(res.headers['location']!) + : null; + } + + @override + Future getLatestAPKDetails( + String standardUrl, + Map additionalSettings, + ) async { + String dlUrl = getDlUrl(standardUrl); + Response res = await requestAppdlRedirect(dlUrl, additionalSettings); + if (res.headers['location'] == null) { + throw NoReleasesError(); + } + String appId = appIdFromRedirectDlUrl(res.headers['location']!); + if (appId.isEmpty) { + throw NoReleasesError(); + } + var relDateStr = res.headers['location'] + ?.split('?')[0] + .split('.') + .reversed + .toList()[1]; + if (relDateStr == null || relDateStr.length != 10) { + throw NoVersionError(); + } + var relDateStrAdj = relDateStr.split(''); + var tempLen = relDateStrAdj.length; + var i = 2; + while (i < tempLen) { + relDateStrAdj.insert((i + i ~/ 2 - 1), '-'); + i += 2; + } + var relDate = DateFormat( + 'yy-MM-dd-HH-mm', + 'en_US', + ).parse(relDateStrAdj.join('')); + return APKDetails( + relDateStr, + [MapEntry('$appId.apk', dlUrl)], + AppNames(name, appId), + releaseDate: relDate, + ); + } +} diff --git a/lib/app_sources/izzyondroid.dart b/lib/app_sources/izzyondroid.dart new file mode 100644 index 0000000..a6134ad --- /dev/null +++ b/lib/app_sources/izzyondroid.dart @@ -0,0 +1,61 @@ +import 'package:obtainium/app_sources/fdroid.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/providers/source_provider.dart'; + +class IzzyOnDroid extends AppSource { + late FDroid fd; + + IzzyOnDroid() { + hosts = ['izzysoft.de']; + fd = FDroid(); + additionalSourceAppSpecificSettingFormItems = + fd.additionalSourceAppSpecificSettingFormItems; + allowSubDomains = true; + } + + @override + String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) { + RegExp standardUrlRegExA = RegExp( + '^https?://android.${getSourceRegex(hosts)}/repo/apk/[^/]+', + caseSensitive: false, + ); + RegExpMatch? match = standardUrlRegExA.firstMatch(url); + if (match == null) { + RegExp standardUrlRegExB = RegExp( + '^https?://apt.${getSourceRegex(hosts)}/fdroid/index/apk/[^/]+', + caseSensitive: false, + ); + match = standardUrlRegExB.firstMatch(url); + } + if (match == null) { + throw InvalidURLError(name); + } + return match.group(0)!; + } + + @override + Future tryInferringAppId( + String standardUrl, { + Map additionalSettings = const {}, + }) async { + return fd.tryInferringAppId(standardUrl); + } + + @override + Future getLatestAPKDetails( + String standardUrl, + Map additionalSettings, + ) async { + String? appId = await tryInferringAppId(standardUrl); + return fd.getAPKUrlsFromFDroidPackagesAPIResponse( + await sourceRequest( + 'https://apt.izzysoft.de/fdroid/api/v1/packages/$appId', + additionalSettings, + ), + 'https://android.izzysoft.de/frepo/$appId', + standardUrl, + name, + additionalSettings: additionalSettings, + ); + } +} diff --git a/lib/app_sources/jenkins.dart b/lib/app_sources/jenkins.dart new file mode 100644 index 0000000..763eed6 --- /dev/null +++ b/lib/app_sources/jenkins.dart @@ -0,0 +1,76 @@ +import 'dart:convert'; + +import 'package:http/http.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/providers/source_provider.dart'; + +class Jenkins extends AppSource { + Jenkins() { + versionDetectionDisallowed = true; + neverAutoSelect = true; + showReleaseDateAsVersionToggle = true; + } + + String trimJobUrl(String url) { + RegExp standardUrlRegEx = RegExp('.*/job/[^/]+'); + RegExpMatch? match = standardUrlRegEx.firstMatch(url); + if (match == null) { + throw InvalidURLError(name); + } + return match.group(0)!; + } + + @override + String? changeLogPageFromStandardUrl(String standardUrl) => + '$standardUrl/-/releases'; + + @override + Future getLatestAPKDetails( + String standardUrl, + Map additionalSettings, + ) async { + standardUrl = trimJobUrl(standardUrl); + Response res = await sourceRequest( + '$standardUrl/lastSuccessfulBuild/api/json', + additionalSettings, + ); + if (res.statusCode == 200) { + var json = jsonDecode(res.body); + var releaseDate = json['timestamp'] == null + ? null + : DateTime.fromMillisecondsSinceEpoch(json['timestamp'] as int); + var version = json['number'] == null + ? null + : (json['number'] as int).toString(); + if (version == null) { + throw NoVersionError(); + } + var apkUrls = (json['artifacts'] as List) + .map((e) { + var path = (e['relativePath'] as String?); + if (path != null && path.isNotEmpty) { + path = '$standardUrl/lastSuccessfulBuild/artifact/$path'; + } + return path == null + ? const MapEntry('', '') + : MapEntry( + (e['fileName'] ?? e['relativePath']) as String, + path, + ); + }) + .where( + (url) => + url.value.isNotEmpty && url.key.toLowerCase().endsWith('.apk'), + ) + .toList(); + return APKDetails( + version, + apkUrls, + releaseDate: releaseDate, + AppNames(Uri.parse(standardUrl).host, standardUrl.split('/').last), + ); + } else { + throw getObtainiumHttpError(res); + } + } +} diff --git a/lib/app_sources/liteapks.dart b/lib/app_sources/liteapks.dart new file mode 100644 index 0000000..ff07fbb --- /dev/null +++ b/lib/app_sources/liteapks.dart @@ -0,0 +1,87 @@ +import 'dart:convert'; + +import 'package:http/http.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/providers/source_provider.dart'; + +class LiteAPKs extends AppSource { + LiteAPKs() { + hosts = ['liteapks.com']; + name = 'LiteAPKs'; + } + + @override + String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) { + RegExp standardUrlRegEx = RegExp( + '^https?://(www\\.)?${getSourceRegex(hosts)}/+[^/]+', + caseSensitive: false, + ); + RegExpMatch? match = standardUrlRegEx.firstMatch(url); + if (match == null) { + throw InvalidURLError(name); + } + return match.group(0)!; + } + + @override + Future getLatestAPKDetails( + String standardUrl, + Map additionalSettings, + ) async { + var standardUri = Uri.parse(standardUrl); + var slug = standardUri.path + .split('.') + .reversed + .toList() + .sublist(1) + .reversed + .join('.'); + Response res1 = await sourceRequest( + '${standardUri.origin}/wp-json/wp/v2/posts?slug=$slug', + additionalSettings, + ); + if (res1.statusCode != 200) { + throw getObtainiumHttpError(res1); + } + + var liteAppId = jsonDecode(res1.body)[0]['id']; + if (liteAppId == null) { + throw NoReleasesError(); + } + + Response res2 = await sourceRequest( + '${standardUri.origin}/wp-json/v2/posts/$liteAppId', + additionalSettings, + ); + if (res2.statusCode != 200) { + throw getObtainiumHttpError(res2); + } + var json = jsonDecode(res2.body); + + var appName = json['data']?['title'] as String?; + var author = json['data']?['publisher'] as String?; + var version = json['data']?['versions']?[0]?['version'] as String?; + if (version == null) { + throw NoVersionError(); + } + var apkUrls = + ((json['data']?['versions']?[0]?['version_downloads'] as List?) + ?.map((l) => l['version_download_link']) ?? + []) + .map( + (l) => MapEntry( + Uri.decodeComponent(Uri.parse(l).pathSegments.last), + l, + ), + ) + .toList(); + return APKDetails( + version, + apkUrls, + AppNames( + author ?? Uri.parse(standardUrl).host, + appName ?? standardUrl.split('/').last, + ), + ); + } +} diff --git a/lib/app_sources/mullvad.dart b/lib/app_sources/mullvad.dart new file mode 100644 index 0000000..83be92e --- /dev/null +++ b/lib/app_sources/mullvad.dart @@ -0,0 +1,75 @@ +import 'package:html/parser.dart'; +import 'package:http/http.dart'; +import 'package:obtainium/app_sources/github.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/providers/source_provider.dart'; + +class Mullvad extends AppSource { + Mullvad() { + hosts = ['mullvad.net']; + } + + @override + String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) { + RegExp standardUrlRegEx = RegExp( + '^https?://(www\\.)?${getSourceRegex(hosts)}', + caseSensitive: false, + ); + RegExpMatch? match = standardUrlRegEx.firstMatch(url); + if (match == null) { + throw InvalidURLError(name); + } + return match.group(0)!; + } + + @override + String? changeLogPageFromStandardUrl(String standardUrl) => + 'https://github.com/mullvad/mullvadvpn-app/blob/master/CHANGELOG.md'; + + @override + Future getLatestAPKDetails( + String standardUrl, + Map additionalSettings, + ) async { + Response res = await sourceRequest( + '$standardUrl/en/download/android', + additionalSettings, + ); + if (res.statusCode == 200) { + var versions = parse(res.body) + .querySelectorAll('p') + .map((e) => e.innerHtml) + .where((p) => p.contains('Latest version: ')) + .map((e) { + var match = RegExp('[0-9]+(\\.[0-9]+)*').firstMatch(e); + if (match == null) { + return ''; + } else { + return e.substring(match.start, match.end); + } + }) + .where((element) => element.isNotEmpty) + .toList(); + if (versions.isEmpty) { + throw NoVersionError(); + } + String? changeLog; + try { + changeLog = (await GitHub(hostChanged: true).getLatestAPKDetails( + 'https://github.com/mullvad/mullvadvpn-app', + {'fallbackToOlderReleases': true}, + )).changeLog; + } catch (e) { + // Ignore + } + return APKDetails( + versions[0], + getApkUrlsFromUrls(['https://mullvad.net/download/app/apk/latest']), + AppNames(name, 'Mullvad-VPN'), + changeLog: changeLog, + ); + } else { + throw getObtainiumHttpError(res); + } + } +} diff --git a/lib/app_sources/neutroncode.dart b/lib/app_sources/neutroncode.dart new file mode 100644 index 0000000..de243ed --- /dev/null +++ b/lib/app_sources/neutroncode.dart @@ -0,0 +1,122 @@ +import 'package:html/parser.dart'; +import 'package:http/http.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/providers/source_provider.dart'; + +class NeutronCode extends AppSource { + NeutronCode() { + hosts = ['neutroncode.com']; + showReleaseDateAsVersionToggle = true; + } + + @override + String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) { + RegExp standardUrlRegEx = RegExp( + '^https?://(www\\.)?${getSourceRegex(hosts)}/downloads/file/[^/]+', + caseSensitive: false, + ); + RegExpMatch? match = standardUrlRegEx.firstMatch(url); + if (match == null) { + throw InvalidURLError(name); + } + return match.group(0)!; + } + + @override + String? changeLogPageFromStandardUrl(String standardUrl) => standardUrl; + + String monthNameToNumberString(String s) { + switch (s.toLowerCase()) { + case 'january': + return '01'; + case 'february': + return '02'; + case 'march': + return '03'; + case 'april': + return '04'; + case 'may': + return '05'; + case 'june': + return '06'; + case 'july': + return '07'; + case 'august': + return '08'; + case 'september': + return '09'; + case 'october': + return '10'; + case 'november': + return '11'; + case 'december': + return '12'; + default: + throw ArgumentError('Invalid month name: $s'); + } + } + + String? customDateParse(String dateString) { + List parts = dateString.split(' '); + if (parts.length != 3) { + return null; + } + String result = ''; + for (var s in parts.reversed) { + try { + try { + int.parse(s); + result += '$s-'; + } catch (e) { + result += '${monthNameToNumberString(s)}-'; + } + } catch (e) { + return null; + } + } + return result.substring(0, result.length - 1); + } + + @override + Future getLatestAPKDetails( + String standardUrl, + Map additionalSettings, + ) async { + Response res = await sourceRequest(standardUrl, additionalSettings); + if (res.statusCode == 200) { + var http = parse(res.body); + var name = http.querySelector('.pd-title')?.innerHtml; + var filename = http.querySelector('.pd-filename .pd-float')?.innerHtml; + if (filename == null) { + throw NoReleasesError(); + } + var version = http + .querySelector('.pd-version-txt') + ?.nextElementSibling + ?.innerHtml; + if (version == null) { + throw NoVersionError(); + } + String? apkUrl = 'https://${hosts[0]}/download/$filename'; + var dateStringOriginal = http + .querySelector('.pd-date-txt') + ?.nextElementSibling + ?.innerHtml; + var dateString = dateStringOriginal != null + ? (customDateParse(dateStringOriginal)) + : null; + var changeLogElements = http.querySelectorAll('.pd-fdesc p'); + return APKDetails( + version, + getApkUrlsFromUrls([apkUrl]), + AppNames(runtimeType.toString(), name ?? standardUrl.split('/').last), + releaseDate: dateString != null ? DateTime.parse(dateString) : null, + changeLog: changeLogElements.isNotEmpty + ? changeLogElements.last.innerHtml + : null, + ); + } else { + throw getObtainiumHttpError(res); + } + } +} diff --git a/lib/app_sources/rustore.dart b/lib/app_sources/rustore.dart new file mode 100644 index 0000000..33b4617 --- /dev/null +++ b/lib/app_sources/rustore.dart @@ -0,0 +1,110 @@ +import 'dart:convert'; +import 'dart:typed_data'; + +import 'package:easy_localization/easy_localization.dart'; +import 'package:flutter_charset_detector/flutter_charset_detector.dart'; +import 'package:http/http.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/providers/source_provider.dart'; + +class RuStore extends AppSource { + RuStore() { + hosts = ['rustore.ru']; + name = 'RuStore'; + naiveStandardVersionDetection = true; + showReleaseDateAsVersionToggle = true; + } + + @override + String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) { + RegExp standardUrlRegEx = RegExp( + '^https?://(www\\.)?${getSourceRegex(hosts)}/catalog/app/+[^/]+', + caseSensitive: false, + ); + RegExpMatch? match = standardUrlRegEx.firstMatch(url); + if (match == null) { + throw InvalidURLError(name); + } + return match.group(0)!; + } + + @override + Future tryInferringAppId( + String standardUrl, { + Map additionalSettings = const {}, + }) async { + return Uri.parse(standardUrl).pathSegments.last; + } + + Future decodeJsonBody(Uint8List bytes) async { + try { + return jsonDecode((await CharsetDetector.autoDecode(bytes)).string); + } catch (e) { + try { + return jsonDecode(utf8.decode(bytes)); + } catch (_) { + rethrow; + } + } + } + + @override + Future getLatestAPKDetails( + String standardUrl, + Map additionalSettings, + ) async { + String? appId = await tryInferringAppId(standardUrl); + Response res0 = await sourceRequest( + 'https://backapi.rustore.ru/applicationData/overallInfo/$appId', + additionalSettings, + ); + if (res0.statusCode != 200) { + throw getObtainiumHttpError(res0); + } + var appDetails = (await decodeJsonBody(res0.bodyBytes))['body']; + if (appDetails['appId'] == null) { + throw NoReleasesError(); + } + + String appName = appDetails['appName'] ?? tr('app'); + String author = appDetails['companyName'] ?? name; + String? dateStr = appDetails['appVerUpdatedAt']; + String? version = appDetails['versionName']; + String? changeLog = appDetails['whatsNew']; + if (version == null) { + throw NoVersionError(); + } + DateTime? relDate; + if (dateStr != null) { + relDate = DateTime.parse(dateStr); + } + + Response res1 = await sourceRequest( + 'https://backapi.rustore.ru/applicationData/v2/download-link', + additionalSettings, + followRedirects: false, + postBody: {"appId": appDetails['appId'], "firstInstall": true}, + ); + var downloadDetails = (await decodeJsonBody(res1.bodyBytes))['body']; + try { + if (res1.statusCode != 200 || downloadDetails['downloadUrls'][0]['url'] == null) { + throw NoAPKError(); + } + } catch (e) { + throw NoAPKError(); + } + + return APKDetails( + version, + getApkUrlsFromUrls([ + (downloadDetails['downloadUrls'][0]['url'] as String).replaceAll( + RegExp('\\.zip\$'), + '.apk', + ), + ]), + AppNames(author, appName), + releaseDate: relDate, + changeLog: changeLog, + ); + } +} diff --git a/lib/app_sources/sourceforge.dart b/lib/app_sources/sourceforge.dart new file mode 100644 index 0000000..5f04b0a --- /dev/null +++ b/lib/app_sources/sourceforge.dart @@ -0,0 +1,129 @@ +import 'package:html/parser.dart'; +import 'package:http/http.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/providers/source_provider.dart'; + +class SourceForge extends AppSource { + SourceForge() { + hosts = ['sourceforge.net']; + } + + @override + String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) { + var sourceRegex = getSourceRegex(hosts); + RegExp standardUrlRegExC = RegExp( + '^https?://(www\\.)?$sourceRegex/p/.+', + caseSensitive: false, + ); + RegExpMatch? match = standardUrlRegExC.firstMatch(url); + if (match != null) { + url = + 'https://${Uri.parse(match.group(0)!).host}/projects/${url.substring(Uri.parse(match.group(0)!).host.length + '/projects/'.length + 1)}'; + } + RegExp standardUrlRegExB = RegExp( + '^https?://(www\\.)?$sourceRegex/projects/[^/]+', + caseSensitive: false, + ); + match = standardUrlRegExB.firstMatch(url); + if (match != null && match.group(0) == url) { + url = '$url/files'; + } + RegExp standardUrlRegExA = RegExp( + '^https?://(www\\.)?$sourceRegex/projects/[^/]+/files(/.+)?', + caseSensitive: false, + ); + match = standardUrlRegExA.firstMatch(url); + if (match == null) { + throw InvalidURLError(name); + } + return match.group(0)!; + } + + @override + Future getLatestAPKDetails( + String standardUrl, + Map additionalSettings, + ) async { + var standardUri = Uri.parse(standardUrl); + if (standardUri.pathSegments.length == 2) { + standardUrl = '$standardUrl/files'; + standardUri = Uri.parse(standardUrl); + } + Response res = await sourceRequest( + '${standardUri.origin}/${standardUri.pathSegments.sublist(0, 2).join('/')}/rss?path=/', + additionalSettings, + ); + if (res.statusCode == 200) { + var parsedHtml = parse(res.body); + var allDownloadLinks = parsedHtml + .querySelectorAll('guid') + .map((e) => e.innerHtml) + .where((element) => element.startsWith(standardUrl)) + .toList(); + getVersion(String url) { + try { + var segments = url + .substring(standardUrl.length) + .split('/') + .where((element) => element.isNotEmpty) + .toList() + .reversed + .toList() + .sublist(1) + .reversed + .toList(); + segments = segments.length > 1 + ? segments.reversed.toList().sublist(1).reversed.toList() + : segments; + var version = segments.isNotEmpty ? segments.join('/') : null; + if (version != null) { + try { + var extractedVersion = extractVersion( + additionalSettings['versionExtractionRegEx'] as String?, + additionalSettings['matchGroupToUse'] as String?, + version, + ); + if (extractedVersion != null) { + version = extractedVersion; + } + } catch (e) { + if (e is NoVersionError) { + version = null; + } else { + rethrow; + } + } + } + return version; + } catch (e) { + return null; + } + } + + var apkUrlListAllReleases = allDownloadLinks + .where((element) => element.toLowerCase().endsWith('.apk/download')) + .where((element) => getVersion(element) != null) + .toList(); + if (apkUrlListAllReleases.isEmpty) { + throw NoReleasesError(); + } + String? version = getVersion(apkUrlListAllReleases[0]); + if (version == null) { + throw NoVersionError(); + } + + var apkUrlList = + apkUrlListAllReleases // This can be used skipped for fallback support later + .where((element) => getVersion(element) == version) + .toList(); + var segments = standardUrl.split('/'); + return APKDetails( + version, + getApkUrlsFromUrls(apkUrlList), + AppNames(name, segments[segments.indexOf('files') - 1]), + ); + } else { + throw getObtainiumHttpError(res); + } + } +} diff --git a/lib/app_sources/sourcehut.dart b/lib/app_sources/sourcehut.dart new file mode 100644 index 0000000..4aa7448 --- /dev/null +++ b/lib/app_sources/sourcehut.dart @@ -0,0 +1,142 @@ +import 'package:html/parser.dart'; +import 'package:http/http.dart'; +import 'package:obtainium/app_sources/html.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/providers/source_provider.dart'; +import 'package:obtainium/components/generated_form.dart'; +import 'package:easy_localization/easy_localization.dart'; + +class SourceHut extends AppSource { + SourceHut() { + hosts = ['git.sr.ht']; + showReleaseDateAsVersionToggle = true; + + additionalSourceAppSpecificSettingFormItems = [ + [ + GeneratedFormSwitch( + 'fallbackToOlderReleases', + label: tr('fallbackToOlderReleases'), + defaultValue: true, + ), + ], + ]; + } + + @override + String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) { + RegExp standardUrlRegEx = RegExp( + '^https?://(www\\.)?${getSourceRegex(hosts)}/[^/]+/[^/]+', + caseSensitive: false, + ); + RegExpMatch? match = standardUrlRegEx.firstMatch(url); + if (match == null) { + throw InvalidURLError(name); + } + return match.group(0)!; + } + + @override + String? changeLogPageFromStandardUrl(String standardUrl) => standardUrl; + + @override + Future getLatestAPKDetails( + String standardUrl, + Map additionalSettings, + ) async { + if (standardUrl.endsWith('/refs')) { + standardUrl = standardUrl + .split('/') + .reversed + .toList() + .sublist(1) + .reversed + .join('/'); + } + Uri standardUri = Uri.parse(standardUrl); + String appName = standardUri.pathSegments.last; + bool fallbackToOlderReleases = + additionalSettings['fallbackToOlderReleases'] == true; + Response res = await sourceRequest( + '$standardUrl/refs/rss.xml', + additionalSettings, + ); + if (res.statusCode == 200) { + var parsedHtml = parse(res.body); + List apkDetailsList = []; + int ind = 0; + + for (var entry in parsedHtml.querySelectorAll('item').sublist(0, 6)) { + ind++; + String releasePage = // querySelector('link') fails for some reason + entry + .querySelector('guid') // Luckily guid is identical + ?.innerHtml + .trim() ?? + ''; + if (!releasePage.startsWith('$standardUrl/refs')) { + continue; + } + if (!fallbackToOlderReleases && ind > 1) { + break; + } + String? version = entry.querySelector('title')?.text.trim(); + if (version == null) { + throw NoVersionError(); + } + String? releaseDateString = entry.querySelector('pubDate')?.innerHtml; + DateTime? releaseDate; + try { + releaseDate = releaseDateString != null + ? DateFormat('E, dd MMM yyyy HH:mm:ss Z').parse(releaseDateString) + : null; + releaseDate = releaseDateString != null + ? DateFormat( + 'EEE, dd MMM yyyy HH:mm:ss Z', + ).parse(releaseDateString) + : null; + } catch (e) { + // ignore + } + var res2 = await sourceRequest(releasePage, additionalSettings); + List> apkUrls = []; + if (res2.statusCode == 200) { + apkUrls = getApkUrlsFromUrls( + parse(res2.body) + .querySelectorAll('a') + .map((e) => e.attributes['href'] ?? '') + .where((e) => e.toLowerCase().endsWith('.apk')) + .map((e) => ensureAbsoluteUrl(e, standardUri)) + .toList(), + ); + } + apkDetailsList.add( + APKDetails( + version, + apkUrls, + AppNames( + entry.querySelector('author')?.innerHtml.trim() ?? appName, + appName, + ), + releaseDate: releaseDate, + ), + ); + } + if (apkDetailsList.isEmpty) { + throw NoReleasesError(); + } + if (fallbackToOlderReleases) { + if (additionalSettings['trackOnly'] != true) { + apkDetailsList = apkDetailsList + .where((e) => e.apkUrls.isNotEmpty) + .toList(); + } + if (apkDetailsList.isEmpty) { + throw NoReleasesError(); + } + } + return apkDetailsList.first; + } else { + throw getObtainiumHttpError(res); + } + } +} diff --git a/lib/app_sources/telegramapp.dart b/lib/app_sources/telegramapp.dart new file mode 100644 index 0000000..943cb4c --- /dev/null +++ b/lib/app_sources/telegramapp.dart @@ -0,0 +1,46 @@ +import 'package:easy_localization/easy_localization.dart'; +import 'package:html/parser.dart'; +import 'package:http/http.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/providers/source_provider.dart'; + +class TelegramApp extends AppSource { + TelegramApp() { + hosts = ['telegram.org']; + name = 'Telegram ${tr('app')}'; + } + + @override + String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) { + return 'https://${hosts[0]}'; + } + + @override + Future getLatestAPKDetails( + String standardUrl, + Map additionalSettings, + ) async { + Response res = await sourceRequest( + 'https://t.me/s/TAndroidAPK', + additionalSettings, + ); + if (res.statusCode == 200) { + var http = parse(res.body); + var messages = http.querySelectorAll( + '.tgme_widget_message_text.js-message_text', + ); + var version = messages.isNotEmpty + ? messages.last.innerHtml.split('\n').first.trim().split(' ').first + : null; + if (version == null) { + throw NoVersionError(); + } + String? apkUrl = 'https://telegram.org/dl/android/apk'; + return APKDetails(version, [ + MapEntry('telegram-$version.apk', apkUrl), + ], AppNames('Telegram', 'Telegram')); + } else { + throw getObtainiumHttpError(res); + } + } +} diff --git a/lib/app_sources/tencent.dart b/lib/app_sources/tencent.dart new file mode 100644 index 0000000..1fa3ac0 --- /dev/null +++ b/lib/app_sources/tencent.dart @@ -0,0 +1,84 @@ +import 'dart:convert'; + +import 'package:easy_localization/easy_localization.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/providers/source_provider.dart'; + +class Tencent extends AppSource { + Tencent() { + name = tr('tencentAppStore'); + hosts = ['sj.qq.com']; + naiveStandardVersionDetection = true; + showReleaseDateAsVersionToggle = true; + } + + @override + String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) { + RegExp standardUrlRegEx = RegExp( + '^https?://${getSourceRegex(hosts)}/appdetail/[^/]+', + caseSensitive: false, + ); + var match = standardUrlRegEx.firstMatch(url); + if (match == null) { + throw InvalidURLError(name); + } + return match.group(0)!; + } + + @override + Future tryInferringAppId( + String standardUrl, { + Map additionalSettings = const {}, + }) async { + return Uri.parse(standardUrl).pathSegments.last; + } + + @override + Future getLatestAPKDetails( + String standardUrl, + Map additionalSettings, + ) async { + String appId = (await tryInferringAppId(standardUrl))!; + String baseHost = Uri.parse( + standardUrl, + ).host.split('.').reversed.toList().sublist(0, 2).reversed.join('.'); + + var res = await sourceRequest( + 'https://upage.html5.$baseHost/wechat-apkinfo', + additionalSettings, + followRedirects: false, + postBody: {"packagename": appId}, + ); + + if (res.statusCode == 200) { + var json = jsonDecode(res.body); + if (json['app_detail_records'][appId] == null) { + throw NoReleasesError(); + } + var version = + json['app_detail_records'][appId]['apk_all_data']['version_name']; + var apkUrl = json['app_detail_records'][appId]['apk_all_data']['url']; + if (apkUrl == null) { + throw NoAPKError(); + } + var appName = json['app_detail_records'][appId]['app_info']['name']; + var author = json['app_detail_records'][appId]['app_info']['author']; + var releaseDate = + json['app_detail_records'][appId]['app_info']['update_time']; + var apkName = + Uri.parse(apkUrl).queryParameters['fsname'] ?? + '${appId}_$version.apk'; + + return APKDetails( + version, + [MapEntry(apkName, apkUrl)], + AppNames(author, appName), + releaseDate: releaseDate != null + ? DateTime.fromMillisecondsSinceEpoch(releaseDate * 1000) + : null, + ); + } else { + throw getObtainiumHttpError(res); + } + } +} diff --git a/lib/app_sources/uptodown.dart b/lib/app_sources/uptodown.dart new file mode 100644 index 0000000..63b4678 --- /dev/null +++ b/lib/app_sources/uptodown.dart @@ -0,0 +1,145 @@ +import 'package:easy_localization/easy_localization.dart'; +import 'package:html/parser.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/providers/source_provider.dart'; + +DateTime? parseDateTimeMMMddCommayyyy(String? dateString) { + DateTime? releaseDate; + try { + releaseDate = dateString != null + ? DateFormat('MMM dd, yyyy').parse(dateString) + : null; + releaseDate = dateString != null && releaseDate == null + ? DateFormat('MMMM dd, yyyy').parse(dateString) + : releaseDate; + } catch (err) { + // ignore + } + return releaseDate; +} + +class Uptodown extends AppSource { + Uptodown() { + hosts = ['uptodown.com']; + allowSubDomains = true; + naiveStandardVersionDetection = true; + showReleaseDateAsVersionToggle = true; + urlsAlwaysHaveExtension = true; + } + + @override + String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) { + RegExp standardUrlRegEx = RegExp( + '^https?://([^\\.]+\\.){2,}${getSourceRegex(hosts)}', + caseSensitive: false, + ); + RegExpMatch? match = standardUrlRegEx.firstMatch(url); + if (match == null) { + throw InvalidURLError(name); + } + return '${match.group(0)!}/android/download'; + } + + @override + Future tryInferringAppId( + String standardUrl, { + Map additionalSettings = const {}, + }) async { + return (await getAppDetailsFromPage( + standardUrl, + additionalSettings, + ))['appId']; + } + + Future> getAppDetailsFromPage( + String standardUrl, + Map additionalSettings, + ) async { + var res = await sourceRequest(standardUrl, additionalSettings); + if (res.statusCode != 200) { + throw getObtainiumHttpError(res); + } + var html = parse(res.body); + String? version = html.querySelector('div.version')?.innerHtml; + String? name = html.querySelector('#detail-app-name')?.innerHtml.trim(); + String? author = html.querySelector('#author-link')?.innerHtml.trim(); + var detailElements = html + .querySelectorAll('#technical-information td') + .map((e) => e.innerHtml.trim()) + .where((e) => !e.startsWith('<')) + .toList(); + String? appId = detailElements.elementAtOrNull(0); + String? dateStr = detailElements.elementAtOrNull(6); + String? fileId = html + .querySelector('#detail-app-name') + ?.attributes['data-file-id']; + String? extension = detailElements.elementAtOrNull(7)?.toLowerCase(); + return Map.fromEntries([ + MapEntry('version', version), + MapEntry('appId', appId), + MapEntry('name', name), + MapEntry('author', author), + MapEntry('dateStr', dateStr), + MapEntry('fileId', fileId), + MapEntry('extension', extension), + ]); + } + + @override + Future getLatestAPKDetails( + String standardUrl, + Map additionalSettings, + ) async { + var appDetails = await getAppDetailsFromPage( + standardUrl, + additionalSettings, + ); + var version = appDetails['version']; + var appId = appDetails['appId']; + var fileId = appDetails['fileId']; + var extension = appDetails['extension']; + if (version == null) { + throw NoVersionError(); + } + if (fileId == null) { + throw NoAPKError(); + } + var apkUrl = '$standardUrl/$fileId-x'; + if (appId == null) { + throw NoReleasesError(); + } + String appName = appDetails['name'] ?? tr('app'); + String author = appDetails['author'] ?? name; + String? dateStr = appDetails['dateStr']; + DateTime? relDate; + if (dateStr != null) { + relDate = parseDateTimeMMMddCommayyyy(dateStr); + } + return APKDetails( + version, + [MapEntry('$appId.$extension', apkUrl)], + AppNames(author, appName), + releaseDate: relDate, + ); + } + + @override + Future assetUrlPrefetchModifier( + String assetUrl, + String standardUrl, + Map additionalSettings, + ) async { + var res = await sourceRequest(assetUrl, additionalSettings); + if (res.statusCode != 200) { + throw getObtainiumHttpError(res); + } + var html = parse(res.body); + var finalUrlKey = html + .querySelector('#detail-download-button') + ?.attributes['data-url']; + if (finalUrlKey == null) { + throw NoAPKError(); + } + return 'https://dw.${hosts[0]}/dwn/$finalUrlKey'; + } +} diff --git a/lib/app_sources/vivoappstore.dart b/lib/app_sources/vivoappstore.dart new file mode 100644 index 0000000..280a585 --- /dev/null +++ b/lib/app_sources/vivoappstore.dart @@ -0,0 +1,111 @@ +import 'dart:convert'; + +import 'package:easy_localization/easy_localization.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/providers/source_provider.dart'; + +class VivoAppStore extends AppSource { + static const appDetailUrl = + 'https://h5coml.vivo.com.cn/h5coml/appdetail_h5/browser_v2/index.html?appId='; + + VivoAppStore() { + name = tr('vivoAppStore'); + hosts = ['h5.appstore.vivo.com.cn', 'h5coml.vivo.com.cn']; + naiveStandardVersionDetection = true; + canSearch = true; + allowOverride = false; + } + + @override + String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) { + var vivoAppId = parseVivoAppId(url); + return '$appDetailUrl$vivoAppId'; + } + + @override + Future tryInferringAppId( + String standardUrl, { + Map additionalSettings = const {}, + }) async { + var json = await getDetailJson(standardUrl, additionalSettings); + return json['package_name']; + } + + @override + Future getLatestAPKDetails( + String standardUrl, + Map additionalSettings, + ) async { + var json = await getDetailJson(standardUrl, additionalSettings); + var appName = json['title_zh'].toString(); + var packageName = json['package_name'].toString(); + var versionName = json['version_name'].toString(); + var versionCode = json['version_code'].toString(); + var developer = json['developer'].toString(); + var uploadTime = json['upload_time'].toString(); + var apkUrl = json['download_url'].toString(); + var apkName = '${packageName}_$versionCode.apk'; + return APKDetails( + versionName, + [MapEntry(apkName, apkUrl)], + AppNames(developer, appName), + releaseDate: DateTime.parse(uploadTime), + ); + } + + @override + Future>> search( + String query, { + Map querySettings = const {}, + }) async { + var apiBaseUrl = + 'https://h5-api.appstore.vivo.com.cn/h5appstore/search/result-list?app_version=2100&page_index=1&apps_per_page=20&target=local&cfrom=2&key='; + var searchUrl = '$apiBaseUrl${Uri.encodeQueryComponent(query)}'; + var response = await sourceRequest(searchUrl, {}); + if (response.statusCode != 200) { + throw getObtainiumHttpError(response); + } + var json = jsonDecode(response.body); + if (json['code'] != 0 || !json['data']['appSearchResponse']['result']) { + throw NoReleasesError(); + } + Map> results = {}; + var resultsJson = json['data']['appSearchResponse']?['value']; + if (resultsJson != null) { + for (var item in (resultsJson as List)) { + results['$appDetailUrl${item['id']}'] = [ + item['title_zh'].toString(), + item['developer'].toString(), + ]; + } + } + return results; + } + + Future> getDetailJson( + String standardUrl, + Map additionalSettings, + ) async { + var vivoAppId = parseVivoAppId(standardUrl); + var apiBaseUrl = 'https://h5-api.appstore.vivo.com.cn/detail/'; + var params = '?frompage=messageh5&app_version=2100'; + var detailUrl = '$apiBaseUrl$vivoAppId$params'; + var response = await sourceRequest(detailUrl, additionalSettings); + if (response.statusCode != 200) { + throw getObtainiumHttpError(response); + } + var json = jsonDecode(response.body); + if (json['id'] == null) { + throw NoReleasesError(); + } + return json; + } + + String parseVivoAppId(String url) { + var appId = Uri.parse(url.replaceAll('/#', '')).queryParameters['appId']; + if (appId == null || appId.isEmpty) { + throw InvalidURLError(name); + } + return appId; + } +} diff --git a/lib/components/custom_app_bar.dart b/lib/components/custom_app_bar.dart new file mode 100644 index 0000000..425883f --- /dev/null +++ b/lib/components/custom_app_bar.dart @@ -0,0 +1,30 @@ +import 'package:flutter/material.dart'; + +class CustomAppBar extends StatefulWidget { + const CustomAppBar({super.key, required this.title}); + + final String title; + + @override + State createState() => _CustomAppBarState(); +} + +class _CustomAppBarState extends State { + @override + Widget build(BuildContext context) { + return SliverAppBar( + pinned: true, + automaticallyImplyLeading: false, + expandedHeight: 100, + flexibleSpace: FlexibleSpaceBar( + titlePadding: const EdgeInsets.symmetric(horizontal: 20, vertical: 16), + title: Text( + widget.title, + style: TextStyle( + color: Theme.of(context).textTheme.bodyMedium!.color, + ), + ), + ), + ); + } +} diff --git a/lib/components/generated_form.dart b/lib/components/generated_form.dart new file mode 100644 index 0000000..25f3192 --- /dev/null +++ b/lib/components/generated_form.dart @@ -0,0 +1,850 @@ +import 'dart:math'; + +import 'package:hsluv/hsluv.dart'; +import 'package:easy_localization/easy_localization.dart'; +import 'package:flutter/material.dart'; +import 'package:obtainium/components/generated_form_modal.dart'; +import 'package:obtainium/providers/source_provider.dart'; +import 'package:flutter_typeahead/flutter_typeahead.dart'; + +abstract class GeneratedFormItem { + late String key; + late String label; + late List belowWidgets; + late dynamic defaultValue; + List additionalValidators; + dynamic ensureType(dynamic val); + GeneratedFormItem clone(); + + GeneratedFormItem( + this.key, { + this.label = 'Input', + this.belowWidgets = const [], + this.defaultValue, + this.additionalValidators = const [], + }); +} + +class GeneratedFormTextField extends GeneratedFormItem { + late bool required; + late int max; + late String? hint; + late bool password; + late TextInputType? textInputType; + late List? autoCompleteOptions; + + GeneratedFormTextField( + super.key, { + super.label, + super.belowWidgets, + String super.defaultValue = '', + List super.additionalValidators = const [], + this.required = true, + this.max = 1, + this.hint, + this.password = false, + this.textInputType, + this.autoCompleteOptions, + }); + + @override + String ensureType(val) { + return val.toString(); + } + + @override + GeneratedFormTextField clone() { + return GeneratedFormTextField( + key, + label: label, + belowWidgets: belowWidgets, + defaultValue: defaultValue, + additionalValidators: List.from(additionalValidators), + required: required, + max: max, + hint: hint, + password: password, + textInputType: textInputType, + ); + } +} + +class GeneratedFormDropdown extends GeneratedFormItem { + late List>? opts; + List? disabledOptKeys; + + GeneratedFormDropdown( + super.key, + this.opts, { + super.label, + super.belowWidgets, + String super.defaultValue = '', + this.disabledOptKeys, + List super.additionalValidators = const [], + }); + + @override + String ensureType(val) { + return val.toString(); + } + + @override + GeneratedFormDropdown clone() { + return GeneratedFormDropdown( + key, + opts?.map((e) => MapEntry(e.key, e.value)).toList(), + label: label, + belowWidgets: belowWidgets, + defaultValue: defaultValue, + disabledOptKeys: disabledOptKeys != null + ? List.from(disabledOptKeys!) + : null, + additionalValidators: List.from(additionalValidators), + ); + } +} + +class GeneratedFormSwitch extends GeneratedFormItem { + bool disabled = false; + + GeneratedFormSwitch( + super.key, { + super.label, + super.belowWidgets, + bool super.defaultValue = false, + bool disabled = false, + List super.additionalValidators = const [], + }); + + @override + bool ensureType(val) { + return val == true || val == 'true'; + } + + @override + GeneratedFormSwitch clone() { + return GeneratedFormSwitch( + key, + label: label, + belowWidgets: belowWidgets, + defaultValue: defaultValue, + disabled: false, + additionalValidators: List.from(additionalValidators), + ); + } +} + +class GeneratedFormTagInput extends GeneratedFormItem { + late MapEntry? deleteConfirmationMessage; + late bool singleSelect; + late WrapAlignment alignment; + late String emptyMessage; + late bool showLabelWhenNotEmpty; + GeneratedFormTagInput( + super.key, { + super.label, + super.belowWidgets, + Map> super.defaultValue = const {}, + List> value)> + super.additionalValidators = + const [], + this.deleteConfirmationMessage, + this.singleSelect = false, + this.alignment = WrapAlignment.start, + this.emptyMessage = 'Input', + this.showLabelWhenNotEmpty = true, + }); + + @override + Map> ensureType(val) { + return val is Map> ? val : {}; + } + + @override + GeneratedFormTagInput clone() { + return GeneratedFormTagInput( + key, + label: label, + belowWidgets: belowWidgets, + defaultValue: defaultValue, + additionalValidators: List.from(additionalValidators), + deleteConfirmationMessage: deleteConfirmationMessage, + singleSelect: singleSelect, + alignment: alignment, + emptyMessage: emptyMessage, + showLabelWhenNotEmpty: showLabelWhenNotEmpty, + ); + } +} + +typedef OnValueChanges = + void Function(Map values, bool valid, bool isBuilding); + +class GeneratedForm extends StatefulWidget { + const GeneratedForm({ + super.key, + required this.items, + required this.onValueChanges, + }); + + final List> items; + final OnValueChanges onValueChanges; + + @override + State createState() => _GeneratedFormState(); +} + +List> cloneFormItems( + List> items, +) { + List> clonedItems = []; + for (var row in items) { + List clonedRow = []; + for (var it in row) { + clonedRow.add(it.clone()); + } + clonedItems.add(clonedRow); + } + return clonedItems; +} + +class GeneratedFormSubForm extends GeneratedFormItem { + final List> items; + + GeneratedFormSubForm( + super.key, + this.items, { + super.label, + super.belowWidgets, + super.defaultValue = const [], + }); + + @override + ensureType(val) { + return val; // Not easy to validate List> + } + + @override + GeneratedFormSubForm clone() { + return GeneratedFormSubForm( + key, + cloneFormItems(items), + label: label, + belowWidgets: belowWidgets, + defaultValue: defaultValue, + ); + } +} + +// Generates a color in the HSLuv (Pastel) color space +// https://pub.dev/documentation/hsluv/latest/hsluv/Hsluv/hpluvToRgb.html +Color generateRandomLightColor() { + final randomSeed = Random().nextInt(120); + // https://en.wikipedia.org/wiki/Golden_angle + final goldenAngle = 180 * (3 - sqrt(5)); + // Generate next golden angle hue + final double hue = randomSeed * goldenAngle; + // Map from HPLuv color space to RGB, use constant saturation=100, lightness=70 + final List rgbValuesDbl = Hsluv.hpluvToRgb([hue, 100, 70]); + // Map RBG values from 0-1 to 0-255: + final List rgbValues = rgbValuesDbl + .map((rgb) => (rgb * 255).toInt()) + .toList(); + return Color.fromARGB(255, rgbValues[0], rgbValues[1], rgbValues[2]); +} + +int generateRandomNumber( + int seed1, { + int seed2 = 0, + int seed3 = 0, + max = 10000, +}) { + int combinedSeed = seed1.hashCode ^ seed2.hashCode ^ seed3.hashCode; + Random random = Random(combinedSeed); + int randomNumber = random.nextInt(max); + return randomNumber; +} + +bool validateTextField(TextFormField tf) => + (tf.key as GlobalKey).currentState?.isValid == true; + +class _GeneratedFormState extends State { + final _formKey = GlobalKey(); + Map values = {}; + late List> formInputs; + List> rows = []; + String? initKey; + int forceUpdateKeyCount = 0; + + // If any value changes, call this to update the parent with value and validity + void someValueChanged({bool isBuilding = false, bool forceInvalid = false}) { + Map returnValues = values; + var valid = true; + for (int r = 0; r < formInputs.length; r++) { + for (int i = 0; i < formInputs[r].length; i++) { + if (formInputs[r][i] is TextFormField) { + valid = valid && validateTextField(formInputs[r][i] as TextFormField); + } + } + } + if (forceInvalid) { + valid = false; + } + widget.onValueChanges(returnValues, valid, isBuilding); + } + + void initForm() { + initKey = widget.key.toString(); + // Initialize form values as all empty + values.clear(); + for (var row in widget.items) { + for (var e in row) { + values[e.key] = e.defaultValue; + } + } + + // Dynamically create form inputs + formInputs = widget.items.asMap().entries.map((row) { + return row.value.asMap().entries.map((e) { + var formItem = e.value; + if (formItem is GeneratedFormTextField) { + final formFieldKey = GlobalKey(); + var ctrl = TextEditingController(text: values[formItem.key]); + return TypeAheadField( + controller: ctrl, + builder: (context, controller, focusNode) { + return TextFormField( + controller: ctrl, + focusNode: focusNode, + keyboardType: formItem.textInputType, + obscureText: formItem.password, + autocorrect: !formItem.password, + enableSuggestions: !formItem.password, + key: formFieldKey, + autovalidateMode: AutovalidateMode.onUserInteraction, + onChanged: (value) { + setState(() { + values[formItem.key] = value; + someValueChanged(); + }); + }, + decoration: InputDecoration( + helperText: formItem.label + (formItem.required ? ' *' : ''), + hintText: formItem.hint, + ), + minLines: formItem.max <= 1 ? null : formItem.max, + maxLines: formItem.max <= 1 ? 1 : formItem.max, + validator: (value) { + if (formItem.required && + (value == null || value.trim().isEmpty)) { + return '${formItem.label} ${tr('requiredInBrackets')}'; + } + for (var validator in formItem.additionalValidators) { + String? result = validator(value); + if (result != null) { + return result; + } + } + return null; + }, + ); + }, + itemBuilder: (context, value) { + return ListTile(title: Text(value)); + }, + onSelected: (value) { + ctrl.text = value; + setState(() { + values[formItem.key] = value; + someValueChanged(); + }); + }, + suggestionsCallback: (search) { + return formItem.autoCompleteOptions + ?.where((t) => t.toLowerCase().contains(search.toLowerCase())) + .toList(); + }, + hideOnEmpty: true, + ); + } else if (formItem is GeneratedFormDropdown) { + if (formItem.opts!.isEmpty) { + return Text(tr('dropdownNoOptsError')); + } + return DropdownButtonFormField( + decoration: InputDecoration(labelText: formItem.label), + value: values[formItem.key], + items: formItem.opts!.map((e2) { + var enabled = formItem.disabledOptKeys?.contains(e2.key) != true; + return DropdownMenuItem( + value: e2.key, + enabled: enabled, + child: Opacity( + opacity: enabled ? 1 : 0.5, + child: Text(e2.value), + ), + ); + }).toList(), + onChanged: (value) { + setState(() { + values[formItem.key] = value ?? formItem.opts!.first.key; + someValueChanged(); + }); + }, + ); + } else if (formItem is GeneratedFormSubForm) { + values[formItem.key] = []; + for (Map v + in ((formItem.defaultValue ?? []) as List)) { + var fullDefaults = getDefaultValuesFromFormItems(formItem.items); + for (var element in v.entries) { + fullDefaults[element.key] = element.value; + } + values[formItem.key].add(fullDefaults); + } + return Container(); + } else { + return Container(); // Some input types added in build + } + }).toList(); + }).toList(); + someValueChanged(isBuilding: true); + } + + @override + void initState() { + super.initState(); + initForm(); + } + + @override + Widget build(BuildContext context) { + if (widget.key.toString() != initKey) { + initForm(); + } + for (var r = 0; r < formInputs.length; r++) { + for (var e = 0; e < formInputs[r].length; e++) { + String fieldKey = widget.items[r][e].key; + if (widget.items[r][e] is GeneratedFormSwitch) { + formInputs[r][e] = Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Flexible(child: Text(widget.items[r][e].label)), + const SizedBox(width: 8), + Switch( + value: values[fieldKey], + onChanged: (widget.items[r][e] as GeneratedFormSwitch).disabled + ? null + : (value) { + setState(() { + values[fieldKey] = value; + someValueChanged(); + }); + }, + ), + ], + ); + } else if (widget.items[r][e] is GeneratedFormTagInput) { + onAddPressed() { + showDialog?>( + context: context, + builder: (BuildContext ctx) { + return GeneratedFormModal( + title: widget.items[r][e].label, + items: [ + [GeneratedFormTextField('label', label: tr('label'))], + ], + ); + }, + ).then((value) { + String? label = value?['label']; + if (label != null) { + setState(() { + var temp = + values[fieldKey] as Map>?; + temp ??= {}; + if (temp[label] == null) { + var singleSelect = + (widget.items[r][e] as GeneratedFormTagInput) + .singleSelect; + var someSelected = temp.entries + .where((element) => element.value.value) + .isNotEmpty; + temp[label] = MapEntry( + generateRandomLightColor().value, + !(someSelected && singleSelect), + ); + values[fieldKey] = temp; + someValueChanged(); + } + }); + } + }); + } + + formInputs[r][e] = Column( + crossAxisAlignment: CrossAxisAlignment.stretch, + children: [ + if ((values[fieldKey] as Map>?) + ?.isNotEmpty == + true && + (widget.items[r][e] as GeneratedFormTagInput) + .showLabelWhenNotEmpty) + Column( + crossAxisAlignment: + (widget.items[r][e] as GeneratedFormTagInput).alignment == + WrapAlignment.center + ? CrossAxisAlignment.center + : CrossAxisAlignment.stretch, + children: [ + Text(widget.items[r][e].label), + const SizedBox(height: 8), + ], + ), + Wrap( + alignment: + (widget.items[r][e] as GeneratedFormTagInput).alignment, + crossAxisAlignment: WrapCrossAlignment.center, + children: [ + // (values[fieldKey] as Map>?) + // ?.isEmpty == + // true + // ? Text( + // (widget.items[r][e] as GeneratedFormTagInput) + // .emptyMessage, + // ) + // : const SizedBox.shrink(), + ...(values[fieldKey] as Map>?) + ?.entries + .map((e2) { + return Padding( + padding: const EdgeInsets.symmetric( + horizontal: 4, + ), + child: ChoiceChip( + label: Text(e2.key), + backgroundColor: Color( + e2.value.key, + ).withAlpha(50), + selectedColor: Color(e2.value.key), + visualDensity: VisualDensity.compact, + selected: e2.value.value, + onSelected: (value) { + setState(() { + (values[fieldKey] + as Map>)[e2 + .key] = MapEntry( + (values[fieldKey] + as Map< + String, + MapEntry + >)[e2.key]! + .key, + value, + ); + if ((widget.items[r][e] + as GeneratedFormTagInput) + .singleSelect && + value == true) { + for (var key + in (values[fieldKey] + as Map< + String, + MapEntry + >) + .keys) { + if (key != e2.key) { + (values[fieldKey] + as Map< + String, + MapEntry + >)[key] = MapEntry( + (values[fieldKey] + as Map< + String, + MapEntry + >)[key]! + .key, + false, + ); + } + } + } + someValueChanged(); + }); + }, + ), + ); + }) ?? + [const SizedBox.shrink()], + (values[fieldKey] as Map>?) + ?.values + .where((e) => e.value) + .length == + 1 + ? Padding( + padding: const EdgeInsets.symmetric(horizontal: 4), + child: IconButton( + onPressed: () { + setState(() { + var temp = + values[fieldKey] + as Map>; + // get selected category str where bool is true + final oldEntry = temp.entries.firstWhere( + (entry) => entry.value.value, + ); + // generate new color, ensure it is not the same + int newColor = oldEntry.value.key; + while (oldEntry.value.key == newColor) { + newColor = generateRandomLightColor().value; + } + // Update entry with new color, remain selected + temp.update( + oldEntry.key, + (old) => MapEntry(newColor, old.value), + ); + values[fieldKey] = temp; + someValueChanged(); + }); + }, + icon: const Icon(Icons.format_color_fill_rounded), + visualDensity: VisualDensity.compact, + tooltip: tr('colour'), + ), + ) + : const SizedBox.shrink(), + (values[fieldKey] as Map>?) + ?.values + .where((e) => e.value) + .isNotEmpty == + true + ? Padding( + padding: const EdgeInsets.symmetric(horizontal: 4), + child: IconButton( + onPressed: () { + fn() { + setState(() { + var temp = + values[fieldKey] + as Map>; + temp.removeWhere((key, value) => value.value); + values[fieldKey] = temp; + someValueChanged(); + }); + } + + if ((widget.items[r][e] as GeneratedFormTagInput) + .deleteConfirmationMessage != + null) { + var message = + (widget.items[r][e] + as GeneratedFormTagInput) + .deleteConfirmationMessage!; + showDialog?>( + context: context, + builder: (BuildContext ctx) { + return GeneratedFormModal( + title: message.key, + message: message.value, + items: const [], + ); + }, + ).then((value) { + if (value != null) { + fn(); + } + }); + } else { + fn(); + } + }, + icon: const Icon(Icons.remove), + visualDensity: VisualDensity.compact, + tooltip: tr('remove'), + ), + ) + : const SizedBox.shrink(), + (values[fieldKey] as Map>?) + ?.isEmpty == + true + ? Padding( + padding: const EdgeInsets.symmetric(horizontal: 4), + child: TextButton.icon( + onPressed: onAddPressed, + icon: const Icon(Icons.add), + label: Text( + (widget.items[r][e] as GeneratedFormTagInput) + .label, + ), + ), + ) + : Padding( + padding: const EdgeInsets.symmetric(horizontal: 4), + child: IconButton( + onPressed: onAddPressed, + icon: const Icon(Icons.add), + visualDensity: VisualDensity.compact, + tooltip: tr('add'), + ), + ), + ], + ), + ], + ); + } else if (widget.items[r][e] is GeneratedFormSubForm) { + List subformColumn = []; + var compact = + (widget.items[r][e] as GeneratedFormSubForm).items.length == 1 && + (widget.items[r][e] as GeneratedFormSubForm).items[0].length == 1; + for (int i = 0; i < values[fieldKey].length; i++) { + var internalFormKey = ValueKey( + generateRandomNumber( + values[fieldKey].length, + seed2: i, + seed3: forceUpdateKeyCount, + ), + ); + subformColumn.add( + Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + if (!compact) const SizedBox(height: 16), + if (!compact) + Text( + '${(widget.items[r][e] as GeneratedFormSubForm).label} (${i + 1})', + style: const TextStyle(fontWeight: FontWeight.bold), + ), + GeneratedForm( + key: internalFormKey, + items: + cloneFormItems( + (widget.items[r][e] as GeneratedFormSubForm) + .items, + ) + .map( + (x) => x.map((y) { + y.defaultValue = values[fieldKey]?[i]?[y.key]; + y.key = '${y.key.toString()},$internalFormKey'; + return y; + }).toList(), + ) + .toList(), + onValueChanges: (values, valid, isBuilding) { + values = values.map( + (key, value) => MapEntry(key.split(',')[0], value), + ); + if (valid) { + this.values[fieldKey]?[i] = values; + } + someValueChanged( + isBuilding: isBuilding, + forceInvalid: !valid, + ); + }, + ), + Row( + mainAxisAlignment: MainAxisAlignment.end, + children: [ + TextButton.icon( + style: TextButton.styleFrom( + foregroundColor: Theme.of(context).colorScheme.error, + ), + onPressed: (values[fieldKey].length > 0) + ? () { + var temp = List.from(values[fieldKey]); + temp.removeAt(i); + values[fieldKey] = List.from(temp); + forceUpdateKeyCount++; + someValueChanged(); + } + : null, + label: Text( + '${(widget.items[r][e] as GeneratedFormSubForm).label} (${i + 1})', + ), + icon: const Icon(Icons.delete_outline_rounded), + ), + ], + ), + ], + ), + ); + } + subformColumn.add( + Padding( + padding: const EdgeInsets.only(bottom: 0, top: 8), + child: Row( + children: [ + Expanded( + child: ElevatedButton.icon( + onPressed: () { + values[fieldKey].add( + getDefaultValuesFromFormItems( + (widget.items[r][e] as GeneratedFormSubForm).items, + ), + ); + forceUpdateKeyCount++; + someValueChanged(); + }, + icon: const Icon(Icons.add), + label: Text( + (widget.items[r][e] as GeneratedFormSubForm).label, + ), + ), + ), + ], + ), + ), + ); + formInputs[r][e] = Column(children: subformColumn); + } + } + } + + rows.clear(); + formInputs.asMap().entries.forEach((rowInputs) { + if (rowInputs.key > 0) { + rows.add([ + SizedBox( + height: widget.items[rowInputs.key - 1][0] is GeneratedFormSwitch + ? 8 + : 25, + ), + ]); + } + List rowItems = []; + rowInputs.value.asMap().entries.forEach((rowInput) { + if (rowInput.key > 0) { + rowItems.add(const SizedBox(width: 20)); + } + rowItems.add( + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.stretch, + mainAxisSize: MainAxisSize.min, + children: [ + rowInput.value, + ...widget.items[rowInputs.key][rowInput.key].belowWidgets, + ], + ), + ), + ); + }); + rows.add(rowItems); + }); + + return Form( + key: _formKey, + child: Column( + children: [ + ...rows.map( + (row) => Row( + mainAxisAlignment: MainAxisAlignment.start, + crossAxisAlignment: CrossAxisAlignment.start, + children: [...row.map((e) => e)], + ), + ), + ], + ), + ); + } +} diff --git a/lib/components/generated_form_modal.dart b/lib/components/generated_form_modal.dart new file mode 100644 index 0000000..118cba2 --- /dev/null +++ b/lib/components/generated_form_modal.dart @@ -0,0 +1,99 @@ +import 'package:easy_localization/easy_localization.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; +import 'package:obtainium/components/generated_form.dart'; + +class GeneratedFormModal extends StatefulWidget { + const GeneratedFormModal({ + super.key, + required this.title, + required this.items, + this.initValid = false, + this.message = '', + this.additionalWidgets = const [], + this.singleNullReturnButton, + this.primaryActionColour, + }); + + final String title; + final String message; + final List> items; + final bool initValid; + final List additionalWidgets; + final String? singleNullReturnButton; + final Color? primaryActionColour; + + @override + State createState() => _GeneratedFormModalState(); +} + +class _GeneratedFormModalState extends State { + Map values = {}; + bool valid = false; + + @override + void initState() { + super.initState(); + valid = widget.initValid || widget.items.isEmpty; + } + + @override + Widget build(BuildContext context) { + return AlertDialog( + scrollable: true, + title: Text(widget.title), + content: Column( + crossAxisAlignment: CrossAxisAlignment.stretch, + children: [ + if (widget.message.isNotEmpty) Text(widget.message), + if (widget.message.isNotEmpty) const SizedBox(height: 16), + GeneratedForm( + items: widget.items, + onValueChanges: (values, valid, isBuilding) { + if (isBuilding) { + this.values = values; + this.valid = valid; + } else { + setState(() { + this.values = values; + this.valid = valid; + }); + } + }, + ), + if (widget.additionalWidgets.isNotEmpty) ...widget.additionalWidgets, + ], + ), + actions: [ + TextButton( + onPressed: () { + Navigator.of(context).pop(null); + }, + child: Text( + widget.singleNullReturnButton == null + ? tr('cancel') + : widget.singleNullReturnButton!, + ), + ), + widget.singleNullReturnButton == null + ? TextButton( + style: widget.primaryActionColour == null + ? null + : TextButton.styleFrom( + foregroundColor: widget.primaryActionColour, + ), + onPressed: !valid + ? null + : () { + if (valid) { + HapticFeedback.selectionClick(); + Navigator.of(context).pop(values); + } + }, + child: Text(tr('continue')), + ) + : const SizedBox.shrink(), + ], + ); + } +} diff --git a/lib/custom_errors.dart b/lib/custom_errors.dart new file mode 100644 index 0000000..83d200a --- /dev/null +++ b/lib/custom_errors.dart @@ -0,0 +1,178 @@ +import 'dart:io'; + +import 'package:android_package_installer/android_package_installer.dart'; +import 'package:easy_localization/easy_localization.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; +import 'package:obtainium/providers/logs_provider.dart'; +import 'package:obtainium/providers/source_provider.dart'; +import 'package:provider/provider.dart'; + +class ObtainiumError { + late String message; + bool unexpected; + ObtainiumError(this.message, {this.unexpected = false}); + @override + String toString() { + return message; + } +} + +class RateLimitError extends ObtainiumError { + late int remainingMinutes; + RateLimitError(this.remainingMinutes) + : super(plural('tooManyRequestsTryAgainInMinutes', remainingMinutes)); +} + +class InvalidURLError extends ObtainiumError { + InvalidURLError(String sourceName) + : super(tr('invalidURLForSource', args: [sourceName])); +} + +class CredsNeededError extends ObtainiumError { + CredsNeededError(String sourceName) + : super(tr('requiresCredentialsInSettings', args: [sourceName])); +} + +class NoReleasesError extends ObtainiumError { + NoReleasesError({String? note}) + : super( + '${tr('noReleaseFound')}${note?.isNotEmpty == true ? '\n\n$note' : ''}', + ); +} + +class NoAPKError extends ObtainiumError { + NoAPKError() : super(tr('noAPKFound')); +} + +class NoVersionError extends ObtainiumError { + NoVersionError() : super(tr('noVersionFound')); +} + +class UnsupportedURLError extends ObtainiumError { + UnsupportedURLError() : super(tr('urlMatchesNoSource')); +} + +class DowngradeError extends ObtainiumError { + DowngradeError(int currentVersionCode, int newVersionCode) + : super( + '${tr('cantInstallOlderVersion')} (versionCode $currentVersionCode ➔ $newVersionCode)', + ); +} + +class InstallError extends ObtainiumError { + InstallError(int code) + : super(PackageInstallerStatus.byCode(code).name.substring(7)); +} + +class IDChangedError extends ObtainiumError { + IDChangedError(String newId) : super('${tr('appIdMismatch')} - $newId'); +} + +class NotImplementedError extends ObtainiumError { + NotImplementedError() : super(tr('functionNotImplemented')); +} + +class MultiAppMultiError extends ObtainiumError { + Map rawErrors = {}; + Map> idsByErrorString = {}; + Map appIdNames = {}; + + MultiAppMultiError() : super(tr('placeholder'), unexpected: true); + + void add(String appId, dynamic error, {String? appName}) { + if (error is SocketException) { + error = error.message; + } + rawErrors[appId] = error; + var string = error.toString(); + var tempIds = idsByErrorString.remove(string); + tempIds ??= []; + tempIds.add(appId); + idsByErrorString.putIfAbsent(string, () => tempIds!); + if (appName != null) { + appIdNames[appId] = appName; + } + } + + String errorString(String appId, {bool includeIdsWithNames = false}) => + '${appIdNames.containsKey(appId) ? '${appIdNames[appId]}${includeIdsWithNames ? ' ($appId)' : ''}' : appId}: ${rawErrors[appId].toString()}'; + + String errorsAppsString( + String errString, + List appIds, { + bool includeIdsWithNames = false, + }) => + '$errString [${list2FriendlyString(appIds.map((id) => appIdNames.containsKey(id) == true ? '${appIdNames[id]}${includeIdsWithNames ? ' ($id)' : ''}' : id).toList())}]'; + + @override + String toString() => idsByErrorString.entries + .map((e) => errorsAppsString(e.key, e.value)) + .join('\n\n'); +} + +void showMessage(dynamic e, BuildContext context, {bool isError = false}) { + Provider.of( + context, + listen: false, + ).add(e.toString(), level: isError ? LogLevels.error : LogLevels.info); + if (e is String || (e is ObtainiumError && !e.unexpected)) { + ScaffoldMessenger.of( + context, + ).showSnackBar(SnackBar(content: Text(e.toString()))); + } else { + showDialog( + context: context, + builder: (BuildContext ctx) { + return AlertDialog( + scrollable: true, + title: Text( + e is MultiAppMultiError + ? tr(isError ? 'someErrors' : 'updates') + : tr(isError ? 'unexpectedError' : 'unknown'), + ), + content: GestureDetector( + onLongPress: () { + Clipboard.setData(ClipboardData(text: e.toString())); + ScaffoldMessenger.of( + context, + ).showSnackBar(SnackBar(content: Text(tr('copiedToClipboard')))); + }, + child: Text(e.toString()), + ), + actions: [ + TextButton( + onPressed: () { + Navigator.of(context).pop(null); + }, + child: Text(tr('ok')), + ), + ], + ); + }, + ); + } +} + +void showError(dynamic e, BuildContext context) { + showMessage(e, context, isError: true); +} + +String list2FriendlyString(List list) { + var isUsingEnglish = isEnglish(); + return list.length == 2 + ? '${list[0]} ${tr('and')} ${list[1]}' + : list + .asMap() + .entries + .map( + (e) => + e.value + + (e.key == list.length - 1 + ? '' + : e.key == list.length - 2 + ? '${isUsingEnglish ? ',' : ''} and ' + : ', '), + ) + .join(''); +} diff --git a/lib/main.dart b/lib/main.dart new file mode 100644 index 0000000..dc96456 --- /dev/null +++ b/lib/main.dart @@ -0,0 +1,423 @@ +import 'dart:io'; + +import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; +import 'package:obtainium/pages/home.dart'; +import 'package:obtainium/providers/apps_provider.dart'; +import 'package:obtainium/providers/logs_provider.dart'; +import 'package:obtainium/providers/native_provider.dart'; +import 'package:obtainium/providers/notifications_provider.dart'; +import 'package:obtainium/providers/settings_provider.dart'; +import 'package:obtainium/providers/source_provider.dart'; +import 'package:provider/provider.dart'; +import 'package:dynamic_color/dynamic_color.dart'; +import 'package:device_info_plus/device_info_plus.dart'; +import 'package:background_fetch/background_fetch.dart'; +import 'package:easy_localization/easy_localization.dart'; +// ignore: implementation_imports +import 'package:easy_localization/src/easy_localization_controller.dart'; +// ignore: implementation_imports +import 'package:easy_localization/src/localization.dart'; +import 'package:flutter_foreground_task/flutter_foreground_task.dart'; + +List> supportedLocales = const [ + MapEntry(Locale('en'), 'English'), + MapEntry(Locale('zh'), '简体中文'), + MapEntry(Locale('zh', 'Hant_TW'), '臺灣話'), + MapEntry(Locale('it'), 'Italiano'), + MapEntry(Locale('ja'), '日本語'), + MapEntry(Locale('hu'), 'Magyar'), + MapEntry(Locale('de'), 'Deutsch'), + MapEntry(Locale('fa'), 'فارسی'), + MapEntry(Locale('fr'), 'Français'), + MapEntry(Locale('es'), 'Español'), + MapEntry(Locale('pl'), 'Polski'), + MapEntry(Locale('ru'), 'Русский'), + MapEntry(Locale('bs'), 'Bosanski'), + MapEntry(Locale('pt'), 'Português'), + MapEntry(Locale('pt', 'BR'), 'Brasileiro'), + MapEntry(Locale('cs'), 'Česky'), + MapEntry(Locale('sv'), 'Svenska'), + MapEntry(Locale('nl'), 'Nederlands'), + MapEntry(Locale('vi'), 'Tiếng Việt'), + MapEntry(Locale('tr'), 'Türkçe'), + MapEntry(Locale('uk'), 'Українська'), + MapEntry(Locale('da'), 'Dansk'), + MapEntry( + Locale('en', 'EO'), + 'Esperanto', + ), // https://github.com/aissat/easy_localization/issues/220#issuecomment-846035493 + MapEntry(Locale('in'), 'Bahasa Indonesia'), + MapEntry(Locale('ko'), '한국어'), + MapEntry(Locale('ca'), 'Català'), + MapEntry(Locale('ar'), 'العربية'), + MapEntry(Locale('ml'), 'മലയാളം'), +]; +const fallbackLocale = Locale('en'); +const localeDir = 'assets/translations'; +var fdroid = false; + +final globalNavigatorKey = GlobalKey(); + +Future loadTranslations() async { + // See easy_localization/issues/210 + await EasyLocalizationController.initEasyLocation(); + var s = SettingsProvider(); + await s.initializeSettings(); + var forceLocale = s.forcedLocale; + final controller = EasyLocalizationController( + saveLocale: true, + forceLocale: forceLocale, + fallbackLocale: fallbackLocale, + supportedLocales: supportedLocales.map((e) => e.key).toList(), + assetLoader: const RootBundleAssetLoader(), + useOnlyLangCode: false, + useFallbackTranslations: true, + path: localeDir, + onLoadError: (FlutterError e) { + throw e; + }, + ); + await controller.loadTranslations(); + Localization.load( + controller.locale, + translations: controller.translations, + fallbackTranslations: controller.fallbackTranslations, + ); +} + +@pragma('vm:entry-point') +void backgroundFetchHeadlessTask(HeadlessTask task) async { + String taskId = task.taskId; + bool isTimeout = task.timeout; + if (isTimeout) { + print('BG update task timed out.'); + BackgroundFetch.finish(taskId); + return; + } + await bgUpdateCheck(taskId, null); + BackgroundFetch.finish(taskId); +} + +@pragma('vm:entry-point') +void startCallback() { + FlutterForegroundTask.setTaskHandler(MyTaskHandler()); +} + +class MyTaskHandler extends TaskHandler { + static const String incrementCountCommand = 'incrementCount'; + + @override + Future onStart(DateTime timestamp, TaskStarter starter) async { + print('onStart(starter: ${starter.name})'); + bgUpdateCheck('bg_check', null); + } + + @override + void onRepeatEvent(DateTime timestamp) { + bgUpdateCheck('bg_check', null); + } + + @override + Future onDestroy(DateTime timestamp, bool isTimeout) async { + print('Foreground service onDestroy(isTimeout: $isTimeout)'); + } + + @override + void onReceiveData(Object data) {} +} + +void main() async { + WidgetsFlutterBinding.ensureInitialized(); + try { + ByteData data = await PlatformAssetBundle().load( + 'assets/ca/lets-encrypt-r3.pem', + ); + SecurityContext.defaultContext.setTrustedCertificatesBytes( + data.buffer.asUint8List(), + ); + } catch (e) { + // Already added, do nothing (see #375) + } + await EasyLocalization.ensureInitialized(); + if ((await DeviceInfoPlugin().androidInfo).version.sdkInt >= 29) { + SystemChrome.setSystemUIOverlayStyle( + const SystemUiOverlayStyle(systemNavigationBarColor: Colors.transparent), + ); + SystemChrome.setEnabledSystemUIMode(SystemUiMode.edgeToEdge); + } + final np = NotificationsProvider(); + await np.initialize(); + FlutterForegroundTask.initCommunicationPort(); + runApp( + MultiProvider( + providers: [ + ChangeNotifierProvider(create: (context) => AppsProvider()), + ChangeNotifierProvider(create: (context) => SettingsProvider()), + Provider(create: (context) => np), + Provider(create: (context) => LogsProvider()), + ], + child: EasyLocalization( + supportedLocales: supportedLocales.map((e) => e.key).toList(), + path: localeDir, + fallbackLocale: fallbackLocale, + useOnlyLangCode: false, + child: const Obtainium(), + ), + ), + ); + BackgroundFetch.registerHeadlessTask(backgroundFetchHeadlessTask); +} + +class Obtainium extends StatefulWidget { + const Obtainium({super.key}); + + @override + State createState() => _ObtainiumState(); +} + +class _ObtainiumState extends State { + var existingUpdateInterval = -1; + + @override + void initState() { + super.initState(); + initPlatformState(); + WidgetsBinding.instance.addPostFrameCallback((_) { + requestNonOptionalPermissions(); + }); + } + + Future requestNonOptionalPermissions() async { + final NotificationPermission notificationPermission = + await FlutterForegroundTask.checkNotificationPermission(); + if (notificationPermission != NotificationPermission.granted) { + await FlutterForegroundTask.requestNotificationPermission(); + } + if (!await FlutterForegroundTask.isIgnoringBatteryOptimizations) { + await FlutterForegroundTask.requestIgnoreBatteryOptimization(); + } + } + + void initForegroundService() { + // ignore: invalid_use_of_visible_for_testing_member + if (!FlutterForegroundTask.isInitialized) { + FlutterForegroundTask.init( + androidNotificationOptions: AndroidNotificationOptions( + channelId: 'bg_update', + channelName: tr('foregroundService'), + channelDescription: tr('foregroundService'), + onlyAlertOnce: true, + ), + iosNotificationOptions: const IOSNotificationOptions( + showNotification: false, + playSound: false, + ), + foregroundTaskOptions: ForegroundTaskOptions( + eventAction: ForegroundTaskEventAction.repeat(900000), + autoRunOnBoot: true, + autoRunOnMyPackageReplaced: true, + allowWakeLock: true, + allowWifiLock: true, + ), + ); + } + } + + Future startForegroundService(bool restart) async { + initForegroundService(); + if (await FlutterForegroundTask.isRunningService) { + if (restart) { + return FlutterForegroundTask.restartService(); + } + } else { + return FlutterForegroundTask.startService( + serviceTypes: [ForegroundServiceTypes.specialUse], + serviceId: 666, + notificationTitle: tr('foregroundService'), + notificationText: tr('fgServiceNotice'), + notificationIcon: NotificationIcon( + metaDataName: 'dev.imranr.obtainium.service.NOTIFICATION_ICON', + ), + callback: startCallback, + ); + } + return null; + } + + stopForegroundService() async { + if (await FlutterForegroundTask.isRunningService) { + return FlutterForegroundTask.stopService(); + } + } + + // void onReceiveForegroundServiceData(Object data) { + // print('onReceiveTaskData: $data'); + // } + + @override + void dispose() { + // Remove a callback to receive data sent from the TaskHandler. + // FlutterForegroundTask.removeTaskDataCallback(onReceiveForegroundServiceData); + super.dispose(); + } + + Future initPlatformState() async { + await BackgroundFetch.configure( + BackgroundFetchConfig( + minimumFetchInterval: 15, + stopOnTerminate: false, + startOnBoot: true, + enableHeadless: true, + requiresBatteryNotLow: false, + requiresCharging: false, + requiresStorageNotLow: false, + requiresDeviceIdle: false, + requiredNetworkType: NetworkType.ANY, + ), + (String taskId) async { + await bgUpdateCheck(taskId, null); + BackgroundFetch.finish(taskId); + }, + (String taskId) async { + context.read().add('BG update task timed out.'); + BackgroundFetch.finish(taskId); + }, + ); + if (!mounted) return; + } + + @override + Widget build(BuildContext context) { + SettingsProvider settingsProvider = context.watch(); + AppsProvider appsProvider = context.read(); + LogsProvider logs = context.read(); + NotificationsProvider notifs = context.read(); + if (settingsProvider.updateInterval == 0) { + stopForegroundService(); + BackgroundFetch.stop(); + } else { + if (settingsProvider.useFGService) { + BackgroundFetch.stop(); + startForegroundService(false); + } else { + stopForegroundService(); + BackgroundFetch.start(); + } + } + if (settingsProvider.prefs == null) { + settingsProvider.initializeSettings(); + } else { + bool isFirstRun = settingsProvider.checkAndFlipFirstRun(); + if (isFirstRun) { + logs.add('This is the first ever run of Obtainium.'); + // If this is the first run, add Obtainium to the Apps list + if (!fdroid) { + getInstalledInfo(obtainiumId) + .then((value) { + if (value?.versionName != null) { + appsProvider.saveApps([ + App( + obtainiumId, + obtainiumUrl, + 'ImranR98', + 'Obtainium', + value!.versionName, + value.versionName!, + [], + 0, + { + 'versionDetection': true, + 'apkFilterRegEx': 'fdroid', + 'invertAPKFilter': true, + }, + null, + false, + ), + ], onlyIfExists: false); + } + }) + .catchError((err) { + print(err); + }); + } + } + if (!supportedLocales.map((e) => e.key).contains(context.locale) || + (settingsProvider.forcedLocale == null && + context.deviceLocale != context.locale)) { + settingsProvider.resetLocaleSafe(context); + } + } + + WidgetsBinding.instance.addPostFrameCallback((_) { + notifs.checkLaunchByNotif(); + }); + + return WithForegroundTask( + child: DynamicColorBuilder( + builder: (ColorScheme? lightDynamic, ColorScheme? darkDynamic) { + // Decide on a colour/brightness scheme based on OS and user settings + ColorScheme lightColorScheme; + ColorScheme darkColorScheme; + if (lightDynamic != null && + darkDynamic != null && + settingsProvider.useMaterialYou) { + lightColorScheme = lightDynamic.harmonized(); + darkColorScheme = darkDynamic.harmonized(); + } else { + lightColorScheme = ColorScheme.fromSeed( + seedColor: settingsProvider.themeColor, + ); + darkColorScheme = ColorScheme.fromSeed( + seedColor: settingsProvider.themeColor, + brightness: Brightness.dark, + ); + } + + // set the background and surface colors to pure black in the amoled theme + if (settingsProvider.useBlackTheme) { + darkColorScheme = darkColorScheme + .copyWith(surface: Colors.black) + .harmonized(); + } + + if (settingsProvider.useSystemFont) NativeFeatures.loadSystemFont(); + + return MaterialApp( + title: 'Obtainium', + localizationsDelegates: context.localizationDelegates, + supportedLocales: context.supportedLocales, + locale: context.locale, + navigatorKey: globalNavigatorKey, + debugShowCheckedModeBanner: false, + theme: ThemeData( + useMaterial3: true, + colorScheme: settingsProvider.theme == ThemeSettings.dark + ? darkColorScheme + : lightColorScheme, + fontFamily: settingsProvider.useSystemFont + ? 'SystemFont' + : 'Montserrat', + ), + darkTheme: ThemeData( + useMaterial3: true, + colorScheme: settingsProvider.theme == ThemeSettings.light + ? lightColorScheme + : darkColorScheme, + fontFamily: settingsProvider.useSystemFont + ? 'SystemFont' + : 'Montserrat', + ), + home: Shortcuts( + shortcuts: { + LogicalKeySet(LogicalKeyboardKey.select): + const ActivateIntent(), + }, + child: const HomePage(), + ), + ); + }, + ), + ); + } +} diff --git a/lib/main_fdroid.dart b/lib/main_fdroid.dart new file mode 100644 index 0000000..93c0f66 --- /dev/null +++ b/lib/main_fdroid.dart @@ -0,0 +1,6 @@ +import 'main.dart' as m; + +void main() async { + m.fdroid = true; + m.main(); +} diff --git a/lib/mass_app_sources/githubstars.dart b/lib/mass_app_sources/githubstars.dart new file mode 100644 index 0000000..94647bd --- /dev/null +++ b/lib/mass_app_sources/githubstars.dart @@ -0,0 +1,67 @@ +import 'dart:convert'; + +import 'package:easy_localization/easy_localization.dart'; +import 'package:http/http.dart'; +import 'package:obtainium/app_sources/github.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/providers/source_provider.dart'; + +class GitHubStars implements MassAppUrlSource { + @override + late String name = tr('githubStarredRepos'); + + @override + late List requiredArgs = [tr('uname')]; + + Future>> getOnePageOfUserStarredUrlsWithDescriptions( + String username, + int page, + ) async { + Response res = await get( + Uri.parse( + 'https://api.github.com/users/$username/starred?per_page=100&page=$page', + ), + headers: await GitHub().getRequestHeaders({}), + ); + if (res.statusCode == 200) { + Map> urlsWithDescriptions = {}; + for (var e in (jsonDecode(res.body) as List)) { + urlsWithDescriptions.addAll({ + e['html_url'] as String: [ + e['full_name'] as String, + e['description'] != null + ? e['description'] as String + : tr('noDescription'), + ], + }); + } + return urlsWithDescriptions; + } else { + var gh = GitHub(); + gh.rateLimitErrorCheck(res); + throw getObtainiumHttpError(res); + } + } + + @override + Future>> getUrlsWithDescriptions( + List args, + ) async { + if (args.length != requiredArgs.length) { + throw ObtainiumError(tr('wrongArgNum')); + } + Map> urlsWithDescriptions = {}; + var page = 1; + while (true) { + var pageUrls = await getOnePageOfUserStarredUrlsWithDescriptions( + args[0], + page++, + ); + urlsWithDescriptions.addAll(pageUrls); + if (pageUrls.length < 100) { + break; + } + } + return urlsWithDescriptions; + } +} diff --git a/lib/pages/add_app.dart b/lib/pages/add_app.dart new file mode 100644 index 0000000..589eed7 --- /dev/null +++ b/lib/pages/add_app.dart @@ -0,0 +1,771 @@ +import 'package:easy_localization/easy_localization.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; +import 'package:obtainium/components/custom_app_bar.dart'; +import 'package:obtainium/components/generated_form.dart'; +import 'package:obtainium/components/generated_form_modal.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/main.dart'; +import 'package:obtainium/pages/app.dart'; +import 'package:obtainium/pages/import_export.dart'; +import 'package:obtainium/pages/settings.dart'; +import 'package:obtainium/providers/apps_provider.dart'; +import 'package:obtainium/providers/notifications_provider.dart'; +import 'package:obtainium/providers/settings_provider.dart'; +import 'package:obtainium/providers/source_provider.dart'; +import 'package:provider/provider.dart'; +import 'package:url_launcher/url_launcher_string.dart'; + +class AddAppPage extends StatefulWidget { + const AddAppPage({super.key}); + + @override + State createState() => AddAppPageState(); +} + +class AddAppPageState extends State { + bool gettingAppInfo = false; + bool searching = false; + + String userInput = ''; + String searchQuery = ''; + String? pickedSourceOverride; + String? previousPickedSourceOverride; + AppSource? pickedSource; + Map additionalSettings = {}; + bool additionalSettingsValid = true; + bool inferAppIdIfOptional = true; + List pickedCategories = []; + int urlInputKey = 0; + SourceProvider sourceProvider = SourceProvider(); + + void linkFn(String input) { + try { + if (input.isEmpty) { + throw UnsupportedURLError(); + } + sourceProvider.getSource(input); + changeUserInput(input, true, false, updateUrlInput: true); + } catch (e) { + showError(e, context); + } + } + + void changeUserInput( + String input, + bool valid, + bool isBuilding, { + bool updateUrlInput = false, + String? overrideSource, + }) { + userInput = input; + if (!isBuilding) { + setState(() { + if (overrideSource != null) { + pickedSourceOverride = overrideSource; + } + bool overrideChanged = + pickedSourceOverride != previousPickedSourceOverride; + previousPickedSourceOverride = pickedSourceOverride; + if (updateUrlInput) { + urlInputKey++; + } + var prevHost = pickedSource?.hosts.isNotEmpty == true + ? pickedSource?.hosts[0] + : null; + var source = valid + ? sourceProvider.getSource( + userInput, + overrideSource: pickedSourceOverride, + ) + : null; + if (pickedSource.runtimeType != source.runtimeType || + overrideChanged || + (prevHost != null && prevHost != source?.hosts[0])) { + pickedSource = source; + pickedSource?.runOnAddAppInputChange(userInput); + additionalSettings = source != null + ? getDefaultValuesFromFormItems( + source.combinedAppSpecificSettingFormItems, + ) + : {}; + additionalSettingsValid = source != null + ? !sourceProvider.ifRequiredAppSpecificSettingsExist(source) + : true; + inferAppIdIfOptional = true; + } + }); + } + } + + @override + Widget build(BuildContext context) { + AppsProvider appsProvider = context.read(); + SettingsProvider settingsProvider = context.watch(); + NotificationsProvider notificationsProvider = context + .read(); + + bool doingSomething = gettingAppInfo || searching; + + Future getTrackOnlyConfirmationIfNeeded( + bool userPickedTrackOnly, { + bool ignoreHideSetting = false, + }) async { + var useTrackOnly = userPickedTrackOnly || pickedSource!.enforceTrackOnly; + if (useTrackOnly && + (!settingsProvider.hideTrackOnlyWarning || ignoreHideSetting)) { + // ignore: use_build_context_synchronously + var values = await showDialog( + context: context, + builder: (BuildContext ctx) { + return GeneratedFormModal( + initValid: true, + title: tr( + 'xIsTrackOnly', + args: [ + pickedSource!.enforceTrackOnly ? tr('source') : tr('app'), + ], + ), + items: [ + [GeneratedFormSwitch('hide', label: tr('dontShowAgain'))], + ], + message: + '${pickedSource!.enforceTrackOnly ? tr('appsFromSourceAreTrackOnly') : tr('youPickedTrackOnly')}\n\n${tr('trackOnlyAppDescription')}', + ); + }, + ); + if (values != null) { + settingsProvider.hideTrackOnlyWarning = values['hide'] == true; + } + return useTrackOnly && values != null; + } else { + return true; + } + } + + getReleaseDateAsVersionConfirmationIfNeeded( + bool userPickedTrackOnly, + ) async { + return (!(additionalSettings['releaseDateAsVersion'] == true && + // ignore: use_build_context_synchronously + await showDialog( + context: context, + builder: (BuildContext ctx) { + return GeneratedFormModal( + title: tr('releaseDateAsVersion'), + items: const [], + message: tr('releaseDateAsVersionExplanation'), + ); + }, + ) == + null)); + } + + addApp({bool resetUserInputAfter = false}) async { + setState(() { + gettingAppInfo = true; + }); + try { + var userPickedTrackOnly = additionalSettings['trackOnly'] == true; + App? app; + if ((await getTrackOnlyConfirmationIfNeeded(userPickedTrackOnly)) && + (await getReleaseDateAsVersionConfirmationIfNeeded( + userPickedTrackOnly, + ))) { + var trackOnly = pickedSource!.enforceTrackOnly || userPickedTrackOnly; + app = await sourceProvider.getApp( + pickedSource!, + userInput.trim(), + additionalSettings, + trackOnlyOverride: trackOnly, + sourceIsOverriden: pickedSourceOverride != null, + inferAppIdIfOptional: inferAppIdIfOptional, + ); + // Only download the APK here if you need to for the package ID + if (isTempId(app) && app.additionalSettings['trackOnly'] != true) { + // ignore: use_build_context_synchronously + var apkUrl = await appsProvider.confirmAppFileUrl( + app, + context, + false, + ); + if (apkUrl == null) { + throw ObtainiumError(tr('cancelled')); + } + app.preferredApkIndex = app.apkUrls + .map((e) => e.value) + .toList() + .indexOf(apkUrl.value); + // ignore: use_build_context_synchronously + var downloadedArtifact = await appsProvider.downloadApp( + app, + globalNavigatorKey.currentContext, + notificationsProvider: notificationsProvider, + ); + DownloadedApk? downloadedFile; + DownloadedDir? downloadedDir; + if (downloadedArtifact is DownloadedApk) { + downloadedFile = downloadedArtifact; + } else { + downloadedDir = downloadedArtifact as DownloadedDir; + } + app.id = downloadedFile?.appId ?? downloadedDir!.appId; + } + if (appsProvider.apps.containsKey(app.id)) { + throw ObtainiumError(tr('appAlreadyAdded')); + } + if (app.additionalSettings['trackOnly'] == true || + app.additionalSettings['versionDetection'] != true) { + app.installedVersion = app.latestVersion; + } + app.categories = pickedCategories; + await appsProvider.saveApps([app], onlyIfExists: false); + } + if (app != null) { + Navigator.push( + globalNavigatorKey.currentContext ?? context, + MaterialPageRoute(builder: (context) => AppPage(appId: app!.id)), + ); + } + } catch (e) { + showError(e, context); + } finally { + setState(() { + gettingAppInfo = false; + if (resetUserInputAfter) { + changeUserInput('', false, true); + } + }); + } + } + + Widget getUrlInputRow() => Row( + children: [ + Expanded( + child: GeneratedForm( + key: Key(urlInputKey.toString()), + items: [ + [ + GeneratedFormTextField( + 'appSourceURL', + label: tr('appSourceURL'), + defaultValue: userInput, + additionalValidators: [ + (value) { + try { + sourceProvider + .getSource( + value ?? '', + overrideSource: pickedSourceOverride, + ) + .standardizeUrl(value ?? ''); + } catch (e) { + return e is String + ? e + : e is ObtainiumError + ? e.toString() + : tr('error'); + } + return null; + }, + ], + ), + ], + ], + onValueChanges: (values, valid, isBuilding) { + changeUserInput(values['appSourceURL']!, valid, isBuilding); + }, + ), + ), + const SizedBox(width: 16), + gettingAppInfo + ? const CircularProgressIndicator() + : ElevatedButton( + onPressed: + doingSomething || + pickedSource == null || + (pickedSource! + .combinedAppSpecificSettingFormItems + .isNotEmpty && + !additionalSettingsValid) + ? null + : () { + HapticFeedback.selectionClick(); + addApp(); + }, + child: Text(tr('add')), + ), + ], + ); + + runSearch({bool filtered = true}) async { + setState(() { + searching = true; + }); + var sourceStrings = >{}; + sourceProvider.sources.where((e) => e.canSearch).forEach((s) { + sourceStrings[s.name] = [s.name]; + }); + try { + var searchSources = + await showDialog?>( + context: context, + builder: (BuildContext ctx) { + return SelectionModal( + title: tr( + 'selectX', + args: [plural('source', 2).toLowerCase()], + ), + entries: sourceStrings, + selectedByDefault: true, + onlyOneSelectionAllowed: false, + titlesAreLinks: false, + deselectThese: settingsProvider.searchDeselected, + ); + }, + ) ?? + []; + if (searchSources.isNotEmpty) { + settingsProvider.searchDeselected = sourceStrings.keys + .where((s) => !searchSources.contains(s)) + .toList(); + List>>?> + results = (await Future.wait( + sourceProvider.sources + .where((e) => searchSources.contains(e.name)) + .map((e) async { + try { + Map? querySettings = {}; + if (e.includeAdditionalOptsInMainSearch) { + querySettings = await showDialog?>( + context: context, + builder: (BuildContext ctx) { + return GeneratedFormModal( + title: tr('searchX', args: [e.name]), + items: [ + ...e.searchQuerySettingFormItems.map((e) => [e]), + [ + GeneratedFormTextField( + 'url', + label: e.hosts.isNotEmpty + ? tr('overrideSource') + : plural('url', 1).substring(2), + autoCompleteOptions: [ + ...(e.hosts.isNotEmpty ? [e.hosts[0]] : []), + ...appsProvider.apps.values + .where( + (a) => + sourceProvider + .getSource( + a.app.url, + overrideSource: + a.app.overrideSource, + ) + .runtimeType == + e.runtimeType, + ) + .map((a) { + var uri = Uri.parse(a.app.url); + return '${uri.origin}${uri.path}'; + }), + ], + defaultValue: e.hosts.isNotEmpty + ? e.hosts[0] + : '', + required: true, + ), + ], + ], + ); + }, + ); + if (querySettings == null) { + return null; + } + } + return MapEntry( + e.runtimeType.toString(), + await e.search(searchQuery, querySettings: querySettings), + ); + } catch (err) { + if (err is! CredsNeededError) { + rethrow; + } else { + err.unexpected = true; + showError(err, context); + return null; + } + } + }), + )).where((a) => a != null).toList(); + + // Interleave results instead of simple reduce + Map>> res = {}; + var si = 0; + var done = false; + while (!done) { + done = true; + for (var r in results) { + var sourceName = r!.key; + if (r.value.length > si) { + done = false; + var singleRes = r.value.entries.elementAt(si); + res[singleRes.key] = MapEntry(sourceName, singleRes.value); + } + } + si++; + } + if (res.isEmpty) { + throw ObtainiumError(tr('noResults')); + } + List? selectedUrls = res.isEmpty + ? [] + // ignore: use_build_context_synchronously + : await showDialog?>( + context: context, + builder: (BuildContext ctx) { + return SelectionModal( + entries: res.map((k, v) => MapEntry(k, v.value)), + selectedByDefault: false, + onlyOneSelectionAllowed: true, + ); + }, + ); + if (selectedUrls != null && selectedUrls.isNotEmpty) { + var sourceName = res[selectedUrls[0]]?.key; + changeUserInput( + selectedUrls[0], + true, + false, + updateUrlInput: true, + overrideSource: sourceName, + ); + } + } + } catch (e) { + showError(e, context); + } finally { + setState(() { + searching = false; + }); + } + } + + Widget getHTMLSourceOverrideDropdown() => Column( + children: [ + Row( + children: [ + Expanded( + child: GeneratedForm( + items: [ + [ + GeneratedFormDropdown( + 'overrideSource', + defaultValue: pickedSourceOverride ?? '', + [ + MapEntry('', tr('none')), + ...sourceProvider.sources + .where( + (s) => + s.allowOverride || + (pickedSource != null && + pickedSource.runtimeType == + s.runtimeType), + ) + .map( + (s) => MapEntry(s.runtimeType.toString(), s.name), + ), + ], + label: tr('overrideSource'), + ), + ], + ], + onValueChanges: (values, valid, isBuilding) { + fn() { + pickedSourceOverride = + (values['overrideSource'] == null || + values['overrideSource'] == '') + ? null + : values['overrideSource']; + } + + if (!isBuilding) { + setState(() { + fn(); + }); + } else { + fn(); + } + changeUserInput(userInput, valid, isBuilding); + }, + ), + ), + ], + ), + const SizedBox(height: 16), + ], + ); + + bool shouldShowSearchBar() => + sourceProvider.sources.where((e) => e.canSearch).isNotEmpty && + pickedSource == null && + userInput.isEmpty; + + Widget getSearchBarRow() => Row( + children: [ + Expanded( + child: GeneratedForm( + items: [ + [ + GeneratedFormTextField( + 'searchSomeSources', + label: tr('searchSomeSourcesLabel'), + required: false, + ), + ], + ], + onValueChanges: (values, valid, isBuilding) { + if (values.isNotEmpty && valid && !isBuilding) { + setState(() { + searchQuery = values['searchSomeSources']!.trim(); + }); + } + }, + ), + ), + const SizedBox(width: 16), + searching + ? const CircularProgressIndicator() + : ElevatedButton( + onPressed: searchQuery.isEmpty || doingSomething + ? null + : () { + runSearch(); + }, + child: Text(tr('search')), + ), + ], + ); + + Widget getAdditionalOptsCol() => Column( + crossAxisAlignment: CrossAxisAlignment.stretch, + children: [ + const SizedBox(height: 16), + Text( + tr('additionalOptsFor', args: [pickedSource?.name ?? tr('source')]), + style: TextStyle( + color: Theme.of(context).colorScheme.primary, + fontWeight: FontWeight.bold, + ), + ), + const SizedBox(height: 16), + GeneratedForm( + key: Key( + '${pickedSource.runtimeType.toString()}-${pickedSource?.hostChanged.toString()}-${pickedSource?.hostIdenticalDespiteAnyChange.toString()}', + ), + items: [ + ...pickedSource!.combinedAppSpecificSettingFormItems, + ...(pickedSourceOverride != null + ? pickedSource!.sourceConfigSettingFormItems.map((e) => [e]) + : []), + ], + onValueChanges: (values, valid, isBuilding) { + if (!isBuilding) { + setState(() { + additionalSettings = values; + additionalSettingsValid = valid; + }); + } + }, + ), + Column( + children: [ + const SizedBox(height: 16), + CategoryEditorSelector( + alignment: WrapAlignment.start, + onSelected: (categories) { + pickedCategories = categories; + }, + ), + ], + ), + if (pickedSource != null && pickedSource!.appIdInferIsOptional) + GeneratedForm( + key: const Key('inferAppIdIfOptional'), + items: [ + [ + GeneratedFormSwitch( + 'inferAppIdIfOptional', + label: tr('tryInferAppIdFromCode'), + defaultValue: inferAppIdIfOptional, + ), + ], + ], + onValueChanges: (values, valid, isBuilding) { + if (!isBuilding) { + setState(() { + inferAppIdIfOptional = values['inferAppIdIfOptional']; + }); + } + }, + ), + if (pickedSource != null && pickedSource!.enforceTrackOnly) + GeneratedForm( + key: Key( + '${pickedSource.runtimeType.toString()}-${pickedSource?.hostChanged.toString()}-${pickedSource?.hostIdenticalDespiteAnyChange.toString()}-appId', + ), + items: [ + [ + GeneratedFormTextField( + 'appId', + label: '${tr('appId')} - ${tr('custom')}', + required: false, + additionalValidators: [ + (value) { + if (value == null || value.isEmpty) { + return null; + } + final isValid = RegExp( + r'^([A-Za-z]{1}[A-Za-z\d_]*\.)+[A-Za-z][A-Za-z\d_]*$', + ).hasMatch(value); + if (!isValid) { + return tr('invalidInput'); + } + return null; + }, + ], + ), + ], + ], + onValueChanges: (values, valid, isBuilding) { + if (!isBuilding) { + setState(() { + additionalSettings['appId'] = values['appId']; + }); + } + }, + ), + ], + ); + + Widget getSourcesListWidget() => Padding( + padding: const EdgeInsets.all(16), + child: Wrap( + direction: Axis.horizontal, + alignment: WrapAlignment.spaceBetween, + spacing: 12, + children: [ + GestureDetector( + onTap: () { + showDialog( + context: context, + builder: (context) { + return GeneratedFormModal( + singleNullReturnButton: tr('ok'), + title: tr('supportedSources'), + items: const [], + additionalWidgets: [ + ...sourceProvider.sources.map( + (e) => Padding( + padding: const EdgeInsets.symmetric(vertical: 4), + child: GestureDetector( + onTap: e.hosts.isNotEmpty + ? () { + launchUrlString( + 'https://${e.hosts[0]}', + mode: LaunchMode.externalApplication, + ); + } + : null, + child: Text( + '${e.name}${e.enforceTrackOnly ? ' ${tr('trackOnlyInBrackets')}' : ''}${e.canSearch ? ' ${tr('searchableInBrackets')}' : ''}', + style: TextStyle( + decoration: e.hosts.isNotEmpty + ? TextDecoration.underline + : TextDecoration.none, + ), + ), + ), + ), + ), + const SizedBox(height: 16), + Text( + '${tr('note')}:', + style: const TextStyle(fontWeight: FontWeight.bold), + ), + const SizedBox(height: 4), + Text(tr('selfHostedNote', args: [tr('overrideSource')])), + ], + ); + }, + ); + }, + child: Text( + tr('supportedSources'), + style: const TextStyle( + fontWeight: FontWeight.bold, + decoration: TextDecoration.underline, + fontStyle: FontStyle.italic, + ), + ), + ), + GestureDetector( + onTap: () { + launchUrlString( + 'https://apps.obtainium.imranr.dev/', + mode: LaunchMode.externalApplication, + ); + }, + child: Text( + tr('crowdsourcedConfigsShort'), + style: const TextStyle( + fontWeight: FontWeight.bold, + decoration: TextDecoration.underline, + fontStyle: FontStyle.italic, + ), + ), + ), + ], + ), + ); + + return Scaffold( + backgroundColor: Theme.of(context).colorScheme.surface, + bottomNavigationBar: pickedSource == null ? getSourcesListWidget() : null, + body: CustomScrollView( + shrinkWrap: true, + slivers: [ + CustomAppBar(title: tr('addApp')), + SliverToBoxAdapter( + child: Padding( + padding: const EdgeInsets.all(16), + child: Column( + mainAxisSize: MainAxisSize.min, + crossAxisAlignment: CrossAxisAlignment.stretch, + children: [ + getUrlInputRow(), + const SizedBox(height: 16), + if (pickedSource != null) getHTMLSourceOverrideDropdown(), + if (shouldShowSearchBar()) getSearchBarRow(), + if (pickedSource != null) + FutureBuilder( + builder: (ctx, val) { + return val.data != null && val.data!.isNotEmpty + ? Text( + val.data!, + style: Theme.of(context).textTheme.bodySmall, + ) + : const SizedBox(); + }, + future: pickedSource?.getSourceNote(), + ), + if (pickedSource != null) getAdditionalOptsCol(), + ], + ), + ), + ), + ], + ), + ); + } +} diff --git a/lib/pages/app.dart b/lib/pages/app.dart new file mode 100644 index 0000000..a50ba70 --- /dev/null +++ b/lib/pages/app.dart @@ -0,0 +1,695 @@ +import 'package:easy_localization/easy_localization.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; +import 'package:flutter_markdown/flutter_markdown.dart'; +import 'package:obtainium/components/generated_form_modal.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/main.dart'; +import 'package:obtainium/pages/apps.dart'; +import 'package:obtainium/pages/settings.dart'; +import 'package:obtainium/providers/apps_provider.dart'; +import 'package:obtainium/providers/settings_provider.dart'; +import 'package:obtainium/providers/source_provider.dart'; +import 'package:url_launcher/url_launcher_string.dart'; +import 'package:webview_flutter/webview_flutter.dart'; +import 'package:provider/provider.dart'; +import 'package:markdown/markdown.dart' as md; + +class AppPage extends StatefulWidget { + const AppPage({ + super.key, + required this.appId, + this.showOppositeOfPreferredView = false, + }); + + final String appId; + final bool showOppositeOfPreferredView; + + @override + State createState() => _AppPageState(); +} + +class _AppPageState extends State { + late final WebViewController _webViewController; + bool _wasWebViewOpened = false; + AppInMemory? prevApp; + bool updating = false; + + @override + void initState() { + super.initState(); + _webViewController = WebViewController() + ..setJavaScriptMode(JavaScriptMode.unrestricted) + ..setNavigationDelegate( + NavigationDelegate( + onWebResourceError: (WebResourceError error) { + if (error.isForMainFrame == true) { + showError( + ObtainiumError(error.description, unexpected: true), + context, + ); + } + }, + onNavigationRequest: (NavigationRequest request) => + !(request.url.startsWith("http://") || + request.url.startsWith("https://") || + request.url.startsWith("ftp://") || + request.url.startsWith("ftps://")) + ? NavigationDecision.prevent + : NavigationDecision.navigate, + ), + ); + } + + @override + Widget build(BuildContext context) { + var appsProvider = context.watch(); + var settingsProvider = context.watch(); + var showAppWebpageFinal = + (settingsProvider.showAppWebpage && + !widget.showOppositeOfPreferredView) || + (!settingsProvider.showAppWebpage && + widget.showOppositeOfPreferredView); + getUpdate(String id, {bool resetVersion = false}) async { + try { + setState(() { + updating = true; + }); + await appsProvider.checkUpdate(id); + if (resetVersion) { + appsProvider.apps[id]?.app.additionalSettings['versionDetection'] = + true; + if (appsProvider.apps[id]?.app.installedVersion != null) { + appsProvider.apps[id]?.app.installedVersion = + appsProvider.apps[id]?.app.latestVersion; + } + appsProvider.saveApps([appsProvider.apps[id]!.app]); + } + } catch (err) { + // ignore: use_build_context_synchronously + showError(err, context); + } finally { + setState(() { + updating = false; + }); + } + } + + bool areDownloadsRunning = appsProvider.areDownloadsRunning(); + + var sourceProvider = SourceProvider(); + AppInMemory? app = appsProvider.apps[widget.appId]?.deepCopy(); + var source = app != null + ? sourceProvider.getSource( + app.app.url, + overrideSource: app.app.overrideSource, + ) + : null; + if (!areDownloadsRunning && + prevApp == null && + app != null && + settingsProvider.checkUpdateOnDetailPage) { + prevApp = app; + getUpdate(app.app.id); + } + var trackOnly = app?.app.additionalSettings['trackOnly'] == true; + + bool isVersionDetectionStandard = + app?.app.additionalSettings['versionDetection'] == true; + + bool installedVersionIsEstimate = app?.app != null + ? isVersionPseudo(app!.app) + : false; + + if (app != null && !_wasWebViewOpened) { + _wasWebViewOpened = true; + _webViewController.loadRequest(Uri.parse(app.app.url)); + } + + getInfoColumn() { + String versionLines = ''; + bool installed = app?.app.installedVersion != null; + bool upToDate = app?.app.installedVersion == app?.app.latestVersion; + if (installed) { + versionLines = '${app?.app.installedVersion} ${tr('installed')}'; + if (upToDate) { + versionLines += '/${tr('latest')}'; + } + } else { + versionLines = tr('notInstalled'); + } + if (!upToDate) { + versionLines += '\n${app?.app.latestVersion} ${tr('latest')}'; + } + String infoLines = tr( + 'lastUpdateCheckX', + args: [ + app?.app.lastUpdateCheck == null + ? tr('never') + : '${app?.app.lastUpdateCheck?.toLocal()}', + ], + ); + if (trackOnly) { + infoLines = '${tr('xIsTrackOnly', args: [tr('app')])}\n$infoLines'; + } + if (installedVersionIsEstimate) { + infoLines = '${tr('pseudoVersionInUse')}\n$infoLines'; + } + if ((app?.app.apkUrls.length ?? 0) > 0) { + infoLines = + '$infoLines\n${app?.app.apkUrls.length == 1 ? app?.app.apkUrls[0].key : plural('apk', app?.app.apkUrls.length ?? 0)}'; + } + var changeLogFn = app != null ? getChangeLogFn(context, app.app) : null; + return Column( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.stretch, + children: [ + Padding( + padding: const EdgeInsets.symmetric(horizontal: 8, vertical: 24), + child: Column( + children: [ + const SizedBox(height: 8), + Text( + versionLines, + textAlign: TextAlign.start, + style: Theme.of( + context, + ).textTheme.bodyLarge!.copyWith(fontWeight: FontWeight.bold), + ), + changeLogFn != null || app?.app.releaseDate != null + ? GestureDetector( + onTap: changeLogFn, + child: Text( + app?.app.releaseDate == null + ? tr('changes') + : app!.app.releaseDate!.toLocal().toString(), + textAlign: TextAlign.center, + style: Theme.of(context).textTheme.labelSmall! + .copyWith( + decoration: changeLogFn != null + ? TextDecoration.underline + : null, + fontStyle: changeLogFn != null + ? FontStyle.italic + : null, + ), + ), + ) + : const SizedBox.shrink(), + const SizedBox(height: 8), + ], + ), + ), + Text( + infoLines, + textAlign: TextAlign.center, + style: const TextStyle(fontStyle: FontStyle.italic, fontSize: 12), + ), + if (app?.app.apkUrls.isNotEmpty == true || + app?.app.otherAssetUrls.isNotEmpty == true) + GestureDetector( + onTap: app?.app == null || updating + ? null + : () async { + try { + await appsProvider.downloadAppAssets([ + app!.app.id, + ], context); + } catch (e) { + showError(e, context); + } + }, + child: Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Container( + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(12), + color: settingsProvider.highlightTouchTargets + ? (Theme.of(context).brightness == Brightness.light + ? Theme.of(context).primaryColor + : Theme.of(context).primaryColorLight) + .withAlpha( + Theme.of(context).brightness == + Brightness.light + ? 20 + : 40, + ) + : null, + ), + padding: settingsProvider.highlightTouchTargets + ? const EdgeInsetsDirectional.fromSTEB(12, 6, 12, 6) + : const EdgeInsetsDirectional.fromSTEB(0, 6, 0, 6), + margin: const EdgeInsetsDirectional.fromSTEB(0, 6, 0, 0), + child: Text( + tr( + 'downloadX', + args: [lowerCaseIfEnglish(tr('releaseAsset'))], + ), + textAlign: TextAlign.center, + style: Theme.of(context).textTheme.labelSmall!.copyWith( + decoration: TextDecoration.underline, + fontStyle: FontStyle.italic, + ), + ), + ), + ], + ), + ), + const SizedBox(height: 48), + CategoryEditorSelector( + alignment: WrapAlignment.center, + preselected: app?.app.categories != null + ? app!.app.categories.toSet() + : {}, + onSelected: (categories) { + if (app != null) { + app.app.categories = categories; + appsProvider.saveApps([app.app]); + } + }, + ), + if (app?.app.additionalSettings['about'] is String && + app?.app.additionalSettings['about'].isNotEmpty) + Column( + mainAxisSize: MainAxisSize.min, + children: [ + const SizedBox(height: 48), + GestureDetector( + onLongPress: () { + Clipboard.setData( + ClipboardData( + text: app?.app.additionalSettings['about'] ?? '', + ), + ); + ScaffoldMessenger.of(context).showSnackBar( + SnackBar(content: Text(tr('copiedToClipboard'))), + ); + }, + child: Markdown( + physics: NeverScrollableScrollPhysics(), + shrinkWrap: true, + styleSheet: MarkdownStyleSheet( + blockquoteDecoration: BoxDecoration( + color: Theme.of(context).cardColor, + ), + textAlign: WrapAlignment.center, + ), + data: app?.app.additionalSettings['about'], + onTapLink: (text, href, title) { + if (href != null) { + launchUrlString( + href, + mode: LaunchMode.externalApplication, + ); + } + }, + extensionSet: md.ExtensionSet( + md.ExtensionSet.gitHubFlavored.blockSyntaxes, + [ + md.EmojiSyntax(), + ...md.ExtensionSet.gitHubFlavored.inlineSyntaxes, + ], + ), + ), + ), + ], + ), + ], + ); + } + + getFullInfoColumn({bool small = false}) => Column( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.stretch, + children: [ + SizedBox(height: small ? 5 : 20), + FutureBuilder( + future: appsProvider.updateAppIcon(app?.app.id, ignoreCache: true), + builder: (ctx, val) { + return app?.icon != null + ? Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + GestureDetector( + onTap: app == null + ? null + : () => pm.openApp(app.app.id), + child: Image.memory( + app!.icon!, + height: small ? 70 : 150, + gaplessPlayback: true, + ), + ), + ], + ) + : Container(); + }, + ), + SizedBox(height: small ? 10 : 25), + Text( + app?.name ?? tr('app'), + textAlign: TextAlign.center, + style: small + ? Theme.of(context).textTheme.displaySmall + : Theme.of(context).textTheme.displayLarge, + ), + Text( + tr('byX', args: [app?.author ?? tr('unknown')]), + textAlign: TextAlign.center, + style: small + ? Theme.of(context).textTheme.headlineSmall + : Theme.of(context).textTheme.headlineMedium, + ), + const SizedBox(height: 24), + GestureDetector( + onTap: () { + if (app?.app.url != null) { + launchUrlString( + app?.app.url ?? '', + mode: LaunchMode.externalApplication, + ); + } + }, + onLongPress: () { + Clipboard.setData(ClipboardData(text: app?.app.url ?? '')); + ScaffoldMessenger.of( + context, + ).showSnackBar(SnackBar(content: Text(tr('copiedToClipboard')))); + }, + child: Text( + app?.app.url ?? '', + textAlign: TextAlign.center, + style: Theme.of(context).textTheme.labelSmall!.copyWith( + decoration: TextDecoration.underline, + fontStyle: FontStyle.italic, + ), + ), + ), + Text( + app?.app.id ?? '', + textAlign: TextAlign.center, + style: Theme.of(context).textTheme.labelSmall, + ), + getInfoColumn(), + const SizedBox(height: 150), + ], + ); + + getAppWebView() => app != null + ? WebViewWidget( + key: ObjectKey(_webViewController), + controller: _webViewController + ..setBackgroundColor(Theme.of(context).colorScheme.surface), + ) + : Container(); + + showMarkUpdatedDialog() { + return showDialog( + context: context, + builder: (BuildContext ctx) { + return AlertDialog( + title: Text(tr('alreadyUpToDateQuestion')), + actions: [ + TextButton( + onPressed: () { + Navigator.of(context).pop(); + }, + child: Text(tr('no')), + ), + TextButton( + onPressed: () { + HapticFeedback.selectionClick(); + var updatedApp = app?.app; + if (updatedApp != null) { + updatedApp.installedVersion = updatedApp.latestVersion; + appsProvider.saveApps([updatedApp]); + } + Navigator.of(context).pop(); + }, + child: Text(tr('yesMarkUpdated')), + ), + ], + ); + }, + ); + } + + showAdditionalOptionsDialog() async { + return await showDialog?>( + context: context, + builder: (BuildContext ctx) { + var items = (source?.combinedAppSpecificSettingFormItems ?? []).map(( + row, + ) { + row = row.map((e) { + if (app?.app.additionalSettings[e.key] != null) { + e.defaultValue = app?.app.additionalSettings[e.key]; + } + return e; + }).toList(); + return row; + }).toList(); + + return GeneratedFormModal( + title: tr('additionalOptions'), + items: items, + ); + }, + ); + } + + handleAdditionalOptionChanges(Map? values) { + if (app != null && values != null) { + Map originalSettings = app.app.additionalSettings; + app.app.additionalSettings = values; + if (source?.enforceTrackOnly == true) { + app.app.additionalSettings['trackOnly'] = true; + // ignore: use_build_context_synchronously + showMessage(tr('appsFromSourceAreTrackOnly'), context); + } + var versionDetectionEnabled = + app.app.additionalSettings['versionDetection'] == true && + originalSettings['versionDetection'] != true; + var releaseDateVersionEnabled = + app.app.additionalSettings['releaseDateAsVersion'] == true && + originalSettings['releaseDateAsVersion'] != true; + var releaseDateVersionDisabled = + app.app.additionalSettings['releaseDateAsVersion'] != true && + originalSettings['releaseDateAsVersion'] == true; + if (releaseDateVersionEnabled) { + if (app.app.releaseDate != null) { + bool isUpdated = app.app.installedVersion == app.app.latestVersion; + app.app.latestVersion = app.app.releaseDate!.microsecondsSinceEpoch + .toString(); + if (isUpdated) { + app.app.installedVersion = app.app.latestVersion; + } + } + } else if (releaseDateVersionDisabled) { + app.app.installedVersion = + app.installedInfo?.versionName ?? app.app.installedVersion; + } + if (versionDetectionEnabled) { + app.app.additionalSettings['versionDetection'] = true; + app.app.additionalSettings['releaseDateAsVersion'] = false; + } + appsProvider.saveApps([app.app]).then((value) { + getUpdate(app.app.id, resetVersion: versionDetectionEnabled); + }); + } + } + + getInstallOrUpdateButton() => TextButton( + onPressed: + !updating && + (app?.app.installedVersion == null || + app?.app.installedVersion != app?.app.latestVersion) && + !areDownloadsRunning + ? () async { + try { + var successMessage = app?.app.installedVersion == null + ? tr('installed') + : tr('appsUpdated'); + HapticFeedback.heavyImpact(); + var res = await appsProvider.downloadAndInstallLatestApps( + app?.app.id != null ? [app!.app.id] : [], + globalNavigatorKey.currentContext, + ); + if (res.isNotEmpty && !trackOnly) { + // ignore: use_build_context_synchronously + showMessage(successMessage, context); + } + if (res.isNotEmpty && mounted) { + Navigator.of(context).pop(); + } + } catch (e) { + // ignore: use_build_context_synchronously + showError(e, context); + } + } + : null, + child: Text( + app?.app.installedVersion == null + ? !trackOnly + ? tr('install') + : tr('markInstalled') + : !trackOnly + ? tr('update') + : tr('markUpdated'), + ), + ); + + getBottomSheetMenu() => Padding( + padding: EdgeInsets.fromLTRB( + 0, + 0, + 0, + MediaQuery.of(context).padding.bottom, + ), + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + Padding( + padding: const EdgeInsets.fromLTRB(16, 8, 16, 0), + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + children: [ + if (source != null && + source.combinedAppSpecificSettingFormItems.isNotEmpty) + IconButton( + onPressed: app?.downloadProgress != null || updating + ? null + : () async { + var values = await showAdditionalOptionsDialog(); + handleAdditionalOptionChanges(values); + }, + tooltip: tr('additionalOptions'), + icon: const Icon(Icons.edit), + ), + if (app != null && app.installedInfo != null) + IconButton( + onPressed: () { + appsProvider.openAppSettings(app.app.id); + }, + icon: const Icon(Icons.settings), + tooltip: tr('settings'), + ), + if (app != null && showAppWebpageFinal) + IconButton( + onPressed: () { + showDialog( + context: context, + builder: (BuildContext ctx) { + return AlertDialog( + scrollable: true, + content: getFullInfoColumn(small: true), + title: Text(app.name), + actions: [ + TextButton( + onPressed: () { + Navigator.of(context).pop(); + }, + child: Text(tr('continue')), + ), + ], + ); + }, + ); + }, + icon: const Icon(Icons.more_horiz), + tooltip: tr('more'), + ), + if (app?.app.installedVersion != null && + app?.app.installedVersion != app?.app.latestVersion && + !isVersionDetectionStandard && + !trackOnly) + IconButton( + onPressed: app?.downloadProgress != null || updating + ? null + : showMarkUpdatedDialog, + tooltip: tr('markUpdated'), + icon: const Icon(Icons.done), + ), + if ((!isVersionDetectionStandard || trackOnly) && + app?.app.installedVersion != null && + app?.app.installedVersion == app?.app.latestVersion) + IconButton( + onPressed: app?.app == null || updating + ? null + : () { + app!.app.installedVersion = null; + appsProvider.saveApps([app.app]); + }, + icon: const Icon(Icons.restore_rounded), + tooltip: tr('resetInstallStatus'), + ), + const SizedBox(width: 16.0), + Expanded(child: getInstallOrUpdateButton()), + const SizedBox(width: 16.0), + IconButton( + onPressed: app?.downloadProgress != null || updating + ? null + : () { + appsProvider + .removeAppsWithModal( + context, + app != null ? [app.app] : [], + ) + .then((value) { + if (value == true) { + Navigator.of(context).pop(); + } + }); + }, + tooltip: tr('remove'), + icon: const Icon(Icons.delete_outline), + ), + ], + ), + ), + if (app?.downloadProgress != null) + Padding( + padding: const EdgeInsets.fromLTRB(0, 8, 0, 0), + child: LinearProgressIndicator( + value: app!.downloadProgress! >= 0 + ? app.downloadProgress! / 100 + : null, + ), + ), + ], + ), + ); + + appScreenAppBar() => AppBar( + leading: IconButton( + icon: const Icon(Icons.arrow_back), + onPressed: () { + Navigator.pop(context); + }, + ), + ); + + return Scaffold( + appBar: showAppWebpageFinal ? AppBar() : appScreenAppBar(), + backgroundColor: Theme.of(context).colorScheme.surface, + body: RefreshIndicator( + child: showAppWebpageFinal + ? getAppWebView() + : CustomScrollView( + slivers: [ + SliverToBoxAdapter( + child: Column(children: [getFullInfoColumn()]), + ), + ], + ), + onRefresh: () async { + if (app != null) { + getUpdate(app.app.id); + } + }, + ), + bottomSheet: getBottomSheetMenu(), + ); + } +} diff --git a/lib/pages/apps.dart b/lib/pages/apps.dart new file mode 100644 index 0000000..64196cb --- /dev/null +++ b/lib/pages/apps.dart @@ -0,0 +1,1372 @@ +import 'dart:convert'; + +import 'package:easy_localization/easy_localization.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; +import 'package:flutter_markdown/flutter_markdown.dart'; +import 'package:obtainium/components/custom_app_bar.dart'; +import 'package:obtainium/components/generated_form.dart'; +import 'package:obtainium/components/generated_form_modal.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/main.dart'; +import 'package:obtainium/pages/app.dart'; +import 'package:obtainium/pages/settings.dart'; +import 'package:obtainium/providers/apps_provider.dart'; +import 'package:obtainium/providers/settings_provider.dart'; +import 'package:obtainium/providers/source_provider.dart'; +import 'package:provider/provider.dart'; +import 'package:share_plus/share_plus.dart'; +import 'package:url_launcher/url_launcher_string.dart'; +import 'package:markdown/markdown.dart' as md; + +class AppsPage extends StatefulWidget { + const AppsPage({super.key}); + + @override + State createState() => AppsPageState(); +} + +void showChangeLogDialog( + BuildContext context, + App app, + String? changesUrl, + AppSource appSource, + String changeLog, +) { + showDialog( + context: context, + builder: (BuildContext context) { + return GeneratedFormModal( + title: tr('changes'), + items: const [], + message: app.latestVersion, + additionalWidgets: [ + changesUrl != null + ? GestureDetector( + child: Text( + changesUrl, + style: const TextStyle( + decoration: TextDecoration.underline, + fontStyle: FontStyle.italic, + ), + ), + onTap: () { + launchUrlString( + changesUrl, + mode: LaunchMode.externalApplication, + ); + }, + ) + : const SizedBox.shrink(), + changesUrl != null + ? const SizedBox(height: 16) + : const SizedBox.shrink(), + appSource.changeLogIfAnyIsMarkDown + ? SizedBox( + width: MediaQuery.of(context).size.width, + height: MediaQuery.of(context).size.height - 350, + child: Markdown( + styleSheet: MarkdownStyleSheet( + blockquoteDecoration: BoxDecoration( + color: Theme.of(context).cardColor, + ), + ), + data: changeLog, + onTapLink: (text, href, title) { + if (href != null) { + launchUrlString( + href.startsWith('http://') || + href.startsWith('https://') + ? href + : '${Uri.parse(app.url).origin}/$href', + mode: LaunchMode.externalApplication, + ); + } + }, + extensionSet: md.ExtensionSet( + md.ExtensionSet.gitHubFlavored.blockSyntaxes, + [ + md.EmojiSyntax(), + ...md.ExtensionSet.gitHubFlavored.inlineSyntaxes, + ], + ), + ), + ) + : Text(changeLog), + ], + singleNullReturnButton: tr('ok'), + ); + }, + ); +} + +Null Function()? getChangeLogFn(BuildContext context, App app) { + AppSource appSource = SourceProvider().getSource( + app.url, + overrideSource: app.overrideSource, + ); + String? changesUrl = appSource.changeLogPageFromStandardUrl(app.url); + String? changeLog = app.changeLog; + if (changeLog?.split('\n').length == 1) { + if (RegExp( + '(http|ftp|https)://([\\w_-]+(?:(?:\\.[\\w_-]+)+))([\\w.,@?^=%&:/~+#-]*[\\w@?^=%&/~+#-])?', + ).hasMatch(changeLog!)) { + if (changesUrl == null) { + changesUrl = changeLog; + changeLog = null; + } + } + } + return (changeLog == null && changesUrl == null) + ? null + : () { + if (changeLog != null) { + showChangeLogDialog(context, app, changesUrl, appSource, changeLog); + } else { + launchUrlString(changesUrl!, mode: LaunchMode.externalApplication); + } + }; +} + +class AppsPageState extends State { + AppsFilter filter = AppsFilter(); + final AppsFilter neutralFilter = AppsFilter(); + var updatesOnlyFilter = AppsFilter( + includeUptodate: false, + includeNonInstalled: false, + ); + Set selectedAppIds = {}; + DateTime? refreshingSince; + + bool clearSelected() { + if (selectedAppIds.isNotEmpty) { + setState(() { + selectedAppIds.clear(); + }); + return true; + } + return false; + } + + void selectThese(List apps) { + if (selectedAppIds.isEmpty) { + setState(() { + for (var a in apps) { + selectedAppIds.add(a.id); + } + }); + } + } + + final GlobalKey _refreshIndicatorKey = + GlobalKey(); + + late final ScrollController scrollController = ScrollController(); + + var sourceProvider = SourceProvider(); + + @override + Widget build(BuildContext context) { + var appsProvider = context.watch(); + var settingsProvider = context.watch(); + var listedApps = appsProvider.getAppValues().toList(); + + refresh() { + HapticFeedback.lightImpact(); + setState(() { + refreshingSince = DateTime.now(); + }); + return appsProvider + .checkUpdates() + .catchError((e) { + showError(e is Map ? e['errors'] : e, context); + return []; + }) + .whenComplete(() { + setState(() { + refreshingSince = null; + }); + }); + } + + if (!appsProvider.loadingApps && + appsProvider.apps.isNotEmpty && + settingsProvider.checkJustStarted() && + settingsProvider.checkOnStart) { + _refreshIndicatorKey.currentState?.show(); + } + + selectedAppIds = selectedAppIds + .where((element) => listedApps.map((e) => e.app.id).contains(element)) + .toSet(); + + toggleAppSelected(App app) { + setState(() { + if (selectedAppIds.map((e) => e).contains(app.id)) { + selectedAppIds.removeWhere((a) => a == app.id); + } else { + selectedAppIds.add(app.id); + } + }); + } + + listedApps = listedApps.where((app) { + if (app.app.installedVersion == app.app.latestVersion && + !(filter.includeUptodate)) { + return false; + } + if (app.app.installedVersion == null && !(filter.includeNonInstalled)) { + return false; + } + if (filter.nameFilter.isNotEmpty || filter.authorFilter.isNotEmpty) { + List nameTokens = filter.nameFilter + .split(' ') + .where((element) => element.trim().isNotEmpty) + .toList(); + List authorTokens = filter.authorFilter + .split(' ') + .where((element) => element.trim().isNotEmpty) + .toList(); + + for (var t in nameTokens) { + if (!app.name.toLowerCase().contains(t.toLowerCase())) { + return false; + } + } + for (var t in authorTokens) { + if (!app.author.toLowerCase().contains(t.toLowerCase())) { + return false; + } + } + } + if (filter.idFilter.isNotEmpty) { + if (!app.app.id.contains(filter.idFilter)) { + return false; + } + } + if (filter.categoryFilter.isNotEmpty && + filter.categoryFilter + .intersection(app.app.categories.toSet()) + .isEmpty) { + return false; + } + if (filter.sourceFilter.isNotEmpty && + sourceProvider + .getSource( + app.app.url, + overrideSource: app.app.overrideSource, + ) + .runtimeType + .toString() != + filter.sourceFilter) { + return false; + } + return true; + }).toList(); + + listedApps.sort((a, b) { + int result = 0; + if (settingsProvider.sortColumn == SortColumnSettings.authorName) { + result = ((a.author + a.name).toLowerCase()).compareTo( + (b.author + b.name).toLowerCase(), + ); + } else if (settingsProvider.sortColumn == SortColumnSettings.nameAuthor) { + result = ((a.name + a.author).toLowerCase()).compareTo( + (b.name + b.author).toLowerCase(), + ); + } else if (settingsProvider.sortColumn == + SortColumnSettings.releaseDate) { + result = + (a.app.releaseDate)?.compareTo( + b.app.releaseDate ?? DateTime.fromMicrosecondsSinceEpoch(0), + ) ?? + 0; + } + return result; + }); + + if (settingsProvider.sortOrder == SortOrderSettings.descending) { + listedApps = listedApps.reversed.toList(); + } + + var existingUpdates = appsProvider.findExistingUpdates(installedOnly: true); + + var existingUpdateIdsAllOrSelected = existingUpdates + .where( + (element) => selectedAppIds.isEmpty + ? listedApps.where((a) => a.app.id == element).isNotEmpty + : selectedAppIds.map((e) => e).contains(element), + ) + .toList(); + var newInstallIdsAllOrSelected = appsProvider + .findExistingUpdates(nonInstalledOnly: true) + .where( + (element) => selectedAppIds.isEmpty + ? listedApps.where((a) => a.app.id == element).isNotEmpty + : selectedAppIds.map((e) => e).contains(element), + ) + .toList(); + + List trackOnlyUpdateIdsAllOrSelected = []; + existingUpdateIdsAllOrSelected = existingUpdateIdsAllOrSelected.where((id) { + if (appsProvider.apps[id]!.app.additionalSettings['trackOnly'] == true) { + trackOnlyUpdateIdsAllOrSelected.add(id); + return false; + } + return true; + }).toList(); + newInstallIdsAllOrSelected = newInstallIdsAllOrSelected.where((id) { + if (appsProvider.apps[id]!.app.additionalSettings['trackOnly'] == true) { + trackOnlyUpdateIdsAllOrSelected.add(id); + return false; + } + return true; + }).toList(); + + if (settingsProvider.pinUpdates) { + var temp = []; + listedApps = listedApps.where((sa) { + if (existingUpdates.contains(sa.app.id)) { + temp.add(sa); + return false; + } + return true; + }).toList(); + listedApps = [...temp, ...listedApps]; + } + + if (settingsProvider.buryNonInstalled) { + var temp = []; + listedApps = listedApps.where((sa) { + if (sa.app.installedVersion == null) { + temp.add(sa); + return false; + } + return true; + }).toList(); + listedApps = [...listedApps, ...temp]; + } + + var tempPinned = []; + var tempNotPinned = []; + for (var a in listedApps) { + if (a.app.pinned) { + tempPinned.add(a); + } else { + tempNotPinned.add(a); + } + } + listedApps = [...tempPinned, ...tempNotPinned]; + + List getListedCategories() { + var temp = listedApps.map( + (e) => e.app.categories.isNotEmpty ? e.app.categories : [null], + ); + return temp.isNotEmpty + ? { + ...temp.reduce((v, e) => [...v, ...e]), + }.toList() + : []; + } + + var listedCategories = getListedCategories(); + listedCategories.sort((a, b) { + return a != null && b != null + ? a.toLowerCase().compareTo(b.toLowerCase()) + : a == null + ? 1 + : -1; + }); + + Set selectedApps = listedApps + .map((e) => e.app) + .where((a) => selectedAppIds.contains(a.id)) + .toSet(); + + getLoadingWidgets() { + return [ + if (listedApps.isEmpty) + SliverFillRemaining( + child: Center( + child: Text( + appsProvider.apps.isEmpty + ? appsProvider.loadingApps + ? tr('pleaseWait') + : tr('noApps') + : tr('noAppsForFilter'), + style: Theme.of(context).textTheme.headlineMedium, + textAlign: TextAlign.center, + ), + ), + ), + if (refreshingSince != null || appsProvider.loadingApps) + SliverToBoxAdapter( + child: LinearProgressIndicator( + value: appsProvider.loadingApps + ? null + : appsProvider + .getAppValues() + .where( + (element) => + !(element.app.lastUpdateCheck?.isBefore( + refreshingSince!, + ) ?? + true), + ) + .length / + (appsProvider.apps.isNotEmpty + ? appsProvider.apps.length + : 1), + ), + ), + ]; + } + + getUpdateButton(int appIndex) { + return IconButton( + visualDensity: VisualDensity.compact, + color: Theme.of(context).colorScheme.primary, + tooltip: + listedApps[appIndex].app.additionalSettings['trackOnly'] == true + ? tr('markUpdated') + : tr('update'), + onPressed: appsProvider.areDownloadsRunning() + ? null + : () { + appsProvider + .downloadAndInstallLatestApps([ + listedApps[appIndex].app.id, + ], globalNavigatorKey.currentContext) + .catchError((e) { + showError(e, context); + return []; + }); + }, + icon: Icon( + listedApps[appIndex].app.additionalSettings['trackOnly'] == true + ? Icons.check_circle_outline + : Icons.install_mobile, + ), + ); + } + + getAppIcon(int appIndex) { + return GestureDetector( + child: FutureBuilder( + future: appsProvider.updateAppIcon(listedApps[appIndex].app.id), + builder: (ctx, val) { + return listedApps[appIndex].icon != null + ? Image.memory( + listedApps[appIndex].icon!, + gaplessPlayback: true, + opacity: AlwaysStoppedAnimation( + listedApps[appIndex].installedInfo == null ? 0.6 : 1, + ), + ) + : Row( + mainAxisSize: MainAxisSize.min, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Transform( + alignment: Alignment.center, + transform: Matrix4.rotationZ(0.31), + child: Padding( + padding: const EdgeInsets.all(15), + child: Image( + image: const AssetImage( + 'assets/graphics/icon_small.png', + ), + color: + Theme.of(context).brightness == Brightness.dark + ? Colors.white.withOpacity(0.4) + : Colors.white.withOpacity(0.3), + colorBlendMode: BlendMode.modulate, + gaplessPlayback: true, + ), + ), + ), + ], + ); + }, + ), + onDoubleTap: () { + pm.openApp(listedApps[appIndex].app.id); + }, + onLongPress: () { + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => AppPage( + appId: listedApps[appIndex].app.id, + showOppositeOfPreferredView: true, + ), + ), + ); + }, + ); + } + + getVersionText(int appIndex) { + return listedApps[appIndex].app.installedVersion ?? tr('notInstalled'); + } + + getChangesButtonString(int appIndex, bool hasChangeLogFn) { + return listedApps[appIndex].app.releaseDate == null + ? hasChangeLogFn + ? tr('changes') + : '' + : DateFormat( + 'yyyy-MM-dd', + ).format(listedApps[appIndex].app.releaseDate!.toLocal()); + } + + getSingleAppHorizTile(int index) { + var showChangesFn = getChangeLogFn(context, listedApps[index].app); + var hasUpdate = + listedApps[index].app.installedVersion != null && + listedApps[index].app.installedVersion != + listedApps[index].app.latestVersion; + Widget trailingRow = Row( + mainAxisSize: MainAxisSize.min, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + hasUpdate ? getUpdateButton(index) : const SizedBox.shrink(), + hasUpdate ? const SizedBox(width: 5) : const SizedBox.shrink(), + GestureDetector( + onTap: showChangesFn, + child: Container( + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(12), + color: + settingsProvider.highlightTouchTargets && + showChangesFn != null + ? (Theme.of(context).brightness == Brightness.light + ? Theme.of(context).primaryColor + : Theme.of(context).primaryColorLight) + .withAlpha( + Theme.of(context).brightness == Brightness.light + ? 20 + : 40, + ) + : null, + ), + padding: settingsProvider.highlightTouchTargets + ? const EdgeInsetsDirectional.fromSTEB(12, 0, 12, 0) + : const EdgeInsetsDirectional.fromSTEB(24, 0, 0, 0), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.end, + children: [ + Row( + mainAxisSize: MainAxisSize.min, + children: [ + Container( + constraints: BoxConstraints( + maxWidth: MediaQuery.of(context).size.width / 4, + ), + child: Text( + getVersionText(index), + overflow: TextOverflow.ellipsis, + textAlign: TextAlign.end, + style: isVersionPseudo(listedApps[index].app) + ? TextStyle(fontStyle: FontStyle.italic) + : null, + ), + ), + ], + ), + Row( + mainAxisSize: MainAxisSize.min, + children: [ + Text( + getChangesButtonString(index, showChangesFn != null), + style: TextStyle( + fontStyle: FontStyle.italic, + decoration: showChangesFn != null + ? TextDecoration.underline + : TextDecoration.none, + ), + ), + ], + ), + ], + ), + ), + ), + ], + ); + + var transparent = Theme.of( + context, + ).colorScheme.surface.withAlpha(0).value; + List stops = [ + ...listedApps[index].app.categories.asMap().entries.map( + (e) => + ((e.key / (listedApps[index].app.categories.length - 1)) - + 0.0001), + ), + 1, + ]; + if (stops.length == 2) { + stops[0] = 0.9999; + } + return Container( + decoration: BoxDecoration( + gradient: LinearGradient( + stops: stops, + begin: const Alignment(-1, 0), + end: const Alignment(-0.97, 0), + colors: [ + ...listedApps[index].app.categories.map( + (e) => Color( + settingsProvider.categories[e] ?? transparent, + ).withAlpha(255), + ), + Color(transparent), + ], + ), + ), + child: ListTile( + tileColor: listedApps[index].app.pinned + ? Colors.grey.withOpacity(0.1) + : Colors.transparent, + selectedTileColor: Theme.of(context).colorScheme.primary.withOpacity( + listedApps[index].app.pinned ? 0.2 : 0.1, + ), + selected: selectedAppIds + .map((e) => e) + .contains(listedApps[index].app.id), + onLongPress: () { + toggleAppSelected(listedApps[index].app); + }, + leading: getAppIcon(index), + title: Text( + maxLines: 1, + listedApps[index].name, + style: TextStyle( + overflow: TextOverflow.ellipsis, + fontWeight: listedApps[index].app.pinned + ? FontWeight.bold + : FontWeight.normal, + ), + ), + subtitle: Text( + tr('byX', args: [listedApps[index].author]), + maxLines: 1, + style: TextStyle( + overflow: TextOverflow.ellipsis, + fontWeight: listedApps[index].app.pinned + ? FontWeight.bold + : FontWeight.normal, + ), + ), + trailing: listedApps[index].downloadProgress != null + ? SizedBox( + child: Text( + listedApps[index].downloadProgress! >= 0 + ? tr( + 'percentProgress', + args: [ + listedApps[index].downloadProgress! + .toInt() + .toString(), + ], + ) + : tr('installing'), + textAlign: (listedApps[index].downloadProgress! >= 0) + ? TextAlign.start + : TextAlign.end, + ), + ) + : trailingRow, + onTap: () { + if (selectedAppIds.isNotEmpty) { + toggleAppSelected(listedApps[index].app); + } else { + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => + AppPage(appId: listedApps[index].app.id), + ), + ); + } + }, + ), + ); + } + + getCategoryCollapsibleTile(int index) { + var tiles = listedApps + .asMap() + .entries + .where( + (e) => + e.value.app.categories.contains(listedCategories[index]) || + e.value.app.categories.isEmpty && + listedCategories[index] == null, + ) + .map((e) => getSingleAppHorizTile(e.key)) + .toList(); + + capFirstChar(String str) => str[0].toUpperCase() + str.substring(1); + return ExpansionTile( + initiallyExpanded: true, + title: Text( + capFirstChar(listedCategories[index] ?? tr('noCategory')), + style: const TextStyle(fontWeight: FontWeight.bold), + ), + controlAffinity: ListTileControlAffinity.leading, + trailing: Text(tiles.length.toString()), + children: tiles, + ); + } + + getSelectAllButton() { + return selectedAppIds.isEmpty + ? TextButton.icon( + style: const ButtonStyle(visualDensity: VisualDensity.compact), + onPressed: () { + selectThese(listedApps.map((e) => e.app).toList()); + }, + icon: Icon( + Icons.select_all_outlined, + color: Theme.of(context).colorScheme.primary, + ), + label: Text(listedApps.length.toString()), + ) + : TextButton.icon( + style: const ButtonStyle(visualDensity: VisualDensity.compact), + onPressed: () { + selectedAppIds.isEmpty + ? selectThese(listedApps.map((e) => e.app).toList()) + : clearSelected(); + }, + icon: Icon( + selectedAppIds.isEmpty + ? Icons.select_all_outlined + : Icons.deselect_outlined, + color: Theme.of(context).colorScheme.primary, + ), + label: Text(selectedAppIds.length.toString()), + ); + } + + getMassObtainFunction() { + return appsProvider.areDownloadsRunning() || + (existingUpdateIdsAllOrSelected.isEmpty && + newInstallIdsAllOrSelected.isEmpty && + trackOnlyUpdateIdsAllOrSelected.isEmpty) + ? null + : () { + HapticFeedback.heavyImpact(); + List formItems = []; + if (existingUpdateIdsAllOrSelected.isNotEmpty) { + formItems.add( + GeneratedFormSwitch( + 'updates', + label: tr( + 'updateX', + args: [ + plural( + 'apps', + existingUpdateIdsAllOrSelected.length, + ).toLowerCase(), + ], + ), + defaultValue: true, + ), + ); + } + if (newInstallIdsAllOrSelected.isNotEmpty) { + formItems.add( + GeneratedFormSwitch( + 'installs', + label: tr( + 'installX', + args: [ + plural( + 'apps', + newInstallIdsAllOrSelected.length, + ).toLowerCase(), + ], + ), + defaultValue: existingUpdateIdsAllOrSelected.isEmpty, + ), + ); + } + if (trackOnlyUpdateIdsAllOrSelected.isNotEmpty) { + formItems.add( + GeneratedFormSwitch( + 'trackonlies', + label: tr( + 'markXTrackOnlyAsUpdated', + args: [ + plural('apps', trackOnlyUpdateIdsAllOrSelected.length), + ], + ), + defaultValue: + existingUpdateIdsAllOrSelected.isEmpty && + newInstallIdsAllOrSelected.isEmpty, + ), + ); + } + showDialog?>( + context: context, + builder: (BuildContext ctx) { + var totalApps = + existingUpdateIdsAllOrSelected.length + + newInstallIdsAllOrSelected.length + + trackOnlyUpdateIdsAllOrSelected.length; + return GeneratedFormModal( + title: tr( + 'changeX', + args: [plural('apps', totalApps).toLowerCase()], + ), + items: formItems.map((e) => [e]).toList(), + initValid: true, + ); + }, + ).then((values) async { + if (values != null) { + if (values.isEmpty) { + values = getDefaultValuesFromFormItems([formItems]); + } + bool shouldInstallUpdates = values['updates'] == true; + bool shouldInstallNew = values['installs'] == true; + bool shouldMarkTrackOnlies = values['trackonlies'] == true; + List toInstall = []; + if (shouldInstallUpdates) { + toInstall.addAll(existingUpdateIdsAllOrSelected); + } + if (shouldInstallNew) { + toInstall.addAll(newInstallIdsAllOrSelected); + } + if (shouldMarkTrackOnlies) { + toInstall.addAll(trackOnlyUpdateIdsAllOrSelected); + } + appsProvider + .downloadAndInstallLatestApps( + toInstall, + globalNavigatorKey.currentContext, + ) + .catchError((e) { + showError(e, context); + return []; + }) + .then((value) { + if (value.isNotEmpty && shouldInstallUpdates) { + showMessage(tr('appsUpdated'), context); + } + }); + } + }); + }; + } + + launchCategorizeDialog() { + return () async { + try { + Set? preselected; + var showPrompt = false; + for (var element in selectedApps) { + var currentCats = element.categories.toSet(); + if (preselected == null) { + preselected = currentCats; + } else { + if (!settingsProvider.setEqual(currentCats, preselected)) { + showPrompt = true; + break; + } + } + } + var cont = true; + if (showPrompt) { + cont = + await showDialog?>( + context: context, + builder: (BuildContext ctx) { + return GeneratedFormModal( + title: tr('categorize'), + items: const [], + initValid: true, + message: tr('selectedCategorizeWarning'), + ); + }, + ) != + null; + } + if (cont) { + // ignore: use_build_context_synchronously + await showDialog?>( + context: context, + builder: (BuildContext ctx) { + return GeneratedFormModal( + title: tr('categorize'), + items: const [], + initValid: true, + singleNullReturnButton: tr('continue'), + additionalWidgets: [ + CategoryEditorSelector( + preselected: !showPrompt ? preselected ?? {} : {}, + showLabelWhenNotEmpty: false, + onSelected: (categories) { + appsProvider.saveApps( + selectedApps.map((e) { + e.categories = categories; + return e; + }).toList(), + ); + }, + ), + ], + ); + }, + ); + } + } catch (err) { + showError(err, context); + } + }; + } + + showMassMarkDialog() { + return showDialog( + context: context, + builder: (BuildContext ctx) { + return AlertDialog( + title: Text( + tr( + 'markXSelectedAppsAsUpdated', + args: [selectedAppIds.length.toString()], + ), + ), + content: Text( + tr('onlyWorksWithNonVersionDetectApps'), + style: const TextStyle( + fontWeight: FontWeight.bold, + fontStyle: FontStyle.italic, + ), + ), + actions: [ + TextButton( + onPressed: () { + Navigator.of(context).pop(); + }, + child: Text(tr('no')), + ), + TextButton( + onPressed: () { + HapticFeedback.selectionClick(); + appsProvider.saveApps( + selectedApps.map((a) { + if (a.installedVersion != null && + !appsProvider.isVersionDetectionPossible( + appsProvider.apps[a.id], + )) { + a.installedVersion = a.latestVersion; + } + return a; + }).toList(), + ); + + Navigator.of(context).pop(); + }, + child: Text(tr('yes')), + ), + ], + ); + }, + ).whenComplete(() { + Navigator.of(context).pop(); + }); + } + + pinSelectedApps() { + var pinStatus = selectedApps.where((element) => element.pinned).isEmpty; + appsProvider.saveApps( + selectedApps.map((e) { + e.pinned = pinStatus; + return e; + }).toList(), + ); + Navigator.of(context).pop(); + } + + showMoreOptionsDialog() { + return showDialog( + context: context, + builder: (BuildContext ctx) { + return AlertDialog( + scrollable: true, + content: Padding( + padding: const EdgeInsets.only(top: 6), + child: Column( + mainAxisAlignment: MainAxisAlignment.spaceAround, + children: [ + TextButton( + onPressed: pinSelectedApps, + child: Text( + selectedApps.where((element) => element.pinned).isEmpty + ? tr('pinToTop') + : tr('unpinFromTop'), + textAlign: TextAlign.center, + ), + ), + const Divider(), + TextButton( + onPressed: () { + String urls = ''; + for (var a in selectedApps) { + urls += '${a.url}\n'; + } + urls = urls.substring(0, urls.length - 1); + Share.share( + urls, + subject: 'Obtainium - ${tr('appsString')}', + ); + Navigator.of(context).pop(); + }, + child: Text( + tr('shareSelectedAppURLs'), + textAlign: TextAlign.center, + ), + ), + const Divider(), + TextButton( + onPressed: selectedAppIds.isEmpty + ? null + : () { + String urls = ''; + for (var a in selectedApps) { + urls += + 'https://apps.obtainium.imranr.dev/redirect?r=obtainium://app/${Uri.encodeComponent(jsonEncode({'id': a.id, 'url': a.url, 'author': a.author, 'name': a.name, 'preferredApkIndex': a.preferredApkIndex, 'additionalSettings': jsonEncode(a.additionalSettings), 'overrideSource': a.overrideSource}))}\n\n'; + } + Share.share( + urls, + subject: 'Obtainium - ${tr('appsString')}', + ); + }, + child: Text( + tr('shareAppConfigLinks'), + textAlign: TextAlign.center, + ), + ), + const Divider(), + TextButton( + onPressed: selectedAppIds.isEmpty + ? null + : () { + var encoder = const JsonEncoder.withIndent(" "); + var exportJSON = encoder.convert( + appsProvider.generateExportJSON( + appIds: selectedApps.map((e) => e.id).toList(), + overrideExportSettings: 0, + ), + ); + String fn = + '${tr('obtainiumExportHyphenatedLowercase')}-${DateTime.now().toIso8601String().replaceAll(':', '-')}-count-${selectedApps.length}'; + XFile f = XFile.fromData( + Uint8List.fromList(utf8.encode(exportJSON)), + mimeType: 'application/json', + name: fn, + ); + Share.shareXFiles( + [f], + fileNameOverrides: ['$fn.json'], + ); + }, + child: Text( + '${tr('share')} - ${tr('obtainiumExport')}', + textAlign: TextAlign.center, + ), + ), + const Divider(), + TextButton( + onPressed: () { + appsProvider + .downloadAppAssets( + selectedApps.map((e) => e.id).toList(), + globalNavigatorKey.currentContext ?? context, + ) + .catchError( + // ignore: invalid_return_type_for_catch_error + (e) => showError( + e, + globalNavigatorKey.currentContext ?? context, + ), + ); + Navigator.of(context).pop(); + }, + child: Text( + tr( + 'downloadX', + args: [lowerCaseIfEnglish(tr('releaseAsset'))], + ), + textAlign: TextAlign.center, + ), + ), + const Divider(), + TextButton( + onPressed: appsProvider.areDownloadsRunning() + ? null + : showMassMarkDialog, + child: Text( + tr('markSelectedAppsUpdated'), + textAlign: TextAlign.center, + ), + ), + ], + ), + ), + ); + }, + ); + } + + getMainBottomButtons() { + return [ + IconButton( + visualDensity: VisualDensity.compact, + onPressed: getMassObtainFunction(), + tooltip: selectedAppIds.isEmpty + ? tr('installUpdateApps') + : tr('installUpdateSelectedApps'), + icon: const Icon(Icons.file_download_outlined), + ), + IconButton( + visualDensity: VisualDensity.compact, + onPressed: selectedAppIds.isEmpty + ? null + : () { + appsProvider.removeAppsWithModal( + context, + selectedApps.toList(), + ); + }, + tooltip: tr('removeSelectedApps'), + icon: const Icon(Icons.delete_outline_outlined), + ), + IconButton( + visualDensity: VisualDensity.compact, + onPressed: selectedAppIds.isEmpty ? null : launchCategorizeDialog(), + tooltip: tr('categorize'), + icon: const Icon(Icons.category_outlined), + ), + IconButton( + visualDensity: VisualDensity.compact, + onPressed: selectedAppIds.isEmpty ? null : showMoreOptionsDialog, + tooltip: tr('more'), + icon: const Icon(Icons.more_horiz), + ), + ]; + } + + showFilterDialog() async { + var values = await showDialog?>( + context: context, + builder: (BuildContext ctx) { + var vals = filter.toFormValuesMap(); + return GeneratedFormModal( + initValid: true, + title: tr('filterApps'), + items: [ + [ + GeneratedFormTextField( + 'appName', + label: tr('appName'), + required: false, + defaultValue: vals['appName'], + ), + GeneratedFormTextField( + 'author', + label: tr('author'), + required: false, + defaultValue: vals['author'], + ), + ], + [ + GeneratedFormTextField( + 'appId', + label: tr('appId'), + required: false, + defaultValue: vals['appId'], + ), + ], + [ + GeneratedFormSwitch( + 'upToDateApps', + label: tr('upToDateApps'), + defaultValue: vals['upToDateApps'], + ), + ], + [ + GeneratedFormSwitch( + 'nonInstalledApps', + label: tr('nonInstalledApps'), + defaultValue: vals['nonInstalledApps'], + ), + ], + [ + GeneratedFormDropdown( + 'sourceFilter', + label: tr('appSource'), + defaultValue: filter.sourceFilter, + [ + MapEntry('', tr('none')), + ...sourceProvider.sources.map( + (e) => MapEntry(e.runtimeType.toString(), e.name), + ), + ], + ), + ], + ], + additionalWidgets: [ + const SizedBox(height: 16), + CategoryEditorSelector( + preselected: filter.categoryFilter, + onSelected: (categories) { + filter.categoryFilter = categories.toSet(); + }, + ), + ], + ); + }, + ); + if (values != null) { + setState(() { + filter.setFormValuesFromMap(values); + }); + } + } + + getFilterButtonsRow() { + var isFilterOff = filter.isIdenticalTo(neutralFilter, settingsProvider); + return Row( + children: [ + getSelectAllButton(), + IconButton( + color: Theme.of(context).colorScheme.primary, + style: const ButtonStyle(visualDensity: VisualDensity.compact), + tooltip: isFilterOff + ? tr('filterApps') + : '${tr('filter')} - ${tr('remove')}', + onPressed: isFilterOff + ? showFilterDialog + : () { + setState(() { + filter = AppsFilter(); + }); + }, + icon: Icon( + isFilterOff ? Icons.search_rounded : Icons.search_off_rounded, + ), + ), + const SizedBox(width: 10), + const VerticalDivider(), + Expanded( + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + children: getMainBottomButtons(), + ), + ), + ], + ); + } + + getDisplayedList() { + return settingsProvider.groupByCategory && + !(listedCategories.isEmpty || + (listedCategories.length == 1 && listedCategories[0] == null)) + ? SliverList( + delegate: SliverChildBuilderDelegate(( + BuildContext context, + int index, + ) { + return getCategoryCollapsibleTile(index); + }, childCount: listedCategories.length), + ) + : SliverList( + delegate: SliverChildBuilderDelegate(( + BuildContext context, + int index, + ) { + return getSingleAppHorizTile(index); + }, childCount: listedApps.length), + ); + } + + return Scaffold( + backgroundColor: Theme.of(context).colorScheme.surface, + body: RefreshIndicator( + key: _refreshIndicatorKey, + onRefresh: refresh, + child: Scrollbar( + interactive: true, + controller: scrollController, + child: CustomScrollView( + physics: const AlwaysScrollableScrollPhysics(), + controller: scrollController, + slivers: [ + CustomAppBar(title: tr('appsString')), + ...getLoadingWidgets(), + getDisplayedList(), + ], + ), + ), + ), + persistentFooterButtons: appsProvider.apps.isEmpty + ? null + : [getFilterButtonsRow()], + ); + } +} + +class AppsFilter { + late String nameFilter; + late String authorFilter; + late String idFilter; + late bool includeUptodate; + late bool includeNonInstalled; + late Set categoryFilter; + late String sourceFilter; + + AppsFilter({ + this.nameFilter = '', + this.authorFilter = '', + this.idFilter = '', + this.includeUptodate = true, + this.includeNonInstalled = true, + this.categoryFilter = const {}, + this.sourceFilter = '', + }); + + Map toFormValuesMap() { + return { + 'appName': nameFilter, + 'author': authorFilter, + 'appId': idFilter, + 'upToDateApps': includeUptodate, + 'nonInstalledApps': includeNonInstalled, + 'sourceFilter': sourceFilter, + }; + } + + void setFormValuesFromMap(Map values) { + nameFilter = values['appName']!; + authorFilter = values['author']!; + idFilter = values['appId']!; + includeUptodate = values['upToDateApps']; + includeNonInstalled = values['nonInstalledApps']; + sourceFilter = values['sourceFilter']; + } + + bool isIdenticalTo(AppsFilter other, SettingsProvider settingsProvider) => + authorFilter.trim() == other.authorFilter.trim() && + nameFilter.trim() == other.nameFilter.trim() && + idFilter.trim() == other.idFilter.trim() && + includeUptodate == other.includeUptodate && + includeNonInstalled == other.includeNonInstalled && + settingsProvider.setEqual(categoryFilter, other.categoryFilter) && + sourceFilter.trim() == other.sourceFilter.trim(); +} diff --git a/lib/pages/home.dart b/lib/pages/home.dart new file mode 100644 index 0000000..1bb5802 --- /dev/null +++ b/lib/pages/home.dart @@ -0,0 +1,351 @@ +import 'dart:async'; + +import 'package:android_intent_plus/android_intent.dart'; +import 'package:animations/animations.dart'; +import 'package:app_links/app_links.dart'; +import 'package:easy_localization/easy_localization.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; +import 'package:obtainium/components/generated_form_modal.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/pages/add_app.dart'; +import 'package:obtainium/pages/apps.dart'; +import 'package:obtainium/pages/import_export.dart'; +import 'package:obtainium/pages/settings.dart'; +import 'package:obtainium/providers/apps_provider.dart'; +import 'package:obtainium/providers/settings_provider.dart'; +import 'package:provider/provider.dart'; +import 'package:url_launcher/url_launcher_string.dart'; + +class HomePage extends StatefulWidget { + const HomePage({super.key}); + + @override + State createState() => _HomePageState(); +} + +class NavigationPageItem { + late String title; + late IconData icon; + late Widget widget; + + NavigationPageItem(this.title, this.icon, this.widget); +} + +class _HomePageState extends State { + List selectedIndexHistory = []; + bool isReversing = false; + int prevAppCount = -1; + bool prevIsLoading = true; + late AppLinks _appLinks; + StreamSubscription? _linkSubscription; + bool isLinkActivity = false; + + List pages = [ + NavigationPageItem( + tr('appsString'), + Icons.apps, + AppsPage(key: GlobalKey()), + ), + NavigationPageItem( + tr('addApp'), + Icons.add, + AddAppPage(key: GlobalKey()), + ), + NavigationPageItem( + tr('importExport'), + Icons.import_export, + const ImportExportPage(), + ), + NavigationPageItem(tr('settings'), Icons.settings, const SettingsPage()), + ]; + + @override + void initState() { + super.initState(); + initDeepLinks(); + WidgetsBinding.instance.addPostFrameCallback((_) async { + var sp = context.read(); + if (!sp.welcomeShown) { + await showDialog( + context: context, + builder: (BuildContext ctx) { + return AlertDialog( + title: Text(tr('welcome')), + content: Column( + mainAxisSize: MainAxisSize.min, + spacing: 20, + children: [ + Text(tr('documentationLinksNote')), + GestureDetector( + onTap: () { + launchUrlString( + 'https://github.com/ImranR98/Obtainium/blob/main/README.md', + mode: LaunchMode.externalApplication, + ); + }, + child: Text( + 'https://github.com/ImranR98/Obtainium/blob/main/README.md', + style: const TextStyle( + decoration: TextDecoration.underline, + fontWeight: FontWeight.bold, + ), + ), + ), + Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text(tr('batteryOptimizationNote')), + GestureDetector( + onTap: () { + final intent = AndroidIntent( + action: + 'android.settings.IGNORE_BATTERY_OPTIMIZATION_SETTINGS', + package: + obtainiumId, // Replace with your app's package name + ); + + intent.launch(); + }, + child: Text( + tr('settings'), + style: const TextStyle( + decoration: TextDecoration.underline, + fontWeight: FontWeight.bold, + ), + ), + ), + ], + ), + ], + ), + actions: [ + TextButton( + onPressed: () { + sp.welcomeShown = true; + Navigator.of(context).pop(null); + }, + child: Text(tr('ok')), + ), + ], + ); + }, + ); + } + }); + } + + Future initDeepLinks() async { + _appLinks = AppLinks(); + + goToAddApp(String data) async { + switchToPage(1); + while ((pages[1].widget.key as GlobalKey?) + ?.currentState == + null) { + await Future.delayed(const Duration(microseconds: 1)); + } + (pages[1].widget.key as GlobalKey?)?.currentState + ?.linkFn(data); + } + + interpretLink(Uri uri) async { + isLinkActivity = true; + var action = uri.host; + var data = uri.path.length > 1 ? uri.path.substring(1) : ""; + try { + if (action == 'add') { + await goToAddApp(data); + } else if (action == 'app' || action == 'apps') { + var dataStr = Uri.decodeComponent(data); + if (await showDialog( + context: context, + builder: (BuildContext ctx) { + return GeneratedFormModal( + title: tr( + 'importX', + args: [ + (action == 'app' ? tr('app') : tr('appsString')) + .toLowerCase(), + ], + ), + items: const [], + additionalWidgets: [ + ExpansionTile( + title: const Text('Raw JSON'), + children: [ + Text( + dataStr, + style: const TextStyle(fontFamily: 'monospace'), + ), + ], + ), + ], + ); + }, + ) != + null) { + // ignore: use_build_context_synchronously + var appsProvider = context.read(); + var result = await appsProvider.import( + action == 'app' + ? '{ "apps": [$dataStr] }' + : '{ "apps": $dataStr }', + ); + // ignore: use_build_context_synchronously + showMessage( + tr( + 'importedX', + args: [plural('apps', result.key.length).toLowerCase()], + ), + context, + ); + } + } else { + throw ObtainiumError(tr('unknown')); + } + } catch (e) { + showError(e, context); + } + } + + // Check initial link if app was in cold state (terminated) + final appLink = await _appLinks.getInitialLink(); + var initLinked = false; + if (appLink != null) { + await interpretLink(appLink); + initLinked = true; + } + // Handle link when app is in warm state (front or background) + _linkSubscription = _appLinks.uriLinkStream.listen((uri) async { + if (!initLinked) { + await interpretLink(uri); + } else { + initLinked = false; + } + }); + } + + void setIsReversing(int targetIndex) { + bool reversing = + selectedIndexHistory.isNotEmpty && + selectedIndexHistory.last > targetIndex; + setState(() { + isReversing = reversing; + }); + } + + Future switchToPage(int index) async { + setIsReversing(index); + if (index == 0) { + while ((pages[0].widget.key as GlobalKey).currentState != + null) { + // Avoid duplicate GlobalKey error + await Future.delayed(const Duration(microseconds: 1)); + } + setState(() { + selectedIndexHistory.clear(); + }); + } else if (selectedIndexHistory.isEmpty || + (selectedIndexHistory.isNotEmpty && + selectedIndexHistory.last != index)) { + setState(() { + int existingInd = selectedIndexHistory.indexOf(index); + if (existingInd >= 0) { + selectedIndexHistory.removeAt(existingInd); + } + selectedIndexHistory.add(index); + }); + } + } + + @override + Widget build(BuildContext context) { + AppsProvider appsProvider = context.watch(); + SettingsProvider settingsProvider = context.watch(); + + if (!prevIsLoading && + prevAppCount >= 0 && + appsProvider.apps.length > prevAppCount && + selectedIndexHistory.isNotEmpty && + selectedIndexHistory.last == 1 && + !isLinkActivity) { + switchToPage(0); + } + prevAppCount = appsProvider.apps.length; + prevIsLoading = appsProvider.loadingApps; + + return WillPopScope( + child: Scaffold( + backgroundColor: Theme.of(context).colorScheme.surface, + body: PageTransitionSwitcher( + duration: Duration( + milliseconds: settingsProvider.disablePageTransitions ? 0 : 300, + ), + reverse: settingsProvider.reversePageTransitions + ? !isReversing + : isReversing, + transitionBuilder: + ( + Widget child, + Animation animation, + Animation secondaryAnimation, + ) { + return SharedAxisTransition( + animation: animation, + secondaryAnimation: secondaryAnimation, + transitionType: SharedAxisTransitionType.horizontal, + child: child, + ); + }, + child: pages + .elementAt( + selectedIndexHistory.isEmpty ? 0 : selectedIndexHistory.last, + ) + .widget, + ), + bottomNavigationBar: NavigationBar( + destinations: pages + .map( + (e) => + NavigationDestination(icon: Icon(e.icon), label: e.title), + ) + .toList(), + onDestinationSelected: (int index) async { + HapticFeedback.selectionClick(); + switchToPage(index); + }, + selectedIndex: selectedIndexHistory.isEmpty + ? 0 + : selectedIndexHistory.last, + ), + ), + onWillPop: () async { + if (isLinkActivity && + selectedIndexHistory.length == 1 && + selectedIndexHistory.last == 1) { + return true; + } + setIsReversing( + selectedIndexHistory.length >= 2 + ? selectedIndexHistory.reversed.toList()[1] + : 0, + ); + if (selectedIndexHistory.isNotEmpty) { + setState(() { + selectedIndexHistory.removeLast(); + }); + return false; + } + return !(pages[0].widget.key as GlobalKey).currentState! + .clearSelected(); + }, + ); + } + + @override + void dispose() { + super.dispose(); + _linkSubscription?.cancel(); + } +} diff --git a/lib/pages/import_export.dart b/lib/pages/import_export.dart new file mode 100644 index 0000000..1b6d6da --- /dev/null +++ b/lib/pages/import_export.dart @@ -0,0 +1,969 @@ +import 'dart:convert'; +import 'dart:io'; + +import 'package:easy_localization/easy_localization.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; +import 'package:obtainium/app_sources/fdroidrepo.dart'; +import 'package:obtainium/components/custom_app_bar.dart'; +import 'package:obtainium/components/generated_form.dart'; +import 'package:obtainium/components/generated_form_modal.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/providers/apps_provider.dart'; +import 'package:obtainium/providers/settings_provider.dart'; +import 'package:obtainium/providers/source_provider.dart'; +import 'package:provider/provider.dart'; +import 'package:file_picker/file_picker.dart'; +import 'package:url_launcher/url_launcher_string.dart'; + +class ImportExportPage extends StatefulWidget { + const ImportExportPage({super.key}); + + @override + State createState() => _ImportExportPageState(); +} + +class _ImportExportPageState extends State { + bool importInProgress = false; + + @override + Widget build(BuildContext context) { + SourceProvider sourceProvider = SourceProvider(); + var appsProvider = context.watch(); + var settingsProvider = context.watch(); + + var outlineButtonStyle = ButtonStyle( + shape: WidgetStateProperty.all( + StadiumBorder( + side: BorderSide( + width: 1, + color: Theme.of(context).colorScheme.primary, + ), + ), + ), + ); + + urlListImport({String? initValue, bool overrideInitValid = false}) { + showDialog?>( + context: context, + builder: (BuildContext ctx) { + return GeneratedFormModal( + initValid: overrideInitValid, + title: tr('importFromURLList'), + items: [ + [ + GeneratedFormTextField( + 'appURLList', + defaultValue: initValue ?? '', + label: tr('appURLList'), + max: 7, + additionalValidators: [ + (dynamic value) { + if (value != null && value.isNotEmpty) { + var lines = value.trim().split('\n'); + for (int i = 0; i < lines.length; i++) { + try { + sourceProvider.getSource(lines[i]); + } catch (e) { + return '${tr('line')} ${i + 1}: $e'; + } + } + } + return null; + }, + ], + ), + ], + ], + ); + }, + ).then((values) { + if (values != null) { + var urls = (values['appURLList'] as String).split('\n'); + setState(() { + importInProgress = true; + }); + appsProvider + .addAppsByURL(urls) + .then((errors) { + if (errors.isEmpty) { + showMessage( + tr( + 'importedX', + args: [plural('apps', urls.length).toLowerCase()], + ), + context, + ); + } else { + showDialog( + context: context, + builder: (BuildContext ctx) { + return ImportErrorDialog( + urlsLength: urls.length, + errors: errors, + ); + }, + ); + } + }) + .catchError((e) { + showError(e, context); + }) + .whenComplete(() { + setState(() { + importInProgress = false; + }); + }); + } + }); + } + + runObtainiumExport({bool pickOnly = false}) async { + HapticFeedback.selectionClick(); + appsProvider + .export( + pickOnly: + pickOnly || (await settingsProvider.getExportDir()) == null, + sp: settingsProvider, + ) + .then((String? result) { + if (result != null) { + showMessage(tr('exportedTo', args: [result]), context); + } + }) + .catchError((e) { + showError(e, context); + }); + } + + runObtainiumImport() { + HapticFeedback.selectionClick(); + FilePicker.platform + .pickFiles() + .then((result) { + setState(() { + importInProgress = true; + }); + if (result != null) { + String data = File(result.files.single.path!).readAsStringSync(); + try { + jsonDecode(data); + } catch (e) { + throw ObtainiumError(tr('invalidInput')); + } + appsProvider.import(data).then((value) { + var cats = settingsProvider.categories; + appsProvider.apps.forEach((key, value) { + for (var c in value.app.categories) { + if (!cats.containsKey(c)) { + cats[c] = generateRandomLightColor().value; + } + } + }); + appsProvider.addMissingCategories(settingsProvider); + showMessage( + '${tr('importedX', args: [plural('apps', value.key.length).toLowerCase()])}${value.value ? ' + ${tr('settings').toLowerCase()}' : ''}', + context, + ); + }); + } else { + // User canceled the picker + } + }) + .catchError((e) { + showError(e, context); + }) + .whenComplete(() { + setState(() { + importInProgress = false; + }); + }); + } + + runUrlImport() { + FilePicker.platform.pickFiles().then((result) { + if (result != null) { + urlListImport( + overrideInitValid: true, + initValue: RegExp('https?://[^"]+') + .allMatches(File(result.files.single.path!).readAsStringSync()) + .map((e) => e.input.substring(e.start, e.end)) + .toSet() + .toList() + .where((url) { + try { + sourceProvider.getSource(url); + return true; + } catch (e) { + return false; + } + }) + .join('\n'), + ); + } + }); + } + + runSourceSearch(AppSource source) { + () async { + var values = await showDialog?>( + context: context, + builder: (BuildContext ctx) { + return GeneratedFormModal( + title: tr('searchX', args: [source.name]), + items: [ + [ + GeneratedFormTextField( + 'searchQuery', + label: tr('searchQuery'), + required: source.name != FDroidRepo().name, + ), + ], + ...source.searchQuerySettingFormItems.map((e) => [e]), + [ + GeneratedFormTextField( + 'url', + label: source.hosts.isNotEmpty + ? tr('overrideSource') + : plural('url', 1).substring(2), + defaultValue: source.hosts.isNotEmpty + ? source.hosts[0] + : '', + required: true, + ), + ], + ], + ); + }, + ); + if (values != null) { + setState(() { + importInProgress = true; + }); + if (source.hosts.isEmpty || values['url'] != source.hosts[0]) { + source = sourceProvider.getSource( + values['url'], + overrideSource: source.runtimeType.toString(), + ); + } + var urlsWithDescriptions = await source.search( + values['searchQuery'] as String, + querySettings: values, + ); + if (urlsWithDescriptions.isNotEmpty) { + var selectedUrls = + // ignore: use_build_context_synchronously + await showDialog?>( + context: context, + builder: (BuildContext ctx) { + return SelectionModal( + entries: urlsWithDescriptions, + selectedByDefault: false, + ); + }, + ); + if (selectedUrls != null && selectedUrls.isNotEmpty) { + var errors = await appsProvider.addAppsByURL( + selectedUrls, + sourceOverride: source, + ); + if (errors.isEmpty) { + // ignore: use_build_context_synchronously + showMessage( + tr( + 'importedX', + args: [ + plural('apps', selectedUrls.length).toLowerCase(), + ], + ), + context, + ); + } else { + // ignore: use_build_context_synchronously + showDialog( + context: context, + builder: (BuildContext ctx) { + return ImportErrorDialog( + urlsLength: selectedUrls.length, + errors: errors, + ); + }, + ); + } + } + } else { + throw ObtainiumError(tr('noResults')); + } + } + }() + .catchError((e) { + showError(e, context); + }) + .whenComplete(() { + setState(() { + importInProgress = false; + }); + }); + } + + runMassSourceImport(MassAppUrlSource source) { + () async { + var values = await showDialog?>( + context: context, + builder: (BuildContext ctx) { + return GeneratedFormModal( + title: tr('importX', args: [source.name]), + items: source.requiredArgs + .map((e) => [GeneratedFormTextField(e, label: e)]) + .toList(), + ); + }, + ); + if (values != null) { + setState(() { + importInProgress = true; + }); + var urlsWithDescriptions = await source.getUrlsWithDescriptions( + values.values.map((e) => e.toString()).toList(), + ); + var selectedUrls = + // ignore: use_build_context_synchronously + await showDialog?>( + context: context, + builder: (BuildContext ctx) { + return SelectionModal(entries: urlsWithDescriptions); + }, + ); + if (selectedUrls != null) { + var errors = await appsProvider.addAppsByURL(selectedUrls); + if (errors.isEmpty) { + // ignore: use_build_context_synchronously + showMessage( + tr( + 'importedX', + args: [plural('apps', selectedUrls.length).toLowerCase()], + ), + context, + ); + } else { + // ignore: use_build_context_synchronously + showDialog( + context: context, + builder: (BuildContext ctx) { + return ImportErrorDialog( + urlsLength: selectedUrls.length, + errors: errors, + ); + }, + ); + } + } + } + }() + .catchError((e) { + showError(e, context); + }) + .whenComplete(() { + setState(() { + importInProgress = false; + }); + }); + } + + var sourceStrings = >{}; + sourceProvider.sources.where((e) => e.canSearch).forEach((s) { + sourceStrings[s.name] = [s.name]; + }); + + return Scaffold( + backgroundColor: Theme.of(context).colorScheme.surface, + body: CustomScrollView( + slivers: [ + CustomAppBar(title: tr('importExport')), + SliverFillRemaining( + child: Padding( + padding: const EdgeInsets.symmetric(vertical: 8, horizontal: 16), + child: Column( + crossAxisAlignment: CrossAxisAlignment.stretch, + children: [ + FutureBuilder( + future: settingsProvider.getExportDir(), + builder: (context, snapshot) { + return Column( + children: [ + Row( + children: [ + Expanded( + child: TextButton( + style: outlineButtonStyle, + onPressed: importInProgress + ? null + : () { + runObtainiumExport(pickOnly: true); + }, + child: Text( + tr('pickExportDir'), + textAlign: TextAlign.center, + ), + ), + ), + const SizedBox(width: 16), + Expanded( + child: TextButton( + style: outlineButtonStyle, + onPressed: + importInProgress || snapshot.data == null + ? null + : runObtainiumExport, + child: Text( + tr('obtainiumExport'), + textAlign: TextAlign.center, + ), + ), + ), + ], + ), + const SizedBox(height: 8), + Row( + children: [ + Expanded( + child: TextButton( + style: outlineButtonStyle, + onPressed: importInProgress + ? null + : runObtainiumImport, + child: Text( + tr('obtainiumImport'), + textAlign: TextAlign.center, + ), + ), + ), + ], + ), + if (snapshot.data != null) + Column( + children: [ + const SizedBox(height: 16), + GeneratedForm( + items: [ + [ + GeneratedFormSwitch( + 'autoExportOnChanges', + label: tr('autoExportOnChanges'), + defaultValue: settingsProvider + .autoExportOnChanges, + ), + ], + [ + GeneratedFormDropdown( + 'exportSettings', + [ + MapEntry('0', tr('none')), + MapEntry('1', tr('excludeSecrets')), + MapEntry('2', tr('all')), + ], + label: tr('includeSettings'), + defaultValue: settingsProvider + .exportSettings + .toString(), + ), + ], + ], + onValueChanges: (value, valid, isBuilding) { + if (valid && !isBuilding) { + if (value['autoExportOnChanges'] != + null) { + settingsProvider.autoExportOnChanges = + value['autoExportOnChanges'] == + true; + } + if (value['exportSettings'] != null) { + settingsProvider.exportSettings = + int.parse(value['exportSettings']); + } + } + }, + ), + ], + ), + ], + ); + }, + ), + if (importInProgress) + const Column( + children: [ + SizedBox(height: 14), + LinearProgressIndicator(), + SizedBox(height: 14), + ], + ) + else + Column( + children: [ + SizedBox(height: 32), + Row( + children: [ + Expanded( + child: TextButton( + onPressed: importInProgress + ? null + : () async { + var searchSourceName = + await showDialog?>( + context: context, + builder: (BuildContext ctx) { + return SelectionModal( + title: tr( + 'selectX', + args: [ + tr( + 'source', + ).toLowerCase(), + ], + ), + entries: sourceStrings, + selectedByDefault: false, + onlyOneSelectionAllowed: true, + titlesAreLinks: false, + ); + }, + ) ?? + []; + var searchSource = sourceProvider + .sources + .where( + (e) => searchSourceName.contains( + e.name, + ), + ) + .toList(); + if (searchSource.isNotEmpty) { + runSourceSearch(searchSource[0]); + } + }, + child: Text( + tr( + 'searchX', + args: [lowerCaseIfEnglish(tr('source'))], + ), + ), + ), + ), + ], + ), + const SizedBox(height: 8), + TextButton( + onPressed: importInProgress ? null : urlListImport, + child: Text(tr('importFromURLList')), + ), + const SizedBox(height: 8), + TextButton( + onPressed: importInProgress ? null : runUrlImport, + child: Text(tr('importFromURLsInFile')), + ), + ], + ), + ...sourceProvider.massUrlSources.map( + (source) => Column( + crossAxisAlignment: CrossAxisAlignment.stretch, + children: [ + const SizedBox(height: 8), + TextButton( + onPressed: importInProgress + ? null + : () { + runMassSourceImport(source); + }, + child: Text(tr('importX', args: [source.name])), + ), + ], + ), + ), + const Spacer(), + const Divider(height: 32), + Text( + tr('importedAppsIdDisclaimer'), + textAlign: TextAlign.center, + style: const TextStyle( + fontStyle: FontStyle.italic, + fontSize: 12, + ), + ), + const SizedBox(height: 8), + ], + ), + ), + ), + ], + ), + ); + } +} + +class ImportErrorDialog extends StatefulWidget { + const ImportErrorDialog({ + super.key, + required this.urlsLength, + required this.errors, + }); + + final int urlsLength; + final List> errors; + + @override + State createState() => _ImportErrorDialogState(); +} + +class _ImportErrorDialogState extends State { + @override + Widget build(BuildContext context) { + return AlertDialog( + scrollable: true, + title: Text(tr('importErrors')), + content: Column( + crossAxisAlignment: CrossAxisAlignment.stretch, + children: [ + Text( + tr( + 'importedXOfYApps', + args: [ + (widget.urlsLength - widget.errors.length).toString(), + widget.urlsLength.toString(), + ], + ), + style: Theme.of(context).textTheme.bodyLarge, + ), + const SizedBox(height: 16), + Text( + tr('followingURLsHadErrors'), + style: Theme.of(context).textTheme.bodyLarge, + ), + ...widget.errors.map((e) { + return Column( + crossAxisAlignment: CrossAxisAlignment.stretch, + children: [ + const SizedBox(height: 16), + Text(e[0]), + Text(e[1], style: const TextStyle(fontStyle: FontStyle.italic)), + ], + ); + }), + ], + ), + actions: [ + TextButton( + onPressed: () { + Navigator.of(context).pop(null); + }, + child: Text(tr('ok')), + ), + ], + ); + } +} + +// ignore: must_be_immutable +class SelectionModal extends StatefulWidget { + SelectionModal({ + super.key, + required this.entries, + this.selectedByDefault = true, + this.onlyOneSelectionAllowed = false, + this.titlesAreLinks = true, + this.title, + this.deselectThese = const [], + }); + + String? title; + Map> entries; + bool selectedByDefault; + List deselectThese; + bool onlyOneSelectionAllowed; + bool titlesAreLinks; + + @override + State createState() => _SelectionModalState(); +} + +class _SelectionModalState extends State { + Map>, bool> entrySelections = {}; + String filterRegex = ''; + @override + void initState() { + super.initState(); + for (var entry in widget.entries.entries) { + entrySelections.putIfAbsent( + entry, + () => + widget.selectedByDefault && + !widget.onlyOneSelectionAllowed && + !widget.deselectThese.contains(entry.key), + ); + } + if (widget.selectedByDefault && widget.onlyOneSelectionAllowed) { + selectOnlyOne(widget.entries.entries.first.key); + } + } + + void selectOnlyOne(String url) { + for (var e in entrySelections.keys) { + entrySelections[e] = e.key == url; + } + } + + void selectAll({bool deselect = false}) { + for (var e in entrySelections.keys) { + entrySelections[e] = !deselect; + } + } + + @override + Widget build(BuildContext context) { + Map>, bool> filteredEntrySelections = {}; + entrySelections.forEach((key, value) { + var searchableText = key.value.isEmpty ? key.key : key.value[0]; + if (filterRegex.isEmpty || RegExp(filterRegex).hasMatch(searchableText)) { + filteredEntrySelections.putIfAbsent(key, () => value); + } + }); + if (filterRegex.isNotEmpty && filteredEntrySelections.isEmpty) { + entrySelections.forEach((key, value) { + var searchableText = key.value.isEmpty ? key.key : key.value[0]; + if (filterRegex.isEmpty || + RegExp( + filterRegex, + caseSensitive: false, + ).hasMatch(searchableText)) { + filteredEntrySelections.putIfAbsent(key, () => value); + } + }); + } + getSelectAllButton() { + if (widget.onlyOneSelectionAllowed) { + return SizedBox.shrink(); + } + var noneSelected = entrySelections.values.where((v) => v == true).isEmpty; + return noneSelected + ? TextButton( + style: const ButtonStyle(visualDensity: VisualDensity.compact), + onPressed: () { + setState(() { + selectAll(); + }); + }, + child: Text(tr('selectAll')), + ) + : TextButton( + style: const ButtonStyle(visualDensity: VisualDensity.compact), + onPressed: () { + setState(() { + selectAll(deselect: true); + }); + }, + child: Text(tr('deselectX', args: [''])), + ); + } + + return AlertDialog( + scrollable: true, + title: Text(widget.title ?? tr('pick')), + content: Column( + children: [ + GeneratedForm( + items: [ + [ + GeneratedFormTextField( + 'filter', + label: tr('filter'), + required: false, + additionalValidators: [ + (value) { + return regExValidator(value); + }, + ], + ), + ], + ], + onValueChanges: (value, valid, isBuilding) { + if (valid && !isBuilding) { + if (value['filter'] != null) { + setState(() { + filterRegex = value['filter']; + }); + } + } + }, + ), + ...filteredEntrySelections.keys.map((entry) { + selectThis(bool? value) { + setState(() { + value ??= false; + if (value! && widget.onlyOneSelectionAllowed) { + selectOnlyOne(entry.key); + } else { + entrySelections[entry] = value!; + } + }); + } + + var urlLink = GestureDetector( + onTap: !widget.titlesAreLinks + ? null + : () { + launchUrlString( + entry.key, + mode: LaunchMode.externalApplication, + ); + }, + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + entry.value.isEmpty ? entry.key : entry.value[0], + style: TextStyle( + decoration: widget.titlesAreLinks + ? TextDecoration.underline + : null, + fontWeight: FontWeight.bold, + ), + textAlign: TextAlign.start, + ), + if (widget.titlesAreLinks) + Text( + Uri.parse(entry.key).host, + style: const TextStyle( + decoration: TextDecoration.underline, + fontSize: 12, + ), + ), + ], + ), + ); + + var descriptionText = entry.value.length <= 1 + ? const SizedBox.shrink() + : Text( + entry.value[1].length > 128 + ? '${entry.value[1].substring(0, 128)}...' + : entry.value[1], + style: const TextStyle( + fontStyle: FontStyle.italic, + fontSize: 12, + ), + ); + + var selectedEntries = entrySelections.entries + .where((e) => e.value) + .toList(); + + var singleSelectTile = ListTile( + title: GestureDetector( + onTap: widget.titlesAreLinks + ? null + : () { + selectThis(!(entrySelections[entry] ?? false)); + }, + child: urlLink, + ), + subtitle: entry.value.length <= 1 + ? null + : GestureDetector( + onTap: () { + setState(() { + selectOnlyOne(entry.key); + }); + }, + child: descriptionText, + ), + leading: Radio( + value: entry.key, + groupValue: selectedEntries.isEmpty + ? null + : selectedEntries.first.key.key, + onChanged: (value) { + setState(() { + selectOnlyOne(entry.key); + }); + }, + ), + ); + + var multiSelectTile = Row( + children: [ + Checkbox( + value: entrySelections[entry], + onChanged: (value) { + selectThis(value); + }, + ), + const SizedBox(width: 8), + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + const SizedBox(height: 8), + GestureDetector( + onTap: widget.titlesAreLinks + ? null + : () { + selectThis(!(entrySelections[entry] ?? false)); + }, + child: urlLink, + ), + entry.value.length <= 1 + ? const SizedBox.shrink() + : GestureDetector( + onTap: () { + selectThis(!(entrySelections[entry] ?? false)); + }, + child: descriptionText, + ), + const SizedBox(height: 8), + ], + ), + ), + ], + ); + + return widget.onlyOneSelectionAllowed + ? singleSelectTile + : multiSelectTile; + }), + ], + ), + actions: [ + getSelectAllButton(), + TextButton( + onPressed: () { + Navigator.of(context).pop(); + }, + child: Text(tr('cancel')), + ), + TextButton( + onPressed: entrySelections.values.where((b) => b).isEmpty + ? null + : () { + Navigator.of(context).pop( + entrySelections.entries + .where((entry) => entry.value) + .map((e) => e.key.key) + .toList(), + ); + }, + child: Text( + widget.onlyOneSelectionAllowed + ? tr('pick') + : tr( + 'selectX', + args: [ + entrySelections.values.where((b) => b).length.toString(), + ], + ), + ), + ), + ], + ); + } +} diff --git a/lib/pages/settings.dart b/lib/pages/settings.dart new file mode 100644 index 0000000..abea2cd --- /dev/null +++ b/lib/pages/settings.dart @@ -0,0 +1,1173 @@ +import 'package:device_info_plus/device_info_plus.dart'; +import 'package:easy_localization/easy_localization.dart'; +import 'package:equations/equations.dart'; +import 'package:flex_color_picker/flex_color_picker.dart'; +import 'package:flutter/material.dart'; +import 'package:obtainium/components/custom_app_bar.dart'; +import 'package:obtainium/components/generated_form.dart'; +import 'package:obtainium/components/generated_form_modal.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/main.dart'; +import 'package:obtainium/providers/apps_provider.dart'; +import 'package:obtainium/providers/logs_provider.dart'; +import 'package:obtainium/providers/native_provider.dart'; +import 'package:obtainium/providers/settings_provider.dart'; +import 'package:obtainium/providers/source_provider.dart'; +import 'package:provider/provider.dart'; +import 'package:share_plus/share_plus.dart'; +import 'package:shizuku_apk_installer/shizuku_apk_installer.dart'; +import 'package:url_launcher/url_launcher_string.dart'; + +class SettingsPage extends StatefulWidget { + const SettingsPage({super.key}); + + @override + State createState() => _SettingsPageState(); +} + +class _SettingsPageState extends State { + List updateIntervalNodes = [ + 15, + 30, + 60, + 120, + 180, + 360, + 720, + 1440, + 4320, + 10080, + 20160, + 43200, + ]; + int updateInterval = 0; + late SplineInterpolation updateIntervalInterpolator; // 🤓 + String updateIntervalLabel = tr('neverManualOnly'); + bool showIntervalLabel = true; + final Map, String> colorsNameMap = + , String>{ + ColorTools.createPrimarySwatch(obtainiumThemeColor): 'Obtainium', + }; + + void initUpdateIntervalInterpolator() { + List nodes = []; + for (final (index, element) in updateIntervalNodes.indexed) { + nodes.add( + InterpolationNode(x: index.toDouble() + 1, y: element.toDouble()), + ); + } + updateIntervalInterpolator = SplineInterpolation(nodes: nodes); + } + + void processIntervalSliderValue(double val) { + if (val < 0.5) { + updateInterval = 0; + updateIntervalLabel = tr('neverManualOnly'); + return; + } + int valInterpolated = 0; + if (val < 1) { + valInterpolated = 15; + } else { + valInterpolated = updateIntervalInterpolator.compute(val).round(); + } + if (valInterpolated < 60) { + updateInterval = valInterpolated; + updateIntervalLabel = plural('minute', valInterpolated); + } else if (valInterpolated < 8 * 60) { + int valRounded = (valInterpolated / 15).floor() * 15; + updateInterval = valRounded; + updateIntervalLabel = plural('hour', valRounded ~/ 60); + int mins = valRounded % 60; + if (mins != 0) updateIntervalLabel += " ${plural('minute', mins)}"; + } else if (valInterpolated < 24 * 60) { + int valRounded = (valInterpolated / 30).floor() * 30; + updateInterval = valRounded; + updateIntervalLabel = plural('hour', valRounded / 60); + } else if (valInterpolated < 7 * 24 * 60) { + int valRounded = (valInterpolated / (12 * 60)).floor() * 12 * 60; + updateInterval = valRounded; + updateIntervalLabel = plural('day', valRounded / (24 * 60)); + } else { + int valRounded = (valInterpolated / (24 * 60)).floor() * 24 * 60; + updateInterval = valRounded; + updateIntervalLabel = plural('day', valRounded ~/ (24 * 60)); + } + } + + @override + Widget build(BuildContext context) { + SettingsProvider settingsProvider = context.watch(); + SourceProvider sourceProvider = SourceProvider(); + if (settingsProvider.prefs == null) settingsProvider.initializeSettings(); + initUpdateIntervalInterpolator(); + processIntervalSliderValue(settingsProvider.updateIntervalSliderVal); + + var followSystemThemeExplanation = FutureBuilder( + builder: (ctx, val) { + return ((val.data?.version.sdkInt ?? 30) < 29) + ? Text( + tr('followSystemThemeExplanation'), + style: Theme.of(context).textTheme.labelSmall, + ) + : const SizedBox.shrink(); + }, + future: DeviceInfoPlugin().androidInfo, + ); + + Future colorPickerDialog() async { + return ColorPicker( + color: settingsProvider.themeColor, + onColorChanged: (Color color) => + setState(() => settingsProvider.themeColor = color), + actionButtons: const ColorPickerActionButtons( + okButton: true, + closeButton: true, + dialogActionButtons: false, + ), + pickersEnabled: const { + ColorPickerType.both: false, + ColorPickerType.primary: false, + ColorPickerType.accent: false, + ColorPickerType.bw: false, + ColorPickerType.custom: true, + ColorPickerType.wheel: true, + }, + pickerTypeLabels: { + ColorPickerType.custom: tr('standard'), + ColorPickerType.wheel: tr('custom'), + }, + title: Text( + tr('selectX', args: [tr('colour').toLowerCase()]), + style: Theme.of(context).textTheme.titleLarge, + ), + wheelDiameter: 192, + wheelSquareBorderRadius: 32, + width: 48, + height: 48, + borderRadius: 24, + spacing: 8, + runSpacing: 8, + enableShadesSelection: false, + customColorSwatchesAndNames: colorsNameMap, + showMaterialName: true, + showColorName: true, + materialNameTextStyle: Theme.of(context).textTheme.bodySmall, + colorNameTextStyle: Theme.of(context).textTheme.bodySmall, + copyPasteBehavior: const ColorPickerCopyPasteBehavior( + longPressMenu: true, + ), + ).showPickerDialog( + context, + transitionBuilder: + ( + BuildContext context, + Animation a1, + Animation a2, + Widget widget, + ) { + final double curvedValue = Curves.easeInCubic.transform(a1.value); + return Transform( + alignment: Alignment.center, + transform: Matrix4.diagonal3Values(curvedValue, curvedValue, 1), + child: Opacity(opacity: curvedValue, child: widget), + ); + }, + transitionDuration: const Duration(milliseconds: 250), + ); + } + + var colorPicker = ListTile( + dense: true, + contentPadding: EdgeInsets.zero, + title: Text(tr('selectX', args: [tr('colour').toLowerCase()])), + subtitle: Text( + "${ColorTools.nameThatColor(settingsProvider.themeColor)} " + "(${ColorTools.materialNameAndCode(settingsProvider.themeColor, colorSwatchNameMap: colorsNameMap)})", + ), + trailing: ColorIndicator( + width: 40, + height: 40, + borderRadius: 20, + color: settingsProvider.themeColor, + onSelectFocus: false, + onSelect: () async { + final Color colorBeforeDialog = settingsProvider.themeColor; + if (!(await colorPickerDialog())) { + setState(() { + settingsProvider.themeColor = colorBeforeDialog; + }); + } + }, + ), + ); + + var useMaterialThemeSwitch = FutureBuilder( + builder: (ctx, val) { + return ((val.data?.version.sdkInt ?? 0) >= 31) + ? Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Flexible(child: Text(tr('useMaterialYou'))), + Switch( + value: settingsProvider.useMaterialYou, + onChanged: (value) { + settingsProvider.useMaterialYou = value; + }, + ), + ], + ) + : const SizedBox.shrink(); + }, + future: DeviceInfoPlugin().androidInfo, + ); + + var sortDropdown = DropdownButtonFormField( + isExpanded: true, + decoration: InputDecoration(labelText: tr('appSortBy')), + value: settingsProvider.sortColumn, + items: [ + DropdownMenuItem( + value: SortColumnSettings.authorName, + child: Text(tr('authorName')), + ), + DropdownMenuItem( + value: SortColumnSettings.nameAuthor, + child: Text(tr('nameAuthor')), + ), + DropdownMenuItem( + value: SortColumnSettings.added, + child: Text(tr('asAdded')), + ), + DropdownMenuItem( + value: SortColumnSettings.releaseDate, + child: Text(tr('releaseDate')), + ), + ], + onChanged: (value) { + if (value != null) { + settingsProvider.sortColumn = value; + } + }, + ); + + var orderDropdown = DropdownButtonFormField( + isExpanded: true, + decoration: InputDecoration(labelText: tr('appSortOrder')), + value: settingsProvider.sortOrder, + items: [ + DropdownMenuItem( + value: SortOrderSettings.ascending, + child: Text(tr('ascending')), + ), + DropdownMenuItem( + value: SortOrderSettings.descending, + child: Text(tr('descending')), + ), + ], + onChanged: (value) { + if (value != null) { + settingsProvider.sortOrder = value; + } + }, + ); + + var localeDropdown = DropdownButtonFormField( + decoration: InputDecoration(labelText: tr('language')), + value: settingsProvider.forcedLocale, + items: [ + DropdownMenuItem(value: null, child: Text(tr('followSystem'))), + ...supportedLocales.map( + (e) => DropdownMenuItem(value: e.key, child: Text(e.value)), + ), + ], + onChanged: (value) { + settingsProvider.forcedLocale = value; + if (value != null) { + context.setLocale(value); + } else { + settingsProvider.resetLocaleSafe(context); + } + }, + ); + + var intervalSlider = Slider( + value: settingsProvider.updateIntervalSliderVal, + max: updateIntervalNodes.length.toDouble(), + divisions: updateIntervalNodes.length * 20, + label: updateIntervalLabel, + onChanged: (double value) { + setState(() { + settingsProvider.updateIntervalSliderVal = value; + processIntervalSliderValue(value); + }); + }, + onChangeStart: (double value) { + setState(() { + showIntervalLabel = false; + }); + }, + onChangeEnd: (double value) { + setState(() { + showIntervalLabel = true; + settingsProvider.updateInterval = updateInterval; + }); + }, + ); + + var sourceSpecificFields = sourceProvider.sources.map((e) { + if (e.sourceConfigSettingFormItems.isNotEmpty) { + return GeneratedForm( + items: e.sourceConfigSettingFormItems.map((e) { + if (e is GeneratedFormSwitch) { + e.defaultValue = settingsProvider.getSettingBool(e.key); + } else { + e.defaultValue = settingsProvider.getSettingString(e.key); + } + return [e]; + }).toList(), + onValueChanges: (values, valid, isBuilding) { + if (valid && !isBuilding) { + values.forEach((key, value) { + var formItem = e.sourceConfigSettingFormItems + .where((i) => i.key == key) + .firstOrNull; + if (formItem is GeneratedFormSwitch) { + settingsProvider.setSettingBool(key, value == true); + } else { + settingsProvider.setSettingString(key, value ?? ''); + } + }); + } + }, + ); + } else { + return Container(); + } + }); + + const height8 = SizedBox(height: 8); + + const height16 = SizedBox(height: 16); + + const height32 = SizedBox(height: 32); + + return Scaffold( + backgroundColor: Theme.of(context).colorScheme.surface, + body: CustomScrollView( + slivers: [ + CustomAppBar(title: tr('settings')), + SliverToBoxAdapter( + child: Padding( + padding: const EdgeInsets.all(16), + child: settingsProvider.prefs == null + ? const SizedBox() + : Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + tr('updates'), + style: TextStyle( + fontWeight: FontWeight.bold, + color: Theme.of(context).colorScheme.primary, + ), + ), + //intervalDropdown, + height16, + if (showIntervalLabel) + SizedBox( + child: Text( + "${tr('bgUpdateCheckInterval')}: $updateIntervalLabel", + ), + ) + else + const SizedBox(height: 16), + intervalSlider, + FutureBuilder( + builder: (ctx, val) { + return (settingsProvider.updateInterval > 0) && + (((val.data?.version.sdkInt ?? 0) >= 30) || + settingsProvider.useShizuku) + ? Column( + crossAxisAlignment: + CrossAxisAlignment.start, + children: [ + Row( + mainAxisAlignment: + MainAxisAlignment.spaceBetween, + children: [ + Flexible( + child: Text( + tr( + 'foregroundServiceExplanation', + ), + ), + ), + Switch( + value: + settingsProvider.useFGService, + onChanged: (value) { + settingsProvider.useFGService = + value; + }, + ), + ], + ), + Row( + mainAxisAlignment: + MainAxisAlignment.spaceBetween, + children: [ + Flexible( + child: Text( + tr('enableBackgroundUpdates'), + ), + ), + Switch( + value: settingsProvider + .enableBackgroundUpdates, + onChanged: (value) { + settingsProvider + .enableBackgroundUpdates = + value; + }, + ), + ], + ), + height8, + Text( + tr('backgroundUpdateReqsExplanation'), + style: Theme.of( + context, + ).textTheme.labelSmall, + ), + Text( + tr('backgroundUpdateLimitsExplanation'), + style: Theme.of( + context, + ).textTheme.labelSmall, + ), + height8, + if (settingsProvider + .enableBackgroundUpdates) + Column( + children: [ + height16, + Row( + mainAxisAlignment: + MainAxisAlignment + .spaceBetween, + children: [ + Flexible( + child: Text( + tr('bgUpdatesOnWiFiOnly'), + ), + ), + Switch( + value: settingsProvider + .bgUpdatesOnWiFiOnly, + onChanged: (value) { + settingsProvider + .bgUpdatesOnWiFiOnly = + value; + }, + ), + ], + ), + height16, + Row( + mainAxisAlignment: + MainAxisAlignment + .spaceBetween, + children: [ + Flexible( + child: Text( + tr( + 'bgUpdatesWhileChargingOnly', + ), + ), + ), + Switch( + value: settingsProvider + .bgUpdatesWhileChargingOnly, + onChanged: (value) { + settingsProvider + .bgUpdatesWhileChargingOnly = + value; + }, + ), + ], + ), + ], + ), + ], + ) + : const SizedBox.shrink(); + }, + future: DeviceInfoPlugin().androidInfo, + ), + height16, + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Flexible(child: Text(tr('checkOnStart'))), + Switch( + value: settingsProvider.checkOnStart, + onChanged: (value) { + settingsProvider.checkOnStart = value; + }, + ), + ], + ), + height16, + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Flexible( + child: Text(tr('checkUpdateOnDetailPage')), + ), + Switch( + value: settingsProvider.checkUpdateOnDetailPage, + onChanged: (value) { + settingsProvider.checkUpdateOnDetailPage = + value; + }, + ), + ], + ), + height16, + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Flexible( + child: Text( + tr('onlyCheckInstalledOrTrackOnlyApps'), + ), + ), + Switch( + value: settingsProvider + .onlyCheckInstalledOrTrackOnlyApps, + onChanged: (value) { + settingsProvider + .onlyCheckInstalledOrTrackOnlyApps = + value; + }, + ), + ], + ), + height16, + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Flexible( + child: Text(tr('removeOnExternalUninstall')), + ), + Switch( + value: settingsProvider.removeOnExternalUninstall, + onChanged: (value) { + settingsProvider.removeOnExternalUninstall = + value; + }, + ), + ], + ), + height16, + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Flexible(child: Text(tr('parallelDownloads'))), + Switch( + value: settingsProvider.parallelDownloads, + onChanged: (value) { + settingsProvider.parallelDownloads = value; + }, + ), + ], + ), + height16, + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Flexible( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + mainAxisSize: MainAxisSize.min, + children: [ + Text( + tr('beforeNewInstallsShareToAppVerifier'), + ), + GestureDetector( + onTap: () { + launchUrlString( + 'https://github.com/soupslurpr/AppVerifier', + mode: LaunchMode.externalApplication, + ); + }, + child: Text( + tr('about'), + style: const TextStyle( + decoration: TextDecoration.underline, + fontSize: 12, + ), + ), + ), + ], + ), + ), + Switch( + value: settingsProvider + .beforeNewInstallsShareToAppVerifier, + onChanged: (value) { + settingsProvider + .beforeNewInstallsShareToAppVerifier = + value; + }, + ), + ], + ), + height16, + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Flexible(child: Text(tr('useShizuku'))), + Switch( + value: settingsProvider.useShizuku, + onChanged: (useShizuku) { + if (useShizuku) { + ShizukuApkInstaller.checkPermission().then(( + resCode, + ) { + settingsProvider.useShizuku = resCode! + .startsWith('granted'); + switch (resCode) { + case 'binder_not_found': + showError( + ObtainiumError( + tr('shizukuBinderNotFound'), + ), + context, + ); + case 'old_shizuku': + showError( + ObtainiumError(tr('shizukuOld')), + context, + ); + case 'old_android_with_adb': + showError( + ObtainiumError( + tr('shizukuOldAndroidWithADB'), + ), + context, + ); + case 'denied': + showError( + ObtainiumError(tr('cancelled')), + context, + ); + } + }); + } else { + settingsProvider.useShizuku = false; + } + }, + ), + ], + ), + height16, + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Flexible( + child: Text(tr('shizukuPretendToBeGooglePlay')), + ), + Switch( + value: + settingsProvider.shizukuPretendToBeGooglePlay, + onChanged: (value) { + settingsProvider.shizukuPretendToBeGooglePlay = + value; + }, + ), + ], + ), + height32, + Text( + tr('sourceSpecific'), + style: TextStyle( + fontWeight: FontWeight.bold, + color: Theme.of(context).colorScheme.primary, + ), + ), + ...sourceSpecificFields, + height32, + Text( + tr('appearance'), + style: TextStyle( + fontWeight: FontWeight.bold, + color: Theme.of(context).colorScheme.primary, + ), + ), + DropdownButtonFormField( + decoration: InputDecoration(labelText: tr('theme')), + value: settingsProvider.theme, + items: [ + DropdownMenuItem( + value: ThemeSettings.system, + child: Text(tr('followSystem')), + ), + DropdownMenuItem( + value: ThemeSettings.light, + child: Text(tr('light')), + ), + DropdownMenuItem( + value: ThemeSettings.dark, + child: Text(tr('dark')), + ), + ], + onChanged: (value) { + if (value != null) { + settingsProvider.theme = value; + } + }, + ), + height8, + if (settingsProvider.theme == ThemeSettings.system) + followSystemThemeExplanation, + height16, + if (settingsProvider.theme != ThemeSettings.light) + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Flexible(child: Text(tr('useBlackTheme'))), + Switch( + value: settingsProvider.useBlackTheme, + onChanged: (value) { + settingsProvider.useBlackTheme = value; + }, + ), + ], + ), + height8, + useMaterialThemeSwitch, + if (!settingsProvider.useMaterialYou) colorPicker, + Row( + mainAxisAlignment: MainAxisAlignment.start, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Expanded(child: sortDropdown), + const SizedBox(width: 16), + Expanded(child: orderDropdown), + ], + ), + height16, + localeDropdown, + FutureBuilder( + builder: (ctx, val) { + return (val.data?.version.sdkInt ?? 0) >= 34 + ? Column( + crossAxisAlignment: + CrossAxisAlignment.start, + children: [ + height16, + Row( + mainAxisAlignment: + MainAxisAlignment.spaceBetween, + children: [ + Flexible( + child: Text(tr('useSystemFont')), + ), + Switch( + value: + settingsProvider.useSystemFont, + onChanged: (useSystemFont) { + if (useSystemFont) { + NativeFeatures.loadSystemFont() + .then((val) { + settingsProvider + .useSystemFont = + true; + }); + } else { + settingsProvider.useSystemFont = + false; + } + }, + ), + ], + ), + ], + ) + : const SizedBox.shrink(); + }, + future: DeviceInfoPlugin().androidInfo, + ), + height16, + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Flexible(child: Text(tr('showWebInAppView'))), + Switch( + value: settingsProvider.showAppWebpage, + onChanged: (value) { + settingsProvider.showAppWebpage = value; + }, + ), + ], + ), + height16, + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Flexible(child: Text(tr('pinUpdates'))), + Switch( + value: settingsProvider.pinUpdates, + onChanged: (value) { + settingsProvider.pinUpdates = value; + }, + ), + ], + ), + height16, + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Flexible( + child: Text(tr('moveNonInstalledAppsToBottom')), + ), + Switch( + value: settingsProvider.buryNonInstalled, + onChanged: (value) { + settingsProvider.buryNonInstalled = value; + }, + ), + ], + ), + height16, + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Flexible(child: Text(tr('groupByCategory'))), + Switch( + value: settingsProvider.groupByCategory, + onChanged: (value) { + settingsProvider.groupByCategory = value; + }, + ), + ], + ), + height16, + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Flexible( + child: Text(tr('dontShowTrackOnlyWarnings')), + ), + Switch( + value: settingsProvider.hideTrackOnlyWarning, + onChanged: (value) { + settingsProvider.hideTrackOnlyWarning = value; + }, + ), + ], + ), + height16, + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Flexible( + child: Text(tr('dontShowAPKOriginWarnings')), + ), + Switch( + value: settingsProvider.hideAPKOriginWarning, + onChanged: (value) { + settingsProvider.hideAPKOriginWarning = value; + }, + ), + ], + ), + height16, + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Flexible(child: Text(tr('disablePageTransitions'))), + Switch( + value: settingsProvider.disablePageTransitions, + onChanged: (value) { + settingsProvider.disablePageTransitions = value; + }, + ), + ], + ), + height16, + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Flexible(child: Text(tr('reversePageTransitions'))), + Switch( + value: settingsProvider.reversePageTransitions, + onChanged: settingsProvider.disablePageTransitions + ? null + : (value) { + settingsProvider.reversePageTransitions = + value; + }, + ), + ], + ), + height16, + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Flexible(child: Text(tr('highlightTouchTargets'))), + Switch( + value: settingsProvider.highlightTouchTargets, + onChanged: (value) { + settingsProvider.highlightTouchTargets = value; + }, + ), + ], + ), + height32, + Text( + tr('categories'), + style: TextStyle( + fontWeight: FontWeight.bold, + color: Theme.of(context).colorScheme.primary, + ), + ), + height16, + const CategoryEditorSelector( + showLabelWhenNotEmpty: false, + ), + ], + ), + ), + ), + SliverToBoxAdapter( + child: Column( + children: [ + const Divider(height: 32), + Row( + mainAxisAlignment: MainAxisAlignment.spaceAround, + children: [ + IconButton( + onPressed: () { + launchUrlString( + settingsProvider.sourceUrl, + mode: LaunchMode.externalApplication, + ); + }, + icon: const Icon(Icons.code), + tooltip: tr('appSource'), + ), + IconButton( + onPressed: () { + launchUrlString( + 'https://wiki.obtainium.imranr.dev/', + mode: LaunchMode.externalApplication, + ); + }, + icon: const Icon(Icons.help_outline_rounded), + tooltip: tr('wiki'), + ), + IconButton( + onPressed: () { + launchUrlString( + 'https://apps.obtainium.imranr.dev/', + mode: LaunchMode.externalApplication, + ); + }, + icon: const Icon(Icons.apps_rounded), + tooltip: tr('crowdsourcedConfigsLabel'), + ), + IconButton( + onPressed: () { + context.read().get().then((logs) { + if (logs.isEmpty) { + showMessage(ObtainiumError(tr('noLogs')), context); + } else { + showDialog( + context: context, + builder: (BuildContext ctx) { + return const LogsDialog(); + }, + ); + } + }); + }, + icon: const Icon(Icons.bug_report_outlined), + tooltip: tr('appLogs'), + ), + ], + ), + const SizedBox(height: 16), + ], + ), + ), + ], + ), + ); + } +} + +class LogsDialog extends StatefulWidget { + const LogsDialog({super.key}); + + @override + State createState() => _LogsDialogState(); +} + +class _LogsDialogState extends State { + String? logString; + List days = [7, 5, 4, 3, 2, 1]; + + @override + Widget build(BuildContext context) { + var logsProvider = context.read(); + void filterLogs(int days) { + logsProvider + .get(after: DateTime.now().subtract(Duration(days: days))) + .then((value) { + setState(() { + String l = value.map((e) => e.toString()).join('\n\n'); + logString = l.isNotEmpty ? l : tr('noLogs'); + }); + }); + } + + if (logString == null) { + filterLogs(days.first); + } + + return AlertDialog( + scrollable: true, + title: Text(tr('appLogs')), + content: Column( + children: [ + DropdownButtonFormField( + value: days.first, + items: days + .map( + (e) => + DropdownMenuItem(value: e, child: Text(plural('day', e))), + ) + .toList(), + onChanged: (d) { + filterLogs(d ?? 7); + }, + ), + const SizedBox(height: 32), + Text(logString ?? ''), + ], + ), + actions: [ + TextButton( + onPressed: () async { + var cont = + (await showDialog?>( + context: context, + builder: (BuildContext ctx) { + return GeneratedFormModal( + title: tr('appLogs'), + items: const [], + initValid: true, + message: tr('removeFromObtainium'), + ); + }, + )) != + null; + if (cont) { + logsProvider.clear(); + Navigator.of(context).pop(); + } + }, + child: Text(tr('remove')), + ), + TextButton( + onPressed: () { + Navigator.of(context).pop(); + }, + child: Text(tr('close')), + ), + TextButton( + onPressed: () { + Share.share(logString ?? '', subject: tr('appLogs')); + Navigator.of(context).pop(); + }, + child: Text(tr('share')), + ), + ], + ); + } +} + +class CategoryEditorSelector extends StatefulWidget { + final void Function(List categories)? onSelected; + final bool singleSelect; + final Set preselected; + final WrapAlignment alignment; + final bool showLabelWhenNotEmpty; + const CategoryEditorSelector({ + super.key, + this.onSelected, + this.singleSelect = false, + this.preselected = const {}, + this.alignment = WrapAlignment.start, + this.showLabelWhenNotEmpty = true, + }); + + @override + State createState() => _CategoryEditorSelectorState(); +} + +class _CategoryEditorSelectorState extends State { + Map> storedValues = {}; + + @override + Widget build(BuildContext context) { + var settingsProvider = context.watch(); + var appsProvider = context.watch(); + storedValues = settingsProvider.categories.map( + (key, value) => MapEntry( + key, + MapEntry( + value, + storedValues[key]?.value ?? widget.preselected.contains(key), + ), + ), + ); + return GeneratedForm( + items: [ + [ + GeneratedFormTagInput( + 'categories', + label: tr('categories'), + emptyMessage: tr('noCategories'), + defaultValue: storedValues, + alignment: widget.alignment, + deleteConfirmationMessage: MapEntry( + tr('deleteCategoriesQuestion'), + tr('categoryDeleteWarning'), + ), + singleSelect: widget.singleSelect, + showLabelWhenNotEmpty: widget.showLabelWhenNotEmpty, + ), + ], + ], + onValueChanges: ((values, valid, isBuilding) { + if (!isBuilding) { + storedValues = + values['categories'] as Map>; + settingsProvider.setCategories( + storedValues.map((key, value) => MapEntry(key, value.key)), + appsProvider: appsProvider, + ); + if (widget.onSelected != null) { + widget.onSelected!( + storedValues.keys.where((k) => storedValues[k]!.value).toList(), + ); + } + } + }), + ); + } +} diff --git a/lib/providers/apps_provider.dart b/lib/providers/apps_provider.dart new file mode 100644 index 0000000..9f87a7d --- /dev/null +++ b/lib/providers/apps_provider.dart @@ -0,0 +1,2612 @@ +// Manages state related to the list of Apps tracked by Obtainium, +// Exposes related functions such as those used to add, remove, download, and install Apps. + +import 'dart:async'; +import 'dart:convert'; +import 'dart:io'; +import 'dart:math'; +import 'package:battery_plus/battery_plus.dart'; +import 'package:fluttertoast/fluttertoast.dart'; +import 'package:crypto/crypto.dart'; +import 'dart:typed_data'; + +import 'package:android_intent_plus/flag.dart'; +import 'package:android_package_installer/android_package_installer.dart'; +import 'package:android_package_manager/android_package_manager.dart'; +import 'package:connectivity_plus/connectivity_plus.dart'; +import 'package:device_info_plus/device_info_plus.dart'; +import 'package:easy_localization/easy_localization.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; +import 'package:http/io_client.dart'; +import 'package:obtainium/app_sources/directAPKLink.dart'; +import 'package:obtainium/app_sources/html.dart'; +import 'package:obtainium/components/generated_form.dart'; +import 'package:obtainium/components/generated_form_modal.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/main.dart'; +import 'package:obtainium/providers/logs_provider.dart'; +import 'package:obtainium/providers/notifications_provider.dart'; +import 'package:obtainium/providers/settings_provider.dart'; +import 'package:permission_handler/permission_handler.dart'; +import 'package:provider/provider.dart'; +import 'package:path_provider/path_provider.dart'; +import 'package:flutter_fgbg/flutter_fgbg.dart'; +import 'package:obtainium/providers/source_provider.dart'; +import 'package:http/http.dart'; +import 'package:android_intent_plus/android_intent.dart'; +import 'package:flutter_archive/flutter_archive.dart'; +import 'package:share_plus/share_plus.dart'; +import 'package:shared_storage/shared_storage.dart' as saf; +import 'package:shizuku_apk_installer/shizuku_apk_installer.dart'; + +final pm = AndroidPackageManager(); + +class AppInMemory { + late App app; + double? downloadProgress; + PackageInfo? installedInfo; + Uint8List? icon; + + AppInMemory(this.app, this.downloadProgress, this.installedInfo, this.icon); + AppInMemory deepCopy() => + AppInMemory(app.deepCopy(), downloadProgress, installedInfo, icon); + + String get name => app.overrideName ?? app.finalName; + String get author => app.overrideAuthor ?? app.finalAuthor; +} + +class DownloadedApk { + String appId; + File file; + DownloadedApk(this.appId, this.file); +} + +enum DownloadedDirType { XAPK, ZIP } + +class DownloadedDir { + String appId; + File file; + Directory extracted; + DownloadedDirType type; + DownloadedDir(this.appId, this.file, this.extracted, this.type); +} + +List generateStandardVersionRegExStrings() { + var basics = [ + '[0-9]+', + '[0-9]+\\.[0-9]+', + '[0-9]+\\.[0-9]+\\.[0-9]+', + '[0-9]+\\.[0-9]+\\.[0-9]+\\.[0-9]+', + ]; + var preSuffixes = ['-', '\\+']; + var suffixes = ['alpha', 'beta', 'ose', '[0-9]+']; + var finals = ['\\+[0-9]+', '[0-9]+']; + List results = []; + for (var b in basics) { + results.add(b); + for (var p in preSuffixes) { + for (var s in suffixes) { + results.add('$b$s'); + results.add('$b$p$s'); + for (var f in finals) { + results.add('$b$s$f'); + results.add('$b$p$s$f'); + } + } + } + } + return results; +} + +List standardVersionRegExStrings = + generateStandardVersionRegExStrings(); + +Set findStandardFormatsForVersion(String version, bool strict) { + // If !strict, even a substring match is valid + Set results = {}; + for (var pattern in standardVersionRegExStrings) { + if (RegExp( + '${strict ? '^' : ''}$pattern${strict ? '\$' : ''}', + ).hasMatch(version)) { + results.add(pattern); + } + } + return results; +} + +List moveStrToEnd(List arr, String str, {String? strB}) { + String? temp; + arr.removeWhere((element) { + bool res = element == str || element == strB; + if (res) { + temp = element; + } + return res; + }); + if (temp != null) { + arr = [...arr, temp!]; + } + return arr; +} + +List> moveStrToEndMapEntryWithCount( + List> arr, + MapEntry str, { + MapEntry? strB, +}) { + MapEntry? temp; + arr.removeWhere((element) { + bool resA = element.key == str.key; + bool resB = element.key == strB?.key; + if (resA) { + temp = str; + } else if (resB) { + temp = strB; + } + return resA || resB; + }); + if (temp != null) { + arr = [...arr, temp!]; + } + return arr; +} + +Future downloadFileWithRetry( + String url, + String fileName, + bool fileNameHasExt, + Function? onProgress, + String destDir, { + bool useExisting = true, + Map? headers, + int retries = 3, + bool allowInsecure = false, + LogsProvider? logs, +}) async { + try { + return await downloadFile( + url, + fileName, + fileNameHasExt, + onProgress, + destDir, + useExisting: useExisting, + headers: headers, + allowInsecure: allowInsecure, + logs: logs, + ); + } catch (e) { + if (retries > 0 && e is ClientException) { + await Future.delayed(const Duration(seconds: 5)); + return await downloadFileWithRetry( + url, + fileName, + fileNameHasExt, + onProgress, + destDir, + useExisting: useExisting, + headers: headers, + retries: (retries - 1), + allowInsecure: allowInsecure, + logs: logs, + ); + } else { + rethrow; + } + } +} + +String hashListOfLists(List> data) { + var bytes = utf8.encode(jsonEncode(data)); + var digest = sha256.convert(bytes); + var hash = digest.toString(); + return hash.hashCode.toString(); +} + +Future checkPartialDownloadHashDynamic( + String url, { + int startingSize = 1024, + int lowerLimit = 128, + Map? headers, + bool allowInsecure = false, +}) async { + for (int i = startingSize; i >= lowerLimit; i -= 256) { + List ab = await Future.wait([ + checkPartialDownloadHash( + url, + i, + headers: headers, + allowInsecure: allowInsecure, + ), + checkPartialDownloadHash( + url, + i, + headers: headers, + allowInsecure: allowInsecure, + ), + ]); + if (ab[0] == ab[1]) { + return ab[0]; + } + } + throw NoVersionError(); +} + +Future checkPartialDownloadHash( + String url, + int bytesToGrab, { + Map? headers, + bool allowInsecure = false, +}) async { + var req = Request('GET', Uri.parse(url)); + if (headers != null) { + req.headers.addAll(headers); + } + req.headers[HttpHeaders.rangeHeader] = 'bytes=0-$bytesToGrab'; + var client = IOClient(createHttpClient(allowInsecure)); + var response = await client.send(req); + if (response.statusCode < 200 || response.statusCode > 299) { + throw ObtainiumError(response.reasonPhrase ?? tr('unexpectedError')); + } + List> bytes = await response.stream.take(bytesToGrab).toList(); + return hashListOfLists(bytes); +} + +Future checkETagHeader( + String url, { + Map? headers, + bool allowInsecure = false, +}) async { + // Send the initial request but cancel it as soon as you have the headers + var reqHeaders = headers ?? {}; + var req = Request('GET', Uri.parse(url)); + req.headers.addAll(reqHeaders); + var client = IOClient(createHttpClient(allowInsecure)); + StreamedResponse response = await client.send(req); + var resHeaders = response.headers; + client.close(); + return resHeaders[HttpHeaders.etagHeader] + ?.replaceAll('"', '') + .hashCode + .toString(); +} + +void deleteFile(File file) { + try { + file.deleteSync(recursive: true); + } on PathAccessException catch (e) { + throw ObtainiumError( + tr('fileDeletionError', args: [e.path ?? tr('unknown')]), + ); + } +} + +Future downloadFile( + String url, + String fileName, + bool fileNameHasExt, + Function? onProgress, + String destDir, { + bool useExisting = true, + Map? headers, + bool allowInsecure = false, + LogsProvider? logs, +}) async { + // Send the initial request but cancel it as soon as you have the headers + var reqHeaders = headers ?? {}; + var req = Request('GET', Uri.parse(url)); + req.headers.addAll(reqHeaders); + var headersClient = IOClient(createHttpClient(allowInsecure)); + StreamedResponse headersResponse = await headersClient.send(req); + var resHeaders = headersResponse.headers; + + // Use the headers to decide what the file extension is, and + // whether it supports partial downloads (range request), and + // what the total size of the file is (if provided) + String ext = resHeaders['content-disposition']?.split('.').last ?? 'apk'; + if (ext.endsWith('"') || ext.endsWith("other")) { + ext = ext.substring(0, ext.length - 1); + } + if (((Uri.tryParse(url)?.path ?? url).toLowerCase().endsWith('.apk') || + ext == 'attachment') && + ext != 'apk') { + ext = 'apk'; + } + fileName = fileNameHasExt + ? fileName + : fileName.split('/').last; // Ensure the fileName is a file name + File downloadedFile = File('$destDir/$fileName.$ext'); + if (fileNameHasExt) { + // If the user says the filename already has an ext, ignore whatever you inferred from above + downloadedFile = File('$destDir/$fileName'); + } + + bool rangeFeatureEnabled = false; + if (resHeaders['accept-ranges']?.isNotEmpty == true) { + rangeFeatureEnabled = + resHeaders['accept-ranges']?.trim().toLowerCase() == 'bytes'; + } + headersClient.close(); + + // If you have an existing file that is usable, + // decide whether you can use it (either return full or resume partial) + var fullContentLength = headersResponse.contentLength; + if (useExisting && downloadedFile.existsSync()) { + var length = downloadedFile.lengthSync(); + if (fullContentLength == null || !rangeFeatureEnabled) { + // If there is no content length reported, assume it the existing file is fully downloaded + // Also if the range feature is not supported, don't trust the content length if any (#1542) + return downloadedFile; + } else { + // Check if resume needed/possible + if (length == fullContentLength) { + return downloadedFile; + } + if (length > fullContentLength) { + useExisting = false; + } + } + } + + // Download to a '.temp' file (to distinguish btn. complete/incomplete files) + File tempDownloadedFile = File('${downloadedFile.path}.part'); + + // If there is already a temp file, a download may already be in progress - account for this (see #2073) + bool tempFileExists = tempDownloadedFile.existsSync(); + if (tempFileExists && useExisting) { + logs?.add( + 'Partial download exists - will wait: ${tempDownloadedFile.uri.pathSegments.last}', + ); + bool isDownloading = true; + int currentTempFileSize = await tempDownloadedFile.length(); + bool shouldReturn = false; + while (isDownloading) { + await Future.delayed(Duration(seconds: 7)); + if (tempDownloadedFile.existsSync()) { + int newTempFileSize = await tempDownloadedFile.length(); + if (newTempFileSize > currentTempFileSize) { + currentTempFileSize = newTempFileSize; + logs?.add( + 'Existing partial download still in progress: ${tempDownloadedFile.uri.pathSegments.last}', + ); + } else { + logs?.add( + 'Ignoring existing partial download: ${tempDownloadedFile.uri.pathSegments.last}', + ); + break; + } + } else { + shouldReturn = downloadedFile.existsSync(); + } + } + if (shouldReturn) { + logs?.add( + 'Existing partial download completed - not repeating: ${tempDownloadedFile.uri.pathSegments.last}', + ); + return downloadedFile; + } else { + logs?.add( + 'Existing partial download not in progress: ${tempDownloadedFile.uri.pathSegments.last}', + ); + } + } + + // If the range feature is not available (or you need to start a ranged req from 0), + // complete the already-started request, else cancel it and start a ranged request, + // and open the file for writing in the appropriate mode + var targetFileLength = useExisting && tempDownloadedFile.existsSync() + ? tempDownloadedFile.lengthSync() + : null; + int rangeStart = targetFileLength ?? 0; + IOSink? sink; + req = Request('GET', Uri.parse(url)); + req.headers.addAll(reqHeaders); + if (rangeFeatureEnabled && fullContentLength != null && rangeStart > 0) { + reqHeaders.addAll({'range': 'bytes=$rangeStart-${fullContentLength - 1}'}); + sink = tempDownloadedFile.openWrite(mode: FileMode.writeOnlyAppend); + } else if (tempDownloadedFile.existsSync()) { + deleteFile(tempDownloadedFile); + } + var responseWithClient = await sourceRequestStreamResponse( + 'GET', + url, + reqHeaders, + {}, + ); + HttpClient responseClient = responseWithClient.value.key; + HttpClientResponse response = responseWithClient.value.value; + sink ??= tempDownloadedFile.openWrite(mode: FileMode.writeOnly); + + // Perform the download + var received = 0; + double? progress; + DateTime? lastProgressUpdate; // Track last progress update time + if (rangeStart > 0 && fullContentLength != null) { + received = rangeStart; + } + const downloadUIUpdateInterval = Duration(milliseconds: 500); + const downloadBufferSize = 32 * 1024; // 32KB + final downloadBuffer = BytesBuilder(); + await response + .asBroadcastStream() + .map((chunk) { + received += chunk.length; + final now = DateTime.now(); + if (onProgress != null && + (lastProgressUpdate == null || + now.difference(lastProgressUpdate!) >= + downloadUIUpdateInterval)) { + progress = fullContentLength != null + ? (received / fullContentLength) * 100 + : 30; + onProgress(progress); + lastProgressUpdate = now; + } + return chunk; + }) + .transform( + StreamTransformer, List>.fromHandlers( + handleData: (List data, EventSink> s) { + downloadBuffer.add(data); + if (downloadBuffer.length >= downloadBufferSize) { + s.add(downloadBuffer.takeBytes()); + } + }, + handleDone: (EventSink> s) { + if (downloadBuffer.isNotEmpty) { + s.add(downloadBuffer.takeBytes()); + } + s.close(); + }, + ), + ) + .pipe(sink); + await sink.close(); + progress = null; + if (onProgress != null) { + onProgress(progress); + } + if (response.statusCode < 200 || response.statusCode > 299) { + deleteFile(tempDownloadedFile); + throw response.reasonPhrase; + } + if (tempDownloadedFile.existsSync()) { + tempDownloadedFile.renameSync(downloadedFile.path); + } + responseClient.close(); + return downloadedFile; +} + +Future> getAllInstalledInfo() async { + return await pm.getInstalledPackages() ?? []; +} + +Future getInstalledInfo( + String? packageName, { + bool printErr = true, +}) async { + if (packageName != null) { + try { + return await pm.getPackageInfo(packageName: packageName); + } catch (e) { + if (printErr) { + print(e); // OK + } + } + } + return null; +} + +Future getAppStorageDir() async => + await getExternalStorageDirectory() ?? + await getApplicationDocumentsDirectory(); + +class AppsProvider with ChangeNotifier { + // In memory App state (should always be kept in sync with local storage versions) + Map apps = {}; + bool loadingApps = false; + bool gettingUpdates = false; + LogsProvider logs = LogsProvider(); + + // Variables to keep track of the app foreground status (installs can't run in the background) + bool isForeground = true; + late Stream? foregroundStream; + late StreamSubscription? foregroundSubscription; + late Directory APKDir; + late Directory iconsCacheDir; + late SettingsProvider settingsProvider = SettingsProvider(); + + Iterable getAppValues() => apps.values.map((a) => a.deepCopy()); + + AppsProvider({isBg = false}) { + // Subscribe to changes in the app foreground status + foregroundStream = FGBGEvents.instance.stream.asBroadcastStream(); + foregroundSubscription = foregroundStream?.listen((event) async { + isForeground = event == FGBGType.foreground; + if (isForeground) { + await loadApps(); + } + }); + () async { + await settingsProvider.initializeSettings(); + var cacheDirs = await getExternalCacheDirectories(); + if (cacheDirs?.isNotEmpty ?? false) { + APKDir = cacheDirs!.first; + iconsCacheDir = Directory('${cacheDirs.first.path}/icons'); + if (!iconsCacheDir.existsSync()) { + iconsCacheDir.createSync(); + } + } else { + APKDir = Directory('${(await getAppStorageDir()).path}/apks'); + if (!APKDir.existsSync()) { + APKDir.createSync(); + } + iconsCacheDir = Directory('${(await getAppStorageDir()).path}/icons'); + if (!iconsCacheDir.existsSync()) { + iconsCacheDir.createSync(); + } + } + if (!isBg) { + // Load Apps into memory (in background processes, this is done later instead of in the constructor) + await loadApps(); + // Delete any partial APKs (if safe to do so) + var cutoff = DateTime.now().subtract(const Duration(days: 7)); + APKDir.listSync() + .where((element) => element.statSync().modified.isBefore(cutoff)) + .forEach((partialApk) { + if (!areDownloadsRunning()) { + partialApk.delete(recursive: true); + } + }); + } + }(); + } + + Future handleAPKIDChange( + App app, + PackageInfo newInfo, + File downloadedFile, + String downloadUrl, + ) async { + // If the APK package ID is different from the App ID, it is either new (using a placeholder ID) or the ID has changed + // The former case should be handled (give the App its real ID), the latter is a security issue + var isTempIdBool = isTempId(app); + if (app.id != newInfo.packageName) { + if (apps[app.id] != null && !isTempIdBool && !app.allowIdChange) { + throw IDChangedError(newInfo.packageName!); + } + var idChangeWasAllowed = app.allowIdChange; + app.allowIdChange = false; + var originalAppId = app.id; + app.id = newInfo.packageName!; + downloadedFile = downloadedFile.renameSync( + '${downloadedFile.parent.path}/${app.id}-${downloadUrl.hashCode}.${downloadedFile.path.split('.').last}', + ); + if (apps[originalAppId] != null) { + await removeApps([originalAppId]); + await saveApps([ + app, + ], onlyIfExists: !isTempIdBool && !idChangeWasAllowed); + } + } + return downloadedFile; + } + + Future downloadApp( + App app, + BuildContext? context, { + NotificationsProvider? notificationsProvider, + bool useExisting = true, + }) async { + var notifId = DownloadNotification(app.finalName, 0).id; + if (apps[app.id] != null) { + apps[app.id]!.downloadProgress = 0; + notifyListeners(); + } + try { + AppSource source = SourceProvider().getSource( + app.url, + overrideSource: app.overrideSource, + ); + var additionalSettingsPlusSourceConfig = { + ...app.additionalSettings, + ...(await source.getSourceConfigValues( + app.additionalSettings, + settingsProvider, + )), + }; + String downloadUrl = await source.assetUrlPrefetchModifier( + await source.generalReqPrefetchModifier( + app.apkUrls[app.preferredApkIndex].value, + additionalSettingsPlusSourceConfig, + ), + app.url, + additionalSettingsPlusSourceConfig, + ); + var notif = DownloadNotification(app.finalName, 100); + notificationsProvider?.cancel(notif.id); + int? prevProg; + var fileNameNoExt = '${app.id}-${downloadUrl.hashCode}'; + if (source.urlsAlwaysHaveExtension) { + fileNameNoExt = + '$fileNameNoExt.${app.apkUrls[app.preferredApkIndex].key.split('.').last}'; + } + var headers = await source.getRequestHeaders( + app.additionalSettings, + forAPKDownload: true, + ); + var downloadedFile = await downloadFileWithRetry( + downloadUrl, + fileNameNoExt, + source.urlsAlwaysHaveExtension, + headers: headers, + (double? progress) { + int? prog = progress?.ceil(); + if (apps[app.id] != null) { + apps[app.id]!.downloadProgress = progress; + notifyListeners(); + } + notif = DownloadNotification(app.finalName, prog ?? 100); + if (prog != null && prevProg != prog) { + notificationsProvider?.notify(notif); + } + prevProg = prog; + }, + APKDir.path, + useExisting: useExisting, + allowInsecure: app.additionalSettings['allowInsecure'] == true, + logs: logs, + ); + // Set to 90 for remaining steps, will make null in 'finally' + if (apps[app.id] != null) { + apps[app.id]!.downloadProgress = -1; + notifyListeners(); + notif = DownloadNotification(app.finalName, -1); + notificationsProvider?.notify(notif); + } + PackageInfo? newInfo; + var isAPK = downloadedFile.path.toLowerCase().endsWith('.apk'); + var isXAPK = downloadedFile.path.toLowerCase().endsWith('.xapk'); + Directory? apkDir; + if (isAPK) { + newInfo = await pm.getPackageArchiveInfo( + archiveFilePath: downloadedFile.path, + ); + } else { + // Assume XAPK or ZIP + String apkDirPath = '${downloadedFile.path}-dir'; + await unzipFile(downloadedFile.path, '${downloadedFile.path}-dir'); + apkDir = Directory(apkDirPath); + var apks = apkDir + .listSync() + .where((e) => e.path.toLowerCase().endsWith('.apk')) + .toList(); + + FileSystemEntity? temp; + apks.removeWhere((element) { + bool res = element.uri.pathSegments.last.startsWith(app.id); + if (res) { + temp = element; + } + return res; + }); + if (temp != null) { + apks = [temp!, ...apks]; + } + + if (app.additionalSettings['zippedApkFilterRegEx']?.isNotEmpty == + true) { + var reg = RegExp(app.additionalSettings['zippedApkFilterRegEx']); + apks.removeWhere((apk) { + var shouldDelete = !reg.hasMatch(apk.uri.pathSegments.last); + if (shouldDelete) { + apk.delete(); + } + return shouldDelete; + }); + } + + if (apks.isEmpty) { + throw NoAPKError(); + } + + for (var i = 0; i < apks.length; i++) { + try { + newInfo = await pm.getPackageArchiveInfo( + archiveFilePath: apks[i].path, + ); + if (newInfo != null) { + break; + } + } catch (e) { + if (i == apks.length - 1) { + rethrow; + } + } + } + } + if (newInfo == null) { + downloadedFile.delete(); + throw ObtainiumError('Could not get ID from APK'); + } + downloadedFile = await handleAPKIDChange( + app, + newInfo, + downloadedFile, + downloadUrl, + ); + // Delete older versions of the file if any + for (var file in downloadedFile.parent.listSync()) { + var fn = file.path.split('/').last; + if (fn.startsWith('${app.id}-') && + FileSystemEntity.isFileSync(file.path) && + file.path != downloadedFile.path) { + file.delete(recursive: true); + } + } + if (isAPK) { + return DownloadedApk(app.id, downloadedFile); + } else { + return DownloadedDir( + app.id, + downloadedFile, + apkDir!, + isXAPK ? DownloadedDirType.XAPK : DownloadedDirType.ZIP, + ); + } + } finally { + notificationsProvider?.cancel(notifId); + if (apps[app.id] != null) { + apps[app.id]!.downloadProgress = null; + notifyListeners(); + } + } + } + + bool areDownloadsRunning() => apps.values + .where((element) => element.downloadProgress != null) + .isNotEmpty; + + Future canInstallSilently(App app) async { + if (!settingsProvider.enableBackgroundUpdates) { + return false; + } + if (app.additionalSettings['exemptFromBackgroundUpdates'] == true) { + logs.add('Exempted from BG updates: ${app.id}'); + return false; + } + if (app.apkUrls.length > 1) { + logs.add('Multiple APK URLs: ${app.id}'); + return false; // Manual API selection means silent install is not possible + } + + var osInfo = await DeviceInfoPlugin().androidInfo; + String? installerPackageName; + try { + installerPackageName = osInfo.version.sdkInt >= 30 + ? (await pm.getInstallSourceInfo( + packageName: app.id, + ))?.installingPackageName + : (await pm.getInstallerPackageName(packageName: app.id)); + } catch (e) { + logs.add( + 'Failed to get installed package details: ${app.id} (${e.toString()})', + ); + return false; // App probably not installed + } + + int? targetSDK = (await getInstalledInfo( + app.id, + ))?.applicationInfo?.targetSdkVersion; + int requiredSDK = osInfo.version.sdkInt - 3; + // The APK should target a new enough API + // https://developer.android.com/reference/android/content/pm/PackageInstaller.SessionParams#setRequireUserAction(int) + if (!(targetSDK != null && targetSDK >= requiredSDK)) { + logs.add( + 'App currently targets API ${targetSDK} which is too low for background updates (requires API ${requiredSDK}): ${app.id}', + ); + return false; + } + + if (settingsProvider.useShizuku) { + return true; + } + + if (app.id == obtainiumId) { + return false; + } + if (installerPackageName != obtainiumId) { + // If we did not install the app, silent install is not possible + return false; + } + if (osInfo.version.sdkInt < 31) { + // The OS must also be new enough + logs.add('Android SDK too old: ${osInfo.version.sdkInt}'); + return false; + } + return true; + } + + Future waitForUserToReturnToForeground(BuildContext context) async { + NotificationsProvider notificationsProvider = context + .read(); + if (!isForeground) { + await notificationsProvider.notify( + completeInstallationNotification, + cancelExisting: true, + ); + while (await FGBGEvents.instance.stream.first != FGBGType.foreground) {} + await notificationsProvider.cancel(completeInstallationNotification.id); + } + } + + Future canDowngradeApps() async => + (await getInstalledInfo('com.berdik.letmedowngrade')) != null; + + Future unzipFile(String filePath, String destinationPath) async { + await ZipFile.extractToDirectory( + zipFile: File(filePath), + destinationDir: Directory(destinationPath), + ); + } + + Future installApkDir( + DownloadedDir dir, + BuildContext? firstTimeWithContext, { + bool needsBGWorkaround = false, + bool shizukuPretendToBeGooglePlay = false, + }) async { + // We don't know which APKs in an XAPK or ZIP are supported by the user's device + // So we try installing all of them and assume success if at least one installed + // If 0 APKs installed, throw the first install error encountered + // Obviously this approach is naive and is undesirable in many cases, needs to be improved + var somethingInstalled = false; + try { + MultiAppMultiError errors = MultiAppMultiError(); + List APKFiles = []; + for (var file + in dir.extracted + .listSync(recursive: true, followLinks: false) + .whereType()) { + if (file.path.toLowerCase().endsWith('.apk')) { + APKFiles.add(file); + } else if (file.path.toLowerCase().endsWith('.obb')) { + await moveObbFile(file, dir.appId); + } + } + + File? temp; + APKFiles.removeWhere((element) { + bool res = element.uri.pathSegments.last.startsWith(dir.appId); + if (res) { + temp = element; + } + return res; + }); + if (temp != null) { + APKFiles = [temp!, ...APKFiles]; + } + + try { + var wasInstalled = await installApk( + DownloadedApk(dir.appId, APKFiles[0]), + firstTimeWithContext, + needsBGWorkaround: needsBGWorkaround, + shizukuPretendToBeGooglePlay: shizukuPretendToBeGooglePlay, + additionalAPKs: APKFiles.sublist( + 1, + ).map((a) => DownloadedApk(dir.appId, a)).toList(), + ); + somethingInstalled = somethingInstalled || wasInstalled; + dir.file.delete(recursive: true); + } catch (e) { + logs.add('Could not install APKs from ${dir.type}: ${e.toString()}'); + errors.add(dir.appId, e, appName: apps[dir.appId]?.name); + } + if (errors.idsByErrorString.isNotEmpty) { + throw errors; + } + } finally { + dir.extracted.delete(recursive: true); + } + return somethingInstalled; + } + + Future installApk( + DownloadedApk file, + BuildContext? firstTimeWithContext, { + bool needsBGWorkaround = false, + bool shizukuPretendToBeGooglePlay = false, + List additionalAPKs = const [], + }) async { + if (firstTimeWithContext != null && + settingsProvider.beforeNewInstallsShareToAppVerifier && + (await getInstalledInfo('dev.soupslurpr.appverifier')) != null) { + XFile f = XFile.fromData( + file.file.readAsBytesSync(), + mimeType: 'application/vnd.android.package-archive', + ); + Fluttertoast.showToast( + msg: tr('appVerifierInstructionToast'), + toastLength: Toast.LENGTH_LONG, + ); + await Share.shareXFiles([f]); + } + var newInfo = await pm.getPackageArchiveInfo( + archiveFilePath: file.file.path, + ); + if (newInfo == null) { + try { + deleteFile(file.file); + for (var a in additionalAPKs) { + deleteFile(a.file); + } + } catch (e) { + // + } finally { + throw ObtainiumError(tr('badDownload')); + } + } + PackageInfo? appInfo = await getInstalledInfo(apps[file.appId]!.app.id); + logs.add( + 'Installing "${newInfo.packageName}" version "${newInfo.versionName}" versionCode "${newInfo.versionCode}"${appInfo != null ? ' (from existing version "${appInfo.versionName}" versionCode "${appInfo.versionCode}")' : ''}', + ); + if (appInfo != null && + newInfo.versionCode! < appInfo.versionCode! && + !(await canDowngradeApps())) { + throw DowngradeError(appInfo.versionCode!, newInfo.versionCode!); + } + if (needsBGWorkaround) { + // The below 'await' will never return if we are in a background process + // To work around this, we should assume the install will be successful + // So we update the app's installed version first as we will never get to the later code + // We can't conditionally get rid of the 'await' as this causes install fails (BG process times out) - see #896 + // TODO: When fixed, update this function and the calls to it accordingly + apps[file.appId]!.app.installedVersion = + apps[file.appId]!.app.latestVersion; + await saveApps([ + apps[file.appId]!.app, + ], attemptToCorrectInstallStatus: false); + } + int? code; + if (!settingsProvider.useShizuku) { + var allAPKs = [file.file.path]; + allAPKs.addAll(additionalAPKs.map((a) => a.file.path)); + code = await AndroidPackageInstaller.installApk( + apkFilePath: allAPKs.join(','), + ); + } else { + code = await ShizukuApkInstaller.installAPK( + file.file.uri.toString(), + shizukuPretendToBeGooglePlay ? "com.android.vending" : "", + ); + } + bool installed = false; + if (code != null && code != 0 && code != 3) { + try { + deleteFile(file.file); + } catch (e) { + // + } finally { + throw InstallError(code); + } + } else if (code == 0) { + installed = true; + apps[file.appId]!.app.installedVersion = + apps[file.appId]!.app.latestVersion; + file.file.delete(recursive: true); + } + await saveApps([apps[file.appId]!.app]); + return installed; + } + + Future getStorageRootPath() async { + return '/${(await getAppStorageDir()).uri.pathSegments.sublist(0, 3).join('/')}'; + } + + Future moveObbFile(File file, String appId) async { + if (!file.path.toLowerCase().endsWith('.obb')) return; + + // TODO: Does not support Android 11+ + if ((await DeviceInfoPlugin().androidInfo).version.sdkInt <= 29) { + await Permission.storage.request(); + } + + String obbDirPath = "${await getStorageRootPath()}/Android/obb/$appId"; + Directory(obbDirPath).createSync(recursive: true); + + String obbFileName = file.path.split("/").last; + await file.copy("$obbDirPath/$obbFileName"); + } + + void uninstallApp(String appId) async { + var intent = AndroidIntent( + action: 'android.intent.action.DELETE', + data: 'package:$appId', + flags: [Flag.FLAG_ACTIVITY_NEW_TASK], + package: 'vnd.android.package-archive', + ); + await intent.launch(); + } + + Future?> confirmAppFileUrl( + App app, + BuildContext? context, + bool pickAnyAsset, { + bool evenIfSingleChoice = false, + }) async { + var urlsToSelectFrom = app.apkUrls; + if (pickAnyAsset) { + urlsToSelectFrom = [...urlsToSelectFrom, ...app.otherAssetUrls]; + } + // If the App has more than one APK, the user should pick one (if context provided) + MapEntry? appFileUrl = + urlsToSelectFrom[app.preferredApkIndex >= 0 + ? app.preferredApkIndex + : 0]; + // get device supported architecture + List archs = (await DeviceInfoPlugin().androidInfo).supportedAbis; + + if ((urlsToSelectFrom.length > 1 || evenIfSingleChoice) && + context != null) { + appFileUrl = await showDialog( + // ignore: use_build_context_synchronously + context: context, + builder: (BuildContext ctx) { + return AppFilePicker( + app: app, + initVal: appFileUrl, + archs: archs, + pickAnyAsset: pickAnyAsset, + ); + }, + ); + } + getHost(String url) { + if (url == 'placeholder') { + return null; + } + var temp = Uri.parse(url).host.split('.'); + return temp.sublist(temp.length - 2).join('.'); + } + + // If the picked APK comes from an origin different from the source, get user confirmation (if context provided) + if (appFileUrl != null && + ![ + getHost(app.url), + 'placeholder', + ].contains(getHost(appFileUrl.value)) && + context != null) { + if (!(settingsProvider.hideAPKOriginWarning) && + await showDialog( + // ignore: use_build_context_synchronously + context: context, + builder: (BuildContext ctx) { + return APKOriginWarningDialog( + sourceUrl: app.url, + apkUrl: appFileUrl!.value, + ); + }, + ) != + true) { + appFileUrl = null; + } + } + return appFileUrl; + } + + // Given a list of AppIds, uses stored info about the apps to download APKs and install them + // If the APKs can be installed silently, they are + // If no BuildContext is provided, apps that require user interaction are ignored + // If user input is needed and the App is in the background, a notification is sent to get the user's attention + // Returns an array of Ids for Apps that were successfully downloaded, regardless of installation result + Future> downloadAndInstallLatestApps( + List appIds, + BuildContext? context, { + NotificationsProvider? notificationsProvider, + bool forceParallelDownloads = false, + bool useExisting = true, + }) async { + notificationsProvider = + notificationsProvider ?? context?.read(); + List appsToInstall = []; + List trackOnlyAppsToUpdate = []; + // For all specified Apps, filter out those for which: + // 1. A URL cannot be picked + // 2. That cannot be installed silently (IF no buildContext was given for interactive install) + for (var id in appIds) { + if (apps[id] == null) { + throw ObtainiumError(tr('appNotFound')); + } + MapEntry? apkUrl; + var trackOnly = apps[id]!.app.additionalSettings['trackOnly'] == true; + var refreshBeforeDownload = + apps[id]!.app.additionalSettings['refreshBeforeDownload'] == true || + apps[id]!.app.apkUrls.isNotEmpty && + apps[id]!.app.apkUrls.first.value == 'placeholder'; + if (refreshBeforeDownload) { + await checkUpdate(apps[id]!.app.id); + } + if (!trackOnly) { + // ignore: use_build_context_synchronously + apkUrl = await confirmAppFileUrl(apps[id]!.app, context, false); + } + if (apkUrl != null) { + int urlInd = apps[id]!.app.apkUrls + .map((e) => e.value) + .toList() + .indexOf(apkUrl.value); + if (urlInd >= 0 && urlInd != apps[id]!.app.preferredApkIndex) { + apps[id]!.app.preferredApkIndex = urlInd; + await saveApps([apps[id]!.app]); + } + if (context != null || await canInstallSilently(apps[id]!.app)) { + appsToInstall.add(id); + } + } + if (trackOnly) { + trackOnlyAppsToUpdate.add(id); + } + } + // Mark all specified track-only apps as latest + saveApps( + trackOnlyAppsToUpdate.map((e) { + var a = apps[e]!.app; + a.installedVersion = a.latestVersion; + return a; + }).toList(), + ); + + // Prepare to download+install Apps + MultiAppMultiError errors = MultiAppMultiError(); + List installedIds = []; + + // Move Obtainium to the end of the line (let all other apps update first) + appsToInstall = moveStrToEnd( + appsToInstall, + obtainiumId, + strB: obtainiumTempId, + ); + appsToInstall = moveStrToEnd(appsToInstall, '$obtainiumId.fdroid'); + + Future installFn( + String id, + bool willBeSilent, + DownloadedApk? downloadedFile, + DownloadedDir? downloadedDir, + ) async { + apps[id]?.downloadProgress = -1; + notifyListeners(); + try { + bool sayInstalled = true; + var contextIfNewInstall = apps[id]?.installedInfo == null + ? context + : null; + bool needBGWorkaround = + willBeSilent && context == null && !settingsProvider.useShizuku; + bool shizukuPretendToBeGooglePlay = + settingsProvider.shizukuPretendToBeGooglePlay || + apps[id]!.app.additionalSettings['shizukuPretendToBeGooglePlay'] == + true; + if (downloadedFile != null) { + if (needBGWorkaround) { + // ignore: use_build_context_synchronously + installApk( + downloadedFile, + contextIfNewInstall, + needsBGWorkaround: true, + shizukuPretendToBeGooglePlay: shizukuPretendToBeGooglePlay, + ); + } else { + // ignore: use_build_context_synchronously + sayInstalled = await installApk( + downloadedFile, + contextIfNewInstall, + shizukuPretendToBeGooglePlay: shizukuPretendToBeGooglePlay, + ); + } + } else { + if (needBGWorkaround) { + // ignore: use_build_context_synchronously + installApkDir( + downloadedDir!, + contextIfNewInstall, + needsBGWorkaround: true, + ); + } else { + // ignore: use_build_context_synchronously + sayInstalled = await installApkDir( + downloadedDir!, + contextIfNewInstall, + shizukuPretendToBeGooglePlay: shizukuPretendToBeGooglePlay, + ); + } + } + if (willBeSilent && context == null) { + if (!settingsProvider.useShizuku) { + notificationsProvider?.notify( + SilentUpdateAttemptNotification([apps[id]!.app], id: id.hashCode), + ); + } else { + notificationsProvider?.notify( + SilentUpdateNotification( + [apps[id]!.app], + sayInstalled, + id: id.hashCode, + ), + ); + } + } + if (sayInstalled) { + installedIds.add(id); + } + } finally { + apps[id]?.downloadProgress = null; + notifyListeners(); + } + } + + Future> downloadFn( + String id, { + bool skipInstalls = false, + }) async { + bool willBeSilent = false; + DownloadedApk? downloadedFile; + DownloadedDir? downloadedDir; + try { + var downloadedArtifact = + // ignore: use_build_context_synchronously + await downloadApp( + apps[id]!.app, + context, + notificationsProvider: notificationsProvider, + useExisting: useExisting, + ); + if (downloadedArtifact is DownloadedApk) { + downloadedFile = downloadedArtifact; + } else { + downloadedDir = downloadedArtifact as DownloadedDir; + } + id = downloadedFile?.appId ?? downloadedDir!.appId; + willBeSilent = await canInstallSilently(apps[id]!.app); + if (!settingsProvider.useShizuku) { + if (!(await settingsProvider.getInstallPermission(enforce: false))) { + throw ObtainiumError(tr('cancelled')); + } + } else { + switch ((await ShizukuApkInstaller.checkPermission())!) { + case 'binder_not_found': + throw ObtainiumError(tr('shizukuBinderNotFound')); + case 'old_shizuku': + throw ObtainiumError(tr('shizukuOld')); + case 'old_android_with_adb': + throw ObtainiumError(tr('shizukuOldAndroidWithADB')); + case 'denied': + throw ObtainiumError(tr('cancelled')); + } + } + if (!willBeSilent && context != null && !settingsProvider.useShizuku) { + // ignore: use_build_context_synchronously + await waitForUserToReturnToForeground(context); + } + } catch (e) { + errors.add(id, e, appName: apps[id]?.name); + } + return { + 'id': id, + 'willBeSilent': willBeSilent, + 'downloadedFile': downloadedFile, + 'downloadedDir': downloadedDir, + }; + } + + List> downloadResults = []; + if (forceParallelDownloads || !settingsProvider.parallelDownloads) { + for (var id in appsToInstall) { + downloadResults.add(await downloadFn(id)); + } + } else { + downloadResults = await Future.wait( + appsToInstall.map((id) => downloadFn(id, skipInstalls: true)), + ); + } + for (var res in downloadResults) { + if (!errors.appIdNames.containsKey(res['id'])) { + try { + await installFn( + res['id'] as String, + res['willBeSilent'] as bool, + res['downloadedFile'] as DownloadedApk?, + res['downloadedDir'] as DownloadedDir?, + ); + } catch (e) { + var id = res['id'] as String; + errors.add(id, e, appName: apps[id]?.name); + } + } + } + + if (errors.idsByErrorString.isNotEmpty) { + throw errors; + } + + return installedIds; + } + + Future> downloadAppAssets( + List appIds, + BuildContext context, { + bool forceParallelDownloads = false, + }) async { + NotificationsProvider notificationsProvider = context + .read(); + List, App>> filesToDownload = []; + for (var id in appIds) { + if (apps[id] == null) { + throw ObtainiumError(tr('appNotFound')); + } + MapEntry? fileUrl; + var refreshBeforeDownload = + apps[id]!.app.additionalSettings['refreshBeforeDownload'] == true || + apps[id]!.app.apkUrls.isNotEmpty && + apps[id]!.app.apkUrls.first.value == 'placeholder'; + if (refreshBeforeDownload) { + await checkUpdate(apps[id]!.app.id); + } + if (apps[id]!.app.apkUrls.isNotEmpty || + apps[id]!.app.otherAssetUrls.isNotEmpty) { + // ignore: use_build_context_synchronously + MapEntry? tempFileUrl = await confirmAppFileUrl( + apps[id]!.app, + context, + true, + evenIfSingleChoice: true, + ); + if (tempFileUrl != null) { + var s = SourceProvider().getSource( + apps[id]!.app.url, + overrideSource: apps[id]!.app.overrideSource, + ); + var additionalSettingsPlusSourceConfig = { + ...apps[id]!.app.additionalSettings, + ...(await s.getSourceConfigValues( + apps[id]!.app.additionalSettings, + settingsProvider, + )), + }; + fileUrl = MapEntry( + tempFileUrl.key, + await s.assetUrlPrefetchModifier( + await s.generalReqPrefetchModifier( + tempFileUrl.value, + additionalSettingsPlusSourceConfig, + ), + apps[id]!.app.url, + additionalSettingsPlusSourceConfig, + ), + ); + } + } + if (fileUrl != null) { + filesToDownload.add(MapEntry(fileUrl, apps[id]!.app)); + } + } + + // Prepare to download+install Apps + MultiAppMultiError errors = MultiAppMultiError(); + List downloadedIds = []; + + Future downloadFn(MapEntry fileUrl, App app) async { + try { + String downloadPath = '${await getStorageRootPath()}/Download'; + await downloadFile( + fileUrl.value, + fileUrl.key, + true, + (double? progress) { + notificationsProvider.notify( + DownloadNotification(fileUrl.key, progress?.ceil() ?? 0), + ); + }, + downloadPath, + headers: await SourceProvider() + .getSource(app.url, overrideSource: app.overrideSource) + .getRequestHeaders( + app.additionalSettings, + forAPKDownload: fileUrl.key.endsWith('.apk') ? true : false, + ), + useExisting: false, + allowInsecure: app.additionalSettings['allowInsecure'] == true, + logs: logs, + ); + notificationsProvider.notify( + DownloadedNotification(fileUrl.key, fileUrl.value), + ); + } catch (e) { + errors.add(fileUrl.key, e); + } finally { + notificationsProvider.cancel(DownloadNotification(fileUrl.key, 0).id); + } + } + + if (forceParallelDownloads || !settingsProvider.parallelDownloads) { + for (var urlWithApp in filesToDownload) { + await downloadFn(urlWithApp.key, urlWithApp.value); + } + } else { + await Future.wait( + filesToDownload.map( + (urlWithApp) => downloadFn(urlWithApp.key, urlWithApp.value), + ), + ); + } + if (errors.idsByErrorString.isNotEmpty) { + throw errors; + } + return downloadedIds; + } + + Future getAppsDir() async { + Directory appsDir = Directory( + '${(await getAppStorageDir()).path}/app_data', + ); + if (!appsDir.existsSync()) { + appsDir.createSync(); + } + return appsDir; + } + + bool isVersionDetectionPossible(AppInMemory? app) { + if (app?.app == null) { + return false; + } + var source = SourceProvider().getSource( + app!.app.url, + overrideSource: app.app.overrideSource, + ); + var naiveStandardVersionDetection = + app.app.additionalSettings['naiveStandardVersionDetection'] == true || + source.naiveStandardVersionDetection; + String? realInstalledVersion = + app.app.additionalSettings['useVersionCodeAsOSVersion'] == true + ? app.installedInfo?.versionCode.toString() + : app.installedInfo?.versionName; + bool isHTMLWithNoVersionDetection = + (source.runtimeType == HTML().runtimeType && + (app.app.additionalSettings['versionExtractionRegEx'] as String?) + ?.isNotEmpty != + true); + bool isDirectAPKLink = source.runtimeType == DirectAPKLink().runtimeType; + return app.app.additionalSettings['trackOnly'] != true && + app.app.additionalSettings['releaseDateAsVersion'] != true && + !isHTMLWithNoVersionDetection && + !isDirectAPKLink && + realInstalledVersion != null && + app.app.installedVersion != null && + (reconcileVersionDifferences( + realInstalledVersion, + app.app.installedVersion!, + ) != + null || + naiveStandardVersionDetection); + } + + // Given an App and it's on-device info... + // Reconcile unexpected differences between its reported installed version, real installed version, and reported latest version + App? getCorrectedInstallStatusAppIfPossible( + App app, + PackageInfo? installedInfo, + ) { + var modded = false; + var trackOnly = app.additionalSettings['trackOnly'] == true; + var versionDetectionIsStandard = + app.additionalSettings['versionDetection'] == true; + var naiveStandardVersionDetection = + app.additionalSettings['naiveStandardVersionDetection'] == true || + SourceProvider() + .getSource(app.url, overrideSource: app.overrideSource) + .naiveStandardVersionDetection; + String? realInstalledVersion = + app.additionalSettings['useVersionCodeAsOSVersion'] == true + ? installedInfo?.versionCode.toString() + : installedInfo?.versionName; + // FIRST, COMPARE THE APP'S REPORTED AND REAL INSTALLED VERSIONS, WHERE ONE IS NULL + if (installedInfo == null && app.installedVersion != null && !trackOnly) { + // App says it's installed but isn't really (and isn't track only) - set to not installed + app.installedVersion = null; + modded = true; + } else if (realInstalledVersion != null && app.installedVersion == null) { + // App says it's not installed but really is - set to installed and use real package versionName (or versionCode if chosen) + app.installedVersion = realInstalledVersion; + modded = true; + } + // SECOND, RECONCILE DIFFERENCES BETWEEN THE APP'S REPORTED AND REAL INSTALLED VERSIONS, WHERE NEITHER IS NULL + if (realInstalledVersion != null && + realInstalledVersion != app.installedVersion && + versionDetectionIsStandard) { + // App's reported version and real version don't match (and it uses standard version detection) + // If they share a standard format (and are still different under it), update the reported version accordingly + var correctedInstalledVersion = reconcileVersionDifferences( + realInstalledVersion, + app.installedVersion!, + ); + if (correctedInstalledVersion?.key == false) { + app.installedVersion = correctedInstalledVersion!.value; + modded = true; + } else if (naiveStandardVersionDetection) { + app.installedVersion = realInstalledVersion; + modded = true; + } + } + // THIRD, RECONCILE THE APP'S REPORTED INSTALLED AND LATEST VERSIONS + if (app.installedVersion != null && + app.installedVersion != app.latestVersion && + versionDetectionIsStandard) { + // App's reported installed and latest versions don't match (and it uses standard version detection) + // If they share a standard format, make sure the App's reported installed version uses that format + var correctedInstalledVersion = reconcileVersionDifferences( + app.installedVersion!, + app.latestVersion, + ); + if (correctedInstalledVersion?.key == true) { + app.installedVersion = correctedInstalledVersion!.value; + modded = true; + } + } + // FOURTH, DISABLE VERSION DETECTION IF ENABLED AND THE REPORTED/REAL INSTALLED VERSIONS ARE NOT STANDARDIZED + if (installedInfo != null && + versionDetectionIsStandard && + !isVersionDetectionPossible( + AppInMemory(app, null, installedInfo, null), + )) { + app.additionalSettings['versionDetection'] = false; + app.installedVersion = app.latestVersion; + logs.add('Could not reconcile version formats for: ${app.id}'); + modded = true; + } + + return modded ? app : null; + } + + MapEntry? reconcileVersionDifferences( + String templateVersion, + String comparisonVersion, + ) { + // Returns null if the versions don't share a common standard format + // Returns if they share a common format and are equal + // Returns if they share a common format but are not equal + // templateVersion must fully match a standard format, while comparisonVersion can have a substring match + var templateVersionFormats = findStandardFormatsForVersion( + templateVersion, + true, + ); + var comparisonVersionFormats = findStandardFormatsForVersion( + comparisonVersion, + true, + ); + if (comparisonVersionFormats.isEmpty) { + comparisonVersionFormats = findStandardFormatsForVersion( + comparisonVersion, + false, + ); + } + var commonStandardFormats = templateVersionFormats.intersection( + comparisonVersionFormats, + ); + if (commonStandardFormats.isEmpty) { + return null; + } + for (String pattern in commonStandardFormats) { + if (doStringsMatchUnderRegEx( + pattern, + comparisonVersion, + templateVersion, + )) { + return MapEntry(true, comparisonVersion); + } + } + return MapEntry(false, templateVersion); + } + + bool doStringsMatchUnderRegEx(String pattern, String value1, String value2) { + var r = RegExp(pattern); + var m1 = r.firstMatch(value1); + var m2 = r.firstMatch(value2); + return m1 != null && m2 != null + ? value1.substring(m1.start, m1.end) == + value2.substring(m2.start, m2.end) + : false; + } + + Future loadApps({String? singleId}) async { + while (loadingApps) { + await Future.delayed(const Duration(microseconds: 1)); + } + loadingApps = true; + notifyListeners(); + var sp = SourceProvider(); + List> errors = []; + var installedAppsData = await getAllInstalledInfo(); + List removedAppIds = []; + await Future.wait( + (await getAppsDir()) // Parse Apps from JSON + .listSync() + .map((item) async { + App? app; + if (item.path.toLowerCase().endsWith('.json') && + (singleId == null || + item.path.split('/').last.toLowerCase() == + '${singleId.toLowerCase()}.json')) { + try { + app = App.fromJson( + jsonDecode(File(item.path).readAsStringSync()), + ); + } catch (err) { + if (err is FormatException) { + logs.add( + 'Corrupt JSON when loading App (will be ignored): $e', + ); + item.renameSync('${item.path}.corrupt'); + } else { + rethrow; + } + } + } + if (app != null) { + // Save the app to the in-memory list without grabbing any OS info first + apps.update( + app.id, + (value) => AppInMemory( + app!, + value.downloadProgress, + value.installedInfo, + value.icon, + ), + ifAbsent: () => AppInMemory(app!, null, null, null), + ); + notifyListeners(); + try { + // Try getting the app's source to ensure no invalid apps get loaded + sp.getSource(app.url, overrideSource: app.overrideSource); + // If the app is installed, grab its OS data and reconcile install statuses + PackageInfo? installedInfo; + try { + installedInfo = installedAppsData.firstWhere( + (i) => i.packageName == app!.id, + ); + } catch (e) { + // If the app isn't installed the above throws an error + } + // Reconcile differences between the installed and recorded install info + var moddedApp = getCorrectedInstallStatusAppIfPossible( + app, + installedInfo, + ); + if (moddedApp != null) { + app = moddedApp; + // Note the app ID if it was uninstalled externally + if (moddedApp.installedVersion == null) { + removedAppIds.add(moddedApp.id); + } + } + // Update the app in memory with install info and corrections + apps.update( + app.id, + (value) => AppInMemory( + app!, + value.downloadProgress, + installedInfo, + value.icon, + ), + ifAbsent: () => AppInMemory(app!, null, installedInfo, null), + ); + notifyListeners(); + } catch (e) { + errors.add([app!.id, app.finalName, e.toString()]); + } + } + }), + ); + if (errors.isNotEmpty) { + removeApps(errors.map((e) => e[0]).toList()); + NotificationsProvider().notify( + AppsRemovedNotification(errors.map((e) => [e[1], e[2]]).toList()), + ); + } + // Delete externally uninstalled Apps if needed + if (removedAppIds.isNotEmpty) { + if (removedAppIds.isNotEmpty) { + if (settingsProvider.removeOnExternalUninstall) { + await removeApps(removedAppIds); + } + } + } + loadingApps = false; + notifyListeners(); + } + + Future updateAppIcon(String? appId, {bool ignoreCache = false}) async { + if (apps[appId]?.icon == null) { + var cachedIcon = File('${iconsCacheDir.path}/$appId.png'); + var alreadyCached = cachedIcon.existsSync() && !ignoreCache; + var icon = alreadyCached + ? (await cachedIcon.readAsBytes()) + : (await apps[appId]?.installedInfo?.applicationInfo?.getAppIcon()); + if (icon != null && !alreadyCached) { + cachedIcon.writeAsBytes(icon.toList()); + } + if (icon != null) { + apps.update( + apps[appId]!.app.id, + (value) => AppInMemory( + apps[appId]!.app, + value.downloadProgress, + value.installedInfo, + icon, + ), + ifAbsent: () => AppInMemory( + apps[appId]!.app, + null, + apps[appId]?.installedInfo, + icon, + ), + ); + notifyListeners(); + } + } + } + + Future saveApps( + List apps, { + bool attemptToCorrectInstallStatus = true, + bool onlyIfExists = true, + }) async { + attemptToCorrectInstallStatus = attemptToCorrectInstallStatus; + await Future.wait( + apps.map((a) async { + var app = a.deepCopy(); + PackageInfo? info = await getInstalledInfo(app.id); + var icon = await info?.applicationInfo?.getAppIcon(); + app.name = await (info?.applicationInfo?.getAppLabel()) ?? app.name; + if (attemptToCorrectInstallStatus) { + app = getCorrectedInstallStatusAppIfPossible(app, info) ?? app; + } + if (!onlyIfExists || this.apps.containsKey(app.id)) { + String filePath = '${(await getAppsDir()).path}/${app.id}.json'; + File( + '$filePath.tmp', + ).writeAsStringSync(jsonEncode(app.toJson())); // #2089 + File('$filePath.tmp').renameSync(filePath); + } + try { + this.apps.update( + app.id, + (value) => AppInMemory(app, value.downloadProgress, info, icon), + ifAbsent: onlyIfExists + ? null + : () => AppInMemory(app, null, info, icon), + ); + } catch (e) { + if (e is! ArgumentError || e.name != 'key') { + rethrow; + } + } + }), + ); + notifyListeners(); + export(isAuto: true); + } + + Future removeApps(List appIds) async { + var apkFiles = APKDir.listSync(); + await Future.wait( + appIds.map((appId) async { + File file = File('${(await getAppsDir()).path}/$appId.json'); + if (file.existsSync()) { + deleteFile(file); + } + apkFiles + .where( + (element) => element.path.split('/').last.startsWith('$appId-'), + ) + .forEach((element) { + element.delete(recursive: true); + }); + if (apps.containsKey(appId)) { + apps.remove(appId); + } + }), + ); + if (appIds.isNotEmpty) { + notifyListeners(); + export(isAuto: true); + } + } + + Future removeAppsWithModal(BuildContext context, List apps) async { + var showUninstallOption = apps + .where( + (a) => + a.installedVersion != null && + a.additionalSettings['trackOnly'] != true, + ) + .isNotEmpty; + var values = await showDialog( + context: context, + builder: (BuildContext ctx) { + return GeneratedFormModal( + primaryActionColour: Theme.of(context).colorScheme.error, + title: plural('removeAppQuestion', apps.length), + items: !showUninstallOption + ? [] + : [ + [ + GeneratedFormSwitch( + 'rmAppEntry', + label: tr('removeFromObtainium'), + defaultValue: true, + ), + ], + [ + GeneratedFormSwitch( + 'uninstallApp', + label: tr('uninstallFromDevice'), + ), + ], + ], + initValid: true, + ); + }, + ); + if (values != null) { + bool uninstall = values['uninstallApp'] == true && showUninstallOption; + bool remove = values['rmAppEntry'] == true || !showUninstallOption; + if (uninstall) { + for (var i = 0; i < apps.length; i++) { + if (apps[i].installedVersion != null) { + uninstallApp(apps[i].id); + apps[i].installedVersion = null; + } + } + await saveApps(apps, attemptToCorrectInstallStatus: false); + } + if (remove) { + await removeApps(apps.map((e) => e.id).toList()); + } + return uninstall || remove; + } + return false; + } + + Future openAppSettings(String appId) async { + final AndroidIntent intent = AndroidIntent( + action: 'action_application_details_settings', + data: 'package:$appId', + ); + await intent.launch(); + } + + void addMissingCategories(SettingsProvider settingsProvider) { + var cats = settingsProvider.categories; + apps.forEach((key, value) { + for (var c in value.app.categories) { + if (!cats.containsKey(c)) { + cats[c] = generateRandomLightColor().value; + } + } + }); + settingsProvider.setCategories(cats, appsProvider: this); + } + + Future checkUpdate(String appId) async { + App? currentApp = apps[appId]!.app; + SourceProvider sourceProvider = SourceProvider(); + App newApp = await sourceProvider.getApp( + sourceProvider.getSource( + currentApp.url, + overrideSource: currentApp.overrideSource, + ), + currentApp.url, + currentApp.additionalSettings, + currentApp: currentApp, + ); + if (currentApp.preferredApkIndex < newApp.apkUrls.length) { + newApp.preferredApkIndex = currentApp.preferredApkIndex; + } + await saveApps([newApp]); + return newApp.latestVersion != currentApp.latestVersion ? newApp : null; + } + + List getAppsSortedByUpdateCheckTime({ + DateTime? ignoreAppsCheckedAfter, + bool onlyCheckInstalledOrTrackOnlyApps = false, + }) { + List appIds = apps.values + .where( + (app) => + app.app.lastUpdateCheck == null || + ignoreAppsCheckedAfter == null || + app.app.lastUpdateCheck!.isBefore(ignoreAppsCheckedAfter), + ) + .where((app) { + if (!onlyCheckInstalledOrTrackOnlyApps) { + return true; + } else { + return app.app.installedVersion != null || + app.app.additionalSettings['trackOnly'] == true; + } + }) + .map((e) => e.app.id) + .toList(); + appIds.sort( + (a, b) => + (apps[a]!.app.lastUpdateCheck ?? + DateTime.fromMicrosecondsSinceEpoch(0)) + .compareTo( + apps[b]!.app.lastUpdateCheck ?? + DateTime.fromMicrosecondsSinceEpoch(0), + ), + ); + return appIds; + } + + Future> checkUpdates({ + DateTime? ignoreAppsCheckedAfter, + bool throwErrorsForRetry = false, + List? specificIds, + SettingsProvider? sp, + }) async { + SettingsProvider settingsProvider = sp ?? this.settingsProvider; + List updates = []; + MultiAppMultiError errors = MultiAppMultiError(); + if (!gettingUpdates) { + gettingUpdates = true; + try { + List appIds = getAppsSortedByUpdateCheckTime( + ignoreAppsCheckedAfter: ignoreAppsCheckedAfter, + onlyCheckInstalledOrTrackOnlyApps: + settingsProvider.onlyCheckInstalledOrTrackOnlyApps, + ); + if (specificIds != null) { + appIds = appIds.where((aId) => specificIds.contains(aId)).toList(); + } + await Future.wait( + appIds.map((appId) async { + App? newApp; + try { + newApp = await checkUpdate(appId); + } catch (e) { + if ((e is RateLimitError || e is SocketException) && + throwErrorsForRetry) { + rethrow; + } + errors.add(appId, e, appName: apps[appId]?.name); + } + if (newApp != null) { + updates.add(newApp); + } + }), + eagerError: true, + ); + } finally { + gettingUpdates = false; + } + } + if (errors.idsByErrorString.isNotEmpty) { + var res = {}; + res['errors'] = errors; + res['updates'] = updates; + throw res; + } + return updates; + } + + List findExistingUpdates({ + bool installedOnly = false, + bool nonInstalledOnly = false, + }) { + List updateAppIds = []; + List appIds = apps.keys.toList(); + for (int i = 0; i < appIds.length; i++) { + App? app = apps[appIds[i]]!.app; + if (app.installedVersion != app.latestVersion && + (!installedOnly || !nonInstalledOnly)) { + if ((app.installedVersion == null && + (nonInstalledOnly || !installedOnly) || + (app.installedVersion != null && + (installedOnly || !nonInstalledOnly)))) { + updateAppIds.add(app.id); + } + } + } + return updateAppIds; + } + + Map generateExportJSON({ + List? appIds, + int? overrideExportSettings, + }) { + Map finalExport = {}; + finalExport['apps'] = apps.values + .where((e) { + if (appIds == null) { + return true; + } else { + return appIds.contains(e.app.id); + } + }) + .map((e) => e.app.toJson()) + .toList(); + int shouldExportSettings = settingsProvider.exportSettings; + if (overrideExportSettings != null) { + shouldExportSettings = overrideExportSettings; + } + if (shouldExportSettings > 0) { + var settingsValueKeys = settingsProvider.prefs?.getKeys(); + if (shouldExportSettings < 2) { + settingsValueKeys?.removeWhere((k) => k.endsWith('-creds')); + } + finalExport['settings'] = Map.fromEntries( + (settingsValueKeys + ?.map((key) => MapEntry(key, settingsProvider.prefs?.get(key))) + .toList()) ?? + [], + ); + } + return finalExport; + } + + Future export({ + bool pickOnly = false, + isAuto = false, + SettingsProvider? sp, + }) async { + SettingsProvider settingsProvider = sp ?? this.settingsProvider; + var exportDir = await settingsProvider.getExportDir(); + if (isAuto) { + if (settingsProvider.autoExportOnChanges != true) { + return null; + } + if (exportDir == null) { + return null; + } + var files = await saf + .listFiles(exportDir, columns: [saf.DocumentFileColumn.id]) + .where((f) => f.uri.pathSegments.last.endsWith('-auto.json')) + .toList(); + if (files.isNotEmpty) { + for (var f in files) { + saf.delete(f.uri); + } + } + } + if (exportDir == null || pickOnly) { + await settingsProvider.pickExportDir(); + exportDir = await settingsProvider.getExportDir(); + } + if (exportDir == null) { + return null; + } + String? returnPath; + if (!pickOnly) { + var encoder = const JsonEncoder.withIndent(" "); + Map finalExport = generateExportJSON(); + var result = await saf.createFile( + exportDir, + displayName: + '${tr('obtainiumExportHyphenatedLowercase')}-${DateTime.now().toIso8601String().replaceAll(':', '-')}${isAuto ? '-auto' : ''}.json', + mimeType: 'application/json', + bytes: Uint8List.fromList(utf8.encode(encoder.convert(finalExport))), + ); + if (result == null) { + throw ObtainiumError(tr('unexpectedError')); + } + returnPath = exportDir.pathSegments + .join('/') + .replaceFirst('tree/primary:', '/'); + } + return returnPath; + } + + Future, bool>> import(String appsJSON) async { + var decodedJSON = jsonDecode(appsJSON); + var newFormat = decodedJSON is! List; + List importedApps = + ((newFormat ? decodedJSON['apps'] : decodedJSON) as List) + .map((e) => App.fromJson(e)) + .toList(); + while (loadingApps) { + await Future.delayed(const Duration(microseconds: 1)); + } + for (App a in importedApps) { + var installedInfo = await getInstalledInfo(a.id, printErr: false); + a.installedVersion = + a.additionalSettings['useVersionCodeAsOSVersion'] == true + ? installedInfo?.versionCode.toString() + : installedInfo?.versionName; + } + await saveApps(importedApps, onlyIfExists: false); + notifyListeners(); + if (newFormat && decodedJSON['settings'] != null) { + var settingsMap = decodedJSON['settings'] as Map; + settingsMap.forEach((key, value) { + if (value is int) { + settingsProvider.prefs?.setInt(key, value); + } else if (value is double) { + settingsProvider.prefs?.setDouble(key, value); + } else if (value is bool) { + settingsProvider.prefs?.setBool(key, value); + } else if (value is List) { + settingsProvider.prefs?.setStringList( + key, + value.map((e) => e as String).toList(), + ); + } else { + settingsProvider.prefs?.setString(key, value as String); + } + }); + } + return MapEntry, bool>( + importedApps, + newFormat && decodedJSON['settings'] != null, + ); + } + + @override + void dispose() { + foregroundSubscription?.cancel(); + super.dispose(); + } + + Future>> addAppsByURL( + List urls, { + AppSource? sourceOverride, + }) async { + List results = await SourceProvider().getAppsByURLNaive( + urls, + alreadyAddedUrls: apps.values.map((e) => e.app.url).toList(), + sourceOverride: sourceOverride, + ); + List pps = results[0]; + Map errorsMap = results[1]; + for (var app in pps) { + if (apps.containsKey(app.id)) { + errorsMap.addAll({app.id: tr('appAlreadyAdded')}); + } else { + await saveApps([app], onlyIfExists: false); + } + } + List> errors = errorsMap.keys + .map((e) => [e, errorsMap[e].toString()]) + .toList(); + return errors; + } +} + +class AppFilePicker extends StatefulWidget { + const AppFilePicker({ + super.key, + required this.app, + this.initVal, + this.archs, + this.pickAnyAsset = false, + }); + + final App app; + final MapEntry? initVal; + final List? archs; + final bool pickAnyAsset; + + @override + State createState() => _AppFilePickerState(); +} + +class _AppFilePickerState extends State { + MapEntry? fileUrl; + + @override + Widget build(BuildContext context) { + fileUrl ??= widget.initVal; + var urlsToSelectFrom = widget.app.apkUrls; + if (widget.pickAnyAsset) { + urlsToSelectFrom = [...urlsToSelectFrom, ...widget.app.otherAssetUrls]; + } + return AlertDialog( + scrollable: true, + title: Text( + widget.pickAnyAsset + ? tr('selectX', args: [lowerCaseIfEnglish(tr('releaseAsset'))]) + : tr('pickAnAPK'), + ), + content: Column( + children: [ + urlsToSelectFrom.length > 1 + ? Text( + tr('appHasMoreThanOnePackage', args: [widget.app.finalName]), + ) + : const SizedBox.shrink(), + const SizedBox(height: 16), + ...urlsToSelectFrom.map( + (u) => RadioListTile( + title: Text(u.key), + value: u.value, + groupValue: fileUrl!.value, + onChanged: (String? val) { + setState(() { + fileUrl = urlsToSelectFrom.where((e) => e.value == val).first; + }); + }, + ), + ), + if (widget.archs != null) const SizedBox(height: 16), + if (widget.archs != null) + Text( + widget.archs!.length == 1 + ? tr('deviceSupportsXArch', args: [widget.archs![0]]) + : tr('deviceSupportsFollowingArchs') + + list2FriendlyString( + widget.archs!.map((e) => '\'$e\'').toList(), + ), + style: const TextStyle(fontStyle: FontStyle.italic, fontSize: 12), + ), + ], + ), + actions: [ + TextButton( + onPressed: () { + Navigator.of(context).pop(null); + }, + child: Text(tr('cancel')), + ), + TextButton( + onPressed: () { + HapticFeedback.selectionClick(); + Navigator.of(context).pop(fileUrl); + }, + child: Text(tr('continue')), + ), + ], + ); + } +} + +class APKOriginWarningDialog extends StatefulWidget { + const APKOriginWarningDialog({ + super.key, + required this.sourceUrl, + required this.apkUrl, + }); + + final String sourceUrl; + final String apkUrl; + + @override + State createState() => _APKOriginWarningDialogState(); +} + +class _APKOriginWarningDialogState extends State { + @override + Widget build(BuildContext context) { + return AlertDialog( + scrollable: true, + title: Text(tr('warning')), + content: Text( + tr( + 'sourceIsXButPackageFromYPrompt', + args: [ + Uri.parse(widget.sourceUrl).host, + Uri.parse(widget.apkUrl).host, + ], + ), + ), + actions: [ + TextButton( + onPressed: () { + Navigator.of(context).pop(null); + }, + child: Text(tr('cancel')), + ), + TextButton( + onPressed: () { + HapticFeedback.selectionClick(); + Navigator.of(context).pop(true); + }, + child: Text(tr('continue')), + ), + ], + ); + } +} + +/// Background updater function +/// +/// @param List>? toCheck: The appIds to check for updates (with the number of previous attempts made per appid) (defaults to all apps) +/// +/// @param List? toInstall: The appIds to attempt to update (if empty - which is the default - all pending updates are taken) +/// +/// When toCheck is empty, the function is in "install mode" (else it is in "update mode"). +/// In update mode, all apps in toCheck are checked for updates (in parallel). +/// If an update is available and it cannot be installed silently, the user is notified of the available update. +/// If there are any errors, we recursively call the same function with retry count for the relevant apps decremented (if zero, the user is notified). +/// +/// Once all update checks are complete, the task is run again in install mode. +/// In this mode, all pending silent updates are downloaded (in parallel) and installed in the background. +/// If there is an error, the user is notified. +/// +Future bgUpdateCheck(String taskId, Map? params) async { + // ignore: avoid_print + print('BG task started $taskId: ${params.toString()}'); + WidgetsFlutterBinding.ensureInitialized(); + await EasyLocalization.ensureInitialized(); + await loadTranslations(); + + LogsProvider logs = LogsProvider(); + NotificationsProvider notificationsProvider = NotificationsProvider(); + AppsProvider appsProvider = AppsProvider(isBg: true); + await appsProvider.loadApps(); + + int maxAttempts = 4; + int maxRetryWaitSeconds = 5; + + var netResult = await (Connectivity().checkConnectivity()); + if (netResult.contains(ConnectivityResult.none) || + netResult.isEmpty || + (netResult.contains(ConnectivityResult.vpn) && netResult.length == 1)) { + logs.add('BG update task: No network.'); + return; + } + + params ??= {}; + + bool firstEverUpdateTask = + DateTime.fromMillisecondsSinceEpoch( + 0, + ).compareTo(appsProvider.settingsProvider.lastCompletedBGCheckTime) == + 0; + + List> toCheck = >[ + ...(params['toCheck'] + ?.map( + (entry) => MapEntry( + entry['key'] as String, + entry['value'] as int, + ), + ) + .toList() ?? + appsProvider + .getAppsSortedByUpdateCheckTime( + ignoreAppsCheckedAfter: params['toCheck'] == null + ? firstEverUpdateTask + ? null + : appsProvider.settingsProvider.lastCompletedBGCheckTime + : null, + onlyCheckInstalledOrTrackOnlyApps: appsProvider + .settingsProvider + .onlyCheckInstalledOrTrackOnlyApps, + ) + .map((e) => MapEntry(e, 0))), + ]; + List> toInstall = >[ + ...(params['toInstall'] + ?.map( + (entry) => MapEntry( + entry['key'] as String, + entry['value'] as int, + ), + ) + .toList() ?? + (>>[])), + ]; + + var networkRestricted = + appsProvider.settingsProvider.bgUpdatesOnWiFiOnly && + !netResult.contains(ConnectivityResult.wifi) && + !netResult.contains(ConnectivityResult.ethernet); + + var chargingRestricted = + appsProvider.settingsProvider.bgUpdatesWhileChargingOnly && + (await Battery().batteryState) != BatteryState.charging; + + if (networkRestricted) { + logs.add('BG update task: Network restriction in effect.'); + } + + if (chargingRestricted) { + logs.add('BG update task: Charging restriction in effect.'); + } + + if (toCheck.isNotEmpty) { + // Task is either in update mode or install mode + // If in update mode, we check for updates. + // We divide the results into 4 groups: + // - toNotify - Apps with updates that the user will be notified about (can't be silently installed) + // - toThrow - Apps with update check errors that the user will be notified about (no retry) + // After grouping the updates, we take care of toNotify and toThrow first + // Then we run the function again in install mode (toCheck is empty) + + var enoughTimePassed = + appsProvider.settingsProvider.updateInterval != 0 && + appsProvider.settingsProvider.lastCompletedBGCheckTime + .add( + Duration(minutes: appsProvider.settingsProvider.updateInterval), + ) + .isBefore(DateTime.now()); + if (!enoughTimePassed) { + // ignore: avoid_print + print( + 'BG update task: Too early for another check (last check was ${appsProvider.settingsProvider.lastCompletedBGCheckTime.toIso8601String()}, interval is ${appsProvider.settingsProvider.updateInterval}).', + ); + return; + } + + logs.add('BG update task: Started (${toCheck.length}).'); + + // Init. vars. + List updates = []; // All updates found (silent and non-silent) + List toNotify = + []; // All non-silent updates that the user will be notified about + List> toRetry = + []; // All apps that got errors while checking + var retryAfterXSeconds = 0; + MultiAppMultiError? + errors; // All errors including those that will lead to a retry + MultiAppMultiError toThrow = + MultiAppMultiError(); // All errors that will not lead to a retry, just a notification + CheckingUpdatesNotification notif = CheckingUpdatesNotification( + plural('apps', toCheck.length), + ); // The notif. to show while checking + + try { + // Check for updates + notificationsProvider.notify(notif, cancelExisting: true); + updates = await appsProvider.checkUpdates( + specificIds: toCheck.map((e) => e.key).toList(), + sp: appsProvider.settingsProvider, + ); + } catch (e) { + if (e is Map) { + updates = e['updates']; + errors = e['errors']; + errors!.rawErrors.forEach((key, err) { + logs.add( + 'BG update task: Got error on checking for $key \'${err.toString()}\'.', + ); + + var toCheckApp = toCheck.where((element) => element.key == key).first; + if (toCheckApp.value < maxAttempts) { + toRetry.add(MapEntry(toCheckApp.key, toCheckApp.value + 1)); + // Next task interval is based on the error with the longest retry time + int minRetryIntervalForThisApp = err is RateLimitError + ? (err.remainingMinutes * 60) + : e is ClientException + ? (15 * 60) + : (toCheckApp.value + 1); + if (minRetryIntervalForThisApp > maxRetryWaitSeconds) { + minRetryIntervalForThisApp = maxRetryWaitSeconds; + } + if (minRetryIntervalForThisApp > retryAfterXSeconds) { + retryAfterXSeconds = minRetryIntervalForThisApp; + } + } else { + if (err is! RateLimitError) { + toThrow.add(key, err, appName: errors?.appIdNames[key]); + } + } + }); + } else { + // We don't expect to ever get here in any situation so no need to catch (but log it in case) + logs.add('Fatal error in BG update task: ${e.toString()}'); + rethrow; + } + } finally { + notificationsProvider.cancel(notif.id); + } + + // Filter out updates that will be installed silently (the rest go into toNotify) + for (var i = 0; i < updates.length; i++) { + var canInstallSilently = await appsProvider.canInstallSilently( + updates[i], + ); + if (networkRestricted || chargingRestricted || !canInstallSilently) { + if (updates[i].additionalSettings['skipUpdateNotifications'] != true) { + logs.add( + 'BG update task notifying for ${updates[i].id} (networkRestricted $networkRestricted, chargingRestricted: $chargingRestricted, canInstallSilently: $canInstallSilently).', + ); + toNotify.add(updates[i]); + } + } + } + + // Send the update notification + if (toNotify.isNotEmpty) { + notificationsProvider.notify(UpdateNotification(toNotify)); + } + + // Send the error notifications (grouped by error string) + if (toThrow.rawErrors.isNotEmpty) { + for (var element in toThrow.idsByErrorString.entries) { + notificationsProvider.notify( + ErrorCheckingUpdatesNotification( + errors!.errorsAppsString(element.key, element.value), + id: Random().nextInt(10000), + ), + ); + } + } + // if there are update checks to retry, schedule a retry task + logs.add('BG update task: Done checking for updates.'); + if (toRetry.isNotEmpty) { + logs.add( + 'BG update task $taskId: Will retry in $retryAfterXSeconds seconds (${toRetry.length} to retry, ${toInstall.length} to install).', + ); + return await bgUpdateCheck(taskId, { + 'toCheck': toRetry + .map((entry) => {'key': entry.key, 'value': entry.value}) + .toList(), + 'toInstall': toInstall + .map((entry) => {'key': entry.key, 'value': entry.value}) + .toList(), + }); + } else { + // If there are no more update checks, call the function in install mode + logs.add( + 'BG update task: Done checking for updates (${toRetry.length} to retry, ${toInstall.length} to install).', + ); + return await bgUpdateCheck(taskId, { + 'toCheck': [], + 'toInstall': toInstall + .map((entry) => {'key': entry.key, 'value': entry.value}) + .toList(), + }); + } + } else { + // In install mode... + // If you haven't explicitly been given updates to install, grab all available silent updates + logs.add('BG install task: Started (${toInstall.length}).'); + if (toInstall.isEmpty && !networkRestricted && !chargingRestricted) { + var temp = appsProvider.findExistingUpdates(installedOnly: true); + for (var i = 0; i < temp.length; i++) { + if (await appsProvider.canInstallSilently( + appsProvider.apps[temp[i]]!.app, + )) { + toInstall.add(MapEntry(temp[i], 0)); + } + } + } + if (toInstall.isNotEmpty) { + var tempObtArr = toInstall.where( + (element) => + element.key == obtainiumId || element.key == '$obtainiumId.fdroid', + ); + if (tempObtArr.isNotEmpty) { + // Move obtainium to the end of the list as it must always install last + var obt = tempObtArr.first; + toInstall = moveStrToEndMapEntryWithCount(toInstall, obt); + } + // Loop through all updates and install each + try { + await appsProvider.downloadAndInstallLatestApps( + toInstall.map((e) => e.key).toList(), + null, + notificationsProvider: notificationsProvider, + forceParallelDownloads: true, + ); + } catch (e) { + if (e is MultiAppMultiError) { + e.idsByErrorString.forEach((key, value) { + notificationsProvider.notify( + ErrorCheckingUpdatesNotification(e.errorsAppsString(key, value)), + ); + }); + } else { + // We don't expect to ever get here in any situation so no need to catch (but log it in case) + logs.add('Fatal error in BG install task: ${e.toString()}'); + rethrow; + } + } + logs.add('BG install task: Done installing updates.'); + } + } + appsProvider.settingsProvider.lastCompletedBGCheckTime = DateTime.now(); +} diff --git a/lib/providers/logs_provider.dart b/lib/providers/logs_provider.dart new file mode 100644 index 0000000..a719bd4 --- /dev/null +++ b/lib/providers/logs_provider.dart @@ -0,0 +1,127 @@ +import 'package:easy_localization/easy_localization.dart'; +import 'package:flutter/foundation.dart'; +import 'package:sqflite/sqflite.dart'; + +const String logTable = 'logs'; +const String idColumn = '_id'; +const String levelColumn = 'level'; +const String messageColumn = 'message'; +const String timestampColumn = 'timestamp'; +const String dbPath = 'logs.db'; + +enum LogLevels { debug, info, warning, error } + +class Log { + int? id; + late LogLevels level; + late String message; + DateTime timestamp = DateTime.now(); + + Map toMap() { + var map = { + idColumn: id, + levelColumn: level.index, + messageColumn: message, + timestampColumn: timestamp.millisecondsSinceEpoch, + }; + return map; + } + + Log(this.message, this.level); + + Log.fromMap(Map map) { + id = map[idColumn] as int; + level = LogLevels.values.elementAt(map[levelColumn] as int); + message = map[messageColumn] as String; + timestamp = DateTime.fromMillisecondsSinceEpoch( + map[timestampColumn] as int, + ); + } + + @override + String toString() { + return '${timestamp.toString()}: ${level.name}: $message'; + } +} + +class LogsProvider { + LogsProvider({bool runDefaultClear = true}) { + clear(before: DateTime.now().subtract(const Duration(days: 7))); + } + + Database? db; + + Future getDB() async { + db ??= await openDatabase( + dbPath, + version: 1, + onCreate: (Database db, int version) async { + await db.execute(''' +create table if not exists $logTable ( + $idColumn integer primary key autoincrement, + $levelColumn integer not null, + $messageColumn text not null, + $timestampColumn integer not null) +'''); + }, + ); + return db!; + } + + Future add(String message, {LogLevels level = LogLevels.info}) async { + Log l = Log(message, level); + l.id = await (await getDB()).insert(logTable, l.toMap()); + if (kDebugMode) { + print(l); + } + return l; + } + + Future> get({DateTime? before, DateTime? after}) async { + var where = getWhereDates(before: before, after: after); + return (await (await getDB()).query( + logTable, + where: where.key, + whereArgs: where.value, + )).map((e) => Log.fromMap(e)).toList(); + } + + Future clear({DateTime? before, DateTime? after}) async { + var where = getWhereDates(before: before, after: after); + var res = await (await getDB()).delete( + logTable, + where: where.key, + whereArgs: where.value, + ); + if (res > 0) { + add( + plural( + 'clearedNLogsBeforeXAfterY', + res, + namedArgs: {'before': before.toString(), 'after': after.toString()}, + name: 'n', + ), + ); + } + return res; + } +} + +MapEntry?> getWhereDates({ + DateTime? before, + DateTime? after, +}) { + List where = []; + List whereArgs = []; + if (before != null) { + where.add('$timestampColumn < ?'); + whereArgs.add(before.millisecondsSinceEpoch); + } + if (after != null) { + where.add('$timestampColumn > ?'); + whereArgs.add(after.millisecondsSinceEpoch); + } + return whereArgs.isEmpty + ? const MapEntry(null, null) + : MapEntry(where.join(' and '), whereArgs); +} diff --git a/lib/providers/native_provider.dart b/lib/providers/native_provider.dart new file mode 100644 index 0000000..1b9877a --- /dev/null +++ b/lib/providers/native_provider.dart @@ -0,0 +1,22 @@ +import 'dart:async'; +import 'dart:io'; +import 'package:android_system_font/android_system_font.dart'; +import 'package:flutter/services.dart'; + +class NativeFeatures { + static bool _systemFontLoaded = false; + + static Future _readFileBytes(String path) async { + var bytes = await File(path).readAsBytes(); + return ByteData.view(bytes.buffer); + } + + static Future loadSystemFont() async { + if (_systemFontLoaded) return; + var fontLoader = FontLoader('SystemFont'); + var fontFilePath = await AndroidSystemFont().getFilePath(); + fontLoader.addFont(_readFileBytes(fontFilePath!)); + fontLoader.load(); + _systemFontLoaded = true; + } +} diff --git a/lib/providers/notifications_provider.dart b/lib/providers/notifications_provider.dart new file mode 100644 index 0000000..0d44bc9 --- /dev/null +++ b/lib/providers/notifications_provider.dart @@ -0,0 +1,323 @@ +// Exposes functions that can be used to send notifications to the user +// Contains a set of pre-defined ObtainiumNotification objects that should be used throughout the app + +import 'package:easy_localization/easy_localization.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter_local_notifications/flutter_local_notifications.dart'; +import 'package:obtainium/main.dart'; +import 'package:obtainium/providers/settings_provider.dart'; +import 'package:obtainium/providers/source_provider.dart'; + +class ObtainiumNotification { + late int id; + late String title; + late String message; + late String channelCode; + late String channelName; + late String channelDescription; + Importance importance; + int? progPercent; + bool onlyAlertOnce; + String? payload; + + ObtainiumNotification( + this.id, + this.title, + this.message, + this.channelCode, + this.channelName, + this.channelDescription, + this.importance, { + this.onlyAlertOnce = false, + this.progPercent, + this.payload, + }); +} + +class UpdateNotification extends ObtainiumNotification { + UpdateNotification(List updates, {int? id}) + : super( + id ?? 2, + tr('updatesAvailable'), + '', + 'UPDATES_AVAILABLE', + tr('updatesAvailableNotifChannel'), + tr('updatesAvailableNotifDescription'), + Importance.max, + ) { + message = updates.isEmpty + ? tr('noNewUpdates') + : updates.length == 1 + ? tr('xHasAnUpdate', args: [updates[0].finalName]) + : plural( + 'xAndNMoreUpdatesAvailable', + updates.length - 1, + args: [updates[0].finalName, (updates.length - 1).toString()], + ); + } +} + +class SilentUpdateNotification extends ObtainiumNotification { + SilentUpdateNotification(List updates, bool succeeded, {int? id}) + : super( + id ?? 3, + succeeded ? tr('appsUpdated') : tr('appsNotUpdated'), + '', + 'APPS_UPDATED', + tr('appsUpdatedNotifChannel'), + tr('appsUpdatedNotifDescription'), + Importance.defaultImportance, + ) { + message = updates.length == 1 + ? tr( + succeeded ? 'xWasUpdatedToY' : 'xWasNotUpdatedToY', + args: [updates[0].finalName, updates[0].latestVersion], + ) + : plural( + succeeded ? 'xAndNMoreUpdatesInstalled' : "xAndNMoreUpdatesFailed", + updates.length - 1, + args: [updates[0].finalName, (updates.length - 1).toString()], + ); + } +} + +class SilentUpdateAttemptNotification extends ObtainiumNotification { + SilentUpdateAttemptNotification(List updates, {int? id}) + : super( + id ?? 3, + tr('appsPossiblyUpdated'), + '', + 'APPS_POSSIBLY_UPDATED', + tr('appsPossiblyUpdatedNotifChannel'), + tr('appsPossiblyUpdatedNotifDescription'), + Importance.defaultImportance, + ) { + message = updates.length == 1 + ? tr( + 'xWasPossiblyUpdatedToY', + args: [updates[0].finalName, updates[0].latestVersion], + ) + : plural( + 'xAndNMoreUpdatesPossiblyInstalled', + updates.length - 1, + args: [updates[0].finalName, (updates.length - 1).toString()], + ); + } +} + +class ErrorCheckingUpdatesNotification extends ObtainiumNotification { + ErrorCheckingUpdatesNotification(String error, {int? id}) + : super( + id ?? 5, + tr('errorCheckingUpdates'), + error, + 'BG_UPDATE_CHECK_ERROR', + tr('errorCheckingUpdatesNotifChannel'), + tr('errorCheckingUpdatesNotifDescription'), + Importance.high, + payload: "${tr('errorCheckingUpdates')}\n$error", + ); +} + +class AppsRemovedNotification extends ObtainiumNotification { + AppsRemovedNotification(List> namedReasons) + : super( + 6, + tr('appsRemoved'), + '', + 'APPS_REMOVED', + tr('appsRemovedNotifChannel'), + tr('appsRemovedNotifDescription'), + Importance.max, + ) { + message = ''; + for (var r in namedReasons) { + message += '${tr('xWasRemovedDueToErrorY', args: [r[0], r[1]])} \n'; + } + message = message.trim(); + } +} + +class DownloadNotification extends ObtainiumNotification { + DownloadNotification(String appName, int progPercent) + : super( + appName.hashCode, + tr('downloadingX', args: [appName]), + '', + 'APP_DOWNLOADING', + tr('downloadingXNotifChannel', args: [tr('app')]), + tr('downloadNotifDescription'), + Importance.low, + onlyAlertOnce: true, + progPercent: progPercent, + ); +} + +class DownloadedNotification extends ObtainiumNotification { + DownloadedNotification(String fileName, String downloadUrl) + : super( + downloadUrl.hashCode, + tr('downloadedX', args: [fileName]), + '', + 'FILE_DOWNLOADED', + tr('downloadedXNotifChannel', args: [tr('app')]), + tr('downloadedX', args: [tr('app')]), + Importance.defaultImportance, + ); +} + +final completeInstallationNotification = ObtainiumNotification( + 1, + tr('completeAppInstallation'), + tr('obtainiumMustBeOpenToInstallApps'), + 'COMPLETE_INSTALL', + tr('completeAppInstallationNotifChannel'), + tr('completeAppInstallationNotifDescription'), + Importance.max, +); + +class CheckingUpdatesNotification extends ObtainiumNotification { + CheckingUpdatesNotification(String appName) + : super( + 4, + tr('checkingForUpdates'), + appName, + 'BG_UPDATE_CHECK', + tr('checkingForUpdatesNotifChannel'), + tr('checkingForUpdatesNotifDescription'), + Importance.min, + ); +} + +class NotificationsProvider { + FlutterLocalNotificationsPlugin notifications = + FlutterLocalNotificationsPlugin(); + + bool isInitialized = false; + + Map importanceToPriority = { + Importance.defaultImportance: Priority.defaultPriority, + Importance.high: Priority.high, + Importance.low: Priority.low, + Importance.max: Priority.max, + Importance.min: Priority.min, + Importance.none: Priority.min, + Importance.unspecified: Priority.defaultPriority, + }; + + Future initialize() async { + isInitialized = + await notifications.initialize( + const InitializationSettings( + android: AndroidInitializationSettings('ic_notification'), + ), + onDidReceiveNotificationResponse: (NotificationResponse response) { + _showNotificationPayload(response.payload); + }, + ) ?? + false; + } + + Future checkLaunchByNotif() async { + final NotificationAppLaunchDetails? launchDetails = await notifications + .getNotificationAppLaunchDetails(); + if (launchDetails?.didNotificationLaunchApp ?? false) { + _showNotificationPayload( + launchDetails!.notificationResponse?.payload, + doublePop: true, + ); + } + } + + void _showNotificationPayload(String? payload, {bool doublePop = false}) { + if (payload?.isNotEmpty == true) { + var title = (payload ?? '\n\n').split('\n').first; + var content = (payload ?? '\n\n').split('\n').sublist(1).join('\n'); + globalNavigatorKey.currentState?.push( + PageRouteBuilder( + pageBuilder: (context, _, __) => AlertDialog( + title: Text(title), + content: Text(content), + actions: [ + TextButton( + onPressed: () { + Navigator.of(context).pop(null); + if (doublePop) { + Navigator.of(context).pop(null); + } + }, + child: Text(tr('ok')), + ), + ], + ), + ), + ); + } + } + + Future cancel(int id) async { + if (!isInitialized) { + await initialize(); + } + await notifications.cancel(id); + } + + Future notifyRaw( + int id, + String title, + String message, + String channelCode, + String channelName, + String channelDescription, + Importance importance, { + bool cancelExisting = false, + int? progPercent, + bool onlyAlertOnce = false, + String? payload, + }) async { + if (cancelExisting) { + await cancel(id); + } + if (!isInitialized) { + await initialize(); + } + await notifications.show( + id, + title, + message, + NotificationDetails( + android: AndroidNotificationDetails( + channelCode, + channelName, + channelDescription: channelDescription, + importance: importance, + priority: importanceToPriority[importance]!, + groupKey: '$obtainiumId.$channelCode', + progress: progPercent ?? 0, + maxProgress: 100, + showProgress: progPercent != null, + onlyAlertOnce: onlyAlertOnce, + indeterminate: progPercent != null && progPercent < 0, + ), + ), + payload: payload, + ); + } + + Future notify( + ObtainiumNotification notif, { + bool cancelExisting = false, + }) => notifyRaw( + notif.id, + notif.title, + notif.message, + notif.channelCode, + notif.channelName, + notif.channelDescription, + notif.importance, + cancelExisting: cancelExisting, + onlyAlertOnce: notif.onlyAlertOnce, + progPercent: notif.progPercent, + payload: notif.payload, + ); +} diff --git a/lib/providers/settings_provider.dart b/lib/providers/settings_provider.dart new file mode 100644 index 0000000..933de5f --- /dev/null +++ b/lib/providers/settings_provider.dart @@ -0,0 +1,525 @@ +// Exposes functions used to save/load app settings + +import 'dart:convert'; + +import 'package:easy_localization/easy_localization.dart'; +import 'package:flutter/material.dart'; +import 'package:fluttertoast/fluttertoast.dart'; +import 'package:obtainium/app_sources/github.dart'; +import 'package:obtainium/main.dart'; +import 'package:obtainium/providers/apps_provider.dart'; +import 'package:obtainium/providers/source_provider.dart'; +import 'package:permission_handler/permission_handler.dart'; +import 'package:shared_preferences/shared_preferences.dart'; +import 'package:shared_storage/shared_storage.dart' as saf; + +String obtainiumTempId = 'imranr98_obtainium_${GitHub().hosts[0]}'; +String obtainiumId = 'dev.imranr.obtainium'; +String obtainiumUrl = 'https://github.com/ImranR98/Obtainium'; +Color obtainiumThemeColor = const Color(0xFF6438B5); + +enum ThemeSettings { system, light, dark } + +enum SortColumnSettings { added, nameAuthor, authorName, releaseDate } + +enum SortOrderSettings { ascending, descending } + +class SettingsProvider with ChangeNotifier { + SharedPreferences? prefs; + String? defaultAppDir; + bool justStarted = true; + + String sourceUrl = 'https://github.com/ImranR98/Obtainium'; + + // Not done in constructor as we want to be able to await it + Future initializeSettings() async { + prefs = await SharedPreferences.getInstance(); + defaultAppDir = (await getAppStorageDir()).path; + notifyListeners(); + } + + bool get useSystemFont { + return prefs?.getBool('useSystemFont') ?? false; + } + + set useSystemFont(bool useSystemFont) { + prefs?.setBool('useSystemFont', useSystemFont); + notifyListeners(); + } + + bool get useShizuku { + return prefs?.getBool('useShizuku') ?? false; + } + + set useShizuku(bool useShizuku) { + prefs?.setBool('useShizuku', useShizuku); + notifyListeners(); + } + + ThemeSettings get theme { + return ThemeSettings.values[prefs?.getInt('theme') ?? + ThemeSettings.system.index]; + } + + set theme(ThemeSettings t) { + prefs?.setInt('theme', t.index); + notifyListeners(); + } + + Color get themeColor { + int? colorCode = prefs?.getInt('themeColor'); + return (colorCode != null) ? Color(colorCode) : obtainiumThemeColor; + } + + set themeColor(Color themeColor) { + prefs?.setInt('themeColor', themeColor.value); + notifyListeners(); + } + + bool get useMaterialYou { + return prefs?.getBool('useMaterialYou') ?? false; + } + + set useMaterialYou(bool useMaterialYou) { + prefs?.setBool('useMaterialYou', useMaterialYou); + notifyListeners(); + } + + bool get useBlackTheme { + return prefs?.getBool('useBlackTheme') ?? false; + } + + set useBlackTheme(bool useBlackTheme) { + prefs?.setBool('useBlackTheme', useBlackTheme); + notifyListeners(); + } + + int get updateInterval { + return prefs?.getInt('updateInterval') ?? 360; + } + + set updateInterval(int min) { + prefs?.setInt('updateInterval', min); + notifyListeners(); + } + + double get updateIntervalSliderVal { + return prefs?.getDouble('updateIntervalSliderVal') ?? 6.0; + } + + set updateIntervalSliderVal(double val) { + prefs?.setDouble('updateIntervalSliderVal', val); + notifyListeners(); + } + + bool get checkOnStart { + return prefs?.getBool('checkOnStart') ?? false; + } + + set checkOnStart(bool checkOnStart) { + prefs?.setBool('checkOnStart', checkOnStart); + notifyListeners(); + } + + SortColumnSettings get sortColumn { + return SortColumnSettings.values[prefs?.getInt('sortColumn') ?? + SortColumnSettings.nameAuthor.index]; + } + + set sortColumn(SortColumnSettings s) { + prefs?.setInt('sortColumn', s.index); + notifyListeners(); + } + + SortOrderSettings get sortOrder { + return SortOrderSettings.values[prefs?.getInt('sortOrder') ?? + SortOrderSettings.ascending.index]; + } + + set sortOrder(SortOrderSettings s) { + prefs?.setInt('sortOrder', s.index); + notifyListeners(); + } + + bool checkAndFlipFirstRun() { + bool result = prefs?.getBool('firstRun') ?? true; + if (result) { + prefs?.setBool('firstRun', false); + } + return result; + } + + bool get welcomeShown { + return prefs?.getBool('welcomeShown') ?? false; + } + + set welcomeShown(bool welcomeShown) { + prefs?.setBool('welcomeShown', welcomeShown); + notifyListeners(); + } + + bool checkJustStarted() { + if (justStarted) { + justStarted = false; + return true; + } + return false; + } + + Future getInstallPermission({bool enforce = false}) async { + while (!(await Permission.requestInstallPackages.isGranted)) { + // Explicit request as InstallPlugin request sometimes bugged + Fluttertoast.showToast( + msg: tr('pleaseAllowInstallPerm'), + toastLength: Toast.LENGTH_LONG, + ); + if ((await Permission.requestInstallPackages.request()) == + PermissionStatus.granted) { + return true; + } + if (!enforce) { + return false; + } + } + return true; + } + + bool get showAppWebpage { + return prefs?.getBool('showAppWebpage') ?? false; + } + + set showAppWebpage(bool show) { + prefs?.setBool('showAppWebpage', show); + notifyListeners(); + } + + bool get pinUpdates { + return prefs?.getBool('pinUpdates') ?? true; + } + + set pinUpdates(bool show) { + prefs?.setBool('pinUpdates', show); + notifyListeners(); + } + + bool get buryNonInstalled { + return prefs?.getBool('buryNonInstalled') ?? false; + } + + set buryNonInstalled(bool show) { + prefs?.setBool('buryNonInstalled', show); + notifyListeners(); + } + + bool get groupByCategory { + return prefs?.getBool('groupByCategory') ?? false; + } + + set groupByCategory(bool show) { + prefs?.setBool('groupByCategory', show); + notifyListeners(); + } + + bool get hideTrackOnlyWarning { + return prefs?.getBool('hideTrackOnlyWarning') ?? false; + } + + set hideTrackOnlyWarning(bool show) { + prefs?.setBool('hideTrackOnlyWarning', show); + notifyListeners(); + } + + bool get hideAPKOriginWarning { + return prefs?.getBool('hideAPKOriginWarning') ?? false; + } + + set hideAPKOriginWarning(bool show) { + prefs?.setBool('hideAPKOriginWarning', show); + notifyListeners(); + } + + String? getSettingString(String settingId) { + String? str = prefs?.getString(settingId); + return str?.isNotEmpty == true ? str : null; + } + + void setSettingString(String settingId, String value) { + prefs?.setString(settingId, value); + notifyListeners(); + } + + bool? getSettingBool(String settingId) { + return prefs?.getBool(settingId) ?? false; + } + + void setSettingBool(String settingId, bool value) { + prefs?.setBool(settingId, value); + notifyListeners(); + } + + Map get categories => + Map.from(jsonDecode(prefs?.getString('categories') ?? '{}')); + + void setCategories(Map cats, {AppsProvider? appsProvider}) { + if (appsProvider != null) { + List changedApps = appsProvider + .getAppValues() + .map((a) { + var n1 = a.app.categories.length; + a.app.categories.removeWhere((c) => !cats.keys.contains(c)); + return n1 > a.app.categories.length ? a.app : null; + }) + .where((element) => element != null) + .map((e) => e as App) + .toList(); + if (changedApps.isNotEmpty) { + appsProvider.saveApps(changedApps); + } + } + prefs?.setString('categories', jsonEncode(cats)); + notifyListeners(); + } + + Locale? get forcedLocale { + var flSegs = prefs?.getString('forcedLocale')?.split('-'); + var fl = flSegs != null && flSegs.isNotEmpty + ? Locale(flSegs[0], flSegs.length > 1 ? flSegs[1] : null) + : null; + var set = supportedLocales.where((element) => element.key == fl).isNotEmpty + ? fl + : null; + return set; + } + + set forcedLocale(Locale? fl) { + if (fl == null) { + prefs?.remove('forcedLocale'); + } else if (supportedLocales + .where((element) => element.key == fl) + .isNotEmpty) { + prefs?.setString('forcedLocale', fl.toLanguageTag()); + } + notifyListeners(); + } + + bool setEqual(Set a, Set b) => + a.length == b.length && a.union(b).length == a.length; + + void resetLocaleSafe(BuildContext context) { + if (context.supportedLocales.contains(context.deviceLocale)) { + context.resetLocale(); + } else { + context.setLocale(context.fallbackLocale!); + context.deleteSaveLocale(); + } + } + + bool get removeOnExternalUninstall { + return prefs?.getBool('removeOnExternalUninstall') ?? false; + } + + set removeOnExternalUninstall(bool show) { + prefs?.setBool('removeOnExternalUninstall', show); + notifyListeners(); + } + + bool get checkUpdateOnDetailPage { + return prefs?.getBool('checkUpdateOnDetailPage') ?? true; + } + + set checkUpdateOnDetailPage(bool show) { + prefs?.setBool('checkUpdateOnDetailPage', show); + notifyListeners(); + } + + bool get disablePageTransitions { + return prefs?.getBool('disablePageTransitions') ?? false; + } + + set disablePageTransitions(bool show) { + prefs?.setBool('disablePageTransitions', show); + notifyListeners(); + } + + bool get reversePageTransitions { + return prefs?.getBool('reversePageTransitions') ?? false; + } + + set reversePageTransitions(bool show) { + prefs?.setBool('reversePageTransitions', show); + notifyListeners(); + } + + bool get enableBackgroundUpdates { + return prefs?.getBool('enableBackgroundUpdates') ?? true; + } + + set enableBackgroundUpdates(bool val) { + prefs?.setBool('enableBackgroundUpdates', val); + notifyListeners(); + } + + bool get bgUpdatesOnWiFiOnly { + return prefs?.getBool('bgUpdatesOnWiFiOnly') ?? false; + } + + set bgUpdatesOnWiFiOnly(bool val) { + prefs?.setBool('bgUpdatesOnWiFiOnly', val); + notifyListeners(); + } + + bool get bgUpdatesWhileChargingOnly { + return prefs?.getBool('bgUpdatesWhileChargingOnly') ?? false; + } + + set bgUpdatesWhileChargingOnly(bool val) { + prefs?.setBool('bgUpdatesWhileChargingOnly', val); + notifyListeners(); + } + + DateTime get lastCompletedBGCheckTime { + int? temp = prefs?.getInt('lastCompletedBGCheckTime'); + return temp != null + ? DateTime.fromMillisecondsSinceEpoch(temp) + : DateTime.fromMillisecondsSinceEpoch(0); + } + + set lastCompletedBGCheckTime(DateTime val) { + prefs?.setInt('lastCompletedBGCheckTime', val.millisecondsSinceEpoch); + notifyListeners(); + } + + bool get showDebugOpts { + return prefs?.getBool('showDebugOpts') ?? false; + } + + set showDebugOpts(bool val) { + prefs?.setBool('showDebugOpts', val); + notifyListeners(); + } + + bool get highlightTouchTargets { + return prefs?.getBool('highlightTouchTargets') ?? false; + } + + set highlightTouchTargets(bool val) { + prefs?.setBool('highlightTouchTargets', val); + notifyListeners(); + } + + Future getExportDir() async { + var uriString = prefs?.getString('exportDir'); + if (uriString != null) { + Uri? uri = Uri.parse(uriString); + if (!(await saf.canRead(uri) ?? false) || + !(await saf.canWrite(uri) ?? false)) { + uri = null; + prefs?.remove('exportDir'); + notifyListeners(); + } + return uri; + } else { + return null; + } + } + + Future pickExportDir({bool remove = false}) async { + var existingSAFPerms = (await saf.persistedUriPermissions()) ?? []; + var currentOneWayDataSyncDir = await getExportDir(); + Uri? newOneWayDataSyncDir; + if (!remove) { + newOneWayDataSyncDir = (await saf.openDocumentTree()); + } + if (currentOneWayDataSyncDir?.path != newOneWayDataSyncDir?.path) { + if (newOneWayDataSyncDir == null) { + prefs?.remove('exportDir'); + } else { + prefs?.setString('exportDir', newOneWayDataSyncDir.toString()); + } + notifyListeners(); + } + for (var e in existingSAFPerms) { + await saf.releasePersistableUriPermission(e.uri); + } + } + + bool get autoExportOnChanges { + return prefs?.getBool('autoExportOnChanges') ?? false; + } + + set autoExportOnChanges(bool val) { + prefs?.setBool('autoExportOnChanges', val); + notifyListeners(); + } + + bool get onlyCheckInstalledOrTrackOnlyApps { + return prefs?.getBool('onlyCheckInstalledOrTrackOnlyApps') ?? false; + } + + set onlyCheckInstalledOrTrackOnlyApps(bool val) { + prefs?.setBool('onlyCheckInstalledOrTrackOnlyApps', val); + notifyListeners(); + } + + int get exportSettings { + try { + return prefs?.getInt('exportSettings') ?? + 1; // 0 for no, 1 for yes but no secrets, 2 for everything + } catch (e) { + var val = prefs?.getBool('exportSettings') == true ? 1 : 0; + prefs?.setInt('exportSettings', val); + return val; + } + } + + set exportSettings(int val) { + prefs?.setInt('exportSettings', val > 2 || val < 0 ? 1 : val); + notifyListeners(); + } + + bool get parallelDownloads { + return prefs?.getBool('parallelDownloads') ?? false; + } + + set parallelDownloads(bool val) { + prefs?.setBool('parallelDownloads', val); + notifyListeners(); + } + + List get searchDeselected { + return prefs?.getStringList('searchDeselected') ?? + SourceProvider().sources.map((s) => s.name).toList(); + } + + set searchDeselected(List list) { + prefs?.setStringList('searchDeselected', list); + notifyListeners(); + } + + bool get beforeNewInstallsShareToAppVerifier { + return prefs?.getBool('beforeNewInstallsShareToAppVerifier') ?? true; + } + + set beforeNewInstallsShareToAppVerifier(bool val) { + prefs?.setBool('beforeNewInstallsShareToAppVerifier', val); + notifyListeners(); + } + + bool get shizukuPretendToBeGooglePlay { + return prefs?.getBool('shizukuPretendToBeGooglePlay') ?? false; + } + + set shizukuPretendToBeGooglePlay(bool val) { + prefs?.setBool('shizukuPretendToBeGooglePlay', val); + notifyListeners(); + } + + bool get useFGService { + return prefs?.getBool('useFGService') ?? false; + } + + set useFGService(bool val) { + prefs?.setBool('useFGService', val); + notifyListeners(); + } +} diff --git a/lib/providers/source_provider.dart b/lib/providers/source_provider.dart new file mode 100644 index 0000000..f4e1f28 --- /dev/null +++ b/lib/providers/source_provider.dart @@ -0,0 +1,1331 @@ +// Defines App sources and provides functions used to interact with them +// AppSource is an abstract class with a concrete implementation for each source + +import 'dart:convert'; +import 'dart:io'; +import 'package:http/http.dart' as http; +import 'dart:typed_data'; + +import 'package:device_info_plus/device_info_plus.dart'; +import 'package:easy_localization/easy_localization.dart'; +import 'package:html/dom.dart'; +import 'package:http/http.dart'; +import 'package:obtainium/app_sources/apkmirror.dart'; +import 'package:obtainium/app_sources/apkpure.dart'; +import 'package:obtainium/app_sources/aptoide.dart'; +import 'package:obtainium/app_sources/codeberg.dart'; +import 'package:obtainium/app_sources/coolapk.dart'; +import 'package:obtainium/app_sources/directAPKLink.dart'; +import 'package:obtainium/app_sources/farsroid.dart'; +import 'package:obtainium/app_sources/fdroid.dart'; +import 'package:obtainium/app_sources/fdroidrepo.dart'; +import 'package:obtainium/app_sources/github.dart'; +import 'package:obtainium/app_sources/gitlab.dart'; +import 'package:obtainium/app_sources/huaweiappgallery.dart'; +import 'package:obtainium/app_sources/izzyondroid.dart'; +import 'package:obtainium/app_sources/html.dart'; +import 'package:obtainium/app_sources/jenkins.dart'; +import 'package:obtainium/app_sources/liteapks.dart'; +import 'package:obtainium/app_sources/neutroncode.dart'; +import 'package:obtainium/app_sources/rustore.dart'; +import 'package:obtainium/app_sources/sourceforge.dart'; +import 'package:obtainium/app_sources/sourcehut.dart'; +import 'package:obtainium/app_sources/telegramapp.dart'; +import 'package:obtainium/app_sources/tencent.dart'; +import 'package:obtainium/app_sources/uptodown.dart'; +import 'package:obtainium/app_sources/vivoappstore.dart'; +import 'package:obtainium/components/generated_form.dart'; +import 'package:obtainium/custom_errors.dart'; +import 'package:obtainium/mass_app_sources/githubstars.dart'; +import 'package:obtainium/providers/logs_provider.dart'; +import 'package:obtainium/providers/settings_provider.dart'; + +class AppNames { + late String author; + late String name; + + AppNames(this.author, this.name); +} + +class APKDetails { + late String version; + late List> apkUrls; + late AppNames names; + late DateTime? releaseDate; + late String? changeLog; + late List> allAssetUrls; + + APKDetails( + this.version, + this.apkUrls, + this.names, { + this.releaseDate, + this.changeLog, + this.allAssetUrls = const [], + }); +} + +List> stringMapListTo2DList( + List> mapList, +) => mapList.map((e) => [e.key, e.value]).toList(); + +List> assumed2DlistToStringMapList( + List arr, +) => arr.map((e) => MapEntry(e[0] as String, e[1] as String)).toList(); + +// App JSON schema has changed multiple times over the many versions of Obtainium +// This function takes an App JSON and modifies it if needed to conform to the latest (current) version +Map appJSONCompatibilityModifiers(Map json) { + var source = SourceProvider().getSource( + json['url'], + overrideSource: json['overrideSource'], + ); + var formItems = source.combinedAppSpecificSettingFormItems.reduce( + (value, element) => [...value, ...element], + ); + Map additionalSettings = getDefaultValuesFromFormItems([ + formItems, + ]); + Map originalAdditionalSettings = {}; + if (json['additionalSettings'] != null) { + originalAdditionalSettings = Map.from( + jsonDecode(json['additionalSettings']), + ); + additionalSettings.addEntries(originalAdditionalSettings.entries); + } + // If needed, migrate old-style additionalData to newer-style additionalSettings (V1) + if (json['additionalData'] != null) { + List temp = List.from(jsonDecode(json['additionalData'])); + temp.asMap().forEach((i, value) { + if (i < formItems.length) { + if (formItems[i] is GeneratedFormSwitch) { + additionalSettings[formItems[i].key] = value == 'true'; + } else { + additionalSettings[formItems[i].key] = value; + } + } + }); + additionalSettings['trackOnly'] = + json['trackOnly'] == 'true' || json['trackOnly'] == true; + additionalSettings['noVersionDetection'] = + json['noVersionDetection'] == 'true' || json['trackOnly'] == true; + } + // Convert bool style version detection options to dropdown style + if (additionalSettings['noVersionDetection'] == true) { + additionalSettings['versionDetection'] = 'noVersionDetection'; + if (additionalSettings['releaseDateAsVersion'] == true) { + additionalSettings['versionDetection'] = 'releaseDateAsVersion'; + additionalSettings.remove('releaseDateAsVersion'); + } + if (additionalSettings['noVersionDetection'] != null) { + additionalSettings.remove('noVersionDetection'); + } + if (additionalSettings['releaseDateAsVersion'] != null) { + additionalSettings.remove('releaseDateAsVersion'); + } + } + // Convert dropdown style version detection options back into bool style + if (additionalSettings['versionDetection'] == 'standardVersionDetection') { + additionalSettings['versionDetection'] = true; + } else if (additionalSettings['versionDetection'] == 'noVersionDetection') { + additionalSettings['versionDetection'] = false; + } else if (additionalSettings['versionDetection'] == 'releaseDateAsVersion') { + additionalSettings['versionDetection'] = false; + additionalSettings['releaseDateAsVersion'] = true; + } + // Convert bool style pseudo version method to dropdown style + if (originalAdditionalSettings['supportFixedAPKURL'] == true) { + additionalSettings['defaultPseudoVersioningMethod'] = 'partialAPKHash'; + } else if (originalAdditionalSettings['supportFixedAPKURL'] == false) { + additionalSettings['defaultPseudoVersioningMethod'] = 'APKLinkHash'; + } + // Ensure additionalSettings are correctly typed + for (var item in formItems) { + if (additionalSettings[item.key] != null) { + additionalSettings[item.key] = item.ensureType( + additionalSettings[item.key], + ); + } + } + int preferredApkIndex = json['preferredApkIndex'] == null + ? 0 + : json['preferredApkIndex'] as int; + if (preferredApkIndex < 0) { + preferredApkIndex = 0; + } + json['preferredApkIndex'] = preferredApkIndex; + // apkUrls can either be old list or new named list apkUrls + List> apkUrls = []; + if (json['apkUrls'] != null) { + var apkUrlJson = jsonDecode(json['apkUrls']); + try { + apkUrls = getApkUrlsFromUrls(List.from(apkUrlJson)); + } catch (e) { + apkUrls = assumed2DlistToStringMapList(List.from(apkUrlJson)); + apkUrls = List.from( + apkUrlJson, + ).map((e) => MapEntry(e[0] as String, e[1] as String)).toList(); + } + json['apkUrls'] = jsonEncode(stringMapListTo2DList(apkUrls)); + } + // Arch based APK filter option should be disabled if it previously did not exist + if (additionalSettings['autoApkFilterByArch'] == null) { + additionalSettings['autoApkFilterByArch'] = false; + } + // GitHub "don't sort" option to new dropdown format + if (additionalSettings['dontSortReleasesList'] == true) { + additionalSettings['sortMethodChoice'] = 'none'; + } + if (source.runtimeType == HTML().runtimeType) { + // HTML key rename + if (originalAdditionalSettings['sortByFileNamesNotLinks'] != null) { + additionalSettings['sortByLastLinkSegment'] = + originalAdditionalSettings['sortByFileNamesNotLinks']; + } + // HTML single 'intermediate link' should be converted to multi-support version + if (originalAdditionalSettings['intermediateLinkRegex'] != null && + additionalSettings['intermediateLinkRegex']?.isNotEmpty != true) { + additionalSettings['intermediateLink'] = [ + { + 'customLinkFilterRegex': + originalAdditionalSettings['intermediateLinkRegex'], + 'filterByLinkText': + originalAdditionalSettings['intermediateLinkByText'], + }, + ]; + } + if ((additionalSettings['intermediateLink']?.length ?? 0) > 0) { + additionalSettings['intermediateLink'] = + additionalSettings['intermediateLink'].where((e) { + return e['customLinkFilterRegex']?.isNotEmpty == true; + }).toList(); + } + // Steam source apps should be converted to HTML (#1244) + var legacySteamSourceApps = ['steam', 'steam-chat-app']; + if (legacySteamSourceApps.contains(additionalSettings['app'] ?? '')) { + json['url'] = '${json['url']}/mobile'; + var replacementAdditionalSettings = getDefaultValuesFromFormItems( + HTML().combinedAppSpecificSettingFormItems, + ); + for (var s in replacementAdditionalSettings.keys) { + if (additionalSettings.containsKey(s)) { + replacementAdditionalSettings[s] = additionalSettings[s]; + } + } + replacementAdditionalSettings['customLinkFilterRegex'] = + '/${additionalSettings['app']}-(([0-9]+\\.?){1,})\\.apk'; + replacementAdditionalSettings['versionExtractionRegEx'] = + replacementAdditionalSettings['customLinkFilterRegex']; + replacementAdditionalSettings['matchGroupToUse'] = '\$1'; + additionalSettings = replacementAdditionalSettings; + } + // Signal apps from before it was removed should be converted to HTML (#1928) + if (json['url'] == 'https://signal.org' && + json['id'] == 'org.thoughtcrime.securesms' && + json['author'] == 'Signal' && + json['name'] == 'Signal' && + json['overrideSource'] == null && + additionalSettings['trackOnly'] == false && + additionalSettings['versionExtractionRegEx'] == '' && + json['lastUpdateCheck'] != null) { + json['url'] = 'https://updates.signal.org/android/latest.json'; + var replacementAdditionalSettings = getDefaultValuesFromFormItems( + HTML().combinedAppSpecificSettingFormItems, + ); + replacementAdditionalSettings['versionExtractionRegEx'] = + '\\d+.\\d+.\\d+'; + additionalSettings = replacementAdditionalSettings; + } + // WhatsApp from before it was removed should be converted to HTML (#1943) + if (json['url'] == 'https://whatsapp.com' && + json['id'] == 'com.whatsapp' && + json['author'] == 'Meta' && + json['name'] == 'WhatsApp' && + json['overrideSource'] == null && + additionalSettings['trackOnly'] == false && + additionalSettings['versionExtractionRegEx'] == '' && + json['lastUpdateCheck'] != null) { + json['url'] = 'https://whatsapp.com/android'; + var replacementAdditionalSettings = getDefaultValuesFromFormItems( + HTML().combinedAppSpecificSettingFormItems, + ); + replacementAdditionalSettings['refreshBeforeDownload'] = true; + additionalSettings = replacementAdditionalSettings; + } + // VLC from before it was removed should be converted to HTML (#1943) + if (json['url'] == 'https://videolan.org' && + json['id'] == 'org.videolan.vlc' && + json['author'] == 'VideoLAN' && + json['name'] == 'VLC' && + json['overrideSource'] == null && + additionalSettings['trackOnly'] == false && + additionalSettings['versionExtractionRegEx'] == '' && + json['lastUpdateCheck'] != null) { + json['url'] = 'https://www.videolan.org/vlc/download-android.html'; + var replacementAdditionalSettings = getDefaultValuesFromFormItems( + HTML().combinedAppSpecificSettingFormItems, + ); + replacementAdditionalSettings['refreshBeforeDownload'] = true; + replacementAdditionalSettings['intermediateLink'] = + >[ + { + 'customLinkFilterRegex': 'APK', + 'filterByLinkText': true, + 'skipSort': false, + 'reverseSort': false, + 'sortByLastLinkSegment': false, + }, + { + 'customLinkFilterRegex': 'arm64-v8a\\.apk\$', + 'filterByLinkText': false, + 'skipSort': false, + 'reverseSort': false, + 'sortByLastLinkSegment': false, + }, + ]; + replacementAdditionalSettings['versionExtractionRegEx'] = + '/vlc-android/([^/]+)/'; + replacementAdditionalSettings['matchGroupToUse'] = "1"; + additionalSettings = replacementAdditionalSettings; + } + } + json['additionalSettings'] = jsonEncode(additionalSettings); + // F-Droid no longer needs cloudflare exception since override can be used - migrate apps appropriately + // This allows us to reverse the changes made for issue #418 (support cloudflare.f-droid) + // While not causing problems for existing apps from that source that were added in a previous version + var overrideSourceWasUndefined = !json.keys.contains('overrideSource'); + if ((json['url'] as String).startsWith('https://cloudflare.f-droid.org')) { + json['overrideSource'] = FDroid().runtimeType.toString(); + } else if (overrideSourceWasUndefined) { + // Similar to above, but for third-party F-Droid repos + RegExpMatch? match = RegExp( + '^https?://.+/fdroid/([^/]+(/|\\?)|[^/]+\$)', + ).firstMatch(json['url'] as String); + if (match != null) { + json['overrideSource'] = FDroidRepo().runtimeType.toString(); + } + } + return json; +} + +class App { + late String id; + late String url; + late String author; + late String name; + String? installedVersion; + late String latestVersion; + List> apkUrls = []; // Key is name, value is URL + List> otherAssetUrls = []; + late int preferredApkIndex; + late Map additionalSettings; + late DateTime? lastUpdateCheck; + bool pinned = false; + List categories; + late DateTime? releaseDate; + late String? changeLog; + late String? overrideSource; + bool allowIdChange = false; + App( + this.id, + this.url, + this.author, + this.name, + this.installedVersion, + this.latestVersion, + this.apkUrls, + this.preferredApkIndex, + this.additionalSettings, + this.lastUpdateCheck, + this.pinned, { + this.categories = const [], + this.releaseDate, + this.changeLog, + this.overrideSource, + this.allowIdChange = false, + this.otherAssetUrls = const [], + }); + + @override + String toString() { + return 'ID: $id URL: $url INSTALLED: $installedVersion LATEST: $latestVersion APK: $apkUrls PREFERREDAPK: $preferredApkIndex ADDITIONALSETTINGS: ${additionalSettings.toString()} LASTCHECK: ${lastUpdateCheck.toString()} PINNED $pinned'; + } + + String? get overrideName => + additionalSettings['appName']?.toString().trim().isNotEmpty == true + ? additionalSettings['appName'] + : null; + + String get finalName { + return overrideName ?? name; + } + + String? get overrideAuthor => + additionalSettings['appAuthor']?.toString().trim().isNotEmpty == true + ? additionalSettings['appAuthor'] + : null; + + String get finalAuthor { + return overrideAuthor ?? author; + } + + App deepCopy() => App( + id, + url, + author, + name, + installedVersion, + latestVersion, + apkUrls, + preferredApkIndex, + Map.from(additionalSettings), + lastUpdateCheck, + pinned, + categories: categories, + changeLog: changeLog, + releaseDate: releaseDate, + overrideSource: overrideSource, + allowIdChange: allowIdChange, + otherAssetUrls: otherAssetUrls, + ); + + factory App.fromJson(Map json) { + Map originalJSON = Map.from(json); + try { + json = appJSONCompatibilityModifiers(json); + } catch (e) { + json = originalJSON; + LogsProvider().add( + 'Error running JSON compat modifiers: ${e.toString()}: ${originalJSON.toString()}', + ); + } + return App( + json['id'] as String, + json['url'] as String, + json['author'] as String, + json['name'] as String, + json['installedVersion'] == null + ? null + : json['installedVersion'] as String, + (json['latestVersion'] ?? tr('unknown')) as String, + assumed2DlistToStringMapList( + jsonDecode((json['apkUrls'] ?? '[["placeholder", "placeholder"]]')), + ), + (json['preferredApkIndex'] ?? -1) as int, + jsonDecode(json['additionalSettings']) as Map, + json['lastUpdateCheck'] == null + ? null + : DateTime.fromMicrosecondsSinceEpoch(json['lastUpdateCheck']), + json['pinned'] ?? false, + categories: json['categories'] != null + ? (json['categories'] as List) + .map((e) => e.toString()) + .toList() + : json['category'] != null + ? [json['category'] as String] + : [], + releaseDate: json['releaseDate'] == null + ? null + : DateTime.fromMicrosecondsSinceEpoch(json['releaseDate']), + changeLog: json['changeLog'] == null ? null : json['changeLog'] as String, + overrideSource: json['overrideSource'], + allowIdChange: json['allowIdChange'] ?? false, + otherAssetUrls: assumed2DlistToStringMapList( + jsonDecode((json['otherAssetUrls'] ?? '[]')), + ), + ); + } + + Map toJson() => { + 'id': id, + 'url': url, + 'author': author, + 'name': name, + 'installedVersion': installedVersion, + 'latestVersion': latestVersion, + 'apkUrls': jsonEncode(stringMapListTo2DList(apkUrls)), + 'otherAssetUrls': jsonEncode(stringMapListTo2DList(otherAssetUrls)), + 'preferredApkIndex': preferredApkIndex, + 'additionalSettings': jsonEncode(additionalSettings), + 'lastUpdateCheck': lastUpdateCheck?.microsecondsSinceEpoch, + 'pinned': pinned, + 'categories': categories, + 'releaseDate': releaseDate?.microsecondsSinceEpoch, + 'changeLog': changeLog, + 'overrideSource': overrideSource, + 'allowIdChange': allowIdChange, + }; +} + +// Ensure the input is starts with HTTPS and has no WWW +String preStandardizeUrl(String url) { + var firstDotIndex = url.indexOf('.'); + if (!(firstDotIndex >= 0 && firstDotIndex != url.length - 1)) { + throw UnsupportedURLError(); + } + if (url.toLowerCase().indexOf('http://') != 0 && + url.toLowerCase().indexOf('https://') != 0) { + url = 'https://$url'; + } + var uri = Uri.tryParse(url); + var trailingSlash = + ((uri?.path.endsWith('/') ?? false) || + ((uri?.path.isEmpty ?? false) && url.endsWith('/'))) && + (uri?.queryParameters.isEmpty ?? false); + + url = + url + .split('/') + .where((e) => e.isNotEmpty) + .join('/') + .replaceFirst(':/', '://') + + (trailingSlash ? '/' : ''); + return url; +} + +String noAPKFound = tr('noAPKFound'); + +List getLinksFromParsedHTML( + Document dom, + RegExp hrefPattern, + String prependToLinks, +) => dom + .querySelectorAll('a') + .where((element) { + if (element.attributes['href'] == null) return false; + return hrefPattern.hasMatch(element.attributes['href']!); + }) + .map((e) => '$prependToLinks${e.attributes['href']!}') + .toList(); + +Map getDefaultValuesFromFormItems( + List> items, +) { + return Map.fromEntries( + items + .map((row) => row.map((el) => MapEntry(el.key, el.defaultValue ?? ''))) + .reduce((value, element) => [...value, ...element]), + ); +} + +List> getApkUrlsFromUrls(List urls) => + urls.map((e) { + var segments = e.split('/').where((el) => el.trim().isNotEmpty); + var apkSegs = segments.where((s) => s.toLowerCase().endsWith('.apk')); + return MapEntry(apkSegs.isNotEmpty ? apkSegs.last : segments.last, e); + }).toList(); + +Future>> filterApksByArch( + List> apkUrls, +) async { + if (apkUrls.length > 1) { + var abis = (await DeviceInfoPlugin().androidInfo).supportedAbis; + for (var abi in abis) { + var urls2 = apkUrls + .where((element) => RegExp('.*$abi.*').hasMatch(element.key)) + .toList(); + if (urls2.isNotEmpty && urls2.length < apkUrls.length) { + apkUrls = urls2; + break; + } + } + } + return apkUrls; +} + +String getSourceRegex(List hosts) { + return '(${hosts.join('|').replaceAll('.', '\\.')})'; +} + +HttpClient createHttpClient(bool insecure) { + final client = HttpClient(); + if (insecure) { + client.badCertificateCallback = + (X509Certificate cert, String host, int port) => true; + } + return client; +} + +Future>> +sourceRequestStreamResponse( + String method, + String url, + Map? requestHeaders, + Map additionalSettings, { + bool followRedirects = true, + Object? postBody, +}) async { + var currentUrl = Uri.parse(url); + var redirectCount = 0; + const maxRedirects = 10; + List cookies = []; + while (redirectCount < maxRedirects) { + var httpClient = createHttpClient( + additionalSettings['allowInsecure'] == true, + ); + var request = await httpClient.openUrl(method, currentUrl); + if (requestHeaders != null) { + requestHeaders.forEach((key, value) { + request.headers.set(key, value); + }); + } + request.cookies.addAll(cookies); + request.followRedirects = false; + if (postBody != null) { + request.headers.contentType = ContentType.json; + request.write(jsonEncode(postBody)); + } + final response = await request.close(); + + if (followRedirects && + (response.statusCode >= 300 && response.statusCode <= 399)) { + final location = response.headers.value(HttpHeaders.locationHeader); + if (location != null) { + currentUrl = Uri.parse(ensureAbsoluteUrl(location, currentUrl)); + redirectCount++; + cookies = response.cookies; + httpClient.close(); + continue; + } + } + + return MapEntry(currentUrl, MapEntry(httpClient, response)); + } + throw ObtainiumError('Too many redirects ($maxRedirects)'); +} + +Future httpClientResponseStreamToFinalResponse( + HttpClient httpClient, + String method, + String url, + HttpClientResponse response, +) async { + final bytes = (await response.fold( + BytesBuilder(), + (b, d) => b..add(d), + )).toBytes(); + + final headers = {}; + response.headers.forEach((name, values) { + headers[name] = values.join(', '); + }); + + httpClient.close(); + + return http.Response.bytes( + bytes, + response.statusCode, + headers: headers, + request: http.Request(method, Uri.parse(url)), + ); +} + +abstract class AppSource { + List hosts = []; + bool hostChanged = false; + bool hostIdenticalDespiteAnyChange = false; + late String name; + bool enforceTrackOnly = false; + bool changeLogIfAnyIsMarkDown = true; + bool appIdInferIsOptional = false; + bool allowSubDomains = false; + bool naiveStandardVersionDetection = false; + bool allowOverride = true; + bool neverAutoSelect = false; + bool showReleaseDateAsVersionToggle = false; + bool versionDetectionDisallowed = false; + List excludeCommonSettingKeys = []; + bool urlsAlwaysHaveExtension = false; + bool allowIncludeZips = false; + + AppSource() { + name = runtimeType.toString(); + } + + void overrideAdditionalAppSpecificSourceAgnosticSettingSwitch( + String key, { + bool disabled = true, + bool defaultValue = true, + }) { + additionalAppSpecificSourceAgnosticSettingFormItemsNeverUseDirectly = + additionalAppSpecificSourceAgnosticSettingFormItemsNeverUseDirectly.map( + (e) { + return e.map((e2) { + if (e2.key == key) { + var item = e2 as GeneratedFormSwitch; + item.disabled = disabled; + item.defaultValue = defaultValue; + } + return e2; + }).toList(); + }, + ).toList(); + } + + String standardizeUrl(String url) { + url = preStandardizeUrl(url); + if (!hostChanged) { + url = sourceSpecificStandardizeURL(url); + } + return url; + } + + Future?> getRequestHeaders( + Map additionalSettings, { + bool forAPKDownload = false, + }) async { + return null; + } + + App endOfGetAppChanges(App app) { + return app; + } + + Future sourceRequest( + String url, + Map additionalSettings, { + bool followRedirects = true, + Object? postBody, + }) async { + var sp = SettingsProvider(); + await sp.initializeSettings(); + getSourceConfigValues(additionalSettings, sp); + var additionalSettingsPlusSourceConfig = { + ...additionalSettings, + ...(await getSourceConfigValues(additionalSettings, sp)), + }; + url = await generalReqPrefetchModifier( + url, + additionalSettingsPlusSourceConfig, + ); + var method = postBody == null ? 'GET' : 'POST'; + var requestHeaders = await getRequestHeaders( + additionalSettingsPlusSourceConfig, + ); + var streamedResponseUrlWithResponseAndClient = + await sourceRequestStreamResponse( + method, + url, + requestHeaders, + additionalSettingsPlusSourceConfig, + followRedirects: followRedirects, + postBody: postBody, + ); + return await httpClientResponseStreamToFinalResponse( + streamedResponseUrlWithResponseAndClient.value.key, + method, + streamedResponseUrlWithResponseAndClient.key.toString(), + streamedResponseUrlWithResponseAndClient.value.value, + ); + } + + void runOnAddAppInputChange(String inputUrl) { + // + } + + String sourceSpecificStandardizeURL(String url, {bool forSelection = false}) { + throw NotImplementedError(); + } + + Future getLatestAPKDetails( + String standardUrl, + Map additionalSettings, + ) { + throw NotImplementedError(); + } + + // Different Sources may need different kinds of additional data for Apps + List> additionalSourceAppSpecificSettingFormItems = + []; + + // Some additional data may be needed for Apps regardless of Source + List> + additionalAppSpecificSourceAgnosticSettingFormItemsNeverUseDirectly = [ + [GeneratedFormSwitch('trackOnly', label: tr('trackOnly'))], + [ + GeneratedFormTextField( + 'versionExtractionRegEx', + label: tr('trimVersionString'), + required: false, + additionalValidators: [(value) => regExValidator(value)], + ), + ], + [ + GeneratedFormTextField( + 'matchGroupToUse', + label: tr('matchGroupToUseForX', args: [tr('trimVersionString')]), + required: false, + hint: '\$0', + ), + ], + [ + GeneratedFormSwitch( + 'versionDetection', + label: tr('versionDetectionExplanation'), + defaultValue: true, + ), + ], + [ + GeneratedFormSwitch( + 'useVersionCodeAsOSVersion', + label: tr('useVersionCodeAsOSVersion'), + defaultValue: false, + ), + ], + [ + GeneratedFormTextField( + 'apkFilterRegEx', + label: tr('filterAPKsByRegEx'), + required: false, + additionalValidators: [ + (value) { + return regExValidator(value); + }, + ], + ), + ], + [ + GeneratedFormSwitch( + 'invertAPKFilter', + label: '${tr('invertRegEx')} (${tr('filterAPKsByRegEx')})', + defaultValue: false, + ), + ], + [ + GeneratedFormSwitch( + 'autoApkFilterByArch', + label: tr('autoApkFilterByArch'), + defaultValue: true, + ), + ], + [GeneratedFormTextField('appName', label: tr('appName'), required: false)], + [GeneratedFormTextField('appAuthor', label: tr('author'), required: false)], + [ + GeneratedFormSwitch( + 'shizukuPretendToBeGooglePlay', + label: tr('shizukuPretendToBeGooglePlay'), + defaultValue: false, + ), + ], + [ + GeneratedFormSwitch( + 'allowInsecure', + label: tr('allowInsecure'), + defaultValue: false, + ), + ], + [ + GeneratedFormSwitch( + 'exemptFromBackgroundUpdates', + label: tr('exemptFromBackgroundUpdates'), + ), + ], + [ + GeneratedFormSwitch( + 'skipUpdateNotifications', + label: tr('skipUpdateNotifications'), + ), + ], + [GeneratedFormTextField('about', label: tr('about'), required: false)], + [ + GeneratedFormSwitch( + 'refreshBeforeDownload', + label: tr('refreshBeforeDownload'), + ), + ], + ]; + + // Previous 2 variables combined into one at runtime for convenient usage + additional processing + List> get combinedAppSpecificSettingFormItems { + if (showReleaseDateAsVersionToggle == true) { + if (additionalAppSpecificSourceAgnosticSettingFormItemsNeverUseDirectly + .indexWhere( + (List e) => + e.indexWhere( + (GeneratedFormItem i) => i.key == 'releaseDateAsVersion', + ) >= + 0, + ) < + 0) { + additionalAppSpecificSourceAgnosticSettingFormItemsNeverUseDirectly + .insert( + additionalAppSpecificSourceAgnosticSettingFormItemsNeverUseDirectly + .indexWhere( + (List e) => + e.indexWhere( + (GeneratedFormItem i) => + i.key == 'versionDetection', + ) >= + 0, + ) + + 1, + [ + GeneratedFormSwitch( + 'releaseDateAsVersion', + label: + '${tr('releaseDateAsVersion')} (${tr('pseudoVersion')})', + defaultValue: false, + ), + ], + ); + } + } + additionalAppSpecificSourceAgnosticSettingFormItemsNeverUseDirectly = + additionalAppSpecificSourceAgnosticSettingFormItemsNeverUseDirectly + .map( + (e) => e + .where((ee) => !excludeCommonSettingKeys.contains(ee.key)) + .toList(), + ) + .where((e) => e.isNotEmpty) + .toList(); + + var moreConditionalItems = []; + if (allowIncludeZips) { + moreConditionalItems.addAll([ + [ + GeneratedFormSwitch( + 'includeZips', + label: tr('includeZips'), + defaultValue: false, + ), + ], + [ + GeneratedFormTextField( + 'zippedApkFilterRegEx', + label: tr('zippedApkFilterRegEx'), + required: false, + additionalValidators: [ + (value) { + return regExValidator(value); + }, + ], + ), + ], + ]); + } + + if (versionDetectionDisallowed) { + overrideAdditionalAppSpecificSourceAgnosticSettingSwitch( + 'versionDetection', + disabled: true, + defaultValue: false, + ); + overrideAdditionalAppSpecificSourceAgnosticSettingSwitch( + 'useVersionCodeAsOSVersion', + disabled: true, + defaultValue: false, + ); + } + return [ + ...additionalSourceAppSpecificSettingFormItems, + ...additionalAppSpecificSourceAgnosticSettingFormItemsNeverUseDirectly, + ...moreConditionalItems, + ]; + } + + // Some Sources may have additional settings at the Source level (not specific to Apps) - these use SettingsProvider + // If the source has been overridden, we expect the user to define one-time values as additional settings - don't use the stored values + List sourceConfigSettingFormItems = []; + Future> getSourceConfigValues( + Map additionalSettings, + SettingsProvider settingsProvider, + ) async { + Map results = {}; + for (var e in sourceConfigSettingFormItems) { + var val = hostChanged && !hostIdenticalDespiteAnyChange + ? additionalSettings[e.key] + : additionalSettings[e.key] ?? + settingsProvider.getSettingString(e.key); + if (val != null) { + results[e.key] = val; + } + } + return results; + } + + String? changeLogPageFromStandardUrl(String standardUrl) { + return null; + } + + Future getSourceNote() async { + return null; + } + + Future assetUrlPrefetchModifier( + String assetUrl, + String standardUrl, + Map additionalSettings, + ) async { + return assetUrl; + } + + Future generalReqPrefetchModifier( + String reqUrl, + Map additionalSettings, + ) async { + return reqUrl; + } + + bool canSearch = false; + bool includeAdditionalOptsInMainSearch = false; + List searchQuerySettingFormItems = []; + Future>> search( + String query, { + Map querySettings = const {}, + }) { + throw NotImplementedError(); + } + + Future tryInferringAppId( + String standardUrl, { + Map additionalSettings = const {}, + }) async { + return null; + } +} + +ObtainiumError getObtainiumHttpError(Response res) { + return ObtainiumError( + (res.reasonPhrase != null && + res.reasonPhrase != null && + res.reasonPhrase!.isNotEmpty) + ? res.reasonPhrase! + : tr('errorWithHttpStatusCode', args: [res.statusCode.toString()]), + ); +} + +abstract class MassAppUrlSource { + late String name; + late List requiredArgs; + Future>> getUrlsWithDescriptions(List args); +} + +String? regExValidator(String? value) { + if (value == null || value.isEmpty) { + return null; + } + try { + RegExp(value); + } catch (e) { + return tr('invalidRegEx'); + } + return null; +} + +String? intValidator(String? value, {bool positive = false}) { + if (value == null) { + return tr('invalidInput'); + } + var num = int.tryParse(value); + if (num == null) { + return tr('invalidInput'); + } + if (positive && num <= 0) { + return tr('invalidInput'); + } + return null; +} + +bool isTempId(App app) { + // return app.id == generateTempID(app.url, app.additionalSettings); + return RegExp('^[0-9]+\$').hasMatch(app.id); +} + +String? replaceMatchGroupsInString(RegExpMatch match, String matchGroupString) { + if (RegExp('^\\d+\$').hasMatch(matchGroupString)) { + matchGroupString = '\$$matchGroupString'; + } + // Regular expression to match numbers in the input string + final numberRegex = RegExp(r'\$\d+'); + // Extract all numbers from the input string + final numbers = numberRegex.allMatches(matchGroupString); + if (numbers.isEmpty) { + // If no numbers found, return the original string + return null; + } + // Replace numbers with corresponding match groups + var outputString = matchGroupString; + for (final numberMatch in numbers) { + final number = numberMatch.group(0)!; + final matchGroup = match.group(int.parse(number.substring(1))) ?? ''; + // Check if the number is preceded by a single backslash + final isEscaped = outputString.contains('\\$number'); + // Replace the number with the corresponding match group + if (!isEscaped) { + outputString = outputString.replaceAll(number, matchGroup); + } else { + outputString = outputString.replaceAll('\\$number', number); + } + } + return outputString; +} + +String? extractVersion( + String? versionExtractionRegEx, + String? matchGroupString, + String stringToCheck, +) { + if (versionExtractionRegEx?.isNotEmpty == true) { + String? version = stringToCheck; + var match = RegExp(versionExtractionRegEx!).allMatches(version); + if (match.isEmpty) { + throw NoVersionError(); + } + matchGroupString = matchGroupString?.trim() ?? ''; + if (matchGroupString.isEmpty) { + matchGroupString = "0"; + } + version = replaceMatchGroupsInString(match.last, matchGroupString); + if (version?.isNotEmpty != true) { + throw NoVersionError(); + } + return version!; + } else { + return null; + } +} + +List> filterApks( + List> apkUrls, + String? apkFilterRegEx, + bool? invert, +) { + if (apkFilterRegEx?.isNotEmpty == true) { + var reg = RegExp(apkFilterRegEx!); + apkUrls = apkUrls.where((element) { + var hasMatch = reg.hasMatch(element.key); + return invert == true ? !hasMatch : hasMatch; + }).toList(); + } + return apkUrls; +} + +bool isEnglish() => tr('and') == 'and'; // Quick hack, find a better way +String lowerCaseIfEnglish(String str) => isEnglish() ? str.toLowerCase() : str; + +bool isVersionPseudo(App app) => + app.additionalSettings['trackOnly'] == true || + (app.installedVersion != null && + app.additionalSettings['versionDetection'] != true); + +class SourceProvider { + // Add more source classes here so they are available via the service + List get sources => [ + GitHub(), + GitLab(), + Codeberg(), + FDroid(), + FDroidRepo(), + IzzyOnDroid(), + SourceHut(), + APKPure(), + Aptoide(), + Uptodown(), + HuaweiAppGallery(), + Tencent(), + CoolApk(), + LiteAPKs(), + VivoAppStore(), + Jenkins(), + APKMirror(), + RuStore(), + Farsroid(), + TelegramApp(), + NeutronCode(), + DirectAPKLink(), + HTML(), // This should ALWAYS be the last option as they are tried in order + ]; + + // Add more mass url source classes here so they are available via the service + List massUrlSources = [GitHubStars()]; + + AppSource getSource(String url, {String? overrideSource}) { + url = preStandardizeUrl(url); + if (overrideSource != null) { + var srcs = sources.where( + (e) => e.runtimeType.toString() == overrideSource, + ); + if (srcs.isEmpty) { + throw UnsupportedURLError(); + } + var res = srcs.first; + var originalHosts = res.hosts; + var newHost = Uri.parse(url).host; + res.hosts = [newHost]; + res.hostChanged = true; + if (originalHosts.contains(newHost)) { + res.hostIdenticalDespiteAnyChange = true; + } + return res; + } + AppSource? source; + for (var s in sources.where((element) => element.hosts.isNotEmpty)) { + try { + if (RegExp( + '^${s.allowSubDomains ? '([^\\.]+\\.)*' : '(www\\.)?'}(${getSourceRegex(s.hosts)})\$', + ).hasMatch(Uri.parse(url).host)) { + source = s; + break; + } + } catch (e) { + // Ignore + } + } + if (source == null) { + for (var s in sources.where( + (element) => element.hosts.isEmpty && !element.neverAutoSelect, + )) { + try { + s.sourceSpecificStandardizeURL(url, forSelection: true); + source = s; + break; + } catch (e) { + // + } + } + } + if (source == null) { + throw UnsupportedURLError(); + } + return source; + } + + bool ifRequiredAppSpecificSettingsExist(AppSource source) { + for (var row in source.combinedAppSpecificSettingFormItems) { + for (var element in row) { + if (element is GeneratedFormTextField && element.required) { + return true; + } + } + } + return false; + } + + String generateTempID( + String standardUrl, + Map additionalSettings, + ) => (standardUrl + additionalSettings.toString()).hashCode.toString(); + + Future getApp( + AppSource source, + String url, + Map additionalSettings, { + App? currentApp, + bool trackOnlyOverride = false, + bool sourceIsOverriden = false, + bool inferAppIdIfOptional = false, + }) async { + if (trackOnlyOverride || source.enforceTrackOnly) { + additionalSettings['trackOnly'] = true; + } + var trackOnly = additionalSettings['trackOnly'] == true; + String standardUrl = source.standardizeUrl(url); + APKDetails apk = await source.getLatestAPKDetails( + standardUrl, + additionalSettings, + ); + + if (source.runtimeType != + HTML().runtimeType && // Some sources do it separately + source.runtimeType != SourceForge().runtimeType) { + String? extractedVersion = extractVersion( + additionalSettings['versionExtractionRegEx'] as String?, + additionalSettings['matchGroupToUse'] as String?, + apk.version, + ); + if (extractedVersion != null) { + apk.version = extractedVersion; + } + } + + if (additionalSettings['releaseDateAsVersion'] == true && + apk.releaseDate != null) { + apk.version = apk.releaseDate!.microsecondsSinceEpoch.toString(); + } + apk.apkUrls = filterApks( + apk.apkUrls, + additionalSettings['apkFilterRegEx'], + additionalSettings['invertAPKFilter'], + ); + if (apk.apkUrls.isEmpty && !trackOnly) { + throw NoAPKError(); + } + if (additionalSettings['autoApkFilterByArch'] == true) { + apk.apkUrls = await filterApksByArch(apk.apkUrls); + } + var name = currentApp != null ? currentApp.name.trim() : ''; + name = name.isNotEmpty ? name : apk.names.name; + App finalApp = App( + currentApp?.id ?? + ((additionalSettings['appId'] != null) + ? additionalSettings['appId'] + : null) ?? + (!trackOnly && + (!source.appIdInferIsOptional || + (source.appIdInferIsOptional && inferAppIdIfOptional)) + ? await source.tryInferringAppId( + standardUrl, + additionalSettings: additionalSettings, + ) + : null) ?? + generateTempID(standardUrl, additionalSettings), + standardUrl, + apk.names.author, + name, + currentApp?.installedVersion, + apk.version, + apk.apkUrls, + apk.apkUrls.length - 1 >= 0 ? apk.apkUrls.length - 1 : 0, + additionalSettings, + DateTime.now(), + currentApp?.pinned ?? false, + categories: currentApp?.categories ?? const [], + releaseDate: apk.releaseDate, + changeLog: apk.changeLog, + overrideSource: sourceIsOverriden + ? source.runtimeType.toString() + : currentApp?.overrideSource, + allowIdChange: + currentApp?.allowIdChange ?? + trackOnly || + (source.appIdInferIsOptional && + inferAppIdIfOptional), // Optional ID inferring may be incorrect - allow correction on first install + otherAssetUrls: apk.allAssetUrls + .where((a) => apk.apkUrls.indexWhere((p) => a.key == p.key) < 0) + .toList(), + ); + return source.endOfGetAppChanges(finalApp); + } + + // Returns errors in [results, errors] instead of throwing them + Future> getAppsByURLNaive( + List urls, { + List alreadyAddedUrls = const [], + AppSource? sourceOverride, + }) async { + List apps = []; + Map errors = {}; + for (var url in urls) { + try { + if (alreadyAddedUrls.contains(url)) { + throw ObtainiumError(tr('appAlreadyAdded')); + } + var source = sourceOverride ?? getSource(url); + apps.add( + await getApp( + source, + url, + sourceIsOverriden: sourceOverride != null, + getDefaultValuesFromFormItems( + source.combinedAppSpecificSettingFormItems, + ), + ), + ); + } catch (e) { + errors.addAll({url: e}); + } + } + return [apps, errors]; + } +} diff --git a/pubspec.lock b/pubspec.lock new file mode 100644 index 0000000..b12703d --- /dev/null +++ b/pubspec.lock @@ -0,0 +1,1204 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + android_intent_plus: + dependency: "direct main" + description: + name: android_intent_plus + sha256: "14a9f94c5825a528e8c38ee89a33dbeba947efbbf76f066c174f4f3ae4f48feb" + url: "https://pub.dev" + source: hosted + version: "6.0.0" + android_package_installer: + dependency: "direct main" + description: + path: "." + ref: main + resolved-ref: c9e144fae63231b5d1d7b88af779c314afcb6e83 + url: "https://github.com/ImranR98/android_package_installer" + source: git + version: "0.0.1" + android_package_manager: + dependency: "direct main" + description: + path: "." + ref: master + resolved-ref: "18231a8a2343747440b0bfe90f7d56ef7f586099" + url: "https://github.com/ImranR98/android_package_manager" + source: git + version: "0.7.1" + android_system_font: + dependency: "direct main" + description: + path: "." + ref: master + resolved-ref: "355f897e92a58a803f91d9270d389d9ec40ba550" + url: "https://github.com/re7gog/android_system_font" + source: git + version: "1.0.0" + animations: + dependency: "direct main" + description: + name: animations + sha256: a8031b276f0a7986ac907195f10ca7cd04ecf2a8a566bd6dbe03018a9b02b427 + url: "https://pub.dev" + source: hosted + version: "2.1.0" + app_links: + dependency: "direct main" + description: + name: app_links + sha256: "5f88447519add627fe1cbcab4fd1da3d4fed15b9baf29f28b22535c95ecee3e8" + url: "https://pub.dev" + source: hosted + version: "6.4.1" + app_links_linux: + dependency: transitive + description: + name: app_links_linux + sha256: f5f7173a78609f3dfd4c2ff2c95bd559ab43c80a87dc6a095921d96c05688c81 + url: "https://pub.dev" + source: hosted + version: "1.0.3" + app_links_platform_interface: + dependency: transitive + description: + name: app_links_platform_interface + sha256: "05f5379577c513b534a29ddea68176a4d4802c46180ee8e2e966257158772a3f" + url: "https://pub.dev" + source: hosted + version: "2.0.2" + app_links_web: + dependency: transitive + description: + name: app_links_web + sha256: af060ed76183f9e2b87510a9480e56a5352b6c249778d07bd2c95fc35632a555 + url: "https://pub.dev" + source: hosted + version: "1.0.4" + args: + dependency: transitive + description: + name: args + sha256: d0481093c50b1da8910eb0bb301626d4d8eb7284aa739614d2b394ee09e3ea04 + url: "https://pub.dev" + source: hosted + version: "2.7.0" + async: + dependency: transitive + description: + name: async + sha256: "758e6d74e971c3e5aceb4110bfd6698efc7f501675bcfe0c775459a8140750eb" + url: "https://pub.dev" + source: hosted + version: "2.13.0" + background_fetch: + dependency: "direct main" + description: + name: background_fetch + sha256: e767745c31f71660063985c982497995d0a71755d3f1b0c8e8c96988d64d3003 + url: "https://pub.dev" + source: hosted + version: "1.4.0" + battery_plus: + dependency: "direct main" + description: + name: battery_plus + sha256: ad16fcb55b7384be6b4bbc763d5e2031ac7ea62b2d9b6b661490c7b9741155bf + url: "https://pub.dev" + source: hosted + version: "7.0.0" + battery_plus_platform_interface: + dependency: transitive + description: + name: battery_plus_platform_interface + sha256: e8342c0f32de4b1dfd0223114b6785e48e579bfc398da9471c9179b907fa4910 + url: "https://pub.dev" + source: hosted + version: "2.0.1" + bcrypt: + dependency: "direct main" + description: + name: bcrypt + sha256: "9dc3f234d5935a76917a6056613e1a6d9b53f7fa56f98e24cd49b8969307764b" + url: "https://pub.dev" + source: hosted + version: "1.1.3" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea" + url: "https://pub.dev" + source: hosted + version: "2.1.2" + characters: + dependency: transitive + description: + name: characters + sha256: f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803 + url: "https://pub.dev" + source: hosted + version: "1.4.0" + clock: + dependency: transitive + description: + name: clock + sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b + url: "https://pub.dev" + source: hosted + version: "1.1.2" + collection: + dependency: transitive + description: + name: collection + sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" + url: "https://pub.dev" + source: hosted + version: "1.19.1" + connectivity_plus: + dependency: "direct main" + description: + name: connectivity_plus + sha256: "33bae12a398f841c6cda09d1064212957265869104c478e5ad51e2fb26c3973c" + url: "https://pub.dev" + source: hosted + version: "7.0.0" + connectivity_plus_platform_interface: + dependency: transitive + description: + name: connectivity_plus_platform_interface + sha256: "42657c1715d48b167930d5f34d00222ac100475f73d10162ddf43e714932f204" + url: "https://pub.dev" + source: hosted + version: "2.0.1" + cross_file: + dependency: transitive + description: + name: cross_file + sha256: "942a4791cd385a68ccb3b32c71c427aba508a1bb949b86dff2adbe4049f16239" + url: "https://pub.dev" + source: hosted + version: "0.3.5" + crypto: + dependency: "direct main" + description: + name: crypto + sha256: c8ea0233063ba03258fbcf2ca4d6dadfefe14f02fab57702265467a19f27fadf + url: "https://pub.dev" + source: hosted + version: "3.0.7" + csslib: + dependency: transitive + description: + name: csslib + sha256: "09bad715f418841f976c77db72d5398dc1253c21fb9c0c7f0b0b985860b2d58e" + url: "https://pub.dev" + source: hosted + version: "1.0.2" + cupertino_icons: + dependency: "direct main" + description: + name: cupertino_icons + sha256: ba631d1c7f7bef6b729a622b7b752645a2d076dba9976925b8f25725a30e1ee6 + url: "https://pub.dev" + source: hosted + version: "1.0.8" + dbus: + dependency: transitive + description: + name: dbus + sha256: "79e0c23480ff85dc68de79e2cd6334add97e48f7f4865d17686dd6ea81a47e8c" + url: "https://pub.dev" + source: hosted + version: "0.7.11" + device_info_plus: + dependency: "direct main" + description: + name: device_info_plus + sha256: dd0e8e02186b2196c7848c9d394a5fd6e5b57a43a546082c5820b1ec72317e33 + url: "https://pub.dev" + source: hosted + version: "12.2.0" + device_info_plus_platform_interface: + dependency: transitive + description: + name: device_info_plus_platform_interface + sha256: e1ea89119e34903dca74b883d0dd78eb762814f97fb6c76f35e9ff74d261a18f + url: "https://pub.dev" + source: hosted + version: "7.0.3" + dynamic_color: + dependency: "direct main" + description: + name: dynamic_color + sha256: "43a5a6679649a7731ab860334a5812f2067c2d9ce6452cf069c5e0c25336c17c" + url: "https://pub.dev" + source: hosted + version: "1.8.1" + easy_localization: + dependency: "direct main" + description: + name: easy_localization + sha256: "2ccdf9db8fe4d9c5a75c122e6275674508fd0f0d49c827354967b8afcc56bbed" + url: "https://pub.dev" + source: hosted + version: "3.0.8" + easy_logger: + dependency: transitive + description: + name: easy_logger + sha256: c764a6e024846f33405a2342caf91c62e357c24b02c04dbc712ef232bf30ffb7 + url: "https://pub.dev" + source: hosted + version: "0.0.2" + equations: + dependency: "direct main" + description: + name: equations + sha256: ae30e977d601e19aa1fc3409736c5eac01559d1d653a4c30141fbc4e86aa605c + url: "https://pub.dev" + source: hosted + version: "5.0.2" + fake_async: + dependency: transitive + description: + name: fake_async + sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44" + url: "https://pub.dev" + source: hosted + version: "1.3.3" + ffi: + dependency: transitive + description: + name: ffi + sha256: "289279317b4b16eb2bb7e271abccd4bf84ec9bdcbe999e278a94b804f5630418" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + file: + dependency: transitive + description: + name: file + sha256: a3b4f84adafef897088c160faf7dfffb7696046cb13ae90b508c2cbc95d3b8d4 + url: "https://pub.dev" + source: hosted + version: "7.0.1" + file_picker: + dependency: "direct main" + description: + name: file_picker + sha256: f2d9f173c2c14635cc0e9b14c143c49ef30b4934e8d1d274d6206fcb0086a06f + url: "https://pub.dev" + source: hosted + version: "10.3.3" + fixnum: + dependency: transitive + description: + name: fixnum + sha256: b6dc7065e46c974bc7c5f143080a6764ec7a4be6da1285ececdc37be96de53be + url: "https://pub.dev" + source: hosted + version: "1.1.1" + flex_color_picker: + dependency: "direct main" + description: + name: flex_color_picker + sha256: f5b0b53d4ae0d59b1e28dfc21d5398e5028cf8e764518e491a52fd050aa23881 + url: "https://pub.dev" + source: hosted + version: "3.7.2" + flex_seed_scheme: + dependency: transitive + description: + name: flex_seed_scheme + sha256: "828291a5a4d4283590541519d8b57821946660ac61d2e07d955f81cfcab22e5d" + url: "https://pub.dev" + source: hosted + version: "3.6.1" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_archive: + dependency: "direct main" + description: + name: flutter_archive + sha256: "5ca235f304c12bf468979235f400f79846d204169d715939e39197106f5fc970" + url: "https://pub.dev" + source: hosted + version: "6.0.3" + flutter_charset_detector: + dependency: "direct main" + description: + name: flutter_charset_detector + sha256: "21f6fe8172fbfe3ba9d2fe0dba3702ba07f682315e829a68d49185a0c80d5ad0" + url: "https://pub.dev" + source: hosted + version: "5.0.0" + flutter_charset_detector_android: + dependency: transitive + description: + name: flutter_charset_detector_android + sha256: "617345b0f78ad56c2633ea6132e57c2e374f6970792afbe9743237f683eeae8e" + url: "https://pub.dev" + source: hosted + version: "3.1.1" + flutter_charset_detector_darwin: + dependency: transitive + description: + name: flutter_charset_detector_darwin + sha256: "8cf51c3e16c2fb4ec4e309f16f6046a0ddf1ff57d1b6b696410d077a9ffbfb15" + url: "https://pub.dev" + source: hosted + version: "1.2.1" + flutter_charset_detector_platform_interface: + dependency: transitive + description: + name: flutter_charset_detector_platform_interface + sha256: "1c09ed7b314a5a9dde76057b98b7d35458ba881eed03d5e5b6f7f74b4869d18c" + url: "https://pub.dev" + source: hosted + version: "1.1.0" + flutter_charset_detector_web: + dependency: transitive + description: + name: flutter_charset_detector_web + sha256: e3ac65f94b12f4887937b21a19365d7927db816840cb93274e3861241cb0e9f2 + url: "https://pub.dev" + source: hosted + version: "2.0.0" + flutter_fgbg: + dependency: "direct main" + description: + name: flutter_fgbg + sha256: eb6da9b2047372566a6e17b505975fe5bace94af01f6fc825c4b6f81baa6c447 + url: "https://pub.dev" + source: hosted + version: "0.7.1" + flutter_foreground_task: + dependency: "direct main" + description: + name: flutter_foreground_task + sha256: "9f1b25a81db95d7119d2c5cffc654048cbdd49d4056183e1beadc1a6a38f3e29" + url: "https://pub.dev" + source: hosted + version: "9.1.0" + flutter_keyboard_visibility: + dependency: transitive + description: + name: flutter_keyboard_visibility + sha256: "98664be7be0e3ffca00de50f7f6a287ab62c763fc8c762e0a21584584a3ff4f8" + url: "https://pub.dev" + source: hosted + version: "6.0.0" + flutter_keyboard_visibility_linux: + dependency: transitive + description: + name: flutter_keyboard_visibility_linux + sha256: "6fba7cd9bb033b6ddd8c2beb4c99ad02d728f1e6e6d9b9446667398b2ac39f08" + url: "https://pub.dev" + source: hosted + version: "1.0.0" + flutter_keyboard_visibility_macos: + dependency: transitive + description: + name: flutter_keyboard_visibility_macos + sha256: c5c49b16fff453dfdafdc16f26bdd8fb8d55812a1d50b0ce25fc8d9f2e53d086 + url: "https://pub.dev" + source: hosted + version: "1.0.0" + flutter_keyboard_visibility_platform_interface: + dependency: transitive + description: + name: flutter_keyboard_visibility_platform_interface + sha256: e43a89845873f7be10cb3884345ceb9aebf00a659f479d1c8f4293fcb37022a4 + url: "https://pub.dev" + source: hosted + version: "2.0.0" + flutter_keyboard_visibility_web: + dependency: transitive + description: + name: flutter_keyboard_visibility_web + sha256: d3771a2e752880c79203f8d80658401d0c998e4183edca05a149f5098ce6e3d1 + url: "https://pub.dev" + source: hosted + version: "2.0.0" + flutter_keyboard_visibility_windows: + dependency: transitive + description: + name: flutter_keyboard_visibility_windows + sha256: fc4b0f0b6be9b93ae527f3d527fb56ee2d918cd88bbca438c478af7bcfd0ef73 + url: "https://pub.dev" + source: hosted + version: "1.0.0" + flutter_lints: + dependency: "direct main" + description: + name: flutter_lints + sha256: "3105dc8492f6183fb076ccf1f351ac3d60564bff92e20bfc4af9cc1651f4e7e1" + url: "https://pub.dev" + source: hosted + version: "6.0.0" + flutter_local_notifications: + dependency: "direct main" + description: + name: flutter_local_notifications + sha256: ef41ae901e7529e52934feba19ed82827b11baa67336829564aeab3129460610 + url: "https://pub.dev" + source: hosted + version: "18.0.1" + flutter_local_notifications_linux: + dependency: transitive + description: + name: flutter_local_notifications_linux + sha256: "8f685642876742c941b29c32030f6f4f6dacd0e4eaecb3efbb187d6a3812ca01" + url: "https://pub.dev" + source: hosted + version: "5.0.0" + flutter_local_notifications_platform_interface: + dependency: transitive + description: + name: flutter_local_notifications_platform_interface + sha256: "6c5b83c86bf819cdb177a9247a3722067dd8cc6313827ce7c77a4b238a26fd52" + url: "https://pub.dev" + source: hosted + version: "8.0.0" + flutter_localizations: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + flutter_markdown: + dependency: "direct main" + description: + name: flutter_markdown + sha256: "08fb8315236099ff8e90cb87bb2b935e0a724a3af1623000a9cec930468e0f27" + url: "https://pub.dev" + source: hosted + version: "0.7.7+1" + flutter_plugin_android_lifecycle: + dependency: transitive + description: + name: flutter_plugin_android_lifecycle + sha256: "306f0596590e077338312f38837f595c04f28d6cdeeac392d3d74df2f0003687" + url: "https://pub.dev" + source: hosted + version: "2.0.32" + flutter_test: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + flutter_typeahead: + dependency: "direct main" + description: + name: flutter_typeahead + sha256: d64712c65db240b1057559b952398ebb6e498077baeebf9b0731dade62438a6d + url: "https://pub.dev" + source: hosted + version: "5.2.0" + flutter_web_plugins: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + fluttertoast: + dependency: "direct main" + description: + name: fluttertoast + sha256: "144ddd74d49c865eba47abe31cbc746c7b311c82d6c32e571fd73c4264b740e2" + url: "https://pub.dev" + source: hosted + version: "9.0.0" + fraction: + dependency: transitive + description: + name: fraction + sha256: dd487c01c0bfdcccc44d15250b24b4bee94b6981e01e8c41007a1b02f395ea01 + url: "https://pub.dev" + source: hosted + version: "5.0.5" + gtk: + dependency: transitive + description: + name: gtk + sha256: e8ce9ca4b1df106e4d72dad201d345ea1a036cc12c360f1a7d5a758f78ffa42c + url: "https://pub.dev" + source: hosted + version: "2.1.0" + hsluv: + dependency: "direct main" + description: + name: hsluv + sha256: f33e63b0c24ceee0f6492874424aa8edc671ef9a20cc889e4b969284d8f02eb1 + url: "https://pub.dev" + source: hosted + version: "1.1.3" + html: + dependency: "direct main" + description: + name: html + sha256: "6d1264f2dffa1b1101c25a91dff0dc2daee4c18e87cd8538729773c073dbf602" + url: "https://pub.dev" + source: hosted + version: "0.15.6" + http: + dependency: "direct main" + description: + name: http + sha256: bb2ce4590bc2667c96f318d68cac1b5a7987ec819351d32b1c987239a815e007 + url: "https://pub.dev" + source: hosted + version: "1.5.0" + http_parser: + dependency: transitive + description: + name: http_parser + sha256: "178d74305e7866013777bab2c3d8726205dc5a4dd935297175b19a23a2e66571" + url: "https://pub.dev" + source: hosted + version: "4.1.2" + intl: + dependency: transitive + description: + name: intl + sha256: "3df61194eb431efc39c4ceba583b95633a403f46c9fd341e550ce0bfa50e9aa5" + url: "https://pub.dev" + source: hosted + version: "0.20.2" + leak_tracker: + dependency: transitive + description: + name: leak_tracker + sha256: "33e2e26bdd85a0112ec15400c8cbffea70d0f9c3407491f672a2fad47915e2de" + url: "https://pub.dev" + source: hosted + version: "11.0.2" + leak_tracker_flutter_testing: + dependency: transitive + description: + name: leak_tracker_flutter_testing + sha256: "1dbc140bb5a23c75ea9c4811222756104fbcd1a27173f0c34ca01e16bea473c1" + url: "https://pub.dev" + source: hosted + version: "3.0.10" + leak_tracker_testing: + dependency: transitive + description: + name: leak_tracker_testing + sha256: "8d5a2d49f4a66b49744b23b018848400d23e54caf9463f4eb20df3eb8acb2eb1" + url: "https://pub.dev" + source: hosted + version: "3.0.2" + lints: + dependency: transitive + description: + name: lints + sha256: a5e2b223cb7c9c8efdc663ef484fdd95bb243bff242ef5b13e26883547fce9a0 + url: "https://pub.dev" + source: hosted + version: "6.0.0" + markdown: + dependency: "direct main" + description: + name: markdown + sha256: "935e23e1ff3bc02d390bad4d4be001208ee92cc217cb5b5a6c19bc14aaa318c1" + url: "https://pub.dev" + source: hosted + version: "7.3.0" + matcher: + dependency: transitive + description: + name: matcher + sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2 + url: "https://pub.dev" + source: hosted + version: "0.12.17" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec + url: "https://pub.dev" + source: hosted + version: "0.11.1" + meta: + dependency: transitive + description: + name: meta + sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c + url: "https://pub.dev" + source: hosted + version: "1.16.0" + mime: + dependency: transitive + description: + name: mime + sha256: "41a20518f0cb1256669420fdba0cd90d21561e560ac240f26ef8322e45bb7ed6" + url: "https://pub.dev" + source: hosted + version: "2.0.0" + nested: + dependency: transitive + description: + name: nested + sha256: "03bac4c528c64c95c722ec99280375a6f2fc708eec17c7b3f07253b626cd2a20" + url: "https://pub.dev" + source: hosted + version: "1.0.0" + nm: + dependency: transitive + description: + name: nm + sha256: "2c9aae4127bdc8993206464fcc063611e0e36e72018696cd9631023a31b24254" + url: "https://pub.dev" + source: hosted + version: "0.5.0" + path: + dependency: transitive + description: + name: path + sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" + url: "https://pub.dev" + source: hosted + version: "1.9.1" + path_provider: + dependency: "direct main" + description: + name: path_provider + sha256: "50c5dd5b6e1aaf6fb3a78b33f6aa3afca52bf903a8a5298f53101fdaee55bbcd" + url: "https://pub.dev" + source: hosted + version: "2.1.5" + path_provider_android: + dependency: transitive + description: + name: path_provider_android + sha256: e122c5ea805bb6773bb12ce667611265980940145be920cd09a4b0ec0285cb16 + url: "https://pub.dev" + source: hosted + version: "2.2.20" + path_provider_foundation: + dependency: transitive + description: + name: path_provider_foundation + sha256: efaec349ddfc181528345c56f8eda9d6cccd71c177511b132c6a0ddaefaa2738 + url: "https://pub.dev" + source: hosted + version: "2.4.3" + path_provider_linux: + dependency: transitive + description: + name: path_provider_linux + sha256: f7a1fe3a634fe7734c8d3f2766ad746ae2a2884abe22e241a8b301bf5cac3279 + url: "https://pub.dev" + source: hosted + version: "2.2.1" + path_provider_platform_interface: + dependency: transitive + description: + name: path_provider_platform_interface + sha256: "88f5779f72ba699763fa3a3b06aa4bf6de76c8e5de842cf6f29e2e06476c2334" + url: "https://pub.dev" + source: hosted + version: "2.1.2" + path_provider_windows: + dependency: transitive + description: + name: path_provider_windows + sha256: bd6f00dbd873bfb70d0761682da2b3a2c2fccc2b9e84c495821639601d81afe7 + url: "https://pub.dev" + source: hosted + version: "2.3.0" + permission_handler: + dependency: "direct main" + description: + name: permission_handler + sha256: bc917da36261b00137bbc8896bf1482169cd76f866282368948f032c8c1caae1 + url: "https://pub.dev" + source: hosted + version: "12.0.1" + permission_handler_android: + dependency: transitive + description: + name: permission_handler_android + sha256: "1e3bc410ca1bf84662104b100eb126e066cb55791b7451307f9708d4007350e6" + url: "https://pub.dev" + source: hosted + version: "13.0.1" + permission_handler_apple: + dependency: transitive + description: + name: permission_handler_apple + sha256: f000131e755c54cf4d84a5d8bd6e4149e262cc31c5a8b1d698de1ac85fa41023 + url: "https://pub.dev" + source: hosted + version: "9.4.7" + permission_handler_html: + dependency: transitive + description: + name: permission_handler_html + sha256: "38f000e83355abb3392140f6bc3030660cfaef189e1f87824facb76300b4ff24" + url: "https://pub.dev" + source: hosted + version: "0.1.3+5" + permission_handler_platform_interface: + dependency: transitive + description: + name: permission_handler_platform_interface + sha256: eb99b295153abce5d683cac8c02e22faab63e50679b937fa1bf67d58bb282878 + url: "https://pub.dev" + source: hosted + version: "4.3.0" + permission_handler_windows: + dependency: transitive + description: + name: permission_handler_windows + sha256: "1a790728016f79a41216d88672dbc5df30e686e811ad4e698bfc51f76ad91f1e" + url: "https://pub.dev" + source: hosted + version: "0.2.1" + petitparser: + dependency: transitive + description: + name: petitparser + sha256: cb3798bef7fc021ac45b308f4b51208a152792445cce0448c9a4ba5879dd8750 + url: "https://pub.dev" + source: hosted + version: "5.4.0" + platform: + dependency: transitive + description: + name: platform + sha256: "5d6b1b0036a5f331ebc77c850ebc8506cbc1e9416c27e59b439f917a902a4984" + url: "https://pub.dev" + source: hosted + version: "3.1.6" + plugin_platform_interface: + dependency: transitive + description: + name: plugin_platform_interface + sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" + url: "https://pub.dev" + source: hosted + version: "2.1.8" + pointer_interceptor: + dependency: transitive + description: + name: pointer_interceptor + sha256: "57210410680379aea8b1b7ed6ae0c3ad349bfd56fe845b8ea934a53344b9d523" + url: "https://pub.dev" + source: hosted + version: "0.10.1+2" + pointer_interceptor_ios: + dependency: transitive + description: + name: pointer_interceptor_ios + sha256: "03c5fa5896080963ab4917eeffda8d28c90f22863a496fb5ba13bc10943e40e4" + url: "https://pub.dev" + source: hosted + version: "0.10.1+1" + pointer_interceptor_platform_interface: + dependency: transitive + description: + name: pointer_interceptor_platform_interface + sha256: "0597b0560e14354baeb23f8375cd612e8bd4841bf8306ecb71fcd0bb78552506" + url: "https://pub.dev" + source: hosted + version: "0.10.0+1" + pointer_interceptor_web: + dependency: transitive + description: + name: pointer_interceptor_web + sha256: "460b600e71de6fcea2b3d5f662c92293c049c4319e27f0829310e5a953b3ee2a" + url: "https://pub.dev" + source: hosted + version: "0.10.3" + provider: + dependency: "direct main" + description: + name: provider + sha256: "4e82183fa20e5ca25703ead7e05de9e4cceed1fbd1eadc1ac3cb6f565a09f272" + url: "https://pub.dev" + source: hosted + version: "6.1.5+1" + share_plus: + dependency: "direct main" + description: + name: share_plus + sha256: "14c8860d4de93d3a7e53af51bff479598c4e999605290756bbbe45cf65b37840" + url: "https://pub.dev" + source: hosted + version: "12.0.1" + share_plus_platform_interface: + dependency: transitive + description: + name: share_plus_platform_interface + sha256: "88023e53a13429bd65d8e85e11a9b484f49d4c190abbd96c7932b74d6927cc9a" + url: "https://pub.dev" + source: hosted + version: "6.1.0" + shared_preferences: + dependency: "direct main" + description: + name: shared_preferences + sha256: "6e8bf70b7fef813df4e9a36f658ac46d107db4b4cfe1048b477d4e453a8159f5" + url: "https://pub.dev" + source: hosted + version: "2.5.3" + shared_preferences_android: + dependency: transitive + description: + name: shared_preferences_android + sha256: "34266009473bf71d748912da4bf62d439185226c03e01e2d9687bc65bbfcb713" + url: "https://pub.dev" + source: hosted + version: "2.4.15" + shared_preferences_foundation: + dependency: transitive + description: + name: shared_preferences_foundation + sha256: "1c33a907142607c40a7542768ec9badfd16293bac51da3a4482623d15845f88b" + url: "https://pub.dev" + source: hosted + version: "2.5.5" + shared_preferences_linux: + dependency: transitive + description: + name: shared_preferences_linux + sha256: "580abfd40f415611503cae30adf626e6656dfb2f0cee8f465ece7b6defb40f2f" + url: "https://pub.dev" + source: hosted + version: "2.4.1" + shared_preferences_platform_interface: + dependency: transitive + description: + name: shared_preferences_platform_interface + sha256: "57cbf196c486bc2cf1f02b85784932c6094376284b3ad5779d1b1c6c6a816b80" + url: "https://pub.dev" + source: hosted + version: "2.4.1" + shared_preferences_web: + dependency: transitive + description: + name: shared_preferences_web + sha256: c49bd060261c9a3f0ff445892695d6212ff603ef3115edbb448509d407600019 + url: "https://pub.dev" + source: hosted + version: "2.4.3" + shared_preferences_windows: + dependency: transitive + description: + name: shared_preferences_windows + sha256: "94ef0f72b2d71bc3e700e025db3710911bd51a71cefb65cc609dd0d9a982e3c1" + url: "https://pub.dev" + source: hosted + version: "2.4.1" + shared_storage: + dependency: "direct main" + description: + path: "." + ref: master + resolved-ref: "012e22791138958e089f6c1a8d6c4c6943a9f253" + url: "https://github.com/AlexBacich/shared-storage" + source: git + version: "0.7.0" + shizuku_apk_installer: + dependency: "direct main" + description: + path: "." + ref: master + resolved-ref: c4349ceb03ae7293987cc0290ef06761e62c082e + url: "https://github.com/wilver06w/shizuku_apk_installer" + source: git + version: "0.0.1" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + source_span: + dependency: transitive + description: + name: source_span + sha256: "254ee5351d6cb365c859e20ee823c3bb479bf4a293c22d17a9f1bf144ce86f7c" + url: "https://pub.dev" + source: hosted + version: "1.10.1" + sqflite: + dependency: "direct main" + description: + name: sqflite + sha256: e2297b1da52f127bc7a3da11439985d9b536f75070f3325e62ada69a5c585d03 + url: "https://pub.dev" + source: hosted + version: "2.4.2" + sqflite_android: + dependency: transitive + description: + name: sqflite_android + sha256: ecd684501ebc2ae9a83536e8b15731642b9570dc8623e0073d227d0ee2bfea88 + url: "https://pub.dev" + source: hosted + version: "2.4.2+2" + sqflite_common: + dependency: transitive + description: + name: sqflite_common + sha256: "6ef422a4525ecc601db6c0a2233ff448c731307906e92cabc9ba292afaae16a6" + url: "https://pub.dev" + source: hosted + version: "2.5.6" + sqflite_darwin: + dependency: transitive + description: + name: sqflite_darwin + sha256: "279832e5cde3fe99e8571879498c9211f3ca6391b0d818df4e17d9fff5c6ccb3" + url: "https://pub.dev" + source: hosted + version: "2.4.2" + sqflite_platform_interface: + dependency: transitive + description: + name: sqflite_platform_interface + sha256: "8dd4515c7bdcae0a785b0062859336de775e8c65db81ae33dd5445f35be61920" + url: "https://pub.dev" + source: hosted + version: "2.4.0" + stack_trace: + dependency: transitive + description: + name: stack_trace + sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" + url: "https://pub.dev" + source: hosted + version: "1.12.1" + stream_channel: + dependency: transitive + description: + name: stream_channel + sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + string_scanner: + dependency: transitive + description: + name: string_scanner + sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43" + url: "https://pub.dev" + source: hosted + version: "1.4.1" + synchronized: + dependency: transitive + description: + name: synchronized + sha256: c254ade258ec8282947a0acbbc90b9575b4f19673533ee46f2f6e9b3aeefd7c0 + url: "https://pub.dev" + source: hosted + version: "3.4.0" + term_glyph: + dependency: transitive + description: + name: term_glyph + sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e" + url: "https://pub.dev" + source: hosted + version: "1.2.2" + test_api: + dependency: transitive + description: + name: test_api + sha256: "522f00f556e73044315fa4585ec3270f1808a4b186c936e612cab0b565ff1e00" + url: "https://pub.dev" + source: hosted + version: "0.7.6" + timezone: + dependency: transitive + description: + name: timezone + sha256: dd14a3b83cfd7cb19e7888f1cbc20f258b8d71b54c06f79ac585f14093a287d1 + url: "https://pub.dev" + source: hosted + version: "0.10.1" + typed_data: + dependency: transitive + description: + name: typed_data + sha256: f9049c039ebfeb4cf7a7104a675823cd72dba8297f264b6637062516699fa006 + url: "https://pub.dev" + source: hosted + version: "1.4.0" + upower: + dependency: transitive + description: + name: upower + sha256: cf042403154751180affa1d15614db7fa50234bc2373cd21c3db666c38543ebf + url: "https://pub.dev" + source: hosted + version: "0.7.0" + url_launcher: + dependency: "direct main" + description: + name: url_launcher + sha256: f6a7e5c4835bb4e3026a04793a4199ca2d14c739ec378fdfe23fc8075d0439f8 + url: "https://pub.dev" + source: hosted + version: "6.3.2" + url_launcher_android: + dependency: transitive + description: + name: url_launcher_android + sha256: "5c8b6c2d89a78f5a1cca70a73d9d5f86c701b36b42f9c9dac7bad592113c28e9" + url: "https://pub.dev" + source: hosted + version: "6.3.24" + url_launcher_ios: + dependency: transitive + description: + name: url_launcher_ios + sha256: "6b63f1441e4f653ae799166a72b50b1767321ecc263a57aadf825a7a2a5477d9" + url: "https://pub.dev" + source: hosted + version: "6.3.5" + url_launcher_linux: + dependency: transitive + description: + name: url_launcher_linux + sha256: "4e9ba368772369e3e08f231d2301b4ef72b9ff87c31192ef471b380ef29a4935" + url: "https://pub.dev" + source: hosted + version: "3.2.1" + url_launcher_macos: + dependency: transitive + description: + name: url_launcher_macos + sha256: "8262208506252a3ed4ff5c0dc1e973d2c0e0ef337d0a074d35634da5d44397c9" + url: "https://pub.dev" + source: hosted + version: "3.2.4" + url_launcher_platform_interface: + dependency: transitive + description: + name: url_launcher_platform_interface + sha256: "552f8a1e663569be95a8190206a38187b531910283c3e982193e4f2733f01029" + url: "https://pub.dev" + source: hosted + version: "2.3.2" + url_launcher_web: + dependency: transitive + description: + name: url_launcher_web + sha256: "4bd2b7b4dc4d4d0b94e5babfffbca8eac1a126c7f3d6ecbc1a11013faa3abba2" + url: "https://pub.dev" + source: hosted + version: "2.4.1" + url_launcher_windows: + dependency: transitive + description: + name: url_launcher_windows + sha256: "3284b6d2ac454cf34f114e1d3319866fdd1e19cdc329999057e44ffe936cfa77" + url: "https://pub.dev" + source: hosted + version: "3.1.4" + uuid: + dependency: transitive + description: + name: uuid + sha256: a11b666489b1954e01d992f3d601b1804a33937b5a8fe677bd26b8a9f96f96e8 + url: "https://pub.dev" + source: hosted + version: "4.5.2" + vector_math: + dependency: transitive + description: + name: vector_math + sha256: d530bd74fea330e6e364cda7a85019c434070188383e1cd8d9777ee586914c5b + url: "https://pub.dev" + source: hosted + version: "2.2.0" + vm_service: + dependency: transitive + description: + name: vm_service + sha256: "45caa6c5917fa127b5dbcfbd1fa60b14e583afdc08bfc96dda38886ca252eb60" + url: "https://pub.dev" + source: hosted + version: "15.0.2" + web: + dependency: transitive + description: + name: web + sha256: "868d88a33d8a87b18ffc05f9f030ba328ffefba92d6c127917a2ba740f9cfe4a" + url: "https://pub.dev" + source: hosted + version: "1.1.1" + webview_flutter: + dependency: "direct main" + description: + name: webview_flutter + sha256: c3e4fe614b1c814950ad07186007eff2f2e5dd2935eba7b9a9a1af8e5885f1ba + url: "https://pub.dev" + source: hosted + version: "4.13.0" + webview_flutter_android: + dependency: transitive + description: + name: webview_flutter_android + sha256: e5201c620eb2637dca88a756961fae4a7191bb30b4f2271e08b746405ffdf3fd + url: "https://pub.dev" + source: hosted + version: "4.10.5" + webview_flutter_platform_interface: + dependency: transitive + description: + name: webview_flutter_platform_interface + sha256: "63d26ee3aca7256a83ccb576a50272edd7cfc80573a4305caa98985feb493ee0" + url: "https://pub.dev" + source: hosted + version: "2.14.0" + webview_flutter_wkwebview: + dependency: transitive + description: + name: webview_flutter_wkwebview + sha256: "5de608fdea144d4370c21d4c80f0528135529e0180aa129790064c345e457a43" + url: "https://pub.dev" + source: hosted + version: "3.23.2" + win32: + dependency: transitive + description: + name: win32 + sha256: d7cb55e04cd34096cd3a79b3330245f54cb96a370a1c27adb3c84b917de8b08e + url: "https://pub.dev" + source: hosted + version: "5.15.0" + win32_registry: + dependency: transitive + description: + name: win32_registry + sha256: "6f1b564492d0147b330dd794fee8f512cec4977957f310f9951b5f9d83618dae" + url: "https://pub.dev" + source: hosted + version: "2.1.0" + xdg_directories: + dependency: transitive + description: + name: xdg_directories + sha256: "7a3f37b05d989967cdddcbb571f1ea834867ae2faa29725fd085180e0883aa15" + url: "https://pub.dev" + source: hosted + version: "1.1.0" + xml: + dependency: transitive + description: + name: xml + sha256: "5bc72e1e45e941d825fd7468b9b4cc3b9327942649aeb6fc5cdbf135f0a86e84" + url: "https://pub.dev" + source: hosted + version: "6.3.0" +sdks: + dart: ">=3.9.0 <4.0.0" + flutter: ">=3.35.0" diff --git a/pubspec.yaml b/pubspec.yaml new file mode 100644 index 0000000..72d0595 --- /dev/null +++ b/pubspec.yaml @@ -0,0 +1,153 @@ +name: obtainium +description: Get Android app updates straight from the source. +# The following line prevents the package from being accidentally published to +# pub.dev using `flutter pub publish`. This is preferred for private packages. +publish_to: 'none' # Remove this line if you wish to publish to pub.dev + +# The following defines the version and build number for your application. +# A version number is three numbers separated by dots, like 1.2.43 +# followed by an optional build number separated by a +. +# Both the version and the builder number may be overridden in flutter +# build by specifying --build-name and --build-number, respectively. +# In Android, build-name is used as versionName while build-number used as versionCode. +# Read more about Android versioning at https://developer.android.com/studio/publish/versioning +# In iOS, build-name is used as CFBundleShortVersionString while build-number is used as CFBundleVersion. +# Read more about iOS versioning at +# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html +# In Windows, build-name is used as the major, minor, and patch parts +# of the product and file versions while build-number is used as the build suffix. +version: 1.2.8+2324 + +environment: + sdk: ^3.8.1 + +# Dependencies specify other packages that your package needs in order to work. +# To automatically upgrade your package dependencies to the latest versions +# consider running `flutter pub upgrade --major-versions`. Alternatively, +# dependencies can be manually updated by changing the version numbers below to +# the latest version available on pub.dev. To see which dependencies have newer +# versions available, run `flutter pub outdated`. +dependencies: + flutter: + sdk: flutter + + # The following adds the Cupertino Icons font to your application. + # Use with the CupertinoIcons class for iOS style icons. + cupertino_icons: ^1.0.8 + path_provider: ^2.1.5 + flutter_fgbg: ^0.7.1 + flutter_local_notifications: ^18.0.1 + provider: ^6.1.5 + http: ^1.4.0 + webview_flutter: ^4.13.0 + dynamic_color: ^1.7.0 + html: ^0.15.6 + shared_preferences: ^2.5.3 + url_launcher: ^6.3.1 + permission_handler: ^12.0.0+1 + fluttertoast: ^9.0.0 + device_info_plus: ^12.1.0 + file_picker: ^10.1.9 + animations: ^2.0.11 + android_package_installer: # TODO: See if PR will be accepted (dev may not be active), else remove this comment + git: + url: https://github.com/ImranR98/android_package_installer + ref: main + android_package_manager: # TODO: Make PR and switch to upstream + git: + url: https://github.com/ImranR98/android_package_manager + ref: master + share_plus: ^12.0.0 + sqflite: ^2.4.2 + easy_localization: ^3.0.7+1 + android_intent_plus: ^6.0.0 + flutter_markdown: ^0.7.7+1 + flutter_archive: ^6.0.3 + hsluv: ^1.1.3 + connectivity_plus: ^7.0.0 + shared_storage: # TODO: Is this maintained? + git: + url: https://github.com/AlexBacich/shared-storage + ref: master + crypto: ^3.0.6 + bcrypt: ^1.1.3 + app_links: ^6.4.0 + background_fetch: ^1.3.8 + equations: ^5.0.2 + flex_color_picker: ^3.7.1 + android_system_font: + git: + url: https://github.com/re7gog/android_system_font + ref: master + shizuku_apk_installer: + git: + url: https://github.com/wilver06w/shizuku_apk_installer + ref: master + markdown: ^7.3.0 + flutter_typeahead: ^5.2.0 + battery_plus: ^7.0.0 + flutter_charset_detector: ^5.0.0 + + # The "flutter_lints" package below contains a set of recommended lints to + # encourage good coding practices. The lint set provided by the package is + # activated in the `analysis_options.yaml` file located at the root of your + # package. See that file for information about deactivating specific lint + # rules and activating additional ones. + flutter_lints: ^6.0.0 + flutter_foreground_task: ^9.1.0 + +flutter_launcher_icons: + android: "ic_launcher" + image_path: "assets/graphics/icon.png" + +# For information on the generic Dart part of this file, see the +# following page: https://dart.dev/tools/pub/pubspec + +# The following section is specific to Flutter packages. +flutter: + + # The following line ensures that the Material Icons font is + # included with your application, so that you can use the icons in + # the material Icons class. + uses-material-design: true + + # To add assets to your application, add an assets section, like this: + # assets: + # - images/a_dot_burr.jpeg + # - images/a_dot_ham.jpeg + + assets: + - assets/translations/ + - assets/graphics/ + - assets/ca/ + + # An image asset can refer to one or more resolution-specific "variants", see + # https://flutter.dev/to/resolution-aware-images + + # For details regarding adding assets from package dependencies, see + # https://flutter.dev/to/asset-from-package + + # To add custom fonts to your application, add a fonts section here, + # in this "flutter" section. Each entry in this list should have a + # "family" key with the font family name, and a "fonts" key with a + # list giving the asset and other descriptors for the font. For + # example: + # fonts: + # - family: Schyler + # fonts: + # - asset: fonts/Schyler-Regular.ttf + # - asset: fonts/Schyler-Italic.ttf + # style: italic + # - family: Trajan Pro + # fonts: + # - asset: fonts/TrajanPro.ttf + # - asset: fonts/TrajanPro_Bold.ttf + # weight: 700 + # + # For details regarding fonts from package dependencies, + # see https://flutter.dev/to/font-from-package + + fonts: + - family: Montserrat + fonts: + - asset: assets/fonts/Montserrat-Regular.ttf diff --git a/sign.sh b/sign.sh new file mode 100755 index 0000000..00bd038 --- /dev/null +++ b/sign.sh @@ -0,0 +1,38 @@ +#!/bin/bash +set -e + +# Script to sign unsigned APKs +# Assumptions: +# 1. Your PGP key is already imported on the locally running agent +# 2. An Android SDK is located at $ANDROID_HOME (or ~/Android/Sdk as fallback) + +usage() { + echo "sign.sh " + exit 1 +} + +if [ -z "$1" ] || [ -z "$2" ] || [ ! -f "$1" ] || [ ! -d "$2" ]; then + usage +fi + +KEYSTORE_LOCATION="$1" +BUILD_DIR="$2" + +read -s -p "Enter your keystore password: " KEYSTORE_PASSWORD + +if [ -z "$ANDROID_HOME" ]; then + ANDROID_HOME=~/Android/Sdk +fi +if [ ! -d "$ANDROID_HOME" ]; then + echo "Could not find Android SDK!" >&2 + exit 1 +fi + +for apk in "$BUILD_DIR"/*-release*.apk; do + unsignedApk=${apk/-release/-unsigned} + mv "$apk" "$unsignedApk" + ${ANDROID_HOME}/build-tools/$(ls ${ANDROID_HOME}/build-tools/ | tail -1)/apksigner sign --ks "$KEYSTORE_LOCATION" --ks-pass pass:"${KEYSTORE_PASSWORD}" --out "${apk}" "${unsignedApk}" + sha256sum ${apk} | cut -d " " -f 1 >"$apk".sha256 + gpg --batch --sign --detach-sig "$apk".sha256 + rm "$unsignedApk" +done diff --git a/test/widget_test.dart b/test/widget_test.dart new file mode 100644 index 0000000..9167fbf --- /dev/null +++ b/test/widget_test.dart @@ -0,0 +1,30 @@ +// This is a basic Flutter widget test. +// +// To perform an interaction with a widget in your test, use the WidgetTester +// utility in the flutter_test package. For example, you can send tap and scroll +// gestures. You can also use WidgetTester to find child widgets in the widget +// tree, read text, and verify that the values of widget properties are correct. + +import 'package:flutter/material.dart'; +import 'package:flutter_test/flutter_test.dart'; + +import 'package:obtainium/main.dart'; + +void main() { + testWidgets('Counter increments smoke test', (WidgetTester tester) async { + // Build our app and trigger a frame. + await tester.pumpWidget(const Obtainium()); + + // Verify that our counter starts at 0. + expect(find.text('0'), findsOneWidget); + expect(find.text('1'), findsNothing); + + // Tap the '+' icon and trigger a frame. + await tester.tap(find.byIcon(Icons.add)); + await tester.pump(); + + // Verify that our counter has incremented. + expect(find.text('0'), findsNothing); + expect(find.text('1'), findsOneWidget); + }); +}

    C*G0MfU@WS#B_eP(19{*;9!1K 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 literal 0 HcmV?d00001 diff --git a/assets/translations/ar.json b/assets/translations/ar.json new file mode 100644 index 0000000..36bc39c --- /dev/null +++ b/assets/translations/ar.json @@ -0,0 +1,402 @@ +{ + "invalidURLForSource": "رابط تطبيق {} غير صالح", + "noReleaseFound": "تعذر العثور على إصدار مناسب", + "noVersionFound": "تعذر تحديد إصدار التطبيق", + "urlMatchesNoSource": "الرابط لا يتطابق مع مصدر معروف", + "cantInstallOlderVersion": "لا يمكن تثبيت إصدار أقدم من التطبيق", + "appIdMismatch": "معرّف الحزمة المحملة لا يتطابق مع معرّف التطبيق الحالي", + "functionNotImplemented": "هذه الوظيفة غير مطبقة في هذا الصنف", + "placeholder": "عنصر نائب", + "someErrors": "حدثت بعض الأخطاء", + "unexpectedError": "خطأ غير متوقع", + "ok": "موافق", + "and": "و", + "githubPATLabel": "رمز الوصول الشخصي لـ GitHub (يزيد من الحد المسموح)", + "includePrereleases": "تضمين الإصدارات الأولية", + "fallbackToOlderReleases": "الرجوع إلى الإصدارات الأقدم", + "filterReleaseTitlesByRegEx": "تصفية عناوين الإصدارات باستخدام تعبير نمطي", + "invalidRegEx": "تعبير نمطي غير صالح", + "noDescription": "لا يوجد وصف", + "cancel": "إلغاء", + "continue": "متابعة", + "requiredInBrackets": "(مطلوب)", + "dropdownNoOptsError": "خطأ: يجب أن يحتوي القائمة المنسدلة على خيار واحد على الأقل", + "colour": "لون", + "standard": "قياسي", + "custom": "مخصص", + "useMaterialYou": "استخدم Material You", + "githubStarredRepos": "مستودعات GitHub المفضلة", + "uname": "اسم المستخدم", + "wrongArgNum": "عدد وسائط غير صحيح", + "xIsTrackOnly": "{} للتعقب فقط", + "source": "المصدر", + "app": "التطبيق", + "appsFromSourceAreTrackOnly": "تطبيقات هذا المصدر للتعقب فقط.", + "youPickedTrackOnly": "لقد اخترت خيار 'التعقب فقط'.", + "trackOnlyAppDescription": "سيتم تعقب التطبيق للتحديثات، لكن Obtainium لن يتمكن من تنزيله أو تثبيته.", + "cancelled": "تم الإلغاء", + "appAlreadyAdded": "التطبيق مضاف بالفعل", + "alreadyUpToDateQuestion": "التطبيق محدث بالفعل؟", + "addApp": "إضافة تطبيق", + "appSourceURL": "رابط مصدر التطبيق", + "error": "خطأ", + "add": "إضافة", + "searchSomeSourcesLabel": "بحث (بعض المصادر فقط)", + "search": "بحث", + "additionalOptsFor": "خيارات إضافية لـ {}", + "supportedSources": "المصادر المدعومة", + "trackOnlyInBrackets": "(للتعقب فقط)", + "searchableInBrackets": "(قابل للبحث)", + "appsString": "التطبيقات", + "noApps": "لا توجد تطبيقات", + "noAppsForFilter": "لا توجد تطبيقات تطابق الفلتر", + "byX": "بواسطة {}", + "percentProgress": "التقدم: {}%", + "pleaseWait": "يرجى الانتظار", + "updateAvailable": "تحديث متاح", + "notInstalled": "غير مثبت", + "pseudoVersion": "إصدار وهمي", + "selectAll": "تحديد الكل", + "deselectX": "إلغاء تحديد {}", + "xWillBeRemovedButRemainInstalled": "سيتم إزالة {} من Obtainium لكنه سيظل مثبتًا على الجهاز.", + "removeSelectedAppsQuestion": "إزالة التطبيقات المحددة؟", + "removeSelectedApps": "إزالة التطبيقات المحددة", + "updateX": "تحديث {}", + "installX": "تثبيت {}", + "markXTrackOnlyAsUpdated": "تعليم {}\n(للتعقب فقط)\nكمحدث", + "changeX": "تغيير {}", + "installUpdateApps": "تثبيت/تحديث التطبيقات", + "installUpdateSelectedApps": "تثبيت/تحديث التطبيقات المحددة", + "markXSelectedAppsAsUpdated": "تعليم {} تطبيقات محددة كمحدثة؟", + "no": "لا", + "yes": "نعم", + "markSelectedAppsUpdated": "تعليم التطبيقات المحددة كمحدثة", + "pinToTop": "تثبيت في الأعلى", + "unpinFromTop": "إلغاء التثبيت من الأعلى", + "resetInstallStatusForSelectedAppsQuestion": "إعادة تعيين حالة التثبيت للتطبيقات المحددة؟", + "installStatusOfXWillBeResetExplanation": "سيتم إعادة تعيين حالة التثبيت لأي تطبيقات محددة.\n\nقد يساعد هذا عندما يكون إصدار التطبيق المعروض في Obtainium غير صحيح بسبب فشل التحديثات أو مشاكل أخرى.", + "customLinkMessage": "هذه الروابط تعمل على الأجهزة التي بها Obtainium مثبتًا", + "shareAppConfigLinks": "مشاركة تكوين التطبيق كرابط HTML", + "shareSelectedAppURLs": "مشاركة روابط التطبيقات المحددة", + "resetInstallStatus": "إعادة تعيين حالة التثبيت", + "more": "المزيد", + "removeOutdatedFilter": "إزالة فلتر التطبيقات غير المحدثة", + "showOutdatedOnly": "عرض التطبيقات غير المحدثة فقط", + "filter": "تصفية", + "filterApps": "تصفية التطبيقات", + "appName": "اسم التطبيق", + "author": "المؤلف", + "upToDateApps": "تطبيقات محدثة", + "nonInstalledApps": "تطبيقات غير مثبتة", + "importExport": "استيراد/تصدير", + "settings": "الإعدادات", + "exportedTo": "تم التصدير إلى {}", + "obtainiumExport": "تصدير Obtainium", + "invalidInput": "إدخال غير صالح", + "importedX": "تم استيراد {}", + "obtainiumImport": "استيراد Obtainium", + "importFromURLList": "استيراد من قائمة الروابط", + "searchQuery": "استعلام البحث", + "appURLList": "قائمة روابط التطبيقات", + "line": "سطر", + "searchX": "بحث {}", + "noResults": "لا توجد نتائج", + "importX": "استيراد {}", + "importedAppsIdDisclaimer": "قد تظهر التطبيقات المستوردة بشكل غير صحيح كـ \"غير مثبتة\".\nلإصلاح هذا، قم بإعادة تثبيتها عبر Obtainium.\nهذا لا يؤثر على بيانات التطبيق.\n\nينطبق فقط على طرق الاستيراد عبر الروابط أو الطرف الثالث.", + "importErrors": "أخطاء الاستيراد", + "importedXOfYApps": "تم استيراد {} من {} تطبيقات.", + "followingURLsHadErrors": "حدثت أخطاء في الروابط التالية:", + "selectURL": "اختر رابطًا", + "selectURLs": "اختر روابط", + "pick": "اختر", + "theme": "المظهر", + "dark": "مظلم", + "light": "فاتح", + "followSystem": "اتباع النظام", + "followSystemThemeExplanation": "اتباع مظهر النظام ممكن فقط باستخدام تطبيقات طرف ثالث", + "useBlackTheme": "استخدام المظهر الأسود الداكن بالكامل", + "appSortBy": "ترتيب التطبيقات حسب", + "authorName": "المؤلف/الاسم", + "nameAuthor": "الاسم/المؤلف", + "asAdded": "كما تمت إضافتها", + "appSortOrder": "ترتيب التطبيقات", + "ascending": "تصاعدي", + "descending": "تنازلي", + "bgUpdateCheckInterval": "فترة التحقق من التحديثات في الخلفية", + "neverManualOnly": "أبدًا - يدوي فقط", + "appearance": "المظهر", + "showWebInAppView": "عرض صفحة الويب المصدر في عرض التطبيق", + "pinUpdates": "تثبيت التحديثات في أعلى قائمة التطبيقات", + "updates": "التحديثات", + "sourceSpecific": "خاص بالمصدر", + "appSource": "مصدر التطبيق", + "noLogs": "لا توجد سجلات", + "appLogs": "سجلات التطبيق", + "close": "إغلاق", + "share": "مشاركة", + "appNotFound": "التطبيق غير موجود", + "obtainiumExportHyphenatedLowercase": "تصدير-obtainium", + "pickAnAPK": "اختر ملف APK", + "appHasMoreThanOnePackage": "{} يحتوي على أكثر من حزمة:", + "deviceSupportsXArch": "جهازك يدعم بنية المعالج {}.", + "deviceSupportsFollowingArchs": "جهازك يدعم بنى المعالج التالية:", + "warning": "تحذير", + "sourceIsXButPackageFromYPrompt": "مصدر التطبيق هو '{}' لكن الحزمة تأتي من '{}'. هل تتابع؟", + "updatesAvailable": "تحديثات متاحة", + "updatesAvailableNotifDescription": "يخطر المستخدم بوجود تحديثات لواحد أو أكثر من التطبيقات التي يتعقبها Obtainium", + "noNewUpdates": "لا توجد تحديثات جديدة.", + "xHasAnUpdate": "{} لديه تحديث.", + "appsUpdated": "تم تحديث التطبيقات", + "appsNotUpdated": "فشل تحديث التطبيقات", + "appsUpdatedNotifDescription": "يخطر المستخدم بأن تحديثات لواحد أو أكثر من التطبيقات تم تطبيقها في الخلفية", + "xWasUpdatedToY": "تم تحديث {} إلى {}.", + "xWasNotUpdatedToY": "فشل تحديث {} إلى {}.", + "errorCheckingUpdates": "خطأ في التحقق من التحديثات", + "errorCheckingUpdatesNotifDescription": "إشعار يظهر عند فشل التحقق من التحديثات في الخلفية", + "appsRemoved": "تمت إزالة التطبيقات", + "appsRemovedNotifDescription": "يخطر المستخدم بأنه تمت إزالة واحد أو أكثر من التطبيقات بسبب أخطاء أثناء تحميلها", + "xWasRemovedDueToErrorY": "تمت إزالة {} بسبب هذا الخطأ: {}", + "completeAppInstallation": "إكمال تثبيت التطبيق", + "obtainiumMustBeOpenToInstallApps": "يجب فتح Obtainium لتثبيت التطبيقات", + "completeAppInstallationNotifDescription": "يطلب من المستخدم العودة إلى Obtainium لإكمال تثبيت التطبيق", + "checkingForUpdates": "جاري التحقق من التحديثات", + "checkingForUpdatesNotifDescription": "إشعار مؤقت يظهر عند التحقق من التحديثات", + "pleaseAllowInstallPerm": "يرجى السماح لـ Obtainium بتثبيت التطبيقات", + "trackOnly": "للتعقب فقط", + "errorWithHttpStatusCode": "خطأ {}", + "versionCorrectionDisabled": "تعطيل تصحيح الإصدار (يبدو أن الملحق لا يعمل)", + "unknown": "غير معروف", + "none": "لا شيء", + "all": "الكل", + "never": "أبدًا", + "latestVersionX": "الأحدث: {}", + "installedVersionX": "المثبت: {}", + "lastUpdateCheckX": "آخر تحقق من التحديثات: {}", + "remove": "إزالة", + "yesMarkUpdated": "نعم، تعليم كمحدث", + "fdroid": "F-Droid الرسمي", + "appIdOrName": "معرّف التطبيق أو الاسم", + "appId": "معرّف التطبيق", + "appWithIdOrNameNotFound": "لم يتم العثور على تطبيق بهذا المعرّف أو الاسم", + "reposHaveMultipleApps": "قد تحتوي المستودعات على عدة تطبيقات", + "fdroidThirdPartyRepo": "مستودع F-Droid طرف ثالث", + "install": "تثبيت", + "markInstalled": "تعليم كمثبت", + "update": "تحديث", + "markUpdated": "تعليم كمحدث", + "additionalOptions": "خيارات إضافية", + "disableVersionDetection": "تعطيل اكتشاف الإصدار", + "noVersionDetectionExplanation": "يجب استخدام هذا الخيار فقط للتطبيقات التي لا يعمل فيها اكتشاف الإصدار بشكل صحيح.", + "downloadingX": "جاري تنزيل {}", + "downloadX": "تنزيل {}", + "downloadedX": "تم تنزيل {}", + "releaseAsset": "ملف الإصدار", + "downloadNotifDescription": "يخطر المستخدم بالتقدم في تنزيل التطبيق", + "noAPKFound": "لم يتم العثور على ملف APK", + "noVersionDetection": "لا يوجد اكتشاف للإصدار", + "categorize": "تصنيف", + "categories": "التصنيفات", + "category": "تصنيف", + "noCategory": "بدون تصنيف", + "noCategories": "لا توجد تصنيفات", + "deleteCategoriesQuestion": "حذف التصنيفات؟", + "categoryDeleteWarning": "سيتم تعيين جميع التطبيقات في التصنيفات المحذوفة كغير مصنفة.", + "addCategory": "إضافة تصنيف", + "label": "تسمية", + "language": "اللغة", + "copiedToClipboard": "تم النسخ إلى الحافظة", + "storagePermissionDenied": "تم رفض إذن التخزين", + "selectedCategorizeWarning": "سيؤدي هذا إلى استبدال أي إعدادات تصنيف موجودة للتطبيقات المحددة.", + "filterAPKsByRegEx": "تصفية ملفات APK باستخدام تعبير نمطي", + "removeFromObtainium": "إزالة من Obtainium", + "uninstallFromDevice": "إلغاء التثبيت من الجهاز", + "onlyWorksWithNonVersionDetectApps": "يعمل فقط مع التطبيقات التي تم تعطيل اكتشاف الإصدار لها.", + "releaseDateAsVersion": "استخدام تاريخ الإصدار كسلسلة إصدار", + "releaseTitleAsVersion": "استخدام عنوان الإصدار كسلسلة إصدار", + "releaseDateAsVersionExplanation": "يجب استخدام هذا الخيار فقط للتطبيقات التي لا يعمل فيها اكتشاف الإصدار بشكل صحيح، ولكن تاريخ الإصدار متاح.", + "changes": "التغييرات", + "releaseDate": "تاريخ الإصدار", + "importFromURLsInFile": "استيراد من روابط في ملف (مثل OPML)", + "versionDetectionExplanation": "تنسيق سلسلة الإصدار مع الإصدار المكتشف من النظام", + "versionDetection": "اكتشاف الإصدار", + "standardVersionDetection": "اكتشاف الإصدار القياسي", + "groupByCategory": "التجميع حسب التصنيف", + "autoApkFilterByArch": "محاولة تصفية ملفات APK حسب بنية المعالج إذا أمكن", + "autoLinkFilterByArch": "محاولة تصفية الروابط حسب بنية المعالج إذا أمكن", + "overrideSource": "تجاوز المصدر", + "dontShowAgain": "عدم إظهار هذا مرة أخرى", + "dontShowTrackOnlyWarnings": "عدم إظهار تحذيرات 'للتعقب فقط'", + "dontShowAPKOriginWarnings": "عدم إظهار تحذيرات مصدر APK", + "moveNonInstalledAppsToBottom": "نقل التطبيقات غير المثبتة إلى أسفل قائمة التطبيقات", + "gitlabPATLabel": "رمز الوصول الشخصي لـ GitLab", + "about": "حول", + "requiresCredentialsInSettings": "{} يحتاج إلى بيانات اعتماد إضافية (في الإعدادات)", + "checkOnStart": "التحقق من التحديثات عند البدء", + "tryInferAppIdFromCode": "محاولة استنتاج معرّف التطبيق من الكود المصدري", + "removeOnExternalUninstall": "إزالة التطبيقات المثبتة خارجيًا تلقائيًا", + "pickHighestVersionCode": "تحديد أعلى إصدار تلقائيًا", + "checkUpdateOnDetailPage": "التحقق من التحديثات عند فتح صفحة التفاصيل", + "disablePageTransitions": "تعطيل انتقالات الصفحات", + "reversePageTransitions": "عكس انتقالات الصفحات", + "minStarCount": "الحد الأدنى لعدد النجوم", + "addInfoBelow": "أضف هذه المعلومات أدناه.", + "addInfoInSettings": "أضف هذه المعلومات في الإعدادات.", + "githubSourceNote": "يمكن تجنب الحد المسموح لـ GitHub باستخدام مفتاح API.", + "sortByLastLinkSegment": "الفرز حسب الجزء الأخير من الرابط فقط", + "filterReleaseNotesByRegEx": "تصفية ملاحظات الإصدار باستخدام تعبير نمطي", + "customLinkFilterRegex": "تصفية روابط APK المخصصة باستخدام تعبير نمطي (افتراضيًا '.apk$')", + "appsPossiblyUpdated": "تمت محاولة تحديث التطبيقات", + "appsPossiblyUpdatedNotifDescription": "يخطر المستخدم بأن تحديثات لواحد أو أكثر من التطبيقات قد تم تطبيقها في الخلفية", + "xWasPossiblyUpdatedToY": "{} قد تم تحديثه إلى {}.", + "enableBackgroundUpdates": "تمكين التحديثات في الخلفية", + "backgroundUpdateReqsExplanation": "قد لا تكون التحديثات في الخلفية ممكنة لجميع التطبيقات.", + "backgroundUpdateLimitsExplanation": "يمكن تحديد نجاح التثبيت في الخلفية فقط عند فتح Obtainium.", + "verifyLatestTag": "التحقق من علامة 'الأحدث'", + "intermediateLinkRegex": "تصفية للوصول إلى رابط 'وسيط'", + "filterByLinkText": "تصفية الروابط حسب نص الرابط", + "matchLinksOutsideATags": "تطابق الروابط خارج علامات ", + "intermediateLinkNotFound": "لم يتم العثور على رابط وسيط", + "intermediateLink": "رابط وسيط", + "exemptFromBackgroundUpdates": "إعفاء من التحديثات في الخلفية (إذا تم تمكينها)", + "bgUpdatesOnWiFiOnly": "تعطيل التحديثات في الخلفية عند عدم الاتصال بشبكة Wi-Fi", + "bgUpdatesWhileChargingOnly": "تعطيل التحديثات في الخلفية عند عدم الشحن", + "autoSelectHighestVersionCode": "تحديد أعلى إصدار تلقائيًا", + "versionExtractionRegEx": "تعبير نمطي لاستخراج الإصدار", + "trimVersionString": "قص سلسلة الإصدار باستخدام تعبير نمطي", + "matchGroupToUseForX": "مجموعة المطابقة لاستخدامها لـ \"{}\"", + "matchGroupToUse": "مجموعة المطابقة لاستخدامها في تعبير استخراج الإصدار", + "highlightTouchTargets": "تمييز أهداف اللمس الأقل وضوحًا", + "pickExportDir": "اختر دليل التصدير", + "autoExportOnChanges": "تصدير تلقائي عند التغييرات", + "includeSettings": "تضمين الإعدادات", + "filterVersionsByRegEx": "تصفية الإصدارات باستخدام تعبير نمطي", + "trySelectingSuggestedVersionCode": "محاولة تحديد الإصدار المقترح تلقائيًا", + "dontSortReleasesList": "الحفاظ على ترتيب الإصدارات من API", + "reverseSort": "فرز عكسي", + "takeFirstLink": "أخذ أول رابط", + "skipSort": "تخطي الفرز", + "debugMenu": "قائمة التصحيح", + "bgTaskStarted": "بدأت المهمة في الخلفية - تحقق من السجلات.", + "runBgCheckNow": "تشغيل التحقق من التحديثات في الخلفية الآن", + "versionExtractWholePage": "تطبيق تعبير استخراج الإصدار على الصفحة بأكملها", + "installing": "جاري التثبيت", + "skipUpdateNotifications": "تخطي إشعارات التحديث", + "updatesAvailableNotifChannel": "تحديثات متاحة", + "appsUpdatedNotifChannel": "تم تحديث التطبيقات", + "appsPossiblyUpdatedNotifChannel": "تمت محاولة تحديث التطبيقات", + "errorCheckingUpdatesNotifChannel": "خطأ في التحقق من التحديثات", + "appsRemovedNotifChannel": "تمت إزالة التطبيقات", + "downloadingXNotifChannel": "جاري تنزيل {}", + "completeAppInstallationNotifChannel": "إكمال تثبيت التطبيق", + "checkingForUpdatesNotifChannel": "جاري التحقق من التحديثات", + "onlyCheckInstalledOrTrackOnlyApps": "التحقق فقط من التطبيقات المثبتة أو للتعقب فقط", + "supportFixedAPKURL": "دعم روابط APK الثابتة", + "selectX": "اختر {}", + "parallelDownloads": "السماح بالتنزيل المتوازي", + "useShizuku": "استخدم Shizuku أو Sui للتثبيت", + "shizukuBinderNotFound": "خدمة Shizuku غير قيد التشغيل", + "shizukuOld": "إصدار قديم من Shizuku (<11) - قم بتحديثه", + "shizukuOldAndroidWithADB": "Shizuku يعمل على إصدار أندرويد < 8.1 مع ADB - قم بتحديث أندرويد أو استخدم Sui بدلاً من ذلك", + "shizukuPretendToBeGooglePlay": "تعيين Google Play كمصدر التثبيت (إذا تم استخدام Shizuku)", + "useSystemFont": "استخدم خط النظام", + "useVersionCodeAsOSVersion": "استخدم versionCode كإصدار مكتشف من النظام", + "requestHeader": "رأس الطلب", + "useLatestAssetDateAsReleaseDate": "استخدام أحدث تاريخ تحميل كتاريخ إصدار", + "defaultPseudoVersioningMethod": "طريقة الإصدار الوهمي الافتراضية", + "partialAPKHash": "جزء من تجزئة APK", + "APKLinkHash": "تجزئة رابط APK", + "directAPKLink": "رابط APK مباشر", + "pseudoVersionInUse": "يتم استخدام إصدار وهمي", + "installed": "مثبت", + "latest": "الأحدث", + "invertRegEx": "عكس التعبير النمطي", + "note": "ملاحظة", + "selfHostedNote": "يمكن استخدام القائمة المنسدلة \"{}\" للوصول إلى نسخ مخصصة/مستضافة ذاتيًا لأي مصدر.", + "badDownload": "تعذر تحليل ملف APK (تنزيل غير متوافق أو غير مكتمل)", + "beforeNewInstallsShareToAppVerifier": "مشاركة التطبيقات الجديدة مع AppVerifier (إذا كان متاحًا)", + "appVerifierInstructionToast": "شارك مع AppVerifier، ثم عد هنا عندما تكون جاهزًا.", + "wiki": "المساعدة/ويكي", + "crowdsourcedConfigsLabel": "تكوينات التطبيقات المقدمة من الجمهور (استخدم على مسؤوليتك)", + "crowdsourcedConfigsShort": "تكوينات التطبيقات المقدمة من الجمهور", + "allowInsecure": "السماح بطلبات HTTP غير الآمنة", + "stayOneVersionBehind": "البقاء بإصدار واحد خلف الأحدث", + "useFirstApkOfVersion": "التحديد التلقائي الأول من بين عدة ملفات APK", + "refreshBeforeDownload": "تحديث تفاصيل التطبيق قبل التنزيل", + "tencentAppStore": "متجر Tencent للتطبيقات", + "coolApk": "CoolApk", + "vivoAppStore": "متجر vivo للتطبيقات (CN)", + "name": "الاسم", + "smartname": "الاسم (ذكي)", + "sortMethod": "طريقة الفرز", + "welcome": "مرحبًا", + "documentationLinksNote": "تحتوي صفحة Obtainium على GitHub المرتبطة أدناه على روابط لمقاطع فيديو، مقالات، مناقشات وموارد أخرى ستساعدك على فهم كيفية استخدام التطبيق.", + "batteryOptimizationNote": "لاحظ أن التنزيلات في الخلفية قد تعمل بشكل أكثر موثوقية إذا قمت بتعطيل تحسينات بطارية النظام لـ Obtainium.", + "fileDeletionError": "فشل حذف الملف (حاول حذفه يدويًا ثم حاول مرة أخرى): \"{}\"", + "foregroundService": "الحصول على خدمة الحصول على خدمة المقدمة", + "foregroundServiceExplanation": "استخدام خدمة مقدمة للتحقق من التحديثات (أكثر موثوقية وتستهلك طاقة أكبر)", + "fgServiceNotice": "هذا الإشعار مطلوب للتحقق من التحديث في الخلفية (يمكن إخفاؤه في إعدادات نظام التشغيل)", + "excludeSecrets": "استبعاد الأسرار", + "GHReqPrefix": "مثيل \"sky22333/hubproxy\" لطلبات GitHub", + "includeZips": "تضمين ملفات ZIP", + "zippedApkFilterRegEx": "تصفية ملفات APK داخل ZIP", + "removeAppQuestion": { + "one": "إزالة التطبيق؟", + "other": "إزالة التطبيقات؟" + }, + "tooManyRequestsTryAgainInMinutes": { + "one": "طلبات كثيرة جدًا (تم تحديد المعدل) - حاول مرة أخرى بعد {} دقيقة", + "other": "طلبات كثيرة جدًا (تم تحديد المعدل) - حاول مرة أخرى بعد {} دقائق" + }, + "bgUpdateGotErrorRetryInMinutes": { + "one": "واجه التحقق من التحديثات في الخلفية {}، سيتم جدولة محاولة أخرى بعد {} دقيقة", + "other": "واجه التحقق من التحديثات في الخلفية {}، سيتم جدولة محاولة أخرى بعد {} دقائق" + }, + "bgCheckFoundUpdatesWillNotifyIfNeeded": { + "one": "وجد التحقق من التحديثات في الخلفية {} تحديث - سيتم إخطار المستخدم إذا لزم الأمر", + "other": "وجد التحقق من التحديثات في الخلفية {} تحديثات - سيتم إخطار المستخدم إذا لزم الأمر" + }, + "apps": { + "one": "{} تطبيق", + "other": "{} تطبيقات" + }, + "url": { + "one": "{} رابط", + "other": "{} روابط" + }, + "minute": { + "one": "{} دقيقة", + "other": "{} دقائق" + }, + "hour": { + "one": "{} ساعة", + "other": "{} ساعات" + }, + "day": { + "one": "{} يوم", + "other": "{} أيام" + }, + "clearedNLogsBeforeXAfterY": { + "one": "تم مسح {n} سجل (قبل = {before}, بعد = {after})", + "other": "تم مسح {n} سجلات (قبل = {before}, بعد = {after})" + }, + "xAndNMoreUpdatesAvailable": { + "one": "{} وتطبيق واحد آخر لديه تحديثات.", + "other": "{} و{} تطبيقات أخرى لديها تحديثات." + }, + "xAndNMoreUpdatesInstalled": { + "one": "{} وتطبيق واحد آخر تم تحديثه.", + "other": "{} و{} تطبيقات أخرى تم تحديثها." + }, + "xAndNMoreUpdatesFailed": { + "one": "فشل تحديث {} وتطبيق واحد آخر.", + "other": "فشل تحديث {} و{} تطبيقات أخرى." + }, + "xAndNMoreUpdatesPossiblyInstalled": { + "one": "{} وتطبيق واحد آخر قد تم تحديثه.", + "other": "{} و{} تطبيقات أخرى قد تم تحديثها." + }, + "apk": { + "one": "{} APK", + "other": "{} APKs" + } +} diff --git a/assets/translations/bs.json b/assets/translations/bs.json new file mode 100644 index 0000000..b10b7eb --- /dev/null +++ b/assets/translations/bs.json @@ -0,0 +1,402 @@ +{ + "invalidURLForSource": "Nije važeći URL aplikacije {}", + "noReleaseFound": "Nije moguće pronaći odgovarajuće izdanje", + "noVersionFound": "Nije moguće odrediti verziju izdanja", + "urlMatchesNoSource": "URL se ne podudara s poznatim izvorom", + "cantInstallOlderVersion": "Nije moguće instalirati stariju verziju aplikacije", + "appIdMismatch": "ID preuzetog paketa se ne podudara s postojećim ID-om aplikacije", + "functionNotImplemented": "Ova klasa nije implementirala ovu funkciju", + "placeholder": "Rezervirano mjesto", + "someErrors": "Došlo je do nekih grešaka", + "unexpectedError": "Neočekivana greška", + "ok": "Dobro", + "and": "i", + "githubPATLabel": "GitHub token za lični pristup (eng. PAT, povećava ograničenje stope)", + "includePrereleases": "Uključi preliminarna izdanja", + "fallbackToOlderReleases": "Povratak na starija izdanja", + "filterReleaseTitlesByRegEx": "Filtrirajte naslove izdanja prema regularnom izrazu", + "invalidRegEx": "Nevažeći regularni izraz", + "noDescription": "Bez opisa", + "cancel": "Otkaži", + "continue": "Nastavite", + "requiredInBrackets": "(obavezno)", + "dropdownNoOptsError": "GREŠKA: PADAJUĆI MENI MORA IMATI NAJMANJE JEDNU OPCIJU", + "colour": "Boja", + "standard": "Standard", + "custom": "Custom", + "useMaterialYou": "Koristi Material You temu", + "githubStarredRepos": "GitHub repo-i sa zvjezdicom", + "uname": "Korisničko ime", + "wrongArgNum": "Naveden je pogrešan broj argumenata", + "xIsTrackOnly": "{} je samo za praćenje", + "source": "Izvor", + "app": "Aplikacija. ", + "appsFromSourceAreTrackOnly": "Aplikacije iz ovog izvora su 'Samo za praćenje'.", + "youPickedTrackOnly": "Odabrali ste opciju „Samo za praćenje”.", + "trackOnlyAppDescription": "Aplikacija će se pratiti radi ažuriranja, ali Obtainium neće moći da je preuzme ili instalira.", + "cancelled": "Otkazano", + "appAlreadyAdded": "Aplikacija je već dodana", + "alreadyUpToDateQuestion": "Aplikacija je već ažurirana?", + "addApp": "Dodaj aplikaciju", + "appSourceURL": "Izvorni URL aplikacije", + "error": "Greška", + "add": "Dodaj", + "searchSomeSourcesLabel": "Pretraživanje (samo neki izvori)", + "search": "Pretraživanje", + "additionalOptsFor": "Dodatne opcije za {}", + "supportedSources": "Podržani izvori", + "trackOnlyInBrackets": "(Samo za praćenje)", + "searchableInBrackets": "(Može se pretraživati)", + "appsString": "Aplikacije", + "noApps": "Nema aplikacija", + "noAppsForFilter": "Nema aplikacija za filter", + "byX": "Autor {}", + "percentProgress": "Napredak: {}%", + "pleaseWait": "Molimo sačekajte", + "updateAvailable": "Ažuriranje dostupno", + "notInstalled": "Nije instalirano", + "pseudoVersion": "pseudo-verzija", + "selectAll": "Označi sve", + "deselectX": "Poništi odabir {}", + "xWillBeRemovedButRemainInstalled": "{} će biti uklonjen iz Obtainiuma, ali će ostati instaliran na uređaju.", + "removeSelectedAppsQuestion": "Želite li ukloniti odabrane aplikacije?", + "removeSelectedApps": "Ukloni odabrane aplikacije", + "updateX": "Nadogradi {}", + "installX": "Instaliraj {}", + "markXTrackOnlyAsUpdated": "Označi {}\n(samo za praćenje)\nkao ažurirano", + "changeX": "Promjena {}", + "installUpdateApps": "Instalirajte/ažurirajte aplikacije", + "installUpdateSelectedApps": "Instalirajte/ažurirajte odabrane aplikacije", + "markXSelectedAppsAsUpdated": "Označite {} odabrane aplikacije kao ažurirane?", + "no": "Ne", + "yes": "Da", + "markSelectedAppsUpdated": "Označi odabrane aplikacije kao ažurirane", + "pinToTop": "Prikvači na vrh", + "unpinFromTop": "Otkvači sa vrha", + "resetInstallStatusForSelectedAppsQuestion": "Resetujte status instalacije za odabrane aplikacije?", + "installStatusOfXWillBeResetExplanation": "Status instalacije bilo koje odabrane aplikacije će se resetovati.\n\nTo može pomoći kada je verzija aplikacije prikazana u Obtainiumu netačna zbog neuspjelih ažuriranja ili drugih problema.", + "customLinkMessage": "Ove veze rade na uređajima s instaliranim Obtainiumom", + "shareAppConfigLinks": "Podijelite konfiguraciju aplikacije kao HTML vezu", + "shareSelectedAppURLs": "Podijeli odabrane URL-ove aplikacija", + "resetInstallStatus": "Resetujte status instalacije", + "more": "Više", + "removeOutdatedFilter": "Uklonite zastarjeli filter aplikacija", + "showOutdatedOnly": "Prikaži samo zastarjele aplikacije", + "filter": "Filtriranje", + "filterApps": "Filtriraj aplikacije", + "appName": "Naziv aplikacije", + "author": "Autor", + "upToDateApps": "Ažurirane aplikacije", + "nonInstalledApps": "Neinstalirane aplikacije", + "importExport": "Uvoz/izvoz", + "settings": "Postavke", + "exportedTo": "Izvezeno u {}", + "obtainiumExport": "Obtainium izvoz", + "invalidInput": "Neispravan unos.", + "importedX": "Uvezeno {}", + "obtainiumImport": "Obtainium uvoz", + "importFromURLList": "Uvoz iz URL liste", + "searchQuery": "Pretraga za: ", + "appURLList": "Lista URL adresa aplikacija", + "line": "Linija", + "searchX": "Pretraživanje {}", + "noResults": "Nema rezultata", + "importX": "Uvoz {}", + "importedAppsIdDisclaimer": "Uvezene aplikacije mogu se pogrešno prikazati kao „Nije instalirano”.\nDa biste to riješili, ponovo ih instalirajte putem aplikacije Obtainium.\nTo ne bi trebalo uticati na podatke aplikacije.\n\nUtječe samo na URL i metode uvoza treće strane.", + "importErrors": "Uvezi greške", + "importedXOfYApps": "{} od {} aplikacija uvezeno.", + "followingURLsHadErrors": "Sljedeći URL-ovi su imali greške:", + "selectURL": "Odaberite URL", + "selectURLs": "Odaberite URL-ove", + "pick": "Odaberi", + "theme": "Tema", + "dark": "Tamna", + "light": "Svijetla", + "followSystem": "Pratite sistem", + "followSystemThemeExplanation": "Praćenje sistemske teme je moguće jedino koristeći aplikacije treće strane", + "useBlackTheme": "Koristite čisto crnu tamnu temu", + "appSortBy": "Aplikacije sortirane po", + "authorName": "Autor/Ime", + "nameAuthor": "Ime/Autor", + "asAdded": "Kao što je dodano", + "appSortOrder": "Redoslijed sortiranja aplikacija", + "ascending": "Uzlazno", + "descending": "Silazno", + "bgUpdateCheckInterval": "Interval provjere ažuriranja u pozadini", + "neverManualOnly": "Nikada - samo ručno", + "appearance": "Izgled", + "showWebInAppView": "Prikaži izvornu web stranicu u prikazu aplikacije", + "pinUpdates": "Prikvačite ažuriranja na vrh prikaza aplikacija", + "updates": "Nadogradnje", + "sourceSpecific": "Specifično za izvor", + "appSource": "Izvor aplikacije", + "noLogs": "Nema evidencije", + "appLogs": "Evidencije aplikacija", + "close": "Zatvori", + "share": "Podijeli", + "appNotFound": "Aplikacija nije pronađena", + "obtainiumExportHyphenatedLowercase": "obtainium-izvoz", + "pickAnAPK": "Odaberite APK", + "appHasMoreThanOnePackage": "{} ima više od jednog paketa:", + "deviceSupportsXArch": "Vaš uređaj podržava {} arhitekturu procesora.", + "deviceSupportsFollowingArchs": "Vaš uređaj podržava sljedeće arhitekture procesora:", + "warning": "Upozorenje", + "sourceIsXButPackageFromYPrompt": "Izvor aplikacije je '{}', ali paket za izdavanje dolazi iz '{}'. Želite li nastaviti?", + "updatesAvailable": "Dostupna ažuriranja", + "updatesAvailableNotifDescription": "Obavještava korisnika da su ažuriranja dostupna za jednu ili više aplikacija koje prati Obtainium", + "noNewUpdates": "Nema novih ažuriranja.", + "xHasAnUpdate": "{} ima ažuriranje.", + "appsUpdated": "Aplikacije su ažurirane", + "appsNotUpdated": "Neuspješno ažuriranje aplikacija", + "appsUpdatedNotifDescription": "Obavještava korisnika da su u pozadini primijenjena ažuriranja na jednu ili više aplikacija", + "xWasUpdatedToY": "{} je ažuriran na {}.", + "xWasNotUpdatedToY": "Neuspješno ažuriranje {} na {}.", + "errorCheckingUpdates": "Greška pri provjeri ažuriranja", + "errorCheckingUpdatesNotifDescription": "Obavijest koja se prikazuje kada provjera sigurnosnog ažuriranja ne uspije", + "appsRemoved": "Aplikacije su uklonjene", + "appsRemovedNotifDescription": "Obavještava korisnika da je jedna ili više aplikacija uklonjeno zbog grešaka prilikom učitavanja", + "xWasRemovedDueToErrorY": "{} je uklonjen zbog ove greške: {}", + "completeAppInstallation": "Dovršite instalaciju aplikacije", + "obtainiumMustBeOpenToInstallApps": "Obtainium mora biti otvoren za instalaciju aplikacija", + "completeAppInstallationNotifDescription": "Traži od korisnika da se vrati u Obtainium kako bi dovršio instalaciju aplikacije", + "checkingForUpdates": "Tražim moguće nadogradnje", + "checkingForUpdatesNotifDescription": "Privremeno obavještenje koje se pojavljuje prilikom provjere ažuriranja", + "pleaseAllowInstallPerm": "Dozvolite Obtainiumu da instalira aplikacije", + "trackOnly": "Samo za praćenje", + "errorWithHttpStatusCode": "Greška {}", + "versionCorrectionDisabled": "Ispravka verzije je onemogućena (izgleda da plugin ne radi)", + "unknown": "Nepoznato", + "none": "Ništa", + "all": "All", + "never": "Nikad", + "latestVersionX": "Najnovija verzija: {}", + "installedVersionX": "Instalirana verzija: {}", + "lastUpdateCheckX": "Posljednja provjera ažuriranja: {}", + "remove": "Izbriši", + "yesMarkUpdated": "Da, označi kao ažurirano", + "fdroid": "Službeni F-Droid", + "appIdOrName": "ID ili ime aplikacije", + "appId": "Apl ID", + "appWithIdOrNameNotFound": "Nije pronađena aplikacija s tim ID-om ili imenom", + "reposHaveMultipleApps": "Repo-i mogu sadržavati više aplikacija", + "fdroidThirdPartyRepo": "F-Droid Repo treće strane", + "install": "Instaliraj", + "markInstalled": "Označi kao instalirano", + "update": "Nadogradi", + "markUpdated": "Označi kao ažurirano", + "additionalOptions": "Dodatne opcije", + "disableVersionDetection": "Onemogući detekciju verzije", + "noVersionDetectionExplanation": "Ova opcija bi se trebala koristiti samo za aplikacije gdje detekcija verzije ne radi ispravno.", + "downloadingX": "Preuzimanje {}", + "downloadX": "Download {}", + "downloadedX": "Downloaded {}", + "releaseAsset": "Fajlovi verzije", + "downloadNotifDescription": "Obavještava korisnika o napretku u preuzimanju aplikacije", + "noAPKFound": "APK nije pronađen", + "noVersionDetection": "Nema detekcije verzije", + "categorize": "Kategoriziraj", + "categories": "Kategorije", + "category": "Kategorija", + "noCategory": "Nema kategorije", + "noCategories": "Nema kategorija", + "deleteCategoriesQuestion": "Želite li izbrisati kategorije?", + "categoryDeleteWarning": "Sve aplikacije u izbrisanim kategorijama će biti postavljene kao nekategorisane.", + "addCategory": "Dodaj kategoriju", + "label": "Oznaka", + "language": "Jezik", + "copiedToClipboard": "Podaci kopirani u međuspremnik", + "storagePermissionDenied": "Dozvola za pohranu je odbijena", + "selectedCategorizeWarning": "Ovo će zamijeniti sve postojeće postavke kategorije za odabrane aplikacije.", + "filterAPKsByRegEx": "Filtrirajte APK-ove prema regularnom izrazu", + "removeFromObtainium": "Ukloni iz Obtainiuma", + "uninstallFromDevice": "Deinstaliraj s uređaja", + "onlyWorksWithNonVersionDetectApps": "Radi samo za aplikacije s onemogućenom detekcijom verzije.", + "releaseDateAsVersion": "Koristi datum izdanja kao verziju", + "releaseTitleAsVersion": "Use release title as version string", + "releaseDateAsVersionExplanation": "Ova opcija bi se trebala koristiti samo za aplikacije gdje detekcija verzije ne radi ispravno, ali je datum izdavanja dostupan.", + "changes": "Promjene", + "releaseDate": "Datum izdavanja", + "importFromURLsInFile": "Uvoz iz URL-ova u datoteci (kao što je OPML)", + "versionDetectionExplanation": "Pomiri niz verzije sa verzijom otkrivenom iz OS-a", + "versionDetection": "Otkrivanje verzije", + "standardVersionDetection": "Detekcija standardne verzije", + "groupByCategory": "Grupiši po kategoriji", + "autoApkFilterByArch": "Pokušajte filtrirati APK-ove po arhitekturi procesora ako je moguće", + "autoLinkFilterByArch": "Attempt to filter links by CPU architecture if possible", + "overrideSource": "Premosti izvor", + "dontShowAgain": "Ne prikazuj ovo ponovo", + "dontShowTrackOnlyWarnings": "Ne prikazuj upozorenja „Samo za praćenje”", + "dontShowAPKOriginWarnings": "Ne prikazuj upozorenja o porijeklu APK-a", + "moveNonInstalledAppsToBottom": "Premjesti neinstalirane aplikacije na dno prikaza aplikacija", + "gitlabPATLabel": "GitLab token za lični pristup", + "about": "O nama", + "requiresCredentialsInSettings": "{}: Za ovo su potrebni dodatni akreditivi (u Postavkama)", + "checkOnStart": "Provjerite ima li novosti pri pokretanju", + "tryInferAppIdFromCode": "Pokušati otkriti ID aplikacije iz izvornog koda", + "removeOnExternalUninstall": "Automatski ukloni eksterno deinstalirane aplikacije", + "pickHighestVersionCode": "Automatski odaberite najviši kôd verzije APK-a", + "checkUpdateOnDetailPage": "Provjerite ima li novosti pri otvaranju stranice s detaljima aplikacije", + "disablePageTransitions": "Ugasite animaciju prijelaza stranice", + "reversePageTransitions": "Reverzne animacije prijelaza stranice", + "minStarCount": "Najmanji broj zvjezdica", + "addInfoBelow": "Dodajte ove informacije ispod.", + "addInfoInSettings": "Dodajte ove informacije u Postavkama.", + "githubSourceNote": "GitHub ograničavanje se može izbjeći korišćenjem tokena za lični pristup.", + "sortByLastLinkSegment": "Sortiraj samo po zadnjem segmentu veze", + "filterReleaseNotesByRegEx": "Filtirajte promjene u izdanju po regularnom izrazu", + "customLinkFilterRegex": "Prilagođeni APK link filtrira se po regularnom izrazu (Zadano '.apk$')", + "appsPossiblyUpdated": "Pokušano ažuriranje aplikacija", + "appsPossiblyUpdatedNotifDescription": "Obavještava korisnika da je ažuriranje jedne ili više aplikacija potencijalno izvršeno u pozadini", + "xWasPossiblyUpdatedToY": "{} aplikacija bi trebala biti ažurirana na {}.", + "enableBackgroundUpdates": "Dozvolite ažuriranja u pozadini", + "backgroundUpdateReqsExplanation": "Ažuriranja u pozadini možda neće raditi za sve aplikacije.", + "backgroundUpdateLimitsExplanation": "Uspjeh ažuriranja u pozadini se može provjeriti tek kada otvorite Obtainium.", + "verifyLatestTag": "Provjerite 'posljednu' ('latest') oznaku", + "intermediateLinkRegex": "Filter za 'srednju' vezu za posjetu", + "filterByLinkText": "Filtriraj linkove prema tekstu linka", + "matchLinksOutsideATags": "Match links outside tags", + "intermediateLinkNotFound": "Intermediate veza nije nađena", + "intermediateLink": "Intermediate veza", + "exemptFromBackgroundUpdates": "Izuzmi iz ažuriranja u pozadini (ako su uključeni)", + "bgUpdatesOnWiFiOnly": "Isključite ažuriranje u pozadini kada niste na Wi-Fi-ju", + "bgUpdatesWhileChargingOnly": "Disable background updates when not charging", + "autoSelectHighestVersionCode": "Automatski izaberite najveću (verziju) versionCode APK-a", + "versionExtractionRegEx": "RegEx ekstrakcija verzije", + "trimVersionString": "Trim Version String With RegEx", + "matchGroupToUseForX": "Match Group to Use for \"{}\"", + "matchGroupToUse": "Podjesite grupu za upotebu", + "highlightTouchTargets": "Istaknite manje vidljive touch mete", + "pickExportDir": "Izaberite datoteku za izvoz", + "autoExportOnChanges": "Automatski izvezite pri promjenama", + "includeSettings": "Uključi postavke", + "filterVersionsByRegEx": "Filtrirajte verzije po regulatnom izrazu", + "trySelectingSuggestedVersionCode": "Probajte izabrati preloženu (verziju) versionCode APK-a", + "dontSortReleasesList": "Zadrži redosled izdanja iz API-a", + "reverseSort": "Obrni redosled", + "takeFirstLink": "Uzmi prvi link", + "skipSort": "Preskoči sortiranje", + "debugMenu": "Meni za otkrivanje grešaka", + "bgTaskStarted": "Rad u pozadini pokrenut - provjerite log-ove.", + "runBgCheckNow": "Pokrenite pozadinsku provjeru ažuriranja sad", + "versionExtractWholePage": "Primjenite Regex ekstrakciju verzije na cijelu stranicu", + "installing": "Instaliranje", + "skipUpdateNotifications": "Ne prikazujte obavještenja ažuriranja", + "updatesAvailableNotifChannel": "Dostupna ažuriranja", + "appsUpdatedNotifChannel": "Aplikacije su ažurirane", + "appsPossiblyUpdatedNotifChannel": "Pokušano ažuriranje aplikacija", + "errorCheckingUpdatesNotifChannel": "Greška pri provjeri ažuriranja", + "appsRemovedNotifChannel": "Aplikacije su uklonjene", + "downloadingXNotifChannel": "Preuzimanje {}", + "completeAppInstallationNotifChannel": "Dovršite instalaciju aplikacije", + "checkingForUpdatesNotifChannel": "Tražim moguće nadogradnje", + "onlyCheckInstalledOrTrackOnlyApps": "Isključivo provjerite ažuriranje za instalirane i aplikacije 'samo za praćenje'", + "supportFixedAPKURL": "Podržite fiksne APK URL-ove", + "selectX": "Izaberite {}", + "parallelDownloads": "Dozvoli paralelna preuzimanja", + "useShizuku": "Koristi Shizuku ili Sui za instaliranje", + "shizukuBinderNotFound": "Shizuku nije pokrenut", + "shizukuOld": "Stara Shizuku verzija (<11) - ažurirajte je", + "shizukuOldAndroidWithADB": "Shizuku pokrenut na Android-u < 8.1 pomoću ADB-a - ažurirajte Android ili koristite Sui", + "shizukuPretendToBeGooglePlay": "Postavi Google Play kao izvor instalacije (samo ako je Shizuku u upotrebi)", + "useSystemFont": "Koristite sistemski font", + "useVersionCodeAsOSVersion": "Koristite kod verzije aplikacije kao verziju koju je otkrio OS", + "requestHeader": "Zaglavlje zahtjeva", + "useLatestAssetDateAsReleaseDate": "Koristite najnovije otpremanje materijala kao datum izdavanja", + "defaultPseudoVersioningMethod": "Zadana metoda pseudo-verzija", + "partialAPKHash": "Djelomični APK Hash", + "APKLinkHash": "APK Link Hash", + "directAPKLink": "Direktna APK veza", + "pseudoVersionInUse": "Pseudo-verzija je u upotrebi", + "installed": "Instalirano", + "latest": "Najnoviji", + "invertRegEx": "Obrni regularni izraz", + "note": "Zabelješke", + "selfHostedNote": "\"{}\" padajući meni se može koristiti da dosegnete vlastite/prilagođene instance bilo kojeg izvora.", + "badDownload": "APK ne može biti raščlanjen (nekomaptibilno ili delimično preuzimanje)", + "beforeNewInstallsShareToAppVerifier": "Dijeli nove aplikacije sa AppVerifier-om (ako je dostupno)", + "appVerifierInstructionToast": "Dijeli sa AppVerifier-om, zatim se vratite kada ste spremni.", + "wiki": "Pomoć/Wiki", + "crowdsourcedConfigsLabel": "Konfiguracije aplikacije obezbeđene pomoću velikog broja ljudi (crowdsourcing) (koristite na svoju odgovornost)", + "crowdsourcedConfigsShort": "Crowdsourced App Configurations", + "allowInsecure": "Allow insecure HTTP requests", + "stayOneVersionBehind": "Stay one version behind latest", + "useFirstApkOfVersion": "Auto-select first of multiple APKs", + "refreshBeforeDownload": "Refresh app details before download", + "tencentAppStore": "Tencent App Store", + "coolApk": "CoolApk", + "vivoAppStore": "vivo App Store (CN)", + "name": "Name", + "smartname": "Name (Smart)", + "sortMethod": "Sort Method", + "welcome": "Welcome", + "documentationLinksNote": "The Obtainium GitHub page linked below contains links to videos, articles, discussions, and other resources that will help you understand how to use the app.", + "batteryOptimizationNote": "Note that background downloads may work more reliably if you disable OS battery optimizations for Obtainium.", + "fileDeletionError": "Failed to delete file (try deleting it manually then try again): \"{}\"", + "foregroundService": "Obtainium foreground service", + "foregroundServiceExplanation": "Use a foreground service for update checking (more reliable, consumes more power)", + "fgServiceNotice": "This notification is required for background update checking (it can be hidden in the OS settings)", + "excludeSecrets": "Exclude secrets", + "GHReqPrefix": "'sky22333/hubproxy' instance for GitHub requests", + "includeZips": "Include ZIP files", + "zippedApkFilterRegEx": "Filter APKs inside ZIP", + "removeAppQuestion": { + "one": "Želite li ukloniti aplikaciju?", + "other": "Želite li ukloniti aplikacije?" + }, + "tooManyRequestsTryAgainInMinutes": { + "one": "Previše zahtjeva (ograničena broj zahteva) - pokušajte ponovo za {} minutu", + "other": "Previše zahtjeva (ograničena cijena) - pokušajte ponovo za {} min." + }, + "bgUpdateGotErrorRetryInMinutes": { + "one": "Provjera ažuriranja u pozadini naišla je na {}, zakazuje se ponovni pokušaj za {} minutu", + "other": "Provjera ažuriranja u pozadini naišla je na {}, zakazuje se ponovni pokušaj za {} min." + }, + "bgCheckFoundUpdatesWillNotifyIfNeeded": { + "one": "Provjera ažuriranja u pozadini je pronašla {} ažuriranje - korisnik će biti obavješten ako je to potrebno", + "other": "Provjera ažuriranja u pozadini je pronašla {} ažuriranja - korisnik će biti obavješten ako je to potrebno" + }, + "apps": { + "one": "{} aplikacija", + "other": "{} aplikacije" + }, + "url": { + "one": "{} URL", + "other": "{} URL-ovi" + }, + "minute": { + "one": "{} minuta", + "other": "min." + }, + "hour": { + "one": "{} sat", + "other": "{} sat/i" + }, + "day": { + "one": "{} dan", + "other": "{} dana" + }, + "clearedNLogsBeforeXAfterY": { + "one": "Izbrisan {n} log (prije = {before}, nakon = {after})", + "other": "Izbrisano {n} log-ova (prije = {before}, nakon = {after})" + }, + "xAndNMoreUpdatesAvailable": { + "one": "{} i još 1 aplikacija ima ažuriranja.", + "other": "{} i još {} aplikacija imaju ažuriranja." + }, + "xAndNMoreUpdatesInstalled": { + "one": "{} i još 1 aplikacija je ažurirana.", + "other": "{} i još {} aplikacija je ažurirano." + }, + "xAndNMoreUpdatesFailed": { + "one": "Failed to update {} and 1 more app.", + "other": "Failed to update {} and {} more apps." + }, + "xAndNMoreUpdatesPossiblyInstalled": { + "one": "{} i još jedna aplikacija je vjerovatno ažurirana.", + "other": "{} i još {} aplikacija su vjerovatno ažurirane." + }, + "apk": { + "one": "{} APK", + "other": "{} APK-a" + } +} diff --git a/assets/translations/ca.json b/assets/translations/ca.json new file mode 100644 index 0000000..de000af --- /dev/null +++ b/assets/translations/ca.json @@ -0,0 +1,402 @@ +{ + "invalidURLForSource": "L'URL de l'aplicació {} no es vàlid", + "noReleaseFound": "No s'ha pogut trobar una versió adequada", + "noVersionFound": "No s'ha pogut determinar la versió", + "urlMatchesNoSource": "L'URL no coincideix amb cap font coneguda", + "cantInstallOlderVersion": "No és possible instal·lar una versió més antiga de l'aplicació", + "appIdMismatch": "L'ID del paquet descarregat no coincideix amb l'ID de l'aplicació instal·lada", + "functionNotImplemented": "Aquesta classe no ha implentat aquesta funció", + "placeholder": "Espai reservat", + "someErrors": "S'han produït alguns errors", + "unexpectedError": "Error inesperat", + "ok": "Accepta", + "and": "i", + "githubPATLabel": "Token d'accés personal a GitHub (augmenta el límit d'accés)", + "includePrereleases": "Inclou les versions preliminars", + "fallbackToOlderReleases": "Torna a les versions anteriors", + "filterReleaseTitlesByRegEx": "Filtra el títol de la versió per una expressió regular", + "invalidRegEx": "Expressió regular invàlida", + "noDescription": "Sense descripció", + "cancel": "Cancel·la", + "continue": "Continua", + "requiredInBrackets": "(requerit)", + "dropdownNoOptsError": "ERROR: EL DESPLEGABLE HA DE TENIR ALMENYS UNA OPCIÓ", + "colour": "Color", + "standard": "Estàndard", + "custom": "Personalitzat", + "useMaterialYou": "Usa 'Material You'", + "githubStarredRepos": "Repositoris favorits de GitHub", + "uname": "Nom d'usuari", + "wrongArgNum": "Nombre d'arguments proveït invàlid", + "xIsTrackOnly": "{} és només per a seguiment", + "source": "Font", + "app": "Aplicació", + "appsFromSourceAreTrackOnly": "Les aplicacions d'aquesta font són només per a seguiment.", + "youPickedTrackOnly": "Has seleccionat l'opció 'només per a seguiment'.", + "trackOnlyAppDescription": "Farem el seguiment de les actualitzacions per a l'aplicació, però Obtainium no podrà descarregar-la ni actualitzar-la.", + "cancelled": "Cancel·lat", + "appAlreadyAdded": "Aplicació ja afegida", + "alreadyUpToDateQuestion": "Aplicació ja actualitzada?", + "addApp": "Afegeix l'aplicació", + "appSourceURL": "URL font de l'aplicació", + "error": "Error", + "add": "Afegeix", + "searchSomeSourcesLabel": "Cerca (només algunes fonts)", + "search": "Cerca", + "additionalOptsFor": "Opcions addicionals per a {}", + "supportedSources": "Fonts suportades", + "trackOnlyInBrackets": "(només per a seguiment)", + "searchableInBrackets": "(permet la cerca)", + "appsString": "Aplicacions", + "noApps": "No hi ha aplicacions", + "noAppsForFilter": "No hi ha aplicacions per filtrar", + "byX": "Per: {}", + "percentProgress": "Progrés: {} %", + "pleaseWait": "Espera...", + "updateAvailable": "Actualització disponible", + "notInstalled": "No instal·lat", + "pseudoVersion": "pseudo-versió", + "selectAll": "Selecciona-ho tot", + "deselectX": "Desselecciona {}", + "xWillBeRemovedButRemainInstalled": "{} s'eliminarà d'Obtainium però romandrà instal·lada al dispositiu.", + "removeSelectedAppsQuestion": "Elimino les aplicacions seleccionades?", + "removeSelectedApps": "Elimina les aplicacions seleccionades", + "updateX": "Actualitza {}", + "installX": "Instal·la {}", + "markXTrackOnlyAsUpdated": "Marca {}\n(només per a seguiment)\ncom a actualitzada", + "changeX": "Canvia {}", + "installUpdateApps": "Instal·la/actualitza les aplicacions", + "installUpdateSelectedApps": "Instal·la/actualitza les aplicacions seleccionades", + "markXSelectedAppsAsUpdated": "Marco {} les aplicaciones seleccionades com a actualitzades?", + "no": "No", + "yes": "Sí", + "markSelectedAppsUpdated": "Marca les aplicacions seleccionades com a actualitzades", + "pinToTop": "Ancora-la al capdamunt", + "unpinFromTop": "Desancora-la del capdamunt", + "resetInstallStatusForSelectedAppsQuestion": "Restableixo l'estat d'instal·lació per a les aplicacions seleccionades?", + "installStatusOfXWillBeResetExplanation": "Es restablirà l'estat d'instal·lació de les aplicacions seleccionades.\n\nAçò pot ser útil quan la versió de l'aplicació mostrada per Obtainium és incorrecta a conseqüència d'una actualització no reeixida o d'algun altre problema.", + "customLinkMessage": "Aquests enllaços funcionen en dispositius amb Obtainium instal·lat", + "shareAppConfigLinks": "Comparteix la configuració de l'aplicació com a enllaç HTML", + "shareSelectedAppURLs": "Comparteix els URL de les aplicacions seleccionades", + "resetInstallStatus": "Restableix l'estat de la instal·lació", + "more": "Més", + "removeOutdatedFilter": "Elimina el filtre d'aplicacions desactualitzades", + "showOutdatedOnly": "Mostra només les aplicacions desactualitzades", + "filter": "Filtra", + "filterApps": "Filtra les aplicacions", + "appName": "Nom de l'aplicació", + "author": "Autor", + "upToDateApps": "Aplicacions actualizades", + "nonInstalledApps": "Aplicacions no instal·lades", + "importExport": "Importa/exporta", + "settings": "Paràmetres", + "exportedTo": "Exportat a {}", + "obtainiumExport": "Exporta Obtainium", + "invalidInput": "Entrada no vàlida", + "importedX": "Importat {}", + "obtainiumImport": "Importa Obtainium", + "importFromURLList": "Importa des de la llista d'URL", + "searchQuery": "Terme de cerca", + "appURLList": "Llista d'URL d'aplicacions", + "line": "Línia", + "searchX": "Cerca {}", + "noResults": "No hi ha resultats", + "importX": "Importa des de {}", + "importedAppsIdDisclaimer": "Les aplicacions importades podrien mostrar-se incorrectament com a «No instal·lada».\nPer solventar-ho reinstal·la-les a través d'Obtainium.\nAixò no hauria d'afectar les dades de les aplicacions.\n\nNomés afecta els URL i els mètodes d'importació de tercers.", + "importErrors": "Errors d'importació", + "importedXOfYApps": "{} de {} aplicacions importades.", + "followingURLsHadErrors": "Els següents URLs han tingut problemes:", + "selectURL": "Selecciona URL", + "selectURLs": "Selecciona URLs", + "pick": "Escull", + "theme": "Tema", + "dark": "Fosc", + "light": "Clar", + "followSystem": "Segueix el sistema", + "followSystemThemeExplanation": "Seguir el tema del sistema només és possible si uses aplicacions de tercers", + "useBlackTheme": "Fes servir el negre pur en el tema fosc", + "appSortBy": "Ordena les aplicacions per", + "authorName": "Autor/nom", + "nameAuthor": "Nom/Autor", + "asAdded": "Per l'ordre en què es van afegir", + "appSortOrder": "Per ordre de classificació", + "ascending": "Ascendent", + "descending": "Descendent", + "bgUpdateCheckInterval": "Comprova les actualitzacions en segon pla", + "neverManualOnly": "Mai, només manual", + "appearance": "Aparença", + "showWebInAppView": "Mostra el web d'origen en la vista de l'aplicació", + "pinUpdates": "Ancora les actualitzacions al capdamunt de les aplicacions", + "updates": "Actualitzacions", + "sourceSpecific": "Font específica", + "appSource": "Font de l'aplicació", + "noLogs": "Cap registre", + "appLogs": "Registres de l'aplicació", + "close": "Tanca", + "share": "Comparteix", + "appNotFound": "No s'ha trobat l'aplicació", + "obtainiumExportHyphenatedLowercase": "Exportació d'Obtainium", + "pickAnAPK": "Escull una APK", + "appHasMoreThanOnePackage": "{} té més d'un paquet:", + "deviceSupportsXArch": "Aquest dispositiu admet l'aquitectura de CPU: {}.", + "deviceSupportsFollowingArchs": "Aquest dispositiu admet les següents arquitectures de CPU:", + "warning": "Avís", + "sourceIsXButPackageFromYPrompt": "La font de l'aplicació és «{}» però el paquet de l'actualització ve de «{}». Vols continuar?", + "updatesAvailable": "Actualitzacions disponibles", + "updatesAvailableNotifDescription": "Notifica l'usuari que hi ha actualitzacions per a una o més aplicacions seguides per Obtainium", + "noNewUpdates": "No hi ha noves actualitzacions.", + "xHasAnUpdate": "{} té una actualització.", + "appsUpdated": "Aplicacions actualitzades", + "appsNotUpdated": "Error en actualitzar les aplicacions", + "appsUpdatedNotifDescription": "Notifica l'usuari que una o més aplicacions s'han actualitzat en segon pla", + "xWasUpdatedToY": "{} s'ha actualitzat a {}.", + "xWasNotUpdatedToY": "Error en actualitzar {} a {}.", + "errorCheckingUpdates": "Error en cercar actualitzacions", + "errorCheckingUpdatesNotifDescription": "Una notificació que es mostra quan la comprovació d'actualizacions en segon pla ha fallat", + "appsRemoved": "Aplicacions suprimides", + "appsRemovedNotifDescription": "Notifica l'usuari que una o més aplicacions s'han suprimit per errors en carregar-les", + "xWasRemovedDueToErrorY": "{} s'ha suprimit per aquest error: {}", + "completeAppInstallation": "Instal·lació completa de l'aplicació", + "obtainiumMustBeOpenToInstallApps": "Obtainium ha d'estar obert per poder instal·lar aplicacions", + "completeAppInstallationNotifDescription": "Demana l'usuari de tornar a Obtainium per acabar d'instal·lar una aplicació", + "checkingForUpdates": "S'estan cercant actualitzacions...", + "checkingForUpdatesNotifDescription": "Notificació temporal que apareix en cercar actualitzacions", + "pleaseAllowInstallPerm": "Permet que Obtainium instal·li aplicacions", + "trackOnly": "Només per a seguiment", + "errorWithHttpStatusCode": "Error {}", + "versionCorrectionDisabled": "Correcció de versions desactivada (el plugin sembla que no funciona)", + "unknown": "Desconegut", + "none": "Cap", + "all": "All", + "never": "Mai", + "latestVersionX": "Última versió: {}", + "installedVersionX": "Versió instal·lada: {}", + "lastUpdateCheckX": "Última comprovació d'actualització: {}", + "remove": "Suprimeix", + "yesMarkUpdated": "Sí, marca com a actualitzada", + "fdroid": "Repositori oficial F-Droid", + "appIdOrName": "ID o nom de l'aplicació", + "appId": "ID de l'aplicació", + "appWithIdOrNameNotFound": "No s'han trobat aplicacions amb aquest ID o nom", + "reposHaveMultipleApps": "Els repositoris poden contenir diverses aplicacions", + "fdroidThirdPartyRepo": "Repositori F-Droid de tercers", + "install": "Instal·la", + "markInstalled": "Marca com a instal·lada", + "update": "Actualitza", + "markUpdated": "Marca com a actualitzada", + "additionalOptions": "Opcions addicionals", + "disableVersionDetection": "Desactiva la detecció de versions", + "noVersionDetectionExplanation": "Només has d'usar aquesta opció en les aplicacions en què la detecció de versions no funcioni correctament.", + "downloadingX": "Descarregant {}", + "downloadX": "Descarrega {}", + "downloadedX": "Descarregada {}", + "releaseAsset": "Recurs actualitzat", + "downloadNotifDescription": "Notifica l'usuari del progrés de la descàrrega d'una aplicació", + "noAPKFound": "No s'ha trobat l'APK", + "noVersionDetection": "No s'han detectat versions", + "categorize": "Categoritza", + "categories": "Categories", + "category": "Categoria", + "noCategory": "No hi ha la categoria", + "noCategories": "No hi ha les categories", + "deleteCategoriesQuestion": "Suprimeixo les categories?", + "categoryDeleteWarning": "Totes les aplicacions de les categories suprimides es marcaran com a no categoritzades.", + "addCategory": "Afegeix una categoria", + "label": "Nom", + "language": "Idioma", + "copiedToClipboard": "Copiat al porta-retalls", + "storagePermissionDenied": "Permís d'emmagatzematge denegat", + "selectedCategorizeWarning": "Açò substituirà els paràmetres de categorització per a les aplicacions selecionades.", + "filterAPKsByRegEx": "Filtra les APKs per l'expressió regular", + "removeFromObtainium": "Suprimeix d'Obtainium", + "uninstallFromDevice": "Desinstal·la del dispositiu", + "onlyWorksWithNonVersionDetectApps": "Només funciona per a aplicacions amb la detecció de versions desactivada.", + "releaseDateAsVersion": "Usa la data de llançament com a cadena de la versió", + "releaseTitleAsVersion": "Usa el títol com a cadena de la versió", + "releaseDateAsVersionExplanation": "Aquest opció només s'hauria d'usar per a aplicacions en què la detecció de la versió no funciona correctament però disposem de la data de publicació.", + "changes": "Canvis", + "releaseDate": "Data de publicació", + "importFromURLsInFile": "Importa els URLs des d'un fitxer (com ara OPML)", + "versionDetectionExplanation": "Concilia la cadena de la versió amb la versió detectada del Sistema Operatiu", + "versionDetection": "Detecció de la versió", + "standardVersionDetection": "Detecció de la versió estàndard", + "groupByCategory": "Agrupa per categories", + "autoApkFilterByArch": "Intenta filtrar les APKs per l'aquitectura de la CPU, si és possible", + "autoLinkFilterByArch": "Intenta filtrar els enllaços per l'aquitectura de la CPU, si és possible", + "overrideSource": "Força la font", + "dontShowAgain": "No ho tornis a mostrar", + "dontShowTrackOnlyWarnings": "No mostris avisos de les aplicacions 'només per a seguiment'", + "dontShowAPKOriginWarnings": "No mostris avisos dels orígens de les APKs", + "moveNonInstalledAppsToBottom": "Desplaça les aplicacions no instal·lades al capdavall de les aplicacions", + "gitlabPATLabel": "Token d'accés personal a GitLab", + "about": "Quant a", + "requiresCredentialsInSettings": "{} requereix credencials addicionals (a Paràmetres)", + "checkOnStart": "Comprova si hi ha actualitzacions en iniciar Obtainium", + "tryInferAppIdFromCode": "Intenta deduir l'ID de l'aplicació des del codi font", + "removeOnExternalUninstall": "Suprimeix de forma automàtica les aplicacions desinstal·lades externament", + "pickHighestVersionCode": "Selecciona de forma automàtica la versió superior de l'APK", + "checkUpdateOnDetailPage": "Comprova les actualitzacions en obrir la pàgina de detalls de l'aplicació", + "disablePageTransitions": "Inhabilita les animacions de transició de pàgina", + "reversePageTransitions": "Inverteix les animacions de transició de pàgina", + "minStarCount": "Nombre mínim d'estrelles", + "addInfoBelow": "Afegeix aquesta informació a sota.", + "addInfoInSettings": "Afegeix aquesta informació a Paràmetres.", + "githubSourceNote": "La limitació de peticions a GitHub es pot evitar amb una clau API.", + "sortByLastLinkSegment": "Ordena per 'només el darrer fragment de l'enllaç'", + "filterReleaseNotesByRegEx": "Filtra les notes de la publicació de la versió per una expressió regular", + "customLinkFilterRegex": "Filtre personalitzat de l'enllaç de l'APK per una expressió regular (Per_defecte '.apk$')", + "appsPossiblyUpdated": "S'ha intentat l'actualització de l'aplicació", + "appsPossiblyUpdatedNotifDescription": "Notifica l'usuari que les actualitzacions per a una o més aplicacions podrien haver-se fet en segon pla", + "xWasPossiblyUpdatedToY": "{} podria haver-se actualitzat a {}.", + "enableBackgroundUpdates": "Habilita les actualizacions en segon pla", + "backgroundUpdateReqsExplanation": "Les actualitzacions en segon pla és possible que no estiguin disponibles per a totes les aplicacions.", + "backgroundUpdateLimitsExplanation": "Les instal·lacions en segon pla reexides només es poden comprovar amb Obtainium obert.", + "verifyLatestTag": "Comprova l'etiqueta 'Latest' (última versió)", + "intermediateLinkRegex": "Filtra per un enllaç 'intermediari' per anar-hi", + "filterByLinkText": "Filtra els enllaços pel text de l'enllaç", + "matchLinksOutsideATags": "Match links outside tags", + "intermediateLinkNotFound": "No s'ha trobat l'enllaç intermediari", + "intermediateLink": "Enllaç intermediari", + "exemptFromBackgroundUpdates": "Exempta d'actualitzacions en segon pla (si han estat habilitades)", + "bgUpdatesOnWiFiOnly": "Inhabilita les actualitzacions en segon pla sense Wi-Fi", + "bgUpdatesWhileChargingOnly": "Inhabilita les actualitzacions en segon pla quan no s'estigui carregant el mòbil", + "autoSelectHighestVersionCode": "Selecciona de forma automàtica la versió més recent de l'APK", + "versionExtractionRegEx": "Extracció de la cadena de la versió amb una expressió regular", + "trimVersionString": "Retalla la cadena de la versió amb una expressió regular", + "matchGroupToUseForX": "Grup de coincidència a usar per a \"{}\"", + "matchGroupToUse": "Grup de coincidència a usar per a l'extracció de la cadena de la versió amb una expressió regular", + "highlightTouchTargets": "Ressalta els elements de selecció menys obvis", + "pickExportDir": "Selecciona el directori d'exportació", + "autoExportOnChanges": "Exporta automàticament quan hi hagi canvis", + "includeSettings": "Inclou paràmetres", + "filterVersionsByRegEx": "Filtra les versions per una expressió regular", + "trySelectingSuggestedVersionCode": "Prova a seleccionar la versió de l'APK suggerida", + "dontSortReleasesList": "Mantén l'ordre de publicació de l'API", + "reverseSort": "Ordre invers", + "takeFirstLink": "Usa el primer enllaç", + "skipSort": "Omet l'ordre", + "debugMenu": "Menú de depuració", + "bgTaskStarted": "S'ha iniciat la tasca en segon pla (revisa-ho als registres).", + "runBgCheckNow": "Executa la comprovació d'actualitzacions en segon pla", + "versionExtractWholePage": "Aplica l'extracció de la cadena de la versió amb una expressió regular a tota la pàgina", + "installing": "Instal·lant", + "skipUpdateNotifications": "No notifiquis les actualitzacions", + "updatesAvailableNotifChannel": "Actualitzacions disponibles", + "appsUpdatedNotifChannel": "Aplicacions actualitzades", + "appsPossiblyUpdatedNotifChannel": "S'ha intentat actualitzar l'aplicació", + "errorCheckingUpdatesNotifChannel": "Error en cercar actualitzacions", + "appsRemovedNotifChannel": "Aplicacions suprimides", + "downloadingXNotifChannel": "Descarregant {}", + "completeAppInstallationNotifChannel": "Instal·lació finalitzada", + "checkingForUpdatesNotifChannel": "S'estan cercant actualitzacions", + "onlyCheckInstalledOrTrackOnlyApps": "Comprova les actualitzacions només per a aplicacions instal·lades o en seguiment", + "supportFixedAPKURL": "Suport per als URLs fixos de l'APK", + "selectX": "Selecciona {}", + "parallelDownloads": "Permet les descàrregues paralel·les", + "useShizuku": "Usa Shizuku o Sui per instal·lar", + "shizukuBinderNotFound": "Shizuku no s'està executant", + "shizukuOld": "Versió antiga de Shizuku (<11) - Actualitza-la", + "shizukuOldAndroidWithADB": "Shizuku s'executa en Android < 8.1 amb ADB - Actualitza Android o usa Sui com a alternativa", + "shizukuPretendToBeGooglePlay": "Defineix Google Play com a font d'instal·lació (si uses Shizuku)", + "useSystemFont": "Usa la font del sistema", + "useVersionCodeAsOSVersion": "Usa la versió de l'aplicació com a versió detectada del Sistema Operatiu", + "requestHeader": "Capçalera de sol·licitud", + "useLatestAssetDateAsReleaseDate": "Usa el darrer recurs carregat com a data de llançament", + "defaultPseudoVersioningMethod": "Mètode de pseudo-versionat predeterminat", + "partialAPKHash": "Hash de l'APK parcial", + "APKLinkHash": "Hash de l'enllaç de l'APK", + "directAPKLink": "Enllaç de l'APK directe", + "pseudoVersionInUse": "S'està usant una pseudo-versió", + "installed": "Instal·lada", + "latest": "Versió més recent", + "invertRegEx": "Inverteix l'expressió regular", + "note": "Nota", + "selfHostedNote": "El desplegable «{}» es pot usar per accedir a instàncies autoallotjades/personalitzades de qualsevol font.", + "badDownload": "L'APK no s'ha pogut analitzar (incompatible o descàrrega parcial)", + "beforeNewInstallsShareToAppVerifier": "Comparteix les aplicacions noves amb AppVerifier (si està instal·lat)", + "appVerifierInstructionToast": "Comparteix amb AppVerifier i torna aquí quan estigui fet.", + "wiki": "Ajuda/Wiki", + "crowdsourcedConfigsLabel": "Configuració de les aplicacions crowdsourcing (usa-ho sota la teva responsabilitat)", + "crowdsourcedConfigsShort": "Configuració de les aplicacions crowdsourcing", + "allowInsecure": "Permet les sol·licituds HTTP insegures", + "stayOneVersionBehind": "Roman a la versió anterior a l'última", + "useFirstApkOfVersion": "Tria automàticament la primera aplicació entre moltes", + "refreshBeforeDownload": "Actualitza les dades de l'aplicació abans de descarregar-la", + "tencentAppStore": "Tencent App Store", + "coolApk": "CoolApk", + "vivoAppStore": "Vivo App Store (CN)", + "name": "Nom", + "smartname": "Nom (smart)", + "sortMethod": "Mètode d'ordenació", + "welcome": "Benvinguda", + "documentationLinksNote": "La pàgina GitHub d'Obtainium enllaçada a sota conté enllaços a vídeos, articles, debats i altres recursos que t'ajudaran a entendre com usar l'aplicació.", + "batteryOptimizationNote": "Tingues present que les descàrregues en segon pla funcionaran millor si inhabilites l'optimització de bateria per a Obtainium.", + "fileDeletionError": "No s'ha pogut suprimir el fitxer (intenta suprimir-lo manualment i torna-ho a provar): \"{}\"", + "foregroundService": "Servei d'Obtainium en primer pla", + "foregroundServiceExplanation": "Usa el servei d'Obtainium en primer pla per comprovar les actualitzacions (és més fiable però consumeix més bateria)", + "fgServiceNotice": "Aquesta notificació és necessària per comprovar les actualitzacions en segon pla (la pots ocultar als paràmetres del Sistema Operatiu)", + "excludeSecrets": "Exclude secrets", + "GHReqPrefix": "'sky22333/hubproxy' instance for GitHub requests", + "includeZips": "Include ZIP files", + "zippedApkFilterRegEx": "Filter APKs inside ZIP", + "removeAppQuestion": { + "one": "¿Suprimeixo l'aplicació?", + "other": "¿Suprimeixo les aplicacions?" + }, + "tooManyRequestsTryAgainInMinutes": { + "one": "Massa peticions (límit excedit), torna-hi en {} minut", + "other": "Massa peticions (límit excedit), torna-hi en {} minuts" + }, + "bgUpdateGotErrorRetryInMinutes": { + "one": "La comprovació d'actualitzacions en segon pla ha trobat un {}, es tornarà a provar en {} minut", + "other": "La comprovació d'actualitzacions en segon pla ha trobat un {}, es tornarà a provar en {} minuts" + }, + "bgCheckFoundUpdatesWillNotifyIfNeeded": { + "one": "La comprovació d'actualitzacions en segon pla ha trobat {} actualització, t'ho notificarem si cal", + "other": "La comprovació d'actualitzacions en segon pla ha trobat {} actualitzacions, t'ho notificarem si cal" + }, + "apps": { + "one": "{} Aplicació", + "other": "{} Aplicacions" + }, + "url": { + "one": "{} URL", + "other": "{} URLs" + }, + "minute": { + "one": "{} minut", + "other": "{} minuts" + }, + "hour": { + "one": "{} hora", + "other": "{} hores" + }, + "day": { + "one": "{} dia", + "other": "{} dies" + }, + "clearedNLogsBeforeXAfterY": { + "one": "Suprimit {n} registre (anterior a = {before}, posterior a = {after})", + "other": "Suprimits {n} registres (anteriors a = {before}, posteriors a = {after})" + }, + "xAndNMoreUpdatesAvailable": { + "one": "{} i 1 aplicació més tenen actualitzacions.", + "other": "{} i {} aplicacions més tenen actualitzacions." + }, + "xAndNMoreUpdatesInstalled": { + "one": "{} i 1 aplicació més s'han actualitzat.", + "other": "{} i {} aplicacions més s'han actualitzat." + }, + "xAndNMoreUpdatesFailed": { + "one": "Error en actualitzar {} i 1 aplicació més.", + "other": "No s'ha pogut actualizar {} i {} aplicacions més." + }, + "xAndNMoreUpdatesPossiblyInstalled": { + "one": "{} i 1 aplicació més podrien haver estat actualizades.", + "other": "{} i {} aplicacions més podrien haver estat actualitzades." + }, + "apk": { + "one": "{} APK", + "other": "{} APKs" + } +} diff --git a/assets/translations/cs.json b/assets/translations/cs.json new file mode 100644 index 0000000..bf19805 --- /dev/null +++ b/assets/translations/cs.json @@ -0,0 +1,415 @@ +{ + "invalidURLForSource": "Žádná platná adresa URL aplikace {}", + "noReleaseFound": "Nebyla nalezena odpovídající verze", + "noVersionFound": "Nelze určit verzi vydání", + "urlMatchesNoSource": "URL neodpovídá žádnému známému zdroji", + "cantInstallOlderVersion": "Nelze nainstalovat starší verzi aplikace", + "appIdMismatch": "ID staženého balíčku neodpovídá ID existující aplikace", + "functionNotImplemented": "Tato třída nemá implementovánu tuto funkci", + "placeholder": "Zástupce", + "someErrors": "Došlo k chybám", + "unexpectedError": "Neočekávaná chyba", + "ok": "OK", + "and": "a", + "githubPATLabel": "Osobní přístupový token GitHub (zvyšuje limit požadavků)", + "includePrereleases": "Zahrnout předběžná vydání", + "fallbackToOlderReleases": "Přechod na starší verze", + "filterReleaseTitlesByRegEx": "Filtrovat názvy verzí podle regulárního výrazu", + "invalidRegEx": "Neplatný regulární výraz", + "noDescription": "Žádný popis", + "cancel": "Zrušit", + "continue": "Pokračovat", + "requiredInBrackets": "(vyžadováno)", + "dropdownNoOptsError": "CHYBA: ROZBALOVACÍ NABÍDKA MUSÍ MÍT ALESPOŇ JEDNU MOŽNOST", + "colour": "Barvu", + "standard": "Standardní", + "custom": "Vlastní", + "useMaterialYou": "Použít Material You", + "githubStarredRepos": "Repozitáře na GitHubu označené hvězdičkou", + "uname": "Uživatelské jméno", + "wrongArgNum": "Nesprávný počet zadaných argumentů", + "xIsTrackOnly": "{} je určeno pouze pro sledování", + "source": "Zdroj", + "app": "Aplikace", + "appsFromSourceAreTrackOnly": "Aplikace z tohoto zdroje jsou „pouze pro sledování“.", + "youPickedTrackOnly": "Vybrali jste možnost „pouze sledovat“.", + "trackOnlyAppDescription": "Aplikace bude sledována kvůli aktualizacím, ale Obtainium ji nebude stahovat ani instalovat.", + "cancelled": "Zrušeno", + "appAlreadyAdded": "Aplikace již přidána", + "alreadyUpToDateQuestion": "Aplikace je již aktualizovaná?", + "addApp": "Přidat aplikaci", + "appSourceURL": "Zdrojová adresa URL aplikace", + "error": "Chyba", + "add": "Přidat", + "searchSomeSourcesLabel": "Vyhledávání (pouze pro určité zdroje)", + "search": "Hledat", + "additionalOptsFor": "Další možnosti pro {}", + "supportedSources": "Podporované zdroje", + "trackOnlyInBrackets": "(pouze sledování)", + "searchableInBrackets": "(s možností vyhledávání)", + "appsString": "Aplikace", + "noApps": "Žádné aplikace", + "noAppsForFilter": "Žádné aplikace pro vybraný filtr", + "byX": "Od {}", + "percentProgress": "Pokrok: {}%", + "pleaseWait": "Počkejte prosím", + "updateAvailable": "Aktualizace je k dispozici", + "notInstalled": "Není nainstalováno", + "pseudoVersion": "pseudoverze", + "selectAll": "Vybrat vše", + "deselectX": "Zrušit výběr {}", + "xWillBeRemovedButRemainInstalled": "Aplikace {} bude odstraněna z aplikace Obtainium, ale zůstane nainstalována v zařízení.", + "removeSelectedAppsQuestion": "Odstranit vybrané aplikace?", + "removeSelectedApps": "Odstranit vybrané aplikace", + "updateX": "Aktualizovat {}", + "installX": "Instalovat {}", + "markXTrackOnlyAsUpdated": "Označit aplikaci {}\n(pouze sledování)\njako aktualizovanou", + "changeX": "Změnit {}", + "installUpdateApps": "Instalovat/aktualizovat aplikace", + "installUpdateSelectedApps": "Instalovat/aktualizovat vybrané aplikace", + "markXSelectedAppsAsUpdated": "Označit {} vybraných aplikací jako aktuální?", + "no": "Ne", + "yes": "Ano", + "markSelectedAppsUpdated": "Označit vybrané aplikace jako aktuální", + "pinToTop": "Připnout nahoru", + "unpinFromTop": "Odepnout shora", + "resetInstallStatusForSelectedAppsQuestion": "Obnovit stav instalace vybraných aplikací?", + "installStatusOfXWillBeResetExplanation": "Stav instalace vybraných aplikací bude resetován.\n\nTo může být užitečné, pokud je verze aplikace zobrazená v aplikaci Obtainium nesprávná z důvodu neúspěšných aktualizací nebo jiných problémů.", + "customLinkMessage": "Tyto odkazy fungují na zařízeních s nainstalovaným Obtainium", + "shareAppConfigLinks": "Sdílet konfiguraci aplikace jako odkaz HTML", + "shareSelectedAppURLs": "Sdílet adresy URL vybraných aplikací", + "resetInstallStatus": "Obnovit stav instalace", + "more": "Více", + "removeOutdatedFilter": "Odstranit filtr neaktuálních aplikací", + "showOutdatedOnly": "Zobrazovat pouze zastaralé aplikace", + "filter": "Filtr", + "filterApps": "Filtrovat aplikace", + "appName": "Název aplikace", + "author": "Autor", + "upToDateApps": "Aktuální aplikace", + "nonInstalledApps": "Nenainstalované aplikace", + "importExport": "Import/export", + "settings": "Nastavení", + "exportedTo": "Exportováno do {}", + "obtainiumExport": "Export aplikace Obtainium", + "invalidInput": "Neplatný vstup", + "importedX": "Importováno {}", + "obtainiumImport": "Import aplikace Obtainium", + "importFromURLList": "Importovat ze seznamu adres", + "searchQuery": "Vyhledávací dotaz", + "appURLList": "Seznam adres aplikací", + "line": "Linka", + "searchX": "Vyhledávání {}", + "noResults": "Nebyly nalezeny žádné výsledky", + "importX": "Importovat {}", + "importedAppsIdDisclaimer": "Importované aplikace mohou být nesprávně zobrazeny jako „nenainstalované“.\nChcete-li to opravit, nainstalujte je znovu prostřednictvím aplikace Obtainium.\nNemá vliv na data aplikací.\n\nOvlivňuje pouze způsoby importu URL a třetích stran.", + "importErrors": "Chyba importu", + "importedXOfYApps": "Importováno {} z {} aplikací.", + "followingURLsHadErrors": "U následujících adres došlo k chybám:", + "selectURL": "Vybrat adresu", + "selectURLs": "Select adresy", + "pick": "Vybrat", + "theme": "Motiv", + "dark": "Tmavé", + "light": "Světlé", + "followSystem": "Podle systému", + "followSystemThemeExplanation": "Používání motivu systému je možné pouze pomocí aplikací třetích stran", + "useBlackTheme": "Použít čistě černý tmavý motiv", + "appSortBy": "Seřadit podle", + "authorName": "Autor/jméno", + "nameAuthor": "Jméno/autor", + "asAdded": "Přidáno", + "appSortOrder": "Seřadit", + "ascending": "Vzestupně", + "descending": "Sestupně", + "bgUpdateCheckInterval": "Interval kontroly aktualizace na pozadí", + "neverManualOnly": "Nikdy – pouze ručně", + "appearance": "Vzhled", + "showWebInAppView": "Zobrazit zdrojové webové stránky v zobrazení aplikace", + "pinUpdates": "Připnout aplikace s aktualizacemi nahoru", + "updates": "Aktualizace", + "sourceSpecific": "Specifické pro zdroj", + "appSource": "Zdroj aplikace", + "noLogs": "Žádné protokoly", + "appLogs": "Protokoly aplikace", + "close": "Zavřít", + "share": "Sdílet", + "appNotFound": "Aplikace nenalezena", + "obtainiumExportHyphenatedLowercase": "obtainium-export", + "pickAnAPK": "Vybrat APK", + "appHasMoreThanOnePackage": "{} má více než jeden balíček:", + "deviceSupportsXArch": "Vaše zařízení podporuje architekturu CPU {}.", + "deviceSupportsFollowingArchs": "Vaše zařízení podporuje následující architektury CPU:", + "warning": "Varování", + "sourceIsXButPackageFromYPrompt": "Zdroj aplikace je „{}“, ale balíček pro vydání pochází z „{}“. Pokračovat?", + "updatesAvailable": "Dostupné aktualizace", + "updatesAvailableNotifDescription": "Upozorňuje uživatele, že jsou k dispozici aktualizace pro jednu nebo více aplikací sledovaných Obtainium", + "noNewUpdates": "Žádné nové aktualizace.", + "xHasAnUpdate": "{} má aktualizaci.", + "appsUpdated": "Aplikace aktualizovány", + "appsNotUpdated": "Nepodařilo se aktualizovat aplikace", + "appsUpdatedNotifDescription": "Upozornit, že byly provedeny aktualizace jedné nebo více aplikací na pozadí", + "xWasUpdatedToY": "Aplikace {} byla aktualizována na {}.", + "xWasNotUpdatedToY": "Nepodařilo se aktualizovat {} na {}.", + "errorCheckingUpdates": "Chyba kontroly aktualizací", + "errorCheckingUpdatesNotifDescription": "Zobrazit oznámení při neúspěšné kontrole aktualizací na pozadí", + "appsRemoved": "Odstraněné aplikace", + "appsRemovedNotifDescription": "Oznámit, že jedna nebo více aplikací bylo odstraněno z důvodu chyb při načítání", + "xWasRemovedDueToErrorY": "{} byla odstraněna z důvodu následující chyby: {}", + "completeAppInstallation": "Dokončit instalaci aplikace", + "obtainiumMustBeOpenToInstallApps": "Obtainium musí být otevřeno, aby bylo možné instalovat aplikace", + "completeAppInstallationNotifDescription": "Vyzvat k návratu do Obtainium pro dokončení instalace aplikací", + "checkingForUpdates": "Zkontrolovat aktualizace", + "checkingForUpdatesNotifDescription": "Dočasné oznámení zobrazené při kontrole aktualizací", + "pleaseAllowInstallPerm": "Povolte prosím aplikaci Obtainium instalovat aplikace", + "trackOnly": "Pouze sledovat", + "errorWithHttpStatusCode": "Chyba {}", + "versionCorrectionDisabled": "Oprava verze zakázána (zásuvný modul zřejmě nefunguje)", + "unknown": "Neznám", + "none": "Žádný", + "all": "Všechny", + "never": "Nikdy", + "latestVersionX": "Nejnovější verze: {}", + "installedVersionX": "Nainstalovaná verze: {}", + "lastUpdateCheckX": "Poslední kontrola aktualizací: {}", + "remove": "Odebrat", + "yesMarkUpdated": "Ano, označit jako aktualizované", + "fdroid": "Oficiální repozitář F-Droid", + "appIdOrName": "ID nebo název aplikace", + "appId": "ID aplikace", + "appWithIdOrNameNotFound": "Žádná aplikace s tímto ID nebo názvem nebyla nalezena", + "reposHaveMultipleApps": "Repozitáře mohou obsahovat více aplikací", + "fdroidThirdPartyRepo": "F-Droid repozitář třetí strany", + "install": "Instalovat", + "markInstalled": "Označit jako nainstalovaný", + "update": "Aktualizovat", + "markUpdated": "Označit jako aktuální", + "additionalOptions": "Další možnosti", + "disableVersionDetection": "Deaktivovat detekci verze", + "noVersionDetectionExplanation": "Tato možnost by měla být použita pouze u aplikace, kde detekce verzí nefunguje správně.", + "downloadingX": "Stáhnout {}", + "downloadX": "Stáhnout {}", + "downloadedX": "Staženo {}", + "releaseAsset": "Soubor vydání", + "downloadNotifDescription": "Informuje uživatele o průběhu stahování aplikace", + "noAPKFound": "Žádná APK nebyla nalezena", + "noVersionDetection": "Žádná detekce verze", + "categorize": "Kategorizovat", + "categories": "Kategorie", + "category": "Kategorie", + "noCategory": "Žádná kategorie", + "noCategories": "Žádné kategorie", + "deleteCategoriesQuestion": "Smazat kategorie?", + "categoryDeleteWarning": "Všechny aplikace v odstraněných kategoriích budou nastaveny na nekategorizované.", + "addCategory": "Přidat kategorii", + "label": "Popisek", + "language": "Jazyk", + "copiedToClipboard": "Zkopírováno do schránky", + "storagePermissionDenied": "Oprávnění k ukládání odepřeno", + "selectedCategorizeWarning": "Toto nahradí všechna stávající nastavení kategorií pro vybrané aplikace.", + "filterAPKsByRegEx": "Filtrovat APK podle regulárního výrazu", + "removeFromObtainium": "Odebrat z Obtainia", + "uninstallFromDevice": "Odinstalovat ze zařízení", + "onlyWorksWithNonVersionDetectApps": "Funguje pouze pro aplikace s vypnutou detekcí verze.", + "releaseDateAsVersion": "Použít datum vydání jako verzi", + "releaseTitleAsVersion": "Použít název vydání jako řetězec verze", + "releaseDateAsVersionExplanation": "Tato možnost by měla být použita pouze u aplikace, kde detekce verzí nefunguje správně, ale je k dispozici datum vydání.", + "changes": "Změny", + "releaseDate": "Datum vydání", + "importFromURLsInFile": "Importovat adresy URL ze souboru (např. OPML)", + "versionDetectionExplanation": "Sloučit řetězec verze s verzí zjištěnou z OS", + "versionDetection": "Detekce verze", + "standardVersionDetection": "Standardní detekce verze", + "groupByCategory": "Seskupit podle kategorie", + "autoApkFilterByArch": "Pokud je to možné, pokuste se filtrovat soubory APK podle architektury procesoru", + "autoLinkFilterByArch": "Pokusit se filtrovat odkazy podle architektury procesoru, pokud je to možné", + "overrideSource": "Přepsat zdroj", + "dontShowAgain": "Nezobrazovat znovu", + "dontShowTrackOnlyWarnings": "Nezobrazovat varování pro „pouze sledované“", + "dontShowAPKOriginWarnings": "Nezobrazovat varování o původu APK", + "moveNonInstalledAppsToBottom": "Přesunout nenainstalované aplikace na konec zobrazení Aplikace", + "gitlabPATLabel": "Osobní přístupový token GitLab", + "about": "Informace", + "requiresCredentialsInSettings": "{} vyžaduje další pověření (v nastavení)", + "checkOnStart": "Zkontrolovat aktualizace při spuštění", + "tryInferAppIdFromCode": "Pokusit se určit ID aplikace ze zdrojového kódu", + "removeOnExternalUninstall": "Automaticky odstranit externě odinstalované aplikace", + "pickHighestVersionCode": "Automaticky vybrat nejvyšší verzi APK", + "checkUpdateOnDetailPage": "Zkontrolovat aktualizaci při otevření stránky s podrobnostmi aplikace", + "disablePageTransitions": "Zakázat animace pro přechody stránek", + "reversePageTransitions": "Obrátit animace pro přechody stránek", + "minStarCount": "Minimální počet hvězdiček", + "addInfoBelow": "Přidat tuto informaci na konec stránky.", + "addInfoInSettings": "Přidat tuto informaci do nastavení.", + "githubSourceNote": "Limit požadavků služby GitHub lze obejít pomocí klíče API.", + "sortByLastLinkSegment": "Seřadit pouze podle poslední části odkazu", + "filterReleaseNotesByRegEx": "Filtrovat seznam změn podle regulárního výrazu", + "customLinkFilterRegex": "Vlastní filtr odkazů APK podle regulárního výrazu (výchozí: „.apk$“)", + "appsPossiblyUpdated": "Byly provedeny pokusy o aktualizaci aplikací", + "appsPossiblyUpdatedNotifDescription": "Upozorňuje uživatele, že na pozadí mohly být provedeny aktualizace jedné nebo více aplikací", + "xWasPossiblyUpdatedToY": "{} mohlo být aktualizováno na {}.", + "enableBackgroundUpdates": "Povolit aktualizace na pozadí", + "backgroundUpdateReqsExplanation": "Aktualizace na pozadí nemusí být možná pro všechny aplikace.", + "backgroundUpdateLimitsExplanation": "Úspěšnost instalace na pozadí lze určit pouze v případě, že je otevřeno Obtainium.", + "verifyLatestTag": "Ověřit značku „latest“", + "intermediateLinkRegex": "Filtr pro návštěvu „prostředního“ odkazu", + "filterByLinkText": "Filtrovat odkazy podle textu odkazu", + "matchLinksOutsideATags": "Shoda odkazů mimo značky ", + "intermediateLinkNotFound": "Připojený odkaz nenalezen", + "intermediateLink": "Připojený odkaz", + "exemptFromBackgroundUpdates": "Vyloučit z aktualizací na pozadí (je-li povoleno)", + "bgUpdatesOnWiFiOnly": "Zakázat aktualizace na pozadí, pokud není k dispozici Wi-Fi", + "bgUpdatesWhileChargingOnly": "Zakázat aktualizace na pozadí, pokud se zařízení nenabíjí", + "autoSelectHighestVersionCode": "Automaticky vybrat APK s nejvyšším kódem verze", + "versionExtractionRegEx": "Extrakce verze pomocí RegEx", + "trimVersionString": "Oříznutí řetězce verze pomocí RegEx", + "matchGroupToUseForX": "Shoda se skupinou k použití pro „{}“", + "matchGroupToUse": "Odpovídá použité skupině", + "highlightTouchTargets": "Zvýraznit méně zjevné cíle dotyku", + "pickExportDir": "Vybrat adresář pro export", + "autoExportOnChanges": "Automatický export při změně", + "includeSettings": "Zahrnout nastavení", + "filterVersionsByRegEx": "Filtrovat verze podle regulárních výrazů", + "trySelectingSuggestedVersionCode": "Zkusit vybrat navrhovanou verzi APK", + "dontSortReleasesList": "Seřadit vydání z rozhraní API", + "reverseSort": "Obrácené třídění", + "takeFirstLink": "Použít první odkaz", + "skipSort": "Přeskočit třídění", + "debugMenu": "Nabídka ladění", + "bgTaskStarted": "Spuštěna úloha na pozadí - zkontrolujte protokoly.", + "runBgCheckNow": "Spustit kontrolu aktualizací na pozadí nyní", + "versionExtractWholePage": "Použít extrakci verze pomocí RegEx na celou stránku", + "installing": "Instaluji", + "skipUpdateNotifications": "Neposkytovat oznámení o aktualizaci", + "updatesAvailableNotifChannel": "Dostupné aktualizace", + "appsUpdatedNotifChannel": "Aplikace aktualizovány", + "appsPossiblyUpdatedNotifChannel": "Byly provedeny pokusy o aktualizace aplikací", + "errorCheckingUpdatesNotifChannel": "Chyba při kontrole aktualizací", + "appsRemovedNotifChannel": "Aplikace odstraněny", + "downloadingXNotifChannel": "Stáhnout {}", + "completeAppInstallationNotifChannel": "Dokončit instalaci aplikace", + "checkingForUpdatesNotifChannel": "Zkontrolovat aktualizace", + "onlyCheckInstalledOrTrackOnlyApps": "Aktualizace kontrolovat pouze u nainstalovaných a sledovaných aplikací", + "supportFixedAPKURL": "Odhadnout novější verzi na základě prvních třiceti číslic kontrolního součtu adresy URL APK, pokud není podporována jinak", + "selectX": "Vybrat {}", + "parallelDownloads": "Povolit souběžné stahování", + "useShizuku": "K instalaci použít Shizuku nebo Sui", + "shizukuBinderNotFound": "Shizuku neběží", + "shizukuOld": "Stará verze Shizuku (<11) - aktualizujte ji", + "shizukuOldAndroidWithADB": "Shizuku běží na Androidu < 8.1 s ADB - aktualizujte Android nebo místo toho použijte Sui", + "shizukuPretendToBeGooglePlay": "Nastavit Google Play jako zdroj instalace (pokud se používá Shizuku)", + "useSystemFont": "Použít systémové písmo", + "useVersionCodeAsOSVersion": "Použít kód verze aplikace jako verzi zjištěnou OS", + "requestHeader": "Hlavička požadavku", + "useLatestAssetDateAsReleaseDate": "Použít poslední nahraný soubor jako datum vydání", + "defaultPseudoVersioningMethod": "Výchozí metoda pseudoverze", + "partialAPKHash": "Částečný hash APK", + "APKLinkHash": "Odkaz APK Hash", + "directAPKLink": "Přímý odkaz APK", + "pseudoVersionInUse": "Pseudoverze se používá", + "installed": "Nainstalováno", + "latest": "Nejnovější", + "invertRegEx": "Invertovat regulární výraz", + "note": "Poznámka", + "selfHostedNote": "Rozbalovací seznam „{}“ lze použít pro přístup k vlastním instancím libovolného zdroje.", + "badDownload": "APK nelze analyzovat (nekompatibilní nebo částečné stažení)", + "beforeNewInstallsShareToAppVerifier": "Sdílet nové aplikace s aplikací AppVerifier (pokud je k dispozici)", + "appVerifierInstructionToast": "Sdílejte do aplikace AppVerifier a po dokončení se sem vraťte.", + "wiki": "Nápověda/Wiki", + "crowdsourcedConfigsLabel": "Komunitní konfigurace aplikací (použití na vlastní nebezpečí)", + "crowdsourcedConfigsShort": "Konfigurace aplikací s využitím crowdsourcingu", + "allowInsecure": "Povolit nezabezpečené požadavků HTTP", + "stayOneVersionBehind": "Zůstaňte o jednu verzi pozadu za nejnovější", + "useFirstApkOfVersion": "Automatický výběr prvního z více souborů APK", + "refreshBeforeDownload": "Obnovit údaje o aplikaci před stažením", + "tencentAppStore": "Tencent App Store", + "coolApk": "CoolApk", + "vivoAppStore": "vivo App Store (CN)", + "name": "Název", + "smartname": "Název (chytrý)", + "sortMethod": "Metoda třídění", + "welcome": "Vítejte na", + "documentationLinksNote": "Níže odkazovaná stránka Obtainium GitHub obsahuje odkazy na videa, články, diskuse a další zdroje, které vám pomohou pochopit, jak aplikaci používat.", + "batteryOptimizationNote": "Upozorňujeme, že stahování na pozadí může fungovat spolehlivěji, pokud v nastavení aplikace Obtainium přepnete na „službu v popředí“ a/nebo v nastavení operačního systému pro Obtainium vypnete optimalizaci baterie.", + "fileDeletionError": "Soubor se nepodařilo odstranit (zkuste jej odstranit ručně a akci opakujte): „{}“", + "foregroundService": "Služba Obtainium na popředí", + "foregroundServiceExplanation": "Použít službu v popředí pro kontrolu aktualizací (spolehlivější, spotřebovává více energie)", + "fgServiceNotice": "Toto oznámení je nutné pro kontrolu aktualizací na pozadí (lze jej skrýt v nastavení systému)", + "excludeSecrets": "Vyloučit tajemství", + "GHReqPrefix": "instance 'sky22333/hubproxy' pro požadavky GitHubu", + "includeZips": "Zahrnout soubory ZIP", + "zippedApkFilterRegEx": "Filtrování souborů APK uvnitř ZIP", + "removeAppQuestion": { + "one": "Odstranit aplikaci?", + "other": "Odstranit aplikace?" + }, + "tooManyRequestsTryAgainInMinutes": { + "one": "Příliš mnoho požadavků (limit požadavků) - zkuste to znovu za {} minutu", + "few": "Příliš mnoho požadavků (limit požadavků) - zkuste to znovu za {} minuty", + "other": "Příliš mnoho požadavků (limit požadavků) - zkuste to znovu za {} minut" + }, + "bgUpdateGotErrorRetryInMinutes": { + "one": "Při kontrole aktualizací na pozadí byla zjištěna {}, opakování bude naplánováno za {} minutu", + "few": "Při kontrole aktualizací na pozadí byla zjištěna {}, opakování bude naplánováno za {} minuty", + "other": "Při kontrole aktualizací na pozadí byla zjištěna {}, opakování bude naplánováno za {} minut" + }, + "bgCheckFoundUpdatesWillNotifyIfNeeded": { + "one": "Při kontrole aktualizací na pozadí nalezena {} aktualizace – v případě potřeby bude upozorněn uživatel", + "few": "Při kontrole aktualizací na pozadí nalezeny {} aktualizace – v případě potřeby bude upozorněn uživatel", + "other": "Při kontrole aktualizací na pozadí nalezeno {} aktualizací – v případě potřeby bude upozorněn uživatel" + }, + "apps": { + "one": "{} aplikace", + "few": "{} aplikace", + "other": "{} aplikací" + }, + "url": { + "one": "{} adresa", + "few": "{} adresy", + "other": "{} adres" + }, + "minute": { + "one": "{} minuta", + "few": "{} minuty", + "other": "{} minut" + }, + "hour": { + "one": "{} hodina", + "few": "{} hodiny", + "other": "{} hodin" + }, + "day": { + "one": "{} den", + "few": "{} dny", + "other": "{} dní" + }, + "clearedNLogsBeforeXAfterY": { + "one": "Vymazán {n} záznam (před = {before}, po = {after})", + "few": "Vymazány {n} záznamy (před = {before}, po = {after})", + "other": "Vymazáno {n} záznamů (před = {before}, po = {after})" + }, + "xAndNMoreUpdatesAvailable": { + "one": "{} a 1 další aplikace mají aktualizace.", + "few": "{} a {} další aplikace mají aktualizace.", + "other": "{} a {} dalších aplikací má aktualizace." + }, + "xAndNMoreUpdatesInstalled": { + "one": "{} a 1 další aplikace byly aktualizovány.", + "few": "{} a {} další aplikace byly aktualizovány.", + "other": "{} a {} dalších aplikací bylo aktualizováno." + }, + "xAndNMoreUpdatesFailed": { + "one": "Nepodařilo se aktualizovat {} a 1 další aplikaci.", + "few": "Nepodařilo se aktualizovat {} a {} další aplikace.", + "other": "Nepodařilo se aktualizovat {} a {} dalších aplikací." + }, + "xAndNMoreUpdatesPossiblyInstalled": { + "one": "{} a 1 další aplikace možná byly aktualizovány.", + "few": "{} a {} další aplikace možná byly aktualizovány.", + "other": "{} a {} dalších aplikací možná bylo aktualizováno." + }, + "apk": { + "one": "{} APK", + "other": "{} APK" + } +} diff --git a/assets/translations/da.json b/assets/translations/da.json new file mode 100644 index 0000000..e34389f --- /dev/null +++ b/assets/translations/da.json @@ -0,0 +1,402 @@ +{ + "invalidURLForSource": "Ikke et gyldigt {} app-URL", + "noReleaseFound": "Kunne ikke finde en passende udgivelse", + "noVersionFound": "Kunne ikke afgøre udgivelsesversion", + "urlMatchesNoSource": "URL'en matcher ikke en kendt kilde", + "cantInstallOlderVersion": "Kan ikke installere en ældre version af en app", + "appIdMismatch": "Hentet pakke-ID matcher ikke eksisterende app-ID", + "functionNotImplemented": "Denne klasse har ikke implementeret denne funktion", + "placeholder": "Pladsholder", + "someErrors": "Nogle fejl opstod", + "unexpectedError": "Uventet fejl", + "ok": "Okay", + "and": "og", + "githubPATLabel": "GitHub Personlig Adgangstoken (øger hastighedsgrænse)", + "includePrereleases": "Inkluder forudgivelser", + "fallbackToOlderReleases": "Fallback til ældre udgivelser", + "filterReleaseTitlesByRegEx": "Filtrer udgivelsestitler efter regulært udtryk", + "invalidRegEx": "Ugyldigt regulært udtryk", + "noDescription": "Ingen beskrivelse", + "cancel": "Annuller", + "continue": "Fortsæt", + "requiredInBrackets": "(Påkrævet)", + "dropdownNoOptsError": "FEJL: RULLEMENU SKAL HAVE MINDST ÉT TILVALG", + "colour": "Farve", + "standard": "Standard", + "custom": "Brugerdefineret", + "useMaterialYou": "Brug Material You", + "githubStarredRepos": "Stjernemarkeret GitHub-repos", + "uname": "Brugernavn", + "wrongArgNum": "Forkert antal argumenter angivet", + "xIsTrackOnly": "{} er 'Følg Kun'", + "source": "Kilde", + "app": "App", + "appsFromSourceAreTrackOnly": "Apps fra denne kilde er 'Følg Kun'.", + "youPickedTrackOnly": "Du har valgt 'Følg Kun'-indstillingen.", + "trackOnlyAppDescription": "Appen tjekkes for opdateringer, men Obtainium kan ikke hente eller installere den.", + "cancelled": "Annulleret", + "appAlreadyAdded": "Appen er allerede tilføjet", + "alreadyUpToDateQuestion": "Er appen allerede opdateret?", + "addApp": "Tilføj app", + "appSourceURL": "URL til app-kilde", + "error": "Fejl", + "add": "Tilføj", + "searchSomeSourcesLabel": "Søg (kun visse kilder)", + "search": "Søg", + "additionalOptsFor": "Flere indstillinger for {}", + "supportedSources": "Understøttede kilder", + "trackOnlyInBrackets": "(Følg Kun)", + "searchableInBrackets": "(Kan Søges)", + "appsString": "Apps", + "noApps": "Ingen apps", + "noAppsForFilter": "Ingen apps til filter", + "byX": "Af {}", + "percentProgress": "Hentning: {}%", + "pleaseWait": "Vent venligst", + "updateAvailable": "Opdatering tilgængelig", + "notInstalled": "Ikke installeret", + "pseudoVersion": "pseudo-version", + "selectAll": "Vælg alle", + "deselectX": "Fravælg {}", + "xWillBeRemovedButRemainInstalled": "{} fjernes fra Obtainium, men forbliver installeret på enheden.", + "removeSelectedAppsQuestion": "Fjern valgte apps?", + "removeSelectedApps": "Fjern valgte apps", + "updateX": "Opdater {}", + "installX": "Installer {}", + "markXTrackOnlyAsUpdated": "Markér {}\n(Følg Kun)\nsom opdateret", + "changeX": "Skift {}", + "installUpdateApps": "Installer/Opdater apps", + "installUpdateSelectedApps": "Installer/Opdater valgte apps", + "markXSelectedAppsAsUpdated": "Markér {} valgte apps som opdateret?", + "no": "Nej", + "yes": "Ja", + "markSelectedAppsUpdated": "Markér valgte apps som opdateret", + "pinToTop": "Fastgør til toppen", + "unpinFromTop": "Frigør fra toppen", + "resetInstallStatusForSelectedAppsQuestion": "Nulstil installationsstatus for valgte apps?", + "installStatusOfXWillBeResetExplanation": "Installationsstatus for alle valgte apps nulstilles.\n\nDette kan hjælpe, når en forkert app-version vises i Obtainium grundet mislykkede opdateringer eller andre problemer.", + "customLinkMessage": "Disse links virker på enheder med Obtainium installeret", + "shareAppConfigLinks": "Del app-konfiguration som HTML-link", + "shareSelectedAppURLs": "Del valgte app-URL'er", + "resetInstallStatus": "Nulstil installationsstatus", + "more": "Mere", + "removeOutdatedFilter": "Fjern forældet app-filter", + "showOutdatedOnly": "Vis kun forældede apps", + "filter": "Filtrer", + "filterApps": "Filtrer Apps", + "appName": "Appnavn", + "author": "Udvikler", + "upToDateApps": "Opdaterede apps", + "nonInstalledApps": "Ikke-installerede apps", + "importExport": "Import/Eksport", + "settings": "Indstillinger", + "exportedTo": "Eksportér til {}", + "obtainiumExport": "Obtainium-eksport", + "invalidInput": "Ugyldigt input", + "importedX": "Importerede {}", + "obtainiumImport": "Obtainium-import", + "importFromURLList": "Importér fra URL-liste", + "searchQuery": "Søgning", + "appURLList": "Liste over app-URL'er", + "line": "Linje", + "searchX": "Søg {}", + "noResults": "Ingen resultater fundet", + "importX": "Importér {}", + "importedAppsIdDisclaimer": "Importerede apps vises muligvis forkert som \"Ikke installeret\".\nFor at løse dette, geninstaller dem via Obtainium.\nDette bør ikke påvirke app-data.\n\nPåvirker kun URL- og tredjepartsimportmetoder.", + "importErrors": "Importfejl", + "importedXOfYApps": "{} af {} app importeret.", + "followingURLsHadErrors": "Følgende URL'er havde fejl:", + "selectURL": "Vælg URL", + "selectURLs": "Vælg URL'er", + "pick": "Vælg", + "theme": "Tema", + "dark": "Mørk", + "light": "Lys", + "followSystem": "Følg system", + "followSystemThemeExplanation": "Det er kun muligt at følge systemtemaet ved brug af tredjepartsapplikationer", + "useBlackTheme": "Brug rent sort mørkt tema", + "appSortBy": "Sortér apps efter:", + "authorName": "Udvikler/Navn", + "nameAuthor": "Navn/Udvikler", + "asAdded": "Som tilføjet", + "appSortOrder": "Sorteringsrækkefølge for apps", + "ascending": "Stigende", + "descending": "Faldende", + "bgUpdateCheckInterval": "Kontrolinterval for baggrundsopdatering", + "neverManualOnly": "Aldrig - Kun manuelt", + "appearance": "Udseende", + "showWebInAppView": "Vis kildewebsiden i app-visning", + "pinUpdates": "Fastgør opdateringer øverst i app-visning", + "updates": "Opdateringer", + "sourceSpecific": "Kildespecifik", + "appSource": "App-kilde", + "noLogs": "Ingen logs", + "appLogs": "App-logs", + "close": "Luk", + "share": "Del", + "appNotFound": "App ikke fundet", + "obtainiumExportHyphenatedLowercase": "obtainium-eksport", + "pickAnAPK": "Vælg en APK", + "appHasMoreThanOnePackage": "{} har mere end én pakke:", + "deviceSupportsXArch": "Din enhed understøtter CPU-arkitekturen {}.", + "deviceSupportsFollowingArchs": "Din enhed understøtter følgende CPU-arkitekturer:", + "warning": "Advarsel", + "sourceIsXButPackageFromYPrompt": "App-kilden er '{}', men udgivelsespakken kommer fra '{}'. Fortsæt?", + "updatesAvailable": "Opdateringer tilgængelige", + "updatesAvailableNotifDescription": "Underretter brugeren om tilgængelige opdateringer for en eller flere apps, som Obtainium følger", + "noNewUpdates": "Ingen nye opdateringer.", + "xHasAnUpdate": "{} har en opdatering.", + "appsUpdated": "Apps opdateret", + "appsNotUpdated": "Kunne ikke opdatere applikationerne", + "appsUpdatedNotifDescription": "Underretter brugeren om, at opdateringer til en eller flere apps blev udført i baggrunden", + "xWasUpdatedToY": "{} blev opdateret til {}.", + "xWasNotUpdatedToY": "Kunne ikke opdatere {} til {}.", + "errorCheckingUpdates": "Fejl ved tjek for opdateringer", + "errorCheckingUpdatesNotifDescription": "En meddelelse, der vises, opdateringstjek i baggrunden mislykkes", + "appsRemoved": "Apps fjernet", + "appsRemovedNotifDescription": "Underretter brugeren om, at en eller flere apps blev fjernet grundet fejl under indlæsning af dem", + "xWasRemovedDueToErrorY": "{} blev fjernet grundet denne fejl: {}", + "completeAppInstallation": "Færdiggør app-installation", + "obtainiumMustBeOpenToInstallApps": "Obtainium skal være åben for at installere apps", + "completeAppInstallationNotifDescription": "Beder brugeren om at gå tilbage til Obtainium for at færdiggøre installation af en app", + "checkingForUpdates": "Tjekker for opdateringer", + "checkingForUpdatesNotifDescription": "Kortvarig meddelelse ved tjek for opdateringer", + "pleaseAllowInstallPerm": "Tillad venligst Obtainium at installere apps", + "trackOnly": "Følg Kun", + "errorWithHttpStatusCode": "Fejl {}", + "versionCorrectionDisabled": "Versionskorrektion deaktiveret (plugin ser ikke ud til at virke)", + "unknown": "Ukendt", + "none": "Ingen", + "all": "Alle", + "never": "Aldrig", + "latestVersionX": "Seneste: {}", + "installedVersionX": "Installeret: {}", + "lastUpdateCheckX": "Sidste opdateringstjek: {}", + "remove": "Fjern", + "yesMarkUpdated": "Ja, markér som opdateret", + "fdroid": "F-Droid Officiel", + "appIdOrName": "App-ID eller -navn", + "appId": "App-ID", + "appWithIdOrNameNotFound": "Ingen app med det ID eller navn blev fundet", + "reposHaveMultipleApps": "Repos kan indeholde flere apps", + "fdroidThirdPartyRepo": "F-Droid Tredjeparts-repo", + "install": "Installer", + "markInstalled": "Markér som installeret", + "update": "Opdater", + "markUpdated": "Markér som opdateret", + "additionalOptions": "Flere indstillinger", + "disableVersionDetection": "Deaktivér versionsregistrering", + "noVersionDetectionExplanation": "Denne indstilling bør kun bruges til apps, hvor versionsregistrering ikke virker korrekt.", + "downloadingX": "Henter {}", + "downloadX": "Hent {}", + "downloadedX": "Hentede {}", + "releaseAsset": "Udgivelsesressource", + "downloadNotifDescription": "Underretter brugeren om status på hentning af en app", + "noAPKFound": "Ingen APK fundet", + "noVersionDetection": "Ingen versionsregistrering", + "categorize": "Kategoriser", + "categories": "Kategorier", + "category": "Kategori", + "noCategory": "Ingen kategori", + "noCategories": "Ingen kategorier", + "deleteCategoriesQuestion": "Slet kategorier?", + "categoryDeleteWarning": "Alle apps i slettede kategorier indstilles til ukategoriseret.", + "addCategory": "Tilføj kategori", + "label": "Etiket", + "language": "Sprog", + "copiedToClipboard": "Kopieret til udklipsholder", + "storagePermissionDenied": "Lagringstilladelse nægtet", + "selectedCategorizeWarning": "Dette erstatter alle eksisterende kategoriindstillinger for de valgte apps.", + "filterAPKsByRegEx": "Filtrer APK'er efter regulært udtryk", + "removeFromObtainium": "Fjern fra Obtainium", + "uninstallFromDevice": "Afinstaller fra enhed", + "onlyWorksWithNonVersionDetectApps": "Virker kun for apps med versionsregistrering deaktiveret.", + "releaseDateAsVersion": "Brug udgivelsesdato som versionsstreng", + "releaseTitleAsVersion": "Brug udgivelsestitel som versionsstreng", + "releaseDateAsVersionExplanation": "Denne indstilling bør kun bruges til apps, hvor versionsregistrering ikke virker korrekt, men hvor en udgivelsesdato er tilgængelig.", + "changes": "Ændringer", + "releaseDate": "Udgivelsesdato", + "importFromURLsInFile": "Importér fra URL'er i fil (som OPML)", + "versionDetectionExplanation": "Afstem versionsstreng med versionen registreret fra OS", + "versionDetection": "Versionsregistrering", + "standardVersionDetection": "Standard versionsregistrering", + "groupByCategory": "Gruppér efter kategori", + "autoApkFilterByArch": "Forsøg at filtrere APK'er efter CPU-arkitektur, hvis muligt", + "autoLinkFilterByArch": "Forsøg at filtrere links efter CPU-arkitektur, hvis det er muligt", + "overrideSource": "Tilsidesæt kilde", + "dontShowAgain": "Vis ikke igen", + "dontShowTrackOnlyWarnings": "Vis ikke 'Følg Kun'-advarsler", + "dontShowAPKOriginWarnings": "Vis ikke advarsler om APK-oprindelse", + "moveNonInstalledAppsToBottom": "Flyt ikke-installerede apps nederst i app-visning", + "gitlabPATLabel": "GitLab Personlig Adgangstoken", + "about": "Om", + "requiresCredentialsInSettings": "{} kræver yderligere legitimation (i Indstillinger)", + "checkOnStart": "Tjek for opdateringer ved opstart", + "tryInferAppIdFromCode": "Forsøg at udlede app-ID fra kildekode", + "removeOnExternalUninstall": "Fjern automatisk eksternt afinstallerede apps", + "pickHighestVersionCode": "Auto-vælg højeste versionKode af APK", + "checkUpdateOnDetailPage": "Tjek for opdateringer ved åbning af appens detaljeside", + "disablePageTransitions": "Deaktivér sideovergangsanimationer", + "reversePageTransitions": "Omvendte sideovergangsanimationer", + "minStarCount": "Minimum antal stjerner", + "addInfoBelow": "Tilføj denne info nedenfor.", + "addInfoInSettings": "Tilføj denne info i Indstillinger.", + "githubSourceNote": "GitHub's hastighedsbegrænsning kan undgås med en API-nøgle.", + "sortByLastLinkSegment": "Sortér kun efter det sidste segment af linket", + "filterReleaseNotesByRegEx": "Filtrer udgivelsesnoter efter regulært udtryk", + "customLinkFilterRegex": "Brugerdefineret APK-linkfilter efter regulært udtryk (standard '.apk$')", + "appsPossiblyUpdated": "App-opdateringer forsøgt", + "appsPossiblyUpdatedNotifDescription": "Underretter brugeren om, at opdateringer til en eller flere apps muligvis blev udført i baggrunden", + "xWasPossiblyUpdatedToY": "{} er muligvis blevet opdateret til {}.", + "enableBackgroundUpdates": "Aktivér baggrundsopdateringer", + "backgroundUpdateReqsExplanation": "Baggrundsopdateringer er måske ikke mulige for alle apps.", + "backgroundUpdateLimitsExplanation": "En vellykket baggrundsinstallation kan kun afgøres, når Obtainium åbnes.", + "verifyLatestTag": "Verificer 'seneste'-tagget", + "intermediateLinkRegex": "Filtrer efter et 'mellemliggende' link at besøge", + "filterByLinkText": "Filtrer links efter linktekst", + "matchLinksOutsideATags": "Match links uden for -tags", + "intermediateLinkNotFound": "Mellemliggende link ikke fundet", + "intermediateLink": "Mellemliggende link", + "exemptFromBackgroundUpdates": "Undtag fra baggrundsopdateringer (hvis aktiveret)", + "bgUpdatesOnWiFiOnly": "Deaktiver baggrundsopdateringer, når du ikke er på Wi-Fi", + "bgUpdatesWhileChargingOnly": "Deaktiver baggrundsopdateringer, når du ikke oplader", + "autoSelectHighestVersionCode": "Auto-vælg højeste versionKode af APK", + "versionExtractionRegEx": "RegEx for versionsstrengsudtrækning", + "trimVersionString": "Trim versionsstreng med RegEx", + "matchGroupToUseForX": "Match-gruppe til brug for \"{}\"", + "matchGroupToUse": "RegEx-matchgruppe til brug for versionsstrengsudtrækning", + "highlightTouchTargets": "Fremhæv mindre åbenlyse berøringsmål", + "pickExportDir": "Vælg eksportmappe", + "autoExportOnChanges": "Auto-eksportér ved ændringer", + "includeSettings": "Inkluder indstillinger", + "filterVersionsByRegEx": "Filtrer versioner efter regulært udtryk", + "trySelectingSuggestedVersionCode": "Forsøg at vælge den foreslåede versionKode af APK", + "dontSortReleasesList": "Behold udgivelsesrækkefølge fra API", + "reverseSort": "Omvendt sortering", + "takeFirstLink": "Tag første link", + "skipSort": "Spring sortering over", + "debugMenu": "Fejlfindingsmenu", + "bgTaskStarted": "Baggrundsopgave startet - tjek logfiler.", + "runBgCheckNow": "Kør baggrundsopdateringstjek nu", + "versionExtractWholePage": "Anvend RegEx til versionsstrengsudtrækning på hele siden", + "installing": "Installerer", + "skipUpdateNotifications": "Spring opdateringsmeddelelser over", + "updatesAvailableNotifChannel": "Opdateringer tilgængelige", + "appsUpdatedNotifChannel": "Apps opdateret", + "appsPossiblyUpdatedNotifChannel": "App-opdateringer forsøgt", + "errorCheckingUpdatesNotifChannel": "Fejl ved opdateringstjek", + "appsRemovedNotifChannel": "Apps fjernet", + "downloadingXNotifChannel": "Henter {}", + "completeAppInstallationNotifChannel": "Færdiggør app-installation", + "checkingForUpdatesNotifChannel": "Tjekker for opdateringer", + "onlyCheckInstalledOrTrackOnlyApps": "Tjek kun installerede og 'Følg Kun'-apps for opdateringer", + "supportFixedAPKURL": "Understøt fikserede APK-URL'er", + "selectX": "Vælg {}", + "parallelDownloads": "Tillad samtidige overførsler", + "useShizuku": "Brug Shizuku eller Sui til at installere", + "shizukuBinderNotFound": "Shizuku-tjeneste kører ikke", + "shizukuOld": "Forældet Shizuku-version (<11). Opdater den", + "shizukuOldAndroidWithADB": "Shizuku kører på Android <8.1 med ADB. Opdater Android eller brug Sui i stedet", + "shizukuPretendToBeGooglePlay": "Indstil Google Play som installationskilde (hvis Shizuku bruges)", + "useSystemFont": "Brug systemskrifttype", + "useVersionCodeAsOSVersion": "Brug app-versionKode som OS-registreret version", + "requestHeader": "Anmodningsheader", + "useLatestAssetDateAsReleaseDate": "Brug seneste ressourceupload som udgivelsesdato", + "defaultPseudoVersioningMethod": "Standard pseudo-versioneringsmetode", + "partialAPKHash": "Delvis APK-hash", + "APKLinkHash": "Hash for APK-link", + "directAPKLink": "Direkte APK-link", + "pseudoVersionInUse": "En pseudo-version er i brug", + "installed": "Installeret", + "latest": "Seneste", + "invertRegEx": "Inverter regulært udtryk", + "note": "Bemærk", + "selfHostedNote": "Rullemenuen \"{}\" kan bruges til at nå selvhostede/brugerdefinerede instanser af enhver kilde.", + "badDownload": "APK'en kunne ikke analyseres (inkompatibel eller delvis hentning)", + "beforeNewInstallsShareToAppVerifier": "Del nye apps med AppVerifier (hvis tilgængelig)", + "appVerifierInstructionToast": "Del til AppVerifier, og vend tilbage, når du er klar.", + "wiki": "Hjælp/Wiki", + "crowdsourcedConfigsLabel": "Crowdsourcede app-konfigurationer (brug på egen risiko)", + "crowdsourcedConfigsShort": "Crowdsourcede app-konfigurationer", + "allowInsecure": "Tillad usikre HTTP-anmodninger", + "stayOneVersionBehind": "Forbliv én version bagud den seneste", + "useFirstApkOfVersion": "Vælg automatisk den første af flere APK'er", + "refreshBeforeDownload": "Opdater app-detaljer før download", + "tencentAppStore": "Tencent App Store", + "coolApk": "CoolApk", + "vivoAppStore": "vivo App Store (CN)", + "name": "Navn", + "smartname": "Navn (Smart)", + "sortMethod": "Sorteringsmetode", + "welcome": "Velkommen", + "documentationLinksNote": "Obtainiums GitHub-side, som der linkes til nedenfor, indeholder links til videoer, artikler, diskussioner og andre ressourcer, som kan hjælpe dig med at forstå, hvordan du bruger appen.", + "batteryOptimizationNote": "Bemærk, at baggrundsdownloads kan fungere mere pålideligt, hvis du deaktiverer OS-batterioptimering for Obtainium.", + "fileDeletionError": "Kunne ikke slette filen (prøv at slette den manuelt og prøv igen): \"{}\"", + "foregroundService": "Obtainium forgrundstjeneste", + "foregroundServiceExplanation": "Brug en forgrundstjeneste til opdateringskontrol (mere pålidelig, bruger mere strøm)", + "fgServiceNotice": "Denne meddelelse er nødvendig for baggrundsopdateringskontrol (den kan skjules i OS-indstillingerne).", + "excludeSecrets": "Udeluk hemmeligheder", + "GHReqPrefix": "'sky22333/hubproxy'-instans til GitHub-anmodninger", + "includeZips": "Inkluder ZIP-filer", + "zippedApkFilterRegEx": "Filtrer APK'er inde i ZIP", + "removeAppQuestion": { + "one": "Fjern app?", + "other": "Fjern apps?" + }, + "tooManyRequestsTryAgainInMinutes": { + "one": "For mange anmodninger (begrænset hastighed). Prøv igen om {} minut", + "other": "For mange anmodninger (begrænset hastighed). Prøv igen om {} minutter" + }, + "bgUpdateGotErrorRetryInMinutes": { + "one": "Baggrundsopdateringstjek stødte på en {}. Planlægger et nyt tjek om {} minut", + "other": "Baggrundsopdateringstjek stødte på en {}. Planlægger et nyt tjek om {} minutter" + }, + "bgCheckFoundUpdatesWillNotifyIfNeeded": { + "one": "Baggrundsopdateringstjek fandt {} opdatering. Underretter brugeren, hvis nødvendigt", + "other": "Baggrundsopdateringstjek fandt {} opdateringer. Underretter brugeren, hvis nødvendigt" + }, + "apps": { + "one": "{} App", + "other": "{} Apps" + }, + "url": { + "one": "{} URL", + "other": "{} URL'er" + }, + "minute": { + "one": "{} minut", + "other": "{} minutter" + }, + "hour": { + "one": "{} time", + "other": "{} timer" + }, + "day": { + "one": "{} dag", + "other": "{} dage" + }, + "clearedNLogsBeforeXAfterY": { + "one": "Ryddet {n} log (før = {before}, efter = {after})", + "other": "Ryddede {n} logs (før = {before}, efter = {after})" + }, + "xAndNMoreUpdatesAvailable": { + "one": "{} og 1 anden app har opdateringer.", + "other": "{} og {} andre apps har opdateringer." + }, + "xAndNMoreUpdatesInstalled": { + "one": "{} og 1 anden app blev opdateret.", + "other": "{} og {} andre apps blev opdateret." + }, + "xAndNMoreUpdatesFailed": { + "one": "Kunne ikke opdatere {} og 1 anden app.", + "other": "Kunne ikke opdatere {} og {} andre apps." + }, + "xAndNMoreUpdatesPossiblyInstalled": { + "one": "{} og 1 anden app blev muligvis opdateret.", + "other": "{} og {} andre apps blev muligvis opdateret." + }, + "apk": { + "one": "{} APK", + "other": "{} APK'er" + } +} diff --git a/assets/translations/de.json b/assets/translations/de.json new file mode 100644 index 0000000..77f452b --- /dev/null +++ b/assets/translations/de.json @@ -0,0 +1,402 @@ +{ + "invalidURLForSource": "Keine gültige {} App-URL", + "noReleaseFound": "Keine passende Version gefunden", + "noVersionFound": "Release-Version nicht ermittelbar", + "urlMatchesNoSource": "URL stimmt mit keiner bekannten Quelle überein", + "cantInstallOlderVersion": "Installation einer älteren App-Version nicht möglich", + "appIdMismatch": "Die heruntergeladene Paket-ID stimmt nicht mit der vorhandenen App-ID überein", + "functionNotImplemented": "Diese Klasse hat diese Funktion nicht implementiert", + "placeholder": "Platzhalter", + "someErrors": "Es traten einige Fehler auf", + "unexpectedError": "Unerwarteter Fehler", + "ok": "OK", + "and": "und", + "githubPATLabel": "Persönlicher Zugangstoken für GitHub (erhöht das Ratenlimit)", + "includePrereleases": "Vorabversionen einbeziehen", + "fallbackToOlderReleases": "Fallback auf ältere Versionen", + "filterReleaseTitlesByRegEx": "Release-Titel nach regulärem Ausdruck\nfiltern", + "invalidRegEx": "Ungültiger regulärer Ausdruck", + "noDescription": "Keine Beschreibung", + "cancel": "Abbrechen", + "continue": "Weiter", + "requiredInBrackets": "(notwendig)", + "dropdownNoOptsError": "FEHLER: DROPDOWN MUSS MINDESTENS EINE OPTION HABEN", + "colour": "Farbe", + "standard": "Standard", + "custom": "Benutzerdefiniert", + "useMaterialYou": "Material You verwenden", + "githubStarredRepos": "GitHub Starred Repos", + "uname": "Benutzername", + "wrongArgNum": "Falsche Anzahl von Argumenten (Parametern) übermittelt", + "xIsTrackOnly": "{} ist nur zur Nachverfolgung", + "source": "Quelle", + "app": "App", + "appsFromSourceAreTrackOnly": "Apps aus dieser Quelle sind nur zur Nachverfolgung.", + "youPickedTrackOnly": "Sie haben die Option „Nur nachverfolgen“ gewählt.", + "trackOnlyAppDescription": "Die App wird auf neue verfügbare Versionen überwacht, aber Obtainium wird sie nicht herunterladen oder installieren.", + "cancelled": "Abgebrochen", + "appAlreadyAdded": "App bereits hinzugefügt", + "alreadyUpToDateQuestion": "App bereits auf dem neuesten Stand?", + "addApp": "App hinzufügen", + "appSourceURL": "Quell-URL der App", + "error": "Fehler", + "add": "Hinzufügen", + "searchSomeSourcesLabel": "Suche (nur für bestimmte Quellen)", + "search": "Suchen", + "additionalOptsFor": "Zusatzoptionen für {}", + "supportedSources": "Unterstützte Quellen", + "trackOnlyInBrackets": "(Nur nachverfolgen)", + "searchableInBrackets": "(durchsuchbar)", + "appsString": "Apps", + "noApps": "Keine Apps", + "noAppsForFilter": "Keine Apps für ausgewählten Filter", + "byX": "Von {}", + "percentProgress": "Fortschritt: {}%", + "pleaseWait": "Bitte warten", + "updateAvailable": "Aktualisierung verfügbar", + "notInstalled": "Nicht installiert", + "pseudoVersion": "Pseudoversion", + "selectAll": "Alle auswählen", + "deselectX": "{} abgewählt", + "xWillBeRemovedButRemainInstalled": "{} wird aus Obtainium entfernt, bleibt aber auf dem Gerät installiert.", + "removeSelectedAppsQuestion": "Ausgewählte Apps entfernen?", + "removeSelectedApps": "Ausgewählte Apps entfernen", + "updateX": "{} aktualisieren", + "installX": "{} installieren", + "markXTrackOnlyAsUpdated": "Markiere {}\n(Nur nachverfolgen)\nals aktualisiert", + "changeX": "{} ändern", + "installUpdateApps": "Apps installieren/aktualisieren", + "installUpdateSelectedApps": "Ausgewählte Apps installieren/aktualisieren", + "markXSelectedAppsAsUpdated": "{} ausgewählte Apps als aktuell markieren?", + "no": "Nein", + "yes": "Ja", + "markSelectedAppsUpdated": "Ausgewählte Apps als aktuell markieren", + "pinToTop": "Oben anheften", + "unpinFromTop": "„Oben anheften“ aufheben", + "resetInstallStatusForSelectedAppsQuestion": "Installationsstatus für ausgewählte Apps zurücksetzen?", + "installStatusOfXWillBeResetExplanation": "Der Installationsstatus der ausgewählten Apps wird zurückgesetzt. Dies kann hilfreich sein, wenn die in Obtainium angezeigte App-Version aufgrund fehlgeschlagener Aktualisierungen oder anderer Probleme falsch ist.", + "customLinkMessage": "Diese Links funktionieren auf Geräten, wo Obtainium installiert ist", + "shareAppConfigLinks": "App-Konfiguration als HTML-Link teilen", + "shareSelectedAppURLs": "Ausgewählte App-URLs teilen", + "resetInstallStatus": "Installationsstatus zurücksetzen", + "more": "Mehr", + "removeOutdatedFilter": "App-Filter ‚Nicht aktuell‘ entfernen", + "showOutdatedOnly": "Nur nicht aktuelle Apps anzeigen", + "filter": "Filter", + "filterApps": "Apps filtern", + "appName": "App-Name", + "author": "Herausgebende", + "upToDateApps": "Apps mit aktuellster Version", + "nonInstalledApps": "Nicht installierte Apps", + "importExport": "Import/Export", + "settings": "Einstellungen", + "exportedTo": "Exportiert nach {}", + "obtainiumExport": "Obtainium-Export", + "invalidInput": "Ungültige Eingabe", + "importedX": "{} importiert", + "obtainiumImport": "Obtainium-Import", + "importFromURLList": "Aus URL-Liste importieren", + "searchQuery": "Suchanfrage", + "appURLList": "App-URL-Liste", + "line": "Zeile", + "searchX": "{} suchen", + "noResults": "Keine Ergebnisse gefunden", + "importX": "{} importieren", + "importedAppsIdDisclaimer": "Importierte Apps werden manchmal fälschlicherweise als „Nicht installiert“ angezeigt. Um dies zu beheben, installieren Sie sie erneut über Obtainium. Dies hat keine Auswirkungen auf App-Daten. Es betrifft nur URL- und Drittanbieter-Importmethoden.", + "importErrors": "Importfehler", + "importedXOfYApps": "{} von {} Apps importiert.", + "followingURLsHadErrors": "Bei folgenden URLs traten Fehler auf:", + "selectURL": "URL auswählen", + "selectURLs": "URLs auswählen", + "pick": "Auswählen", + "theme": "Erscheinungsbild", + "dark": "Dunkel", + "light": "Hell", + "followSystem": "Systemstandard", + "followSystemThemeExplanation": "Das Abrufen des Systemdesigns ist unter Android < 10 nur mit Hilfe von Drittanbieterapps möglich", + "useBlackTheme": "Rein schwarzen Hintergrund verwenden", + "appSortBy": "App sortieren nach", + "authorName": "Herausgebende/Name", + "nameAuthor": "Name/Herausgebende", + "asAdded": "Wie hinzugefügt", + "appSortOrder": "App sortieren nach", + "ascending": "Aufsteigend", + "descending": "Absteigend", + "bgUpdateCheckInterval": "Prüfintervall für Hintergrundaktualisierung", + "neverManualOnly": "Nie – nur manuell", + "appearance": "Aussehen", + "showWebInAppView": "Quellwebseite in der App-Ansicht anzeigen", + "pinUpdates": "Apps mit Aktualisierungen oben anheften", + "updates": "Aktualisierungen", + "sourceSpecific": "Quellenspezifisch", + "appSource": "App-Quelle", + "noLogs": "Keine Logs", + "appLogs": "App-Logs", + "close": "Schließen", + "share": "Teilen", + "appNotFound": "App nicht gefunden", + "obtainiumExportHyphenatedLowercase": "Obtainium-Export", + "pickAnAPK": "APK auswählen", + "appHasMoreThanOnePackage": "{} verfügt über mehr als ein Paket:", + "deviceSupportsXArch": "Ihr Gerät unterstützt die CPU-Architektur {}.", + "deviceSupportsFollowingArchs": "Ihr Gerät unterstützt die folgenden CPU-Architekturen:", + "warning": "Warnung", + "sourceIsXButPackageFromYPrompt": "Die App-Quelle ist '{}', aber das Release-Paket stammt von '{}'. Fortfahren?", + "updatesAvailable": "Aktualisierungen verfügbar", + "updatesAvailableNotifDescription": "Benachrichtigt, wenn Aktualisierungen für eine oder mehrere von Obtainium überwachte Apps verfügbar sind", + "noNewUpdates": "Keine neuen Aktualisierungen.", + "xHasAnUpdate": "{} hat eine Aktualisierung.", + "appsUpdated": "App wurde aktualisiert", + "appsNotUpdated": "Aktualisierung der Apps fehlgeschlagen", + "appsUpdatedNotifDescription": "Benachrichtigt, wenn Aktualisierungen für eine oder mehrere Apps im Hintergrund durchgeführt wurden", + "xWasUpdatedToY": "{} wurde auf {} aktualisiert.", + "xWasNotUpdatedToY": "Die Aktualisierung von {} auf {} ist fehlgeschlagen.", + "errorCheckingUpdates": "Fehler beim Prüfen auf Aktualisierungen", + "errorCheckingUpdatesNotifDescription": "Benachrichtigt, wenn die Prüfung der Hintergrundaktualisierung fehlgeschlagen ist", + "appsRemoved": "Apps entfernt", + "appsRemovedNotifDescription": "Benachrichtigt, wenn eine oder mehrere Apps aufgrund von Fehlern beim Laden entfernt wurden", + "xWasRemovedDueToErrorY": "{} wurde aufgrund des folgenden Fehlers entfernt: {}", + "completeAppInstallation": "App-Installation abschließen", + "obtainiumMustBeOpenToInstallApps": "Obtainium muss geöffnet sein, um Apps zu installieren", + "completeAppInstallationNotifDescription": "Aufforderung zu Obtainium zurückzukehren, um die Installation einer App abzuschließen", + "checkingForUpdates": "Nach Aktualisierungen suchen", + "checkingForUpdatesNotifDescription": "Vorübergehende Benachrichtigung, die bei der Suche nach Aktualisierungen angezeigt wird", + "pleaseAllowInstallPerm": "Bitte erlauben Sie Obtainium die Installation von Apps", + "trackOnly": "Nur nachverfolgen", + "errorWithHttpStatusCode": "Fehler {}", + "versionCorrectionDisabled": "Versionskorrektur deaktiviert (Plugin scheint nicht zu funktionieren)", + "unknown": "Unbekannt", + "none": "Keine", + "all": "Alle", + "never": "Nie", + "latestVersionX": "Neueste Version: {}", + "installedVersionX": "Installierte Version: {}", + "lastUpdateCheckX": "Letzte Aktualisierungsprüfung: {}", + "remove": "Entfernen", + "yesMarkUpdated": "Ja, als aktualisiert markieren", + "fdroid": "Offizielles F-Droid-Repo", + "appIdOrName": "App-ID oder Name", + "appId": "App-ID", + "appWithIdOrNameNotFound": "Es wurde keine App mit dieser ID oder diesem Namen gefunden", + "reposHaveMultipleApps": "Repos können mehrere Apps enthalten", + "fdroidThirdPartyRepo": "F-Droid-Drittanbieter-Repo", + "install": "Installieren", + "markInstalled": "Als installiert markieren", + "update": "Aktualisieren", + "markUpdated": "Als aktuell markieren", + "additionalOptions": "Zusätzliche Optionen", + "disableVersionDetection": "Versionserkennung deaktivieren", + "noVersionDetectionExplanation": "Diese Option sollte nur für Apps verwendet werden, bei denen die Versionserkennung nicht korrekt funktioniert.", + "downloadingX": "{} wird heruntergeladen", + "downloadX": "{} herunterladen", + "downloadedX": "{} heruntergeladen", + "releaseAsset": "Release-Anhang", + "downloadNotifDescription": "Fortschrittsanzeige beim Herunterladen einer App", + "noAPKFound": "Keine APK gefunden", + "noVersionDetection": "Keine Versionserkennung", + "categorize": "Kategorisieren", + "categories": "Kategorien", + "category": "Kategorie", + "noCategory": "Keine Kategorie", + "noCategories": "Keine Kategorien", + "deleteCategoriesQuestion": "Kategorien löschen?", + "categoryDeleteWarning": "Alle Apps in gelöschten Kategorien werden auf nicht kategorisiert gesetzt.", + "addCategory": "Kategorie hinzufügen", + "label": "Bezeichnung", + "language": "Sprache", + "copiedToClipboard": "In die Zwischenablage kopiert", + "storagePermissionDenied": "Speicherberechtigung verweigert", + "selectedCategorizeWarning": "Dadurch werden alle bestehenden Kategorieeinstellungen für die ausgewählten Apps ersetzt.", + "filterAPKsByRegEx": "APKs nach regulärem Ausdruck filtern", + "removeFromObtainium": "Aus Obtainium entfernen", + "uninstallFromDevice": "Vom Gerät deinstallieren", + "onlyWorksWithNonVersionDetectApps": "Funktioniert nur bei Apps mit deaktivierter Versionserkennung.", + "releaseDateAsVersion": "Veröffentlichungsdatum als Version verwenden", + "releaseTitleAsVersion": "Versionstitel als Versionsstring verwenden", + "releaseDateAsVersionExplanation": "Diese Option sollte nur für Apps verwendet werden, bei denen die Versionserkennung nicht korrekt funktioniert, aber ein Veröffentlichungsdatum verfügbar ist.", + "changes": "Änderungen", + "releaseDate": "Veröffentlichungsdatum", + "importFromURLsInFile": "URLs aus Datei importieren (z. B. OPML)", + "versionDetectionExplanation": "Abgleich der Versionsnummer mit der vom Betriebssystem erkannten Version", + "versionDetection": "Versionserkennung", + "standardVersionDetection": "Standardversionserkennung", + "groupByCategory": "Nach Kategorie gruppieren", + "autoApkFilterByArch": "Nach Möglichkeit versuchen, APKs nach CPU-Architektur zu filtern", + "autoLinkFilterByArch": "Nach Möglichkeit versuchen, APKs nach CPU-Architektur zu filtern", + "overrideSource": "Quelle überschreiben", + "dontShowAgain": "Nicht noch einmal anzeigen", + "dontShowTrackOnlyWarnings": "Warnung für ‚Nur nachverfolgen‘ nicht anzeigen", + "dontShowAPKOriginWarnings": "Warnung für APK-Herkunft nicht anzeigen", + "moveNonInstalledAppsToBottom": "Nicht installierte Apps ans Ende der App-Ansicht verschieben", + "gitlabPATLabel": "Persönlicher Zugangstoken für GitLab", + "about": "Weitere Informationen", + "requiresCredentialsInSettings": "{}: Benötigt zusätzliche Anmeldedaten (in den Einstellungen)", + "checkOnStart": "Einmalig beim Start auf Aktualisierungen prüfen", + "tryInferAppIdFromCode": "Versuchen, die App-ID aus dem Quellcode zu ermitteln", + "removeOnExternalUninstall": "Extern deinstallierte Apps automatisch entfernen", + "pickHighestVersionCode": "Automatische Auswahl des APK mit höchstem Versionscode", + "checkUpdateOnDetailPage": "Nach Aktualisierungen suchen, wenn eine App-Detailseite geöffnet wird", + "disablePageTransitions": "Animationen für Seitenübergänge deaktivieren", + "reversePageTransitions": "Umgekehrte Animationen für Seitenübergänge", + "minStarCount": "Minimale Anzahl von Sternen", + "addInfoBelow": "Diese Information unten hinzufügen.", + "addInfoInSettings": "Diese Information in den Einstellungen hinzufügen.", + "githubSourceNote": "Die GitHub-Ratenbegrenzung kann mit einem API-Schlüssel umgangen werden.", + "sortByLastLinkSegment": "Nur nach dem letzten Teil des Links sortieren", + "filterReleaseNotesByRegEx": "Versionshinweise nach regulärem Ausdruck\nfiltern", + "customLinkFilterRegex": "Benutzerdefinierter APK-Linkfilter durch regulären Ausdruck (Standard '.apk$')", + "appsPossiblyUpdated": "App-Aktualisierungen wurden versucht", + "appsPossiblyUpdatedNotifDescription": "Benachrichtigt, dass möglicherweise eine oder mehrere Apps im Hintergrund aktualisiert wurden", + "xWasPossiblyUpdatedToY": "{} wurde möglicherweise auf Version {} aktualisiert.", + "enableBackgroundUpdates": "Hintergrundaktualisierungen aktivieren", + "backgroundUpdateReqsExplanation": "Die Hintergrundaktualisierung ist unter Umständen nicht für alle Apps möglich.", + "backgroundUpdateLimitsExplanation": "Der Erfolg einer Hintergrundinstallation kann nur festgestellt werden, wenn Obtainium geöffnet wird.", + "verifyLatestTag": "„Latest“-Tag überprüfen", + "intermediateLinkRegex": "Filter für einen „Zwischen“-Link, der zuerst besucht werden soll", + "filterByLinkText": "Links durch Linktext filtern", + "matchLinksOutsideATags": "Links außerhalb von -Tags anpassen", + "intermediateLinkNotFound": "„Zwischen“-Link nicht gefunden", + "intermediateLink": "„Zwischen“-Link", + "exemptFromBackgroundUpdates": "Von Hintergrundaktualisierungen (falls aktiviert) ausschließen", + "bgUpdatesOnWiFiOnly": "Hintergrundaktualisierungen nur im WLAN ausführen", + "bgUpdatesWhileChargingOnly": "Hintergrundaktualisierungen nur ausführen, während das Gerät geladen wird", + "autoSelectHighestVersionCode": "Automatisch höchste APK-Version auswählen", + "versionExtractionRegEx": "Versionsextraktion per RegEx", + "trimVersionString": "Versionszeichenfolge mit RegEx kürzen", + "matchGroupToUseForX": "Zu verwendende Abgleichsgruppe für\n„{}“", + "matchGroupToUse": "Zu verwendende Gruppe abgleichen", + "highlightTouchTargets": "Weniger offensichtliche Touch-Ziele hervorheben", + "pickExportDir": "Export-Verzeichnis wählen", + "autoExportOnChanges": "Automatischer Export bei Änderung(en)", + "includeSettings": "Einstellungen einbeziehen", + "filterVersionsByRegEx": "Versionen nach regulären Ausdrücken filtern", + "trySelectingSuggestedVersionCode": "Versuchen, den vorgeschlagenen APK-Versionscode auszuwählen", + "dontSortReleasesList": "Releases-Sortierung der API beibehalten", + "reverseSort": "Umgekehrtes Sortieren", + "takeFirstLink": "Ersten Link verwenden", + "skipSort": "Sortieren überspringen", + "debugMenu": "Debug-Menü", + "bgTaskStarted": "Hintergrundaufgabe gestartet – Logs prüfen.", + "runBgCheckNow": "Hintergrundaktualisierungsprüfung jetzt durchführen", + "versionExtractWholePage": "Versionsextraktion per RegEx auf die gesamte Seite anwenden", + "installing": "Installieren", + "skipUpdateNotifications": "Update-Benachrichtigungen überspringen", + "updatesAvailableNotifChannel": "Aktualisierungen verfügbar", + "appsUpdatedNotifChannel": "Apps aktualisiert", + "appsPossiblyUpdatedNotifChannel": "App-Aktualisierungen wurden versucht", + "errorCheckingUpdatesNotifChannel": "Fehler beim Prüfen auf Aktualisierungen", + "appsRemovedNotifChannel": "Apps entfernt", + "downloadingXNotifChannel": "{} herunterladen", + "completeAppInstallationNotifChannel": "App-Installation abschließen", + "checkingForUpdatesNotifChannel": "Nach Aktualisierungen suchen", + "onlyCheckInstalledOrTrackOnlyApps": "Nur mit „Nur nachverfolgen“ markierte und installierte Apps auf Aktualisierungen prüfen", + "supportFixedAPKURL": "Unterstützung von festen APK-URLs", + "selectX": "{} wählen", + "parallelDownloads": "Parallele Downloads erlauben", + "useShizuku": "Shizuku oder Sui zur Installation verwenden", + "shizukuBinderNotFound": "Kompatibler Shizuku-Dienst wurde nicht gefunden", + "shizukuOld": "Veraltete Shizuku-Version (< 11) – bitte aktualisieren Sie sie", + "shizukuOldAndroidWithADB": "Shizuku läuft auf Android < 8.1 mit ADB – aktualisieren Sie die Android-Version oder verwenden Sie stattdessen Sui", + "shizukuPretendToBeGooglePlay": "(Mittels Shizuku) Google Play als Installationsquelle registrieren", + "useSystemFont": "Systemschriftart verwenden", + "useVersionCodeAsOSVersion": "Versionscode (versionCode) als vom Betriebssystem erkannte Version verwenden", + "requestHeader": "Kopfzeile („Header“) anfordern", + "useLatestAssetDateAsReleaseDate": "Letzten Upload eines Release-Anhangs als Veröffentlichungsdatum verwenden", + "defaultPseudoVersioningMethod": "Standardmäßiges Verfahren zur Pseudo-Versionierung", + "partialAPKHash": "Partieller APK-Hash", + "APKLinkHash": "APK-Link-Hash", + "directAPKLink": "Direkter APK-Link", + "pseudoVersionInUse": "Es werden Pseudoversionen verwendet", + "installed": "Installiert", + "latest": "Neueste Version", + "invertRegEx": "Regulären Ausdruck invertieren", + "note": "Hinweis", + "selfHostedNote": "Das „{}“-Drop-down-Menü kann verwendet werden, um selbst gehostete/angepasste Instanzen einer beliebigen Quelle zu erreichen.", + "badDownload": "Die APK konnte nicht gelesen werden (inkompatibler oder unfertiger Download)", + "beforeNewInstallsShareToAppVerifier": "Neue Apps mit AppVerifier teilen (falls verfügbar)", + "appVerifierInstructionToast": "Teile die Daten mit AppVerifier und kehre im Anschluss hierher zurück.", + "wiki": "Hilfe/Wiki", + "crowdsourcedConfigsLabel": "Komplexe Appkonfigurationen (Verwendung auf eigene Gefahr)", + "crowdsourcedConfigsShort": "Komplexe Appkonfigurationen", + "allowInsecure": "Unsichere HTTP-Anfragen zulassen", + "stayOneVersionBehind": "Eine Version hinter der neuesten Version bleiben", + "useFirstApkOfVersion": "Automatische Auswahl der ersten von mehreren APKs", + "refreshBeforeDownload": "App-Details vor dem Download aktualisieren", + "tencentAppStore": "Tencent App Store", + "coolApk": "CoolApk", + "vivoAppStore": "vivo App Store (China)", + "name": "Name", + "smartname": "Name (Smart)", + "sortMethod": "Sortierverfahren", + "welcome": "Willkommen", + "documentationLinksNote": "Die unten verlinkte GitHub-Seite von Obtainium enthält Links zu Videos, Artikeln, Diskussionen und anderen Ressourcen, die Ihnen helfen werden, die Verwendung der App zu verstehen.", + "batteryOptimizationNote": "Beachten Sie, dass Downloads im Hintergrund möglicherweise zuverlässiger funktionieren, wenn Sie die Batterieoptimierung des Betriebssystems für Obtainium deaktivieren.", + "fileDeletionError": "Die Datei konnte nicht gelöscht werden (versuchen Sie, sie manuell zu löschen und versuchen Sie es dann erneut): \"{}\"", + "foregroundService": "Obtainium-Vordergrunddienst", + "foregroundServiceExplanation": "Aktualisierungsprüfung im Vordergrund durchführen (zuverlässiger, verbraucht mehr Strom)", + "fgServiceNotice": "Diese Benachrichtigung ist für die Prüfung von Updates im Hintergrund erforderlich (sie kann in den Betriebssystemeinstellungen ausgeblendet werden)", + "excludeSecrets": "Geheimnisse ausschließen", + "GHReqPrefix": "sky22333/hubproxy'-Instanz für GitHub-Anfragen", + "includeZips": "ZIP-Dateien einbeziehen", + "zippedApkFilterRegEx": "APKs in ZIP filtern", + "removeAppQuestion": { + "one": "App entfernen?", + "other": "Apps entfernen?" + }, + "tooManyRequestsTryAgainInMinutes": { + "one": "Zu viele Anfragen (Rate begrenzt) – versuchen Sie es in {} Minute erneut", + "other": "Zu viele Anfragen (Rate begrenzt) – versuchen Sie es in {} Minuten erneut" + }, + "bgUpdateGotErrorRetryInMinutes": { + "one": "Bei der Aktualisierungsprüfung im Hintergrund wurde ein {} festgestellt, eine erneute Prüfung wird in {} Minute geplant", + "other": "Bei der Aktualisierungsprüfung im Hintergrund wurde ein {} festgestellt, eine erneute Prüfung wird in {} Minuten geplant" + }, + "bgCheckFoundUpdatesWillNotifyIfNeeded": { + "one": "Die Aktualisierungsprüfung fand {} Aktualisierung – benachrichtigt, falls erforderlich", + "other": "Die Aktualisierungsprüfung fand {} Aktualisierungen – benachrichtigt, falls erforderlich" + }, + "apps": { + "one": "{} App", + "other": "{} Apps" + }, + "url": { + "one": "{} URL", + "other": "{} URLs" + }, + "minute": { + "one": "{} Minute", + "other": "{} Minuten" + }, + "hour": { + "one": "{} Stunde", + "other": "{} Stunden" + }, + "day": { + "one": "{} Tag", + "other": "{} Tage" + }, + "clearedNLogsBeforeXAfterY": { + "one": "{n} Log gelöscht (vorher = {before}, nachher = {after})", + "other": "{n} Logs gelöscht (vorher = {before}, nachher = {after})" + }, + "xAndNMoreUpdatesAvailable": { + "one": "{} und 1 weitere App können aktualisiert werden.", + "other": "{} und {} weitere Apps können aktualisiert werden." + }, + "xAndNMoreUpdatesInstalled": { + "one": "{} und 1 weitere App wurden aktualisiert.", + "other": "{} und {} weitere Apps wurden aktualisiert." + }, + "xAndNMoreUpdatesFailed": { + "one": "Die Aktualisierung von {} und 1 weiteren App ist fehlgeschlagen.", + "other": "Die Aktualisierung von {} und {} weiteren Apps ist fehlgeschlagen." + }, + "xAndNMoreUpdatesPossiblyInstalled": { + "one": "{} und 1 weitere App wurden möglicherweise aktualisiert.", + "other": "{} und {} weitere Apps wurden möglicherweise aktualisiert." + }, + "apk": { + "one": "{} APK", + "other": "{} APKs" + } +} diff --git a/assets/translations/en-EO.json b/assets/translations/en-EO.json new file mode 100644 index 0000000..db5dc75 --- /dev/null +++ b/assets/translations/en-EO.json @@ -0,0 +1,402 @@ +{ + "invalidURLForSource": "Nevalida apo-URL {}", + "noReleaseFound": "Ne eblas trovi taŭgan eldonon", + "noVersionFound": "Ne eblas determini la eldonversion", + "urlMatchesNoSource": "La URL ne konformas al konata fonto", + "cantInstallOlderVersion": "Ne eblas instali malnovan version de la Apo", + "appIdMismatch": "La identigilo de la elŝutita pakaĵo ne konformas al la identigilo de la ekzistanta apo", + "functionNotImplemented": "Tiu klaso ne fasonadas tiun funkcion", + "placeholder": "Rezervilo", + "someErrors": "Eraroj okazis", + "unexpectedError": "Neatendita eraro", + "ok": "Okej", + "and": "kaj", + "githubPATLabel": "Github persona atingoĵetono (pliigas la kvantolimon)", + "includePrereleases": "Inkluzivi la pra-eldonojn", + "fallbackToOlderReleases": "Reveno al malnovaj versioj", + "filterReleaseTitlesByRegEx": "Filtri la eldontitoljn per regula esprimo", + "invalidRegEx": "Nevalida regula esprimo", + "noDescription": "Neniu priskribo", + "cancel": "Nuligi", + "continue": "Daŭrigi", + "requiredInBrackets": "(Neprigata)", + "dropdownNoOptsError": "ERARO: LA MALVOLVANTA LISTO DEVAS HAVI ALMENAŬ UNU OPCION", + "colour": "Koloro", + "standard": "Norma", + "custom": "Agordita", + "useMaterialYou": "Uzi Material You", + "githubStarredRepos": "Stelaj GitHub-deponejoj", + "uname": "Uzantnomo", + "wrongArgNum": "Malĝusta nombro da provizitaj argumentoj", + "xIsTrackOnly": "{} estas nur sekvitaj", + "source": "Fonto", + "app": "Apo", + "appsFromSourceAreTrackOnly": "Apoj el tiu fonto estas 'Nur sekvitaj'.", + "youPickedTrackOnly": "Vi selektis la opcion 'Nur sekvitaj'.", + "trackOnlyAppDescription": "La apo estas sekvota por ĝisdatigoj, sed Obtainium ne povos elŝuti aŭ instali ĝin.", + "cancelled": "Nuligita", + "appAlreadyAdded": "Jam aldonita apo", + "alreadyUpToDateQuestion": "Ĉu la apo estas ĝisdata?", + "addApp": "Aldoni apon", + "appSourceURL": "URL de la apofonto", + "error": "Eraro", + "add": "Aldoni", + "searchSomeSourcesLabel": "Serĉi (nur kelkaj fontoj)", + "search": "Serĉi", + "additionalOptsFor": "Kromaj opcioj por {}", + "supportedSources": "Taskiĝata fontoj", + "trackOnlyInBrackets": "(Nur sekvita)", + "searchableInBrackets": "(Serĉebla)", + "appsString": "Apoj", + "noApps": "Neniu apo", + "noAppsForFilter": "Neniu apo por filtri", + "byX": "Laŭ {}", + "percentProgress": "Progreso: {}%", + "pleaseWait": "Bonvolu atendi", + "updateAvailable": "Havebla ĝisdatigo", + "notInstalled": "Neinstalita", + "pseudoVersion": "Pseŭdoversio", + "selectAll": "Selekti ĉion", + "deselectX": "Malselekti {}", + "xWillBeRemovedButRemainInstalled": "{} estas farigota de Obtainium sed restos instalata en la disponaĵo.", + "removeSelectedAppsQuestion": "Farigi la selektitajn apojn?", + "removeSelectedApps": "Farigi la selektitajn apojn", + "updateX": "Ĝisdatigi {}", + "installX": "Instali {}", + "markXTrackOnlyAsUpdated": "Marki {}\n(Nur sekvita)\nkiel ĝisdata", + "changeX": "Ŝanĝi {}", + "installUpdateApps": "Instali/ĝisdatigi apojn", + "installUpdateSelectedApps": "Instali/ĝisdatigi la selektitajn apojn", + "markXSelectedAppsAsUpdated": "Marki la {} selektitajn apojn kiel ĝisdataj?", + "no": "Ne", + "yes": "Jes", + "markSelectedAppsUpdated": "Marki la selektitajn apojn kiel ĝisdataj", + "pinToTop": "Alpingli supre", + "unpinFromTop": "Malalpingli el supro", + "resetInstallStatusForSelectedAppsQuestion": "Rekomenci la instaladostaton de la selektitaj apoj?", + "installStatusOfXWillBeResetExplanation": "Instaladostato de ĉiuj selektitaj apoj estas rekomencota.\n\nTio povas utili kiam la versio de la montrata application en Obtainium estas malĝusta kaŭze de malsukcesaj ĝidatigoj aŭ aliaj problemoj.", + "customLinkMessage": "Tiuj ligiloj funkcias en disponaĵoj kun Obtainium instalita", + "shareAppConfigLinks": "Diskonigi la apo-agordojn kiel HTML ligilo", + "shareSelectedAppURLs": "Diskonigi la selektitajn apo-URLjn", + "resetInstallStatus": "Rekomenci la instaladostaton de la apoj", + "more": "Pli", + "removeOutdatedFilter": "Forigi la filtron de malmodernaj apoj", + "showOutdatedOnly": "Nur montri malmodernajn apojn", + "filter": "Filtro", + "filterApps": "Filtri la apojn", + "appName": "Aponomo", + "author": "Aŭtoro", + "upToDateApps": "Ĝisdataj apoj", + "nonInstalledApps": "Neinstalita apoj", + "importExport": "Importi/Eksporti", + "settings": "Agordoj", + "exportedTo": "Eksportita en {}", + "obtainiumExport": "Eksporti Obtainium-n", + "invalidInput": "Nevalida enigo", + "importedX": "Importita {}", + "obtainiumImport": "Importi Obtainium-n", + "importFromURLList": "Eksporti el URL-listo", + "searchQuery": "Informmendo de serĉo", + "appURLList": "Listo de URLj de la apo", + "line": "Horizontalo", + "searchX": "Serĉi {}", + "noResults": "Neniu rezulto", + "importX": "Importi {}", + "importedAppsIdDisclaimer": "La importitaj apoj povas montriĝi malĝuste kiel \"Neinstalitaj\".\nPor solvi tion, reinstalu ilin per Obtainium.\nTiu ne afekcios la apodatumoj.\n\nAkefcias nur la URL-ajn lak triajn importmetodojn.", + "importErrors": "Eraroj de importado", + "importedXOfYApps": "{} apoj el {} importitaj.", + "followingURLsHadErrors": "La sekvantaj URLj havis erarojn:", + "selectURL": "Selekti URLn", + "selectURLs": "Selekti URLjn", + "pick": "Elekti", + "theme": "Temo", + "dark": "Malhela", + "light": "Hela", + "followSystem": "Konformi al sistemo", + "followSystemThemeExplanation": "Konformi al sistemtemo nur eblas kun triaj aplikaĵoj.", + "useBlackTheme": "Uzi puran nigran temon", + "appSortBy": "Klasi apojn laŭ", + "authorName": "Aŭtoro/Nomo", + "nameAuthor": "Nomo/Aŭtoro", + "asAdded": "Aldondato", + "appSortOrder": "Ordo de la apoklasifiko", + "ascending": "Kreskanta", + "descending": "Malkreskanta", + "bgUpdateCheckInterval": "Serĉo-intertempo de fonaj ĝisdatigoj", + "neverManualOnly": "Neniam - Nur Malaŭtomata", + "appearance": "Aspekto", + "showWebInAppView": "Montri la fonta retpaĝo en la langeto 'Apoj'", + "pinUpdates": "Alpingli ĝisatigojn en la supro de la langeto 'Apoj'", + "updates": "Ĝisdatigoj", + "sourceSpecific": "Fontspecifa", + "appSource": "Apofonto", + "noLogs": "Neniu protokolo", + "appLogs": "Apoprotokoloj", + "close": "Fermi", + "share": "Diskonigi", + "appNotFound": "Netrovebla apo", + "obtainiumExportHyphenatedLowercase": "eksporto-obtainium", + "pickAnAPK": "Selektu APKn", + "appHasMoreThanOnePackage": "{} havas pli ol unu pakaĵon:", + "deviceSupportsXArch": "Via disponaĵo taskiĝas la CPU-arkitekturon {}.", + "deviceSupportsFollowingArchs": "Via disponaĵo taskiĝas la sekvantajn CPU-arkitekturojn:", + "warning": "Avertu", + "sourceIsXButPackageFromYPrompt": "La apofonto estas '{}' sed la pakaĵo de ĝisdatigo devenas de '{}'. Daŭrigi?", + "updatesAvailable": "Haveblaj ĝisdatigoj", + "updatesAvailableNotifDescription": "Sciigas al la uzanto, ke ĝisdatigoj haveblas por unu aŭ pluraj apoj sekvitaj fare de Obtainium.", + "noNewUpdates": "Neniu nova ĝisdatigo.", + "xHasAnUpdate": "{} havas ĝisdatigon.", + "appsUpdated": "Ĝisdataj apoj", + "appsNotUpdated": "Malsukcesis ĝisdatigi aplikaĵojn", + "appsUpdatedNotifDescription": "Sciigas al la uzanto, ke ĝisdatigoj de unu aŭ pluraj apoj estas instalitaj fone.", + "xWasUpdatedToY": "{} estas ĝidatigita en {}.", + "xWasNotUpdatedToY": "Malsukcesas ĝisdatigi de {} en {}.", + "errorCheckingUpdates": "Eraro serĉante ĝisdatigojn", + "errorCheckingUpdatesNotifDescription": "Sciigas al la uzanto, kiam la serĉo de fonaj ĝisdatigoj malsukcesas.", + "appsRemoved": "Forigitaj Apoj", + "appsRemovedNotifDescription": "Sciigas al la uzanto, ke unu aŭ pluraj apoj estas forigitaj kaŭze de eraroj dum ilia ŝarĝado.", + "xWasRemovedDueToErrorY": "{} estas forigita kaŭze de tiu eraro: {}", + "completeAppInstallation": "Kompleta instalado de la apo", + "obtainiumMustBeOpenToInstallApps": "Obtainium devas esti malfermita por instali apojn", + "completeAppInstallationNotifDescription": "Petas la uzanton reiri en Obtainium por fini la instaladon de apo", + "checkingForUpdates": "Serĉante ĝisdatigojn", + "checkingForUpdatesNotifDescription": "Dumtempa sciigo kiu aperas dum la serĉo de ĝisdatigoj", + "pleaseAllowInstallPerm": "Bonvolu permesi al Obtainium instali apojn", + "trackOnly": "Nur sekvita", + "errorWithHttpStatusCode": "Eraro {}", + "versionCorrectionDisabled": "Versiokorekto malaktivigita (ŝajnas, ke la kromaĵo ne funkcias)", + "unknown": "Nekonata", + "none": "Nenio", + "all": "All", + "never": "Neniam", + "latestVersionX": "Lasta versio: {}", + "installedVersionX": "Instalita versio: {}", + "lastUpdateCheckX": "Lasta serĉo de ĝisdatigoj: {}", + "remove": "Forigi", + "yesMarkUpdated": "Jes, marki kiel ĝisdata", + "fdroid": "Oficiala F-Droid", + "appIdOrName": "Identigilo aŭ nomo de la apo", + "appId": "Identigilo de la apo", + "appWithIdOrNameNotFound": "Neniu apo estas trovita kun tiu identigilo aŭ nomo", + "reposHaveMultipleApps": "Deponejoj povas enhavi plurajn apojn", + "fdroidThirdPartyRepo": "Tria deponejo de F-Droid", + "install": "Instali", + "markInstalled": "Marki kiel instalita", + "update": "Ĝisdatigi", + "markUpdated": "Marki kiel ĝisdata", + "additionalOptions": "Kromaj opcioj", + "disableVersionDetection": "Malaktivigi la versiodetekto", + "noVersionDetectionExplanation": "Tiu opcio devas esti uzata nur por apoj, kie la versiodetekto ne funkcias ĝuste.", + "downloadingX": "Elŝutante {}", + "downloadX": "Elŝuti {}", + "downloadedX": "Elŝutita {}", + "releaseAsset": "Aktiva versio", + "downloadNotifDescription": "Sciigas al la uzanto pri la progreso de apo-elŝuton", + "noAPKFound": "Neniu trovita APK", + "noVersionDetection": "Neniu versiodetekto", + "categorize": "Kategorii", + "categories": "Kategorioj", + "category": "Kategorio", + "noCategory": "Neniu kategorio", + "noCategories": "Neniuj kategorioj", + "deleteCategoriesQuestion": "Forigi la kategoriojn?", + "categoryDeleteWarning": "Ĉiuj apoj el forigitaj kategorioj iĝos nekategoriitaj.", + "addCategory": "Aldoni kategorion", + "label": "Etikedo", + "language": "Lingvo", + "copiedToClipboard": "Kopiita en la tondujo", + "storagePermissionDenied": "Permeso de stoko malkonsentita", + "selectedCategorizeWarning": "Tio substituos ĉiujn difinitajn kategoriojn de la selektitaj apoj.", + "filterAPKsByRegEx": "Filtri APKj per regula esprimo", + "removeFromObtainium": "Forigi el Obtainium", + "uninstallFromDevice": "Malinstali el la disponaĵo", + "onlyWorksWithNonVersionDetectApps": "Funkcias nur por apoj kun malaktiva versiodetekto.", + "releaseDateAsVersion": "Uzi eldondato kiel versioĉeno", + "releaseTitleAsVersion": "Use release title as version string", + "releaseDateAsVersionExplanation": "Tiu opcio devas esti uzata nur por apoj, por kiu la versiodetekto ne funkcias ĝuste, sed eldondato estas havebla.", + "changes": "Modifoj", + "releaseDate": "Eldondato", + "importFromURLsInFile": "Importi el URLj en dosiero (kiel OPML)", + "versionDetectionExplanation": "Akordigi la versioĉeno laŭ la versio detektita fare de la operaciumo", + "versionDetection": "Versiodetekto", + "standardVersionDetection": "Norma versiodetekto", + "groupByCategory": "Grupigi per kategorio", + "autoApkFilterByArch": "Provi filtri APKj per CPU-arkitekturo se ebla", + "autoLinkFilterByArch": "Attempt to filter links by CPU architecture if possible", + "overrideSource": "Substitui la fonton", + "dontShowAgain": "Ne plu montri", + "dontShowTrackOnlyWarnings": "Ne plu montri 'Nur sekvita' avertojn", + "dontShowAPKOriginWarnings": "Ne plu montri avertojn pri APK-origino", + "moveNonInstalledAppsToBottom": "Movi neinstalatajn apojn al malsupro de la langeto Apoj", + "gitlabPATLabel": "GitLab persona atingoĵetono", + "about": "Pri", + "requiresCredentialsInSettings": "{} bezonas kromajn informojn (en Agordoj)", + "checkOnStart": "Serĉi ĝisdatigojn starte", + "tryInferAppIdFromCode": "Provi dedukti la identigilon de la apo el la fontkodo", + "removeOnExternalUninstall": "Aŭtomate forigi ekstere malinstalitajn apojn", + "pickHighestVersionCode": "Aŭtomate selekti la plej ĵusan version el APK-kodo", + "checkUpdateOnDetailPage": "Serĉi ĝisdatigojn dum la malfermo de la detala apopaĝo", + "disablePageTransitions": "Malaktivigi la animaciojn de paĝotransiro", + "reversePageTransitions": "Inversigi la animaciojn de paĝotransiro", + "minStarCount": "Minimuma nombro da steloj", + "addInfoBelow": "Aldonu ĉi tiu informo ĉi-suba.", + "addInfoInSettings": "Aldonu tiu informo en la agordoj.", + "githubSourceNote": "La kvantolimo de GitHub povas esti evitata danke al API-ŝlosilo.", + "sortByLastLinkSegment": "Klasi laŭ la lasta segmento de la ligilo", + "filterReleaseNotesByRegEx": "Filtri versionotojn per regula esprimo", + "customLinkFilterRegex": "Filtro de APK-ligilo agordita per regula esprimo (defaŭlte '.apk$')", + "appsPossiblyUpdated": "Provitaj apoĝisdatigoj", + "appsPossiblyUpdatedNotifDescription": "Sciigas al la uzanto, ke ĝisdatigoj de unu aŭ pluraj apoj eble estas aplikitaj fone", + "xWasPossiblyUpdatedToY": "{} povas esti ĝisdata kiel {}.", + "enableBackgroundUpdates": "Aktivigi fonajn ĝisdatigojn", + "backgroundUpdateReqsExplanation": "Fonaj ĝisdatigoj ne eblas por ĉiuj apoj.", + "backgroundUpdateLimitsExplanation": "La sukceso de fona instalado povas esti nur determinata dum la malfermo de Obtainium.", + "verifyLatestTag": "Inspekti la etikedon 'latest'", + "intermediateLinkRegex": "Filtri por 'pera' vizitota ligilo", + "filterByLinkText": "Filtri ligilojn laŭ ligiloteksto", + "matchLinksOutsideATags": "Match links outside tags", + "intermediateLinkNotFound": "Netrovebla pera ligilo", + "intermediateLink": "Pera ligilo", + "exemptFromBackgroundUpdates": "Escepti el la fonaj ĝisdatigoj (se aktiva)", + "bgUpdatesOnWiFiOnly": "Malaktivigi fonajn ĝisdatigojn se sen vifio", + "bgUpdatesWhileChargingOnly": "Disable background updates when not charging", + "autoSelectHighestVersionCode": "Aŭtomate selekti la plej ĵusan version de la APK-kodo", + "versionExtractionRegEx": "Ekstrakti la versioĉenon per regula esprimo", + "trimVersionString": "Mallongigi la versioĉenon per regula esprimo", + "matchGroupToUseForX": "Konformecogrupo uzota por \"{}\"", + "matchGroupToUse": "Grupo de konformeco uzota por la eltiraĵo de la versio per regula esprimo", + "highlightTouchTargets": "Emfazi malpi evidentajn klavojn", + "pickExportDir": "Selekti la dosierujon de eksporto", + "autoExportOnChanges": "Aŭtomate eksporti dum modifoj", + "includeSettings": "Inkluzivi la agordojn", + "filterVersionsByRegEx": "Filtri versiojn per regula esprimo", + "trySelectingSuggestedVersionCode": "Provi selekti la sugestitan version fare de la APK-kodo", + "dontSortReleasesList": "Konservi la ordo de la API-versio", + "reverseSort": "Inversigi klasifikon", + "takeFirstLink": "Uzi la unuan ligilon", + "skipSort": "Salti la klasifikon", + "debugMenu": "Menu de eraroserĉado", + "bgTaskStarted": "Fona tasko startita - inspektu la protokolojn.", + "runBgCheckNow": "Ruli la serĉo de fonaj ĝisdatigoj nun", + "versionExtractWholePage": "Apliki eltiraĵon de la versioĉeno per regula esprimo al la tuta paĝo", + "installing": "Instalante", + "skipUpdateNotifications": "Salti la sciigojn de ĝisdatigo", + "updatesAvailableNotifChannel": "Haveblaj ĝisdatigoj", + "appsUpdatedNotifChannel": "Ĝisdataj aplikaĵoj", + "appsPossiblyUpdatedNotifChannel": "Provitaj apoĝisdatigoj", + "errorCheckingUpdatesNotifChannel": "Eraro serĉante ĝisdatigojn", + "appsRemovedNotifChannel": "Forigitaj aplikaĵoj", + "downloadingXNotifChannel": "Elŝutante {}", + "completeAppInstallationNotifChannel": "Kompleta apo instalado", + "checkingForUpdatesNotifChannel": "Serĉante ĝisdatigojn", + "onlyCheckInstalledOrTrackOnlyApps": "Nur serĉi la ĝisdatigojn de instalitaj kaj 'nur sekvitaj' apoj", + "supportFixedAPKURL": "Taskiĝo de la fiksaj APK URLj", + "selectX": "Selekti {}", + "parallelDownloads": "Permesi dumajn elŝutojn", + "useShizuku": "Uzi Shizuku aŭ Sui por instali", + "shizukuBinderNotFound": "La servo Shizuku estas netrovebla", + "shizukuOld": "Malnova versio de Shizuku (<11) - bonvolu ĝisdatigi ĝin", + "shizukuOldAndroidWithADB": "Shizuku funkcias en Android < 8.1 kun ADB - bonvolu ĝisdatigi Android aŭ uzu Sui anstataŭe", + "shizukuPretendToBeGooglePlay": "Determini Google Play kiel instalfonto (se Shizuku estas uzata)", + "useSystemFont": "Uzi la sistema tiparo", + "useVersionCodeAsOSVersion": "Uzi versiokodo de la apo kiel versio detektita fare de la operaciumo", + "requestHeader": "Titolo de la informmendo", + "useLatestAssetDateAsReleaseDate": "Uzi la lastan publikigitan elementon kiel eldondato", + "defaultPseudoVersioningMethod": "Defaŭlta metodo de fikcia versio", + "partialAPKHash": "Parta APKa haketo", + "APKLinkHash": "Haketo de la APKa ligilo", + "directAPKLink": "Rekta APKa ligilo", + "pseudoVersionInUse": "Pseŭdoversio estas uzata", + "installed": "Instalita", + "latest": "Lasta versio", + "invertRegEx": "Inversigi la regula esprimo", + "note": "Noto", + "selfHostedNote": "La malvolvanta listo \"{}\" povas esti uzata por aliri al memgastigataj/agordata instancoj el ajna fonto.", + "badDownload": "La APK ne povis esti analizita (neakordigebla aŭ nekompleta elŝuto)", + "beforeNewInstallsShareToAppVerifier": "Diskonigi novajn aplikaĵojn kun AppVerifier (se havebla)", + "appVerifierInstructionToast": "Diskonigu kun AppVerifier, poste revenu ĉi tie kiam preta.", + "wiki": "Helpo/Vikio", + "crowdsourcedConfigsLabel": "Komunumaj apo-agordoj (uzu kun singardo)", + "crowdsourcedConfigsShort": "Crowdsourced App Configurations", + "allowInsecure": "Allow insecure HTTP requests", + "stayOneVersionBehind": "Stay one version behind latest", + "useFirstApkOfVersion": "Auto-select first of multiple APKs", + "refreshBeforeDownload": "Refresh app details before download", + "tencentAppStore": "Tencent App Store", + "coolApk": "CoolApk", + "vivoAppStore": "vivo App Store (CN)", + "name": "Name", + "smartname": "Name (Smart)", + "sortMethod": "Sort Method", + "welcome": "Welcome", + "documentationLinksNote": "The Obtainium GitHub page linked below contains links to videos, articles, discussions, and other resources that will help you understand how to use the app.", + "batteryOptimizationNote": "Note that background downloads may work more reliably if you disable OS battery optimizations for Obtainium.", + "fileDeletionError": "Failed to delete file (try deleting it manually then try again): \"{}\"", + "foregroundService": "Obtainium foreground service", + "foregroundServiceExplanation": "Use a foreground service for update checking (more reliable, consumes more power)", + "fgServiceNotice": "This notification is required for background update checking (it can be hidden in the OS settings)", + "excludeSecrets": "Exclude secrets", + "GHReqPrefix": "'sky22333/hubproxy' instance for GitHub requests", + "includeZips": "Include ZIP files", + "zippedApkFilterRegEx": "Filter APKs inside ZIP", + "removeAppQuestion": { + "one": "Forigi la aplikaĵon?", + "other": "Forigi la aplikaĵojn?" + }, + "tooManyRequestsTryAgainInMinutes": { + "one": "Tro da informmendoj (limigita kvanto) - reprovu en {} minuto", + "other": "Tro da informmendoj (limigita kvanto) - reprovu en {} minutoj" + }, + "bgUpdateGotErrorRetryInMinutes": { + "one": "La serĉo de fonaj ĝisdatigoj renkontis al {}, nova programota provo en {} minuto", + "other": "La serĉo de fonaj ĝisdatigoj renkontis al {}, nova programota provo en {} minutoj" + }, + "bgCheckFoundUpdatesWillNotifyIfNeeded": { + "one": "La serĉo de fonaj ĝisdatigoj trovis {} ĝisdatigon - la uzanto estas sciigota se necesa", + "other": "La serĉo de fonaj ĝisdatigoj trovis {} ĝisdatigojn - la uzanto estas sciigota se necesa" + }, + "apps": { + "one": "{} Apo", + "other": "{} Apoj" + }, + "url": { + "one": "{} URL", + "other": "{} URLj" + }, + "minute": { + "one": "{} minuto", + "other": "{} minutoj" + }, + "hour": { + "one": "{} horo", + "other": "{} horoj" + }, + "day": { + "one": "{} tago", + "other": "{} tagoj" + }, + "clearedNLogsBeforeXAfterY": { + "one": "Purigis {n} protokolon (antaŭe = {before}, malantaŭe = {after})", + "other": "Purigis {n} protokolojn (antaŭe = {before}, malantaŭe = {after})" + }, + "xAndNMoreUpdatesAvailable": { + "one": "{} kaj 1 alia apo havas ĝisdatigojn.", + "other": "{} kaj {} aliaj apoj havas ĝisdatigojn." + }, + "xAndNMoreUpdatesInstalled": { + "one": "{} kaj 1 alia apo ĝisdatiĝis.", + "other": "{} kaj {} aliaj apoj ĝisdatiĝis." + }, + "xAndNMoreUpdatesFailed": { + "one": "Ne eblas ĝisdatigi {} kaj 1 alian apon.", + "other": "Ne eblas ĝisdatigi {} et {} aliajn apojn." + }, + "xAndNMoreUpdatesPossiblyInstalled": { + "one": "{} kaj 1 alia apo eble ĝisdatiĝis.", + "other": "{} kaj {} aliaj apoj eble ĝisdatiĝis." + }, + "apk": { + "one": "{} APK", + "other": "{} APKj" + } +} diff --git a/assets/translations/en.json b/assets/translations/en.json new file mode 100644 index 0000000..1bbcb76 --- /dev/null +++ b/assets/translations/en.json @@ -0,0 +1,402 @@ +{ + "invalidURLForSource": "Not a valid {} app URL", + "noReleaseFound": "Could not find a suitable release", + "noVersionFound": "Could not determine release version", + "urlMatchesNoSource": "URL does not match a known source", + "cantInstallOlderVersion": "Cannot install an older version of an app", + "appIdMismatch": "Downloaded package ID does not match existing app ID", + "functionNotImplemented": "This class has not implemented this function", + "placeholder": "Placeholder", + "someErrors": "Some errors occurred", + "unexpectedError": "Unexpected error", + "ok": "Okay", + "and": "and", + "githubPATLabel": "GitHub personal access token (increases rate limit)", + "includePrereleases": "Include prereleases", + "fallbackToOlderReleases": "Fallback to older releases", + "filterReleaseTitlesByRegEx": "Filter release titles by regular expression", + "invalidRegEx": "Invalid regular expression", + "noDescription": "No description", + "cancel": "Cancel", + "continue": "Continue", + "requiredInBrackets": "(required)", + "dropdownNoOptsError": "ERROR: DROPDOWN MUST HAVE AT LEAST ONE OPT", + "colour": "Colour", + "standard": "Standard", + "custom": "Custom", + "useMaterialYou": "Use Material You", + "githubStarredRepos": "GitHub starred repositories", + "uname": "Username", + "wrongArgNum": "Wrong number of arguments provided", + "xIsTrackOnly": "{} is track-only", + "source": "Source", + "app": "App", + "appsFromSourceAreTrackOnly": "Apps from this source are 'track-only'.", + "youPickedTrackOnly": "You have selected the 'track-only' option.", + "trackOnlyAppDescription": "The app will be tracked for updates, but Obtainium will not be able to download or install it.", + "cancelled": "Cancelled", + "appAlreadyAdded": "App already added", + "alreadyUpToDateQuestion": "App already up to date?", + "addApp": "Add app", + "appSourceURL": "App source URL", + "error": "Error", + "add": "Add", + "searchSomeSourcesLabel": "Search (some sources only)", + "search": "Search", + "additionalOptsFor": "Additional options for {}", + "supportedSources": "Supported sources", + "trackOnlyInBrackets": "(track-only)", + "searchableInBrackets": "(searchable)", + "appsString": "Apps", + "noApps": "No apps", + "noAppsForFilter": "No apps for filter", + "byX": "By {}", + "percentProgress": "Progress: {}%", + "pleaseWait": "Please wait", + "updateAvailable": "Update available", + "notInstalled": "Not installed", + "pseudoVersion": "pseudo-version", + "selectAll": "Select all", + "deselectX": "Deselect {}", + "xWillBeRemovedButRemainInstalled": "{} will be removed from Obtainium but remain installed on device.", + "removeSelectedAppsQuestion": "Remove selected apps?", + "removeSelectedApps": "Remove selected apps", + "updateX": "Update {}", + "installX": "Install {}", + "markXTrackOnlyAsUpdated": "Mark {}\n(track-only)\nas updated", + "changeX": "Change {}", + "installUpdateApps": "Install/update apps", + "installUpdateSelectedApps": "Install/update selected apps", + "markXSelectedAppsAsUpdated": "Mark {} selected apps as updated?", + "no": "No", + "yes": "Yes", + "markSelectedAppsUpdated": "Mark selected apps as updated", + "pinToTop": "Pin to top", + "unpinFromTop": "Unpin from top", + "resetInstallStatusForSelectedAppsQuestion": "Reset install status for selected apps?", + "installStatusOfXWillBeResetExplanation": "The install status of any selected apps will be reset.\n\nThis can help when the app version shown in Obtainium is incorrect due to failed updates or other issues.", + "customLinkMessage": "These links work on devices with Obtainium installed", + "shareAppConfigLinks": "Share app configuration as HTML link", + "shareSelectedAppURLs": "Share selected app URLs", + "resetInstallStatus": "Reset install status", + "more": "More", + "removeOutdatedFilter": "Remove out-of-date app filter", + "showOutdatedOnly": "Show out-of-date apps only", + "filter": "Filter", + "filterApps": "Filter apps", + "appName": "App name", + "author": "Author", + "upToDateApps": "Up to date apps", + "nonInstalledApps": "Non-installed apps", + "importExport": "Import/export", + "settings": "Settings", + "exportedTo": "Exported to {}", + "obtainiumExport": "Obtainium export", + "invalidInput": "Invalid input", + "importedX": "Imported {}", + "obtainiumImport": "Obtainium import", + "importFromURLList": "Import from URL list", + "searchQuery": "Search query", + "appURLList": "App URL list", + "line": "Line", + "searchX": "Search {}", + "noResults": "No results found", + "importX": "Import {}", + "importedAppsIdDisclaimer": "Imported apps may incorrectly show as \"not installed\".\nTo fix this, re-install them through Obtainium.\nThis should not affect app data.\n\nOnly affects URL and third-party import methods.", + "importErrors": "Import errors", + "importedXOfYApps": "{} of {} apps imported.", + "followingURLsHadErrors": "The following URLs had errors:", + "selectURL": "Select URL", + "selectURLs": "Select URLs", + "pick": "Pick", + "theme": "Theme", + "dark": "Dark", + "light": "Light", + "followSystem": "Follow system", + "followSystemThemeExplanation": "Following system theme is possible only by using third-party applications", + "useBlackTheme": "Use pure black dark theme", + "appSortBy": "App sort by", + "authorName": "Author/name", + "nameAuthor": "Name/author", + "asAdded": "As added", + "appSortOrder": "App sort order", + "ascending": "Ascending", + "descending": "Descending", + "bgUpdateCheckInterval": "Background update checking interval", + "neverManualOnly": "Never - manual only", + "appearance": "Appearance", + "showWebInAppView": "Show source webpage in app view", + "pinUpdates": "Pin updates to top of apps view", + "updates": "Updates", + "sourceSpecific": "Source-specific", + "appSource": "App source", + "noLogs": "No logs", + "appLogs": "App logs", + "close": "Close", + "share": "Share", + "appNotFound": "App not found", + "obtainiumExportHyphenatedLowercase": "obtainium-export", + "pickAnAPK": "Pick an APK", + "appHasMoreThanOnePackage": "{} has more than one package:", + "deviceSupportsXArch": "Your device supports the {} CPU architecture.", + "deviceSupportsFollowingArchs": "Your device supports the following CPU architectures:", + "warning": "Warning", + "sourceIsXButPackageFromYPrompt": "The app source is '{}' but the release package comes from '{}'. Continue?", + "updatesAvailable": "Updates available", + "updatesAvailableNotifDescription": "Notifies the user that updates are available for one or more apps tracked by Obtainium", + "noNewUpdates": "No new updates.", + "xHasAnUpdate": "{} has an update.", + "appsUpdated": "Apps updated", + "appsNotUpdated": "Failed to update applications", + "appsUpdatedNotifDescription": "Notifies the user that updates to one or more apps were applied in the background", + "xWasUpdatedToY": "{} was updated to {}.", + "xWasNotUpdatedToY": "Failed to update {} to {}.", + "errorCheckingUpdates": "Error checking for updates", + "errorCheckingUpdatesNotifDescription": "A notification that shows when background update checking fails", + "appsRemoved": "Apps removed", + "appsRemovedNotifDescription": "Notifies the user that one or more apps were removed due to errors while loading them", + "xWasRemovedDueToErrorY": "{} was removed due to this error: {}", + "completeAppInstallation": "Complete app installation", + "obtainiumMustBeOpenToInstallApps": "Obtainium must be open to install apps", + "completeAppInstallationNotifDescription": "Asks the user to return to Obtainium to finish installing an app", + "checkingForUpdates": "Checking for updates", + "checkingForUpdatesNotifDescription": "Transient notification that appears when checking for updates", + "pleaseAllowInstallPerm": "Please allow Obtainium to install apps", + "trackOnly": "Track-only", + "errorWithHttpStatusCode": "Error {}", + "versionCorrectionDisabled": "Version correction disabled (plugin doesn't seem to work)", + "unknown": "Unknown", + "none": "None", + "all": "All", + "never": "Never", + "latestVersionX": "Latest: {}", + "installedVersionX": "Installed: {}", + "lastUpdateCheckX": "Last update check: {}", + "remove": "Remove", + "yesMarkUpdated": "Yes, mark as updated", + "fdroid": "F-Droid official", + "appIdOrName": "App ID or name", + "appId": "App ID", + "appWithIdOrNameNotFound": "No app was found with that ID or name", + "reposHaveMultipleApps": "Repos may contain multiple apps", + "fdroidThirdPartyRepo": "F-Droid third-party repo", + "install": "Install", + "markInstalled": "Mark installed", + "update": "Update", + "markUpdated": "Mark updated", + "additionalOptions": "Additional options", + "disableVersionDetection": "Disable version detection", + "noVersionDetectionExplanation": "This option should only be used for apps where version detection does not work correctly.", + "downloadingX": "Downloading {}", + "downloadX": "Download {}", + "downloadedX": "Downloaded {}", + "releaseAsset": "Release asset", + "downloadNotifDescription": "Notifies the user of the progress in downloading an app", + "noAPKFound": "No APK found", + "noVersionDetection": "No version detection", + "categorize": "Categorize", + "categories": "Categories", + "category": "Category", + "noCategory": "No category", + "noCategories": "No categories", + "deleteCategoriesQuestion": "Delete categories?", + "categoryDeleteWarning": "All apps in deleted categories will be set to uncategorized.", + "addCategory": "Add category", + "label": "Label", + "language": "Language", + "copiedToClipboard": "Copied to clipboard", + "storagePermissionDenied": "Storage permission denied", + "selectedCategorizeWarning": "This will replace any existing category settings for the selected apps.", + "filterAPKsByRegEx": "Filter APKs by regular expression", + "removeFromObtainium": "Remove from Obtainium", + "uninstallFromDevice": "Uninstall from device", + "onlyWorksWithNonVersionDetectApps": "Only works for apps with version detection disabled.", + "releaseDateAsVersion": "Use release date as version string", + "releaseTitleAsVersion": "Use release title as version string", + "releaseDateAsVersionExplanation": "This option should only be used for apps where version detection does not work correctly, but a release date is available.", + "changes": "Changes", + "releaseDate": "Release date", + "importFromURLsInFile": "Import from URLs in file (like OPML)", + "versionDetectionExplanation": "Reconcile version string with version detected from OS", + "versionDetection": "Version detection", + "standardVersionDetection": "Standard version detection", + "groupByCategory": "Group by category", + "autoApkFilterByArch": "Attempt to filter APKs by CPU architecture if possible", + "autoLinkFilterByArch": "Attempt to filter links by CPU architecture if possible", + "overrideSource": "Override source", + "dontShowAgain": "Don't show this again", + "dontShowTrackOnlyWarnings": "Don't show 'track-only' warnings", + "dontShowAPKOriginWarnings": "Don't show APK origin warnings", + "moveNonInstalledAppsToBottom": "Move non-installed apps to bottom of apps view", + "gitlabPATLabel": "GitLab personal access token", + "about": "About", + "requiresCredentialsInSettings": "{} needs additional credentials (in Settings)", + "checkOnStart": "Check for updates on startup", + "tryInferAppIdFromCode": "Try inferring app ID from source code", + "removeOnExternalUninstall": "Automatically remove externally uninstalled apps", + "pickHighestVersionCode": "Auto-select highest version code APK", + "checkUpdateOnDetailPage": "Check for updates on opening an app detail page", + "disablePageTransitions": "Disable page transition animations", + "reversePageTransitions": "Reverse page transition animations", + "minStarCount": "Minimum star count", + "addInfoBelow": "Add this info below.", + "addInfoInSettings": "Add this info in the Settings.", + "githubSourceNote": "GitHub rate limiting can be avoided using an API key.", + "sortByLastLinkSegment": "Sort by only the last segment of the link", + "filterReleaseNotesByRegEx": "Filter release notes by regular expression", + "customLinkFilterRegex": "Custom APK link filter by regular expression (default '.apk$')", + "appsPossiblyUpdated": "App updates attempted", + "appsPossiblyUpdatedNotifDescription": "Notifies the user that updates to one or more apps were potentially applied in the background", + "xWasPossiblyUpdatedToY": "{} may have been updated to {}.", + "enableBackgroundUpdates": "Enable background updates", + "backgroundUpdateReqsExplanation": "Background updates may not be possible for all apps.", + "backgroundUpdateLimitsExplanation": "The success of a background install can only be determined when Obtainium is opened.", + "verifyLatestTag": "Verify the 'latest' tag", + "intermediateLinkRegex": "Filter for an 'intermediate' link to visit", + "filterByLinkText": "Filter links by link text", + "matchLinksOutsideATags": "Match links outside tags", + "intermediateLinkNotFound": "Intermediate link not found", + "intermediateLink": "Intermediate link", + "exemptFromBackgroundUpdates": "Exempt from background updates (if enabled)", + "bgUpdatesOnWiFiOnly": "Disable background updates when not on Wi-Fi", + "bgUpdatesWhileChargingOnly": "Disable background updates when not charging", + "autoSelectHighestVersionCode": "Auto-select highest versionCode APK", + "versionExtractionRegEx": "Version string extraction RegEx", + "trimVersionString": "Trim version string with RegEx", + "matchGroupToUseForX": "Match group to use for \"{}\"", + "matchGroupToUse": "Match group to use for version string extraction RegEx", + "highlightTouchTargets": "Highlight less obvious touch targets", + "pickExportDir": "Pick export directory", + "autoExportOnChanges": "Automatically export on changes", + "includeSettings": "Include settings", + "filterVersionsByRegEx": "Filter versions by regular expression", + "trySelectingSuggestedVersionCode": "Try selecting suggested versionCode APK", + "dontSortReleasesList": "Retain release order from API", + "reverseSort": "Reverse sorting", + "takeFirstLink": "Take first link", + "skipSort": "Skip sorting", + "debugMenu": "Debug menu", + "bgTaskStarted": "Background task started - check logs.", + "runBgCheckNow": "Run background update check now", + "versionExtractWholePage": "Apply version string extraction Regex to entire page", + "installing": "Installing", + "skipUpdateNotifications": "Skip update notifications", + "updatesAvailableNotifChannel": "Updates available", + "appsUpdatedNotifChannel": "Apps updated", + "appsPossiblyUpdatedNotifChannel": "App updates attempted", + "errorCheckingUpdatesNotifChannel": "Error checking for updates", + "appsRemovedNotifChannel": "Apps removed", + "downloadingXNotifChannel": "Downloading {}", + "completeAppInstallationNotifChannel": "Complete app installation", + "checkingForUpdatesNotifChannel": "Checking for updates", + "onlyCheckInstalledOrTrackOnlyApps": "Only check installed and track-only apps for updates", + "supportFixedAPKURL": "Support fixed APK URLs", + "selectX": "Select {}", + "parallelDownloads": "Allow parallel downloads", + "useShizuku": "Use Shizuku or Sui to install", + "shizukuBinderNotFound": "Shizuku service not running", + "shizukuOld": "Old Shizuku version (<11) - update it", + "shizukuOldAndroidWithADB": "Shizuku running on Android < 8.1 with ADB - update Android or use Sui instead", + "shizukuPretendToBeGooglePlay": "Set Google Play as the installation source (if Shizuku is used)", + "useSystemFont": "Use the system font", + "useVersionCodeAsOSVersion": "Use app versionCode as OS-detected version", + "requestHeader": "Request header", + "useLatestAssetDateAsReleaseDate": "Use latest asset upload as release date", + "defaultPseudoVersioningMethod": "Default pseudo-versioning method", + "partialAPKHash": "Partial APK hash", + "APKLinkHash": "APK link hash", + "directAPKLink": "Direct APK link", + "pseudoVersionInUse": "A pseudo-version is in use", + "installed": "Installed", + "latest": "Latest", + "invertRegEx": "Invert regular expression", + "note": "Note", + "selfHostedNote": "The \"{}\" dropdown can be used to reach self-hosted/custom instances of any source.", + "badDownload": "The APK could not be parsed (incompatible or partial download)", + "beforeNewInstallsShareToAppVerifier": "Share new apps with AppVerifier (if available)", + "appVerifierInstructionToast": "Share to AppVerifier, then return here when ready.", + "wiki": "Help/wiki", + "crowdsourcedConfigsLabel": "Crowdsourced app configurations (use at your own risk)", + "crowdsourcedConfigsShort": "Crowdsourced app configurations", + "allowInsecure": "Allow insecure HTTP requests", + "stayOneVersionBehind": "Stay one version behind latest", + "useFirstApkOfVersion": "Auto-select first of multiple APKs", + "refreshBeforeDownload": "Refresh app details before download", + "tencentAppStore": "Tencent App Store", + "coolApk": "CoolApk", + "vivoAppStore": "vivo App Store (CN)", + "name": "Name", + "smartname": "Name (smart)", + "sortMethod": "Sort method", + "welcome": "Welcome", + "documentationLinksNote": "The Obtainium GitHub page linked below contains links to videos, articles, discussions, and other resources that will help you understand how to use the app.", + "batteryOptimizationNote": "Note that background downloads may work more reliably if you switch to the \"foreground service\" in the Obtainium settings and/or disable battery optimization for Obtainium in your OS settings.", + "fileDeletionError": "Failed to delete file (try deleting it manually then try again): \"{}\"", + "foregroundService": "Obtainium foreground service", + "foregroundServiceExplanation": "Use a foreground service for update checking (more reliable, consumes more power)", + "fgServiceNotice": "This notification is required for background update checking (it can be hidden in the OS settings)", + "excludeSecrets": "Exclude secrets", + "GHReqPrefix": "'sky22333/hubproxy' instance for GitHub requests", + "includeZips": "Include ZIP files", + "zippedApkFilterRegEx": "Filter APKs inside ZIP", + "removeAppQuestion": { + "one": "Remove app?", + "other": "Remove apps?" + }, + "tooManyRequestsTryAgainInMinutes": { + "one": "Too many requests (rate limited) - try again in {} minute", + "other": "Too many requests (rate limited) - try again in {} minutes" + }, + "bgUpdateGotErrorRetryInMinutes": { + "one": "BG update checking encountered a {}, will schedule a retry check in {} minute", + "other": "BG update checking encountered a {}, will schedule a retry check in {} minutes" + }, + "bgCheckFoundUpdatesWillNotifyIfNeeded": { + "one": "BG update checking found {} update - will notify user if needed", + "other": "BG update checking found {} updates - will notify user if needed" + }, + "apps": { + "one": "{} App", + "other": "{} Apps" + }, + "url": { + "one": "{} URL", + "other": "{} URLs" + }, + "minute": { + "one": "{} minute", + "other": "{} minutes" + }, + "hour": { + "one": "{} hour", + "other": "{} hours" + }, + "day": { + "one": "{} day", + "other": "{} days" + }, + "clearedNLogsBeforeXAfterY": { + "one": "Cleared {n} log (before = {before}, after = {after})", + "other": "Cleared {n} logs (before = {before}, after = {after})" + }, + "xAndNMoreUpdatesAvailable": { + "one": "{} and 1 more app have updates.", + "other": "{} and {} more apps have updates." + }, + "xAndNMoreUpdatesInstalled": { + "one": "{} and 1 more app was updated.", + "other": "{} and {} more apps were updated." + }, + "xAndNMoreUpdatesFailed": { + "one": "Failed to update {} and 1 more app.", + "other": "Failed to update {} and {} more apps." + }, + "xAndNMoreUpdatesPossiblyInstalled": { + "one": "{} and 1 more app may have been updated.", + "other": "{} and {} more apps may have been updated." + }, + "apk": { + "one": "{} APK", + "other": "{} APKs" + } +} \ No newline at end of file diff --git a/assets/translations/es.json b/assets/translations/es.json new file mode 100644 index 0000000..359e7dc --- /dev/null +++ b/assets/translations/es.json @@ -0,0 +1,402 @@ +{ + "invalidURLForSource": "La URL de la aplicación {} no es válida", + "noReleaseFound": "No se ha encontrado una versión válida", + "noVersionFound": "No se ha podido determinar la versión", + "urlMatchesNoSource": "La URL no coincide con ninguna fuente conocida", + "cantInstallOlderVersion": "No se puede instalar una versión previa de la aplicación", + "appIdMismatch": "El ID del paquete descargado no coincide con el ID de la aplicación instalada", + "functionNotImplemented": "Esta clase no ha implementado esta función", + "placeholder": "Espacio reservado", + "someErrors": "Han ocurrido algunos errores", + "unexpectedError": "Error inesperado", + "ok": "Aceptar", + "and": "y", + "githubPATLabel": "Token de acceso personal a GitHub\n(reduce tiempos de espera)", + "includePrereleases": "Incluir versiones preliminares", + "fallbackToOlderReleases": "Retroceder a versiones previas", + "filterReleaseTitlesByRegEx": "Filtrar por título de versión", + "invalidRegEx": "Expresión inválida", + "noDescription": "Sin descripción", + "cancel": "Cancelar", + "continue": "Continuar", + "requiredInBrackets": "(Requerido)", + "dropdownNoOptsError": "ERROR: EL DESPLEGABLE DEBE TENER AL MENOS UNA OPCIÓN", + "colour": "color", + "standard": "Estándar", + "custom": "A medida", + "useMaterialYou": "Aplicar 'Material You'", + "githubStarredRepos": "repositorios favoritos en GitHub", + "uname": "Nombre de usuario", + "wrongArgNum": "Número de argumentos provistos inválido", + "xIsTrackOnly": "{} es de 'sólo seguimiento'", + "source": "fuente", + "app": "Aplicación", + "appsFromSourceAreTrackOnly": "Las aplicaciones de este origen son solo para seguimiento.", + "youPickedTrackOnly": "Debe seleccionar la opción de 'solo para seguimiento'.", + "trackOnlyAppDescription": "Se hará el seguimiento de actualizaciones para la aplicación, pero Obtainium no será capaz de descargar o actualizarla.", + "cancelled": "Cancelado", + "appAlreadyAdded": "Aplicación añadida anteriormente", + "alreadyUpToDateQuestion": "¿Aplicación actualizada previamente?", + "addApp": "Añadir aplicación", + "appSourceURL": "URL origen de la aplicación", + "error": "Error", + "add": "Añadir", + "searchSomeSourcesLabel": "Buscar (solo en algunas fuentes)", + "search": "Buscar", + "additionalOptsFor": "Opciones adicionales para {}", + "supportedSources": "Fuentes admitidas", + "trackOnlyInBrackets": "(Solo para seguimiento)", + "searchableInBrackets": "(permite búsqueda)", + "appsString": "Aplicaciones", + "noApps": "Sin Aplicaciones", + "noAppsForFilter": "Sin aplicaciones para filtrar", + "byX": "por: {}", + "percentProgress": "Progreso: {} %", + "pleaseWait": "Espere...", + "updateAvailable": "Actualización disponible", + "notInstalled": "No instalado", + "pseudoVersion": "pseudoversión", + "selectAll": "Seleccionar todo", + "deselectX": "Deseleccionar {}", + "xWillBeRemovedButRemainInstalled": "{} se eliminará de Obtainium pero continuará instalada en el dispositivo.", + "removeSelectedAppsQuestion": "¿Eliminar aplicaciones seleccionadas?", + "removeSelectedApps": "Eliminar aplicaciones seleccionadas", + "updateX": "Actualizar {}", + "installX": "Instalar {}", + "markXTrackOnlyAsUpdated": "Marcar {}\n(solo para seguimiento)\ncomo actualizada", + "changeX": "Cambiar {}", + "installUpdateApps": "Instalar/actualizar aplicaciones", + "installUpdateSelectedApps": "Instalar/actualizar aplicaciones seleccionadas", + "markXSelectedAppsAsUpdated": "¿Marcar {} aplicaciones seleccionadas como actualizadas?", + "no": "No", + "yes": "Sí", + "markSelectedAppsUpdated": "Marcar actualizadas las apps seleccionadas", + "pinToTop": "Anclar al principio", + "unpinFromTop": "Desanclar del principio", + "resetInstallStatusForSelectedAppsQuestion": "¿Restuarar estado de instalación para las aplicaciones seleccionadas?", + "installStatusOfXWillBeResetExplanation": "Se restaurará el estado de instalación de las aplicaciones seleccionadas.\n\nEsto puede ser de útil cuando la versión de la aplicación mostrada en Obtainium es incorrecta por actualizaciones fallidas u otros motivos.", + "customLinkMessage": "Estos enlaces funcionan en dispositivos con Obtainium instalado", + "shareAppConfigLinks": "Compartir configuración de la app como enlace HTML", + "shareSelectedAppURLs": "Compartir URL de las apps seleccionadas", + "resetInstallStatus": "Restaurar estado de instalación", + "more": "Más", + "removeOutdatedFilter": "Eliminar filtro de aplicaciones desactualizado", + "showOutdatedOnly": "Mostrar solo aplicaciones desactualizadas", + "filter": "Filtrar", + "filterApps": "Filtrar apps", + "appName": "Nombre de app", + "author": "Autor", + "upToDateApps": "Aplicaciones actualizadas", + "nonInstalledApps": "Apps no instaladas", + "importExport": "Importar/Exportar", + "settings": "Ajustes", + "exportedTo": "Exportado a {}", + "obtainiumExport": "Exportar Obtainium", + "invalidInput": "Entrada no válida", + "importedX": "Importado {}", + "obtainiumImport": "Importar Obtainium", + "importFromURLList": "Importar desde lista de URL", + "searchQuery": "Término de búsqueda", + "appURLList": "Lista de URL de aplicaciones", + "line": "Línea", + "searchX": "Buscar {}", + "noResults": "No se ha encontrado ningún resultado", + "importX": "Importar desde {}", + "importedAppsIdDisclaimer": "Las aplicaciones importadas podrían mostrarse incorrectamente como «No instalada».\nPara solucionarlo, reinstálelas a través de Obtainium.\nEsto no debería afectar a los datos de las aplicaciones.\n\nSolo afecta a los URL y a los métodos de importación mediante terceros.", + "importErrors": "Errores de Importación", + "importedXOfYApps": "{} de {} aplicaciones importadas.", + "followingURLsHadErrors": "Las URL siguientes han tenido problemas:", + "selectURL": "Seleccionar URL", + "selectURLs": "Seleccionar URLs", + "pick": "Escoger", + "theme": "Tema", + "dark": "Oscuro", + "light": "Claro", + "followSystem": "Seguir al sistema", + "followSystemThemeExplanation": "Seguir el tema del sistema sólo es posible utilizando aplicaciones de terceros", + "useBlackTheme": "Negro puro en tema oscuro", + "appSortBy": "Ordenar apps por", + "authorName": "Autor/Nombre", + "nameAuthor": "Nombre/Autor", + "asAdded": "Según se añadieron", + "appSortOrder": "Orden", + "ascending": "Ascendente", + "descending": "Descendente", + "bgUpdateCheckInterval": "Comprobar actualizaciones en segundo plano", + "neverManualOnly": "Nunca, solo manual", + "appearance": "Apariencia", + "showWebInAppView": "Mostrar vista de la web de origen", + "pinUpdates": "Anclar actualizaciones al principio", + "updates": "Actualizaciones", + "sourceSpecific": "Fuente específica", + "appSource": "Filtrar por fuente", + "noLogs": "Ningún registro", + "appLogs": "Registros", + "close": "Cerrar", + "share": "Compartir", + "appNotFound": "Aplicación no encontrada", + "obtainiumExportHyphenatedLowercase": "obtainium-exportación", + "pickAnAPK": "Seleccione una APK", + "appHasMoreThanOnePackage": "{} tiene más de un paquete:", + "deviceSupportsXArch": "Su dispositivo admite las siguientes arquitecturas de procesador: {}.", + "deviceSupportsFollowingArchs": "Su dispositivo admite las siguientes arquitecturas de procesador:", + "warning": "Aviso", + "sourceIsXButPackageFromYPrompt": "La fuente de la aplicación es «{}» pero el paquete de la actualización viene de «{}». ¿Desea continuar?", + "updatesAvailable": "Actualizaciones Disponibles", + "updatesAvailableNotifDescription": "Notifica al usuario de que hay actualizaciones para una o más aplicaciones monitoreadas por Obtainium", + "noNewUpdates": "No hay nuevas actualizaciones.", + "xHasAnUpdate": "{} tiene una actualización.", + "appsUpdated": "Apps actualizadas", + "appsNotUpdated": "Error al actualizar las aplicaciones", + "appsUpdatedNotifDescription": "Notifica al usuario de que una o más aplicaciones han sido actualizadas en segundo plano", + "xWasUpdatedToY": "{} ha sido actualizada a {}.", + "xWasNotUpdatedToY": "Error al actualizar {} a {}.", + "errorCheckingUpdates": "Error al buscar actualizaciones", + "errorCheckingUpdatesNotifDescription": "Una notificación que muestra cuándo la comprobación de actualizaciones en segundo plano falla", + "appsRemoved": "Aplicaciones eliminadas", + "appsRemovedNotifDescription": "Notifica al usuario que una o más aplicaciones fueron eliminadas por problemas al cargarlas", + "xWasRemovedDueToErrorY": "{} ha sido eliminada por: {}", + "completeAppInstallation": "Instalación completa de la aplicación", + "obtainiumMustBeOpenToInstallApps": "Obtainium debe estar abierto para instalar aplicaciones", + "completeAppInstallationNotifDescription": "Le pide volver a Obtainium para terminar de instalar una aplicación", + "checkingForUpdates": "Buscando actualizaciones...", + "checkingForUpdatesNotifDescription": "Notificación temporal que aparece al buscar actualizaciones", + "pleaseAllowInstallPerm": "Permita que Obtainium instale aplicaciones", + "trackOnly": "Solo para seguimiento", + "errorWithHttpStatusCode": "Error {}", + "versionCorrectionDisabled": "Corrección de versiones desactivada (el plugin parece no funcionar)", + "unknown": "Desconocido", + "none": "Ninguno", + "all": "Todos", + "never": "Nunca", + "latestVersionX": "Última versión: {}", + "installedVersionX": "Versión instalada: {}", + "lastUpdateCheckX": "Última comprobación: {}", + "remove": "Eliminar", + "yesMarkUpdated": "Sí, marcar como actualizada", + "fdroid": "F-Droid oficial", + "appIdOrName": "ID o Nombre de la Aplicación", + "appId": "ID de la app", + "appWithIdOrNameNotFound": "No se han encontrado aplicaciones con ese ID o nombre", + "reposHaveMultipleApps": "Los repositorios pueden contener varias aplicaciones", + "fdroidThirdPartyRepo": "F-Droid terceros", + "install": "Instalar", + "markInstalled": "Marcar como instalada", + "update": "Actualizar", + "markUpdated": "Marcar como actualizada", + "additionalOptions": "Opciones adicionales", + "disableVersionDetection": "Desactivar la detección de versiones", + "noVersionDetectionExplanation": "Esta opción solo se debe usar en aplicaciones en las que la deteción de versiones pueda que no funcionar correctamente.", + "downloadingX": "Descargando {}", + "downloadX": "Descargar {}", + "downloadedX": "Descargado {}", + "releaseAsset": "Recurso publicado", + "downloadNotifDescription": "Notifica al usuario del progreso de descarga de una aplicación", + "noAPKFound": "No se ha encontrado el paquete de instalación APK", + "noVersionDetection": "Sin detección de versiones", + "categorize": "Catogorizar", + "categories": "Categorías", + "category": "Categoría", + "noCategory": "Sin categoría", + "noCategories": "Sin categorías", + "deleteCategoriesQuestion": "¿Eliminar categorías?", + "categoryDeleteWarning": "Todas las aplicaciones en las categorías eliminadas se marcarán como «Sin categoría».", + "addCategory": "Añadir categoría", + "label": "Nombre", + "language": "Idioma", + "copiedToClipboard": "Copiado en el portapapeles", + "storagePermissionDenied": "Permiso de almacenamiento rechazado", + "selectedCategorizeWarning": "Esto reemplazará cualquier ajuste de categoría para las aplicaciones seleccionadas.", + "filterAPKsByRegEx": "Filtrar por APK", + "removeFromObtainium": "Eliminar de Obtainium", + "uninstallFromDevice": "Desinstalar del dispositivo", + "onlyWorksWithNonVersionDetectApps": "Solo funciona para aplicaciones con la detección de versiones desactivada.", + "releaseDateAsVersion": "Usar fecha de publicación como cadena de versión", + "releaseTitleAsVersion": "Usar título de lanzamiento como cadena de versión", + "releaseDateAsVersionExplanation": "Esta opción solo se debería usar con aplicaciones en las que la detección de versiones no funciona pero hay disponible una fecha de publicación.", + "changes": "Cambios", + "releaseDate": "Fecha de publicación", + "importFromURLsInFile": "Importar URLs desde archivo (como OPML)", + "versionDetectionExplanation": "Conciliar cadena de versión con versión detectada por el sistema operativo", + "versionDetection": "Detección de versiones", + "standardVersionDetection": "Por versión", + "groupByCategory": "Agrupar por categorías", + "autoApkFilterByArch": "Filtrar APK por arquitectura del procesador (si es posible)", + "autoLinkFilterByArch": "Intente filtrar los enlaces por arquitectura de CPU si es posible", + "overrideSource": "Forzar desde la fuente", + "dontShowAgain": "No mostrar de nuevo", + "dontShowTrackOnlyWarnings": "No mostrar avisos sobre apps 'solo para seguimiento'", + "dontShowAPKOriginWarnings": "No mostrar avisos sobre las fuentes de las APKs", + "moveNonInstalledAppsToBottom": "Mover apps no instaladas al final", + "gitlabPATLabel": "Token de acceso personal a GitLab", + "about": "Acerca de", + "requiresCredentialsInSettings": "{}: Esto requiere credenciales adicionales (en ajustes)", + "checkOnStart": "Comprobar actualizaciones al inicio", + "tryInferAppIdFromCode": "Intentar deducir el ID de la app por el código fuente", + "removeOnExternalUninstall": "Auto eliminar apps desinstaladas externamente", + "pickHighestVersionCode": "Auto selección de versión superior del paquete APK", + "checkUpdateOnDetailPage": "Comprobar actualizaciones al abrir detalles de la app", + "disablePageTransitions": "Deshabilitar animaciones de transición", + "reversePageTransitions": "Invertir animaciones de transición", + "minStarCount": "Número Mínimo de Estrellas", + "addInfoBelow": "Añadir esta información debajo.", + "addInfoInSettings": "Puede añadir esta información en Ajustes.", + "githubSourceNote": "La limitación de velocidad de GitHub puede evitarse con un 'token de acceso personal'.", + "sortByLastLinkSegment": "Ordenar sólo por el último segmento del enlace", + "filterReleaseNotesByRegEx": "Filtrar por notas de versión (release notes)", + "customLinkFilterRegex": "Filtro personalizado de enlace APK (por defecto '.apk$')", + "appsPossiblyUpdated": "Actualización de apps intentada", + "appsPossiblyUpdatedNotifDescription": "Notifica al usuario que las actualizaciones en segundo plano podrían haberse realizado para una o más aplicaciones", + "xWasPossiblyUpdatedToY": "{} podría estar actualizada a {}.", + "enableBackgroundUpdates": "Habilitar actualizaciones en segundo plano", + "backgroundUpdateReqsExplanation": "Las actualizaciones en segundo plano pueden no estar disponibles para todas las aplicaciones.", + "backgroundUpdateLimitsExplanation": "El éxito de las instalaciones en segundo plano solo se puede comprobar con Obtainium abierto.", + "verifyLatestTag": "Comprobar etiqueta 'Latest'", + "intermediateLinkRegex": "Filtrar por enlace 'intermedio' para visitar primero", + "filterByLinkText": "Filtrar enlaces por texto del enlace", + "matchLinksOutsideATags": "Enlaces coincidentes fuera de las etiquetas ", + "intermediateLinkNotFound": "Enlace intermedio no encontrado", + "intermediateLink": "Enlace intermedio", + "exemptFromBackgroundUpdates": "No actualizar en segundo plano (si está habilitado)", + "bgUpdatesOnWiFiOnly": "Deshabilitar las actualizaciones en segundo plano sin Wi-Fi", + "bgUpdatesWhileChargingOnly": "Desactiva las actualizaciones en segundo plano cuando no estés cargando", + "autoSelectHighestVersionCode": "Auto selección del paquete APK con versión más reciente", + "versionExtractionRegEx": "Versión de extracción RegEx", + "trimVersionString": "Recortar cadena de versión con RegEx", + "matchGroupToUseForX": "Grupo de coincidencia a usar para \"{}\"", + "matchGroupToUse": "Grupo a usar para versión de extracción RegEx", + "highlightTouchTargets": "Resaltar objetivos menos obvios", + "pickExportDir": "Directorio para exportar", + "autoExportOnChanges": "Auto exportar si hay cambios", + "includeSettings": "Incluir ajustes", + "filterVersionsByRegEx": "Filtrar por versiones", + "trySelectingSuggestedVersionCode": "Pruebe seleccionando la versión del paquete APK sugerida", + "dontSortReleasesList": "Mantener el order de publicación de la fuente original", + "reverseSort": "Orden inverso", + "takeFirstLink": "Usar primer enlace", + "skipSort": "Omitir orden", + "debugMenu": "Menu Depurar", + "bgTaskStarted": "Iniciada tarea en segundo plano; revise los registros.", + "runBgCheckNow": "Ejecutar verficiación de actualizaciones en segundo plano", + "versionExtractWholePage": "Aplicar la versión de extracción RegEx a la página entera", + "installing": "Instalando", + "skipUpdateNotifications": "No notificar sobre actualizaciones", + "updatesAvailableNotifChannel": "Actualizaciones disponibles", + "appsUpdatedNotifChannel": "Aplicaciones actualizadas", + "appsPossiblyUpdatedNotifChannel": "Se ha intentado actualizar la aplicación", + "errorCheckingUpdatesNotifChannel": "Error buscando actualizaciones", + "appsRemovedNotifChannel": "Aplicaciones eliminadas", + "downloadingXNotifChannel": "Descargando {}", + "completeAppInstallationNotifChannel": "Instalación completada", + "checkingForUpdatesNotifChannel": "Buscando actualizaciones", + "onlyCheckInstalledOrTrackOnlyApps": "Comprobar actualizaciones solo para apps instaladas o en seguimiento", + "supportFixedAPKURL": "Soporte para URLs fijas de APK", + "selectX": "Seleccionar {}", + "parallelDownloads": "Permitir descargas paralelas", + "useShizuku": "Usar Shizuku o Sui para instalar", + "shizukuBinderNotFound": "Shizuku no funciona", + "shizukuOld": "Versión antigua de Shizuku (<11) - actualícela", + "shizukuOldAndroidWithADB": "Shizuku corriendo en Android < 8.1 con ADB - actualiza Android o usa Sui en su lugar", + "shizukuPretendToBeGooglePlay": "Usar Google Play como fuente de instalación (si se usa Shizuku)", + "useSystemFont": "Usar fuente del sistema", + "useVersionCodeAsOSVersion": "Usar versión de la app como versión detectada por el sistema operativo", + "requestHeader": "Encabezado de solicitud", + "useLatestAssetDateAsReleaseDate": "Usar última subida del recurso como fecha de lanzamiento", + "defaultPseudoVersioningMethod": "Método de pseudoversionado predeterminado", + "partialAPKHash": "Hash de APK parcial", + "APKLinkHash": "Hash de enlace APK", + "directAPKLink": "Enlace APK directo", + "pseudoVersionInUse": "Se está usando una pseudoversión", + "installed": "Instalado", + "latest": "Versión más reciente", + "invertRegEx": "Invertir expresión regular", + "note": "Nota", + "selfHostedNote": "El desplegable «{}» puede usarse para acceder a instancias autoalojadas/personalizadas de cualquier fuente.", + "badDownload": "No se ha podido analizar el APK (incompatible o descarga parcial)", + "beforeNewInstallsShareToAppVerifier": "Compartir apps nuevas con AppVerifier (si está instalado)", + "appVerifierInstructionToast": "Comparta con AppVerifier y vuelva aquí cuando esté listo.", + "wiki": "Ayuda/Wiki", + "crowdsourcedConfigsLabel": "Crowdsourced App Configurations (use bajo su responsabilidad)", + "crowdsourcedConfigsShort": "Configuración de aplicaciones por crowdsourcing", + "allowInsecure": "Permitir peticiones HTTP inseguras", + "stayOneVersionBehind": "Mantenerse una versión por detrás de la última", + "useFirstApkOfVersion": "Auto-selección del primero de múltiples APKs", + "refreshBeforeDownload": "Actualizar datos de la app antes de descargarla", + "tencentAppStore": "Tencent App Store", + "coolApk": "CoolApk", + "vivoAppStore": "vivo App Store (CN)", + "name": "Nombre", + "smartname": "Nombre (Smart)", + "sortMethod": "Clasificación por", + "welcome": "Bienvenido", + "documentationLinksNote": "La página GitHub de Obtainium enlazada a continuación contiene enlaces a vídeos, artículos, debates y otros recursos que te ayudarán a entender cómo utilizar la aplicación.", + "batteryOptimizationNote": "Ten en cuenta que las descargas en segundo plano pueden funcionar de forma más fiable si desactivas las optimizaciones de batería del sistema operativo para Obtainium.", + "fileDeletionError": "No se ha podido eliminar el archivo (intente eliminarlo manualmente y vuelva a intentarlo): \"{}\"", + "foregroundService": "Servicio Obtainium en primer plano", + "foregroundServiceExplanation": "Usar un servicio en primer plano para comprobar las actualizaciones (más fiable, consume más energía).", + "fgServiceNotice": "Esta notificación es necesaria para la comprobación de actualizaciones en segundo plano (puede ocultarse en la configuración del sistema operativo).", + "excludeSecrets": "Excluir secretos", + "GHReqPrefix": "Instancia \"sky22333/hubproxy\" para las solicitudes de GitHub", + "includeZips": "Incluir archivos ZIP", + "zippedApkFilterRegEx": "Filtrar APKs dentro de ZIP", + "removeAppQuestion": { + "one": "¿Eliminar aplicación?", + "other": "¿Eliminar aplicaciones?" + }, + "tooManyRequestsTryAgainInMinutes": { + "one": "Muchas peticiones (limitado); pruebe de nuevo en {} minuto", + "other": "Muchas peticiones (limitado); pruebe de nuevo en {} minutos" + }, + "bgUpdateGotErrorRetryInMinutes": { + "one": "La comprobación de actualizaciones en segundo plano se ha encontrado un {}; se volverá a probar en {} minuto", + "other": "La comprobación de actualizaciones en segundo plano se ha encontrado un {}; se volverá a probar en {} minutos" + }, + "bgCheckFoundUpdatesWillNotifyIfNeeded": { + "one": "La comprobación de actualizaciones en segundo plano ha encontrado {} actualización; se le notificará si es necesario", + "other": "La comprobación de actualizaciones en segundo plano ha encontrado {} actualizaciones; se le notificará si es necesario" + }, + "apps": { + "one": "{} La aplicación", + "other": "{} Las aplicaciones" + }, + "url": { + "one": "{} URL", + "other": "{} URL" + }, + "minute": { + "one": "{} minuto", + "other": "{} minutos" + }, + "hour": { + "one": "{} hora", + "other": "{} horas" + }, + "day": { + "one": "{} día", + "other": "{} días" + }, + "clearedNLogsBeforeXAfterY": { + "one": "Eliminado {n} registro (previo a = {before}, posterior a = {after})", + "other": "Eliminados {n} registros (previos a = {before}, posteriores a = {after})" + }, + "xAndNMoreUpdatesAvailable": { + "one": "{} y 1 aplicación más tiene actualizaciones.", + "other": "{} y {} aplicaciones más tienen actualizaciones." + }, + "xAndNMoreUpdatesInstalled": { + "one": "{} y 1 aplicación más se han actualizado.", + "other": "{} y {} aplicaciones más se han actualizado." + }, + "xAndNMoreUpdatesFailed": { + "one": "Error al actualizar {} y 1 aplicación más.", + "other": "No se han podido actualizar {} y {} aplicaciones más." + }, + "xAndNMoreUpdatesPossiblyInstalled": { + "one": "{} y 1 aplicación más podría haber sido actualizada.", + "other": "{} y {} aplicaciones más podrían haber sido actualizadas." + }, + "apk": { + "one": "{} APK", + "other": "{} APKs" + } +} diff --git a/assets/translations/fa.json b/assets/translations/fa.json new file mode 100644 index 0000000..7599062 --- /dev/null +++ b/assets/translations/fa.json @@ -0,0 +1,402 @@ +{ + "invalidURLForSource": "آدرس اینترنتی برنامه {} معتبر نیست", + "noReleaseFound": "نسخه مناسبی پیدا نشد", + "noVersionFound": "نمی توان نسخه منتشر شده را تعیین کرد", + "urlMatchesNoSource": "آدرس اینترنتی با منبع شناخته شده مطابقت ندارد", + "cantInstallOlderVersion": "نمی توان نسخه قدیمی یک برنامه را نصب کرد", + "appIdMismatch": "شناسه بسته دانلود شده با شناسه برنامه موجود مطابقت ندارد", + "functionNotImplemented": "این کلاس این تابع را پیاده سازی نکرده است", + "placeholder": "نگهدارنده مکان", + "someErrors": "برخی از خطاها رخ داده است", + "unexpectedError": "خطای غیرمنتظره", + "ok": "باشه", + "and": "و", + "githubPATLabel": "توکن دسترسی شخصی گیت هاب(محدودیت نرخ را افزایش میدهد)", + "includePrereleases": "شامل نسخه های اولیه", + "fallbackToOlderReleases": "بازگشت به نسخه های قدیمی تر", + "filterReleaseTitlesByRegEx": "عناوین انتشار را با بیان منظم فیلتر کنید", + "invalidRegEx": "عبارت منظم نامعتبر است", + "noDescription": "بدون توضیحات", + "cancel": "لغو", + "continue": "ادامه دهید", + "requiredInBrackets": "(ضروری)", + "dropdownNoOptsError": "خطا: کشویی باید حداقل یک گزینه داشته باشد", + "colour": "رنگ", + "standard": "استاندارد", + "custom": "سفارشی", + "useMaterialYou": "از Material You استفاده کنید", + "githubStarredRepos": "مخازن ستاره دار گیتهاب", + "uname": "نام کاربری", + "wrongArgNum": "تعداد آرگومان های ارائه شده اشتباه است", + "xIsTrackOnly": "{} فقط ردیابی", + "source": "منبع", + "app": "برنامه", + "appsFromSourceAreTrackOnly": "برنامه‌های این منبع «فقط ردیابی» هستند", + "youPickedTrackOnly": "شما گزینه ی «فقط ردیابی» را انتخاب کرده اید", + "trackOnlyAppDescription": "برنامه برای به روز رسانی ها ردیابی می شود، اما Obtainium قادر به دانلود یا نصب آن نخواهد بود.", + "cancelled": "لغو شد", + "appAlreadyAdded": "برنامه قبلاً اضافه شده است", + "alreadyUpToDateQuestion": "برنامه از قبل به روز شده است؟", + "addApp": "افزودن برنامه", + "appSourceURL": "آدرس اینترنتی منبع برنامه", + "error": "خطا", + "add": "اضافه کردن", + "searchSomeSourcesLabel": "جستجو (فقط برخی منابع)", + "search": "جستجو کردن", + "additionalOptsFor": "گزینه های اضافی برای {}", + "supportedSources": "منابع پشتیبانی شده", + "trackOnlyInBrackets": "«فقط ردیابی»", + "searchableInBrackets": "(قابل جستجو)", + "appsString": "برنامه ها", + "noApps": "برنامه ای وجود ندارد", + "noAppsForFilter": "برنامه ای برای فیلتر کردن وجود ندارد", + "byX": "توسط {}", + "percentProgress": "پیش رفتن: {}%", + "pleaseWait": "لطفا صبر کنید", + "updateAvailable": "بروزرسانی در دسترس", + "notInstalled": "نصب نشده", + "pseudoVersion": "نسخه شبه", + "selectAll": "انتخاب همه", + "deselectX": "لغو انتخاب {}", + "xWillBeRemovedButRemainInstalled": "{} از Obtainium حذف می‌شود اما روی دستگاه نصب می‌ماند.", + "removeSelectedAppsQuestion": "برنامه های انتخابی حذف شود؟", + "removeSelectedApps": "حذف برنامه های انتخاب شده", + "updateX": "به روز رسانی {}", + "installX": "نصب {}", + "markXTrackOnlyAsUpdated": "علامت {}\n(فقط ردیابی)\nبروز شده", + "changeX": "تغییر دادن {}", + "installUpdateApps": "نصب/به‌روزرسانی برنامه‌ها", + "installUpdateSelectedApps": "برنامه‌های انتخابی را نصب/به‌روزرسانی کنید", + "markXSelectedAppsAsUpdated": "{} برنامه های انتخابی را به عنوان به روز علامت گذاری کنید؟", + "no": "خیر", + "yes": "بله", + "markSelectedAppsUpdated": "برنامه های انتخاب شده را به عنوان به روز علامت گذاری کنید", + "pinToTop": "پین به بالا", + "unpinFromTop": "برداشتن پین از بالا", + "resetInstallStatusForSelectedAppsQuestion": "وضعیت نصب برنامه‌های انتخابی بازنشانی شود؟", + "installStatusOfXWillBeResetExplanation": "وضعیت نصب برنامه‌های انتخاب‌شده بازنشانی می‌شود.\n\nاگر نسخه برنامه نشان‌داده‌شده در Obtainium به دلیل به‌روزرسانی‌های ناموفق یا مشکلات دیگر نادرست باشد، می‌تواند کمک کند.", + "customLinkMessage": "این پیوندها بر روی دستگاه هایی با Obtainium نصب شده کار می کنند", + "shareAppConfigLinks": "اشتراک گذاری پیکربندی برنامه به عنوان پیوند HTML", + "shareSelectedAppURLs": "اشتراک گذاری آدرس اینترنتی برنامه های انتخاب شده", + "resetInstallStatus": "بازنشانی وضعیت نصب", + "more": "بیشتر", + "removeOutdatedFilter": "فیلتر برنامه قدیمی را حذف کنید", + "showOutdatedOnly": "فقط برنامه های قدیمی را نشان دهید", + "filter": "فیلتر", + "filterApps": "فیلتر کردن برنامه ها", + "appName": "نام برنامه", + "author": "سازنده", + "upToDateApps": "برنامه های به روز", + "nonInstalledApps": "برنامه های نصب نشده", + "importExport": "وارد کردن/صادر کردن", + "settings": "تنظیمات", + "exportedTo": "صادر کردن به{}", + "obtainiumExport": "صادر کردن Obtainium", + "invalidInput": "ورودی نامعتبر", + "importedX": "وارد شده {}", + "obtainiumImport": "وارد کردن Obtainium", + "importFromURLList": "وارد کردن از فهرست آدرس اینترنتی", + "searchQuery": "جستجوی سوال", + "appURLList": "فهرست آدرس اینترنتی برنامه", + "line": "خط", + "searchX": "جستجو {}", + "noResults": "نتیجه ای پیدا نشد", + "importX": " وارد کردن {}", + "importedAppsIdDisclaimer": "ممکن است برنامه‌های وارد شده به اشتباه به‌عنوان \"نصب نشده\" نشان داده شوند.\nبرای رفع این مشکل، آنها را دوباره از طریق Obtainium نصب کنید.\nاین نباید روی داده‌های برنامه تأثیر بگذارد.\n\nفقط بر روی آدرس اینترنتی و روش‌های درون ریزی شخص ثالث تأثیر می‌گذارد.", + "importErrors": "خطاهای وارد کردن", + "importedXOfYApps": "{} از {} برنامه وارد شد.", + "followingURLsHadErrors": "آدرس های اینترنتی زیر دارای خطا بودند:", + "selectURL": "آدرس اینترنتی انتخاب شده", + "selectURLs": "آدرس های اینترنتی انتخاب شده", + "pick": "انتخاب", + "theme": "تم", + "dark": "تاریک", + "light": "روشن", + "followSystem": "هماهنگ با سیستم", + "followSystemThemeExplanation": "دنبال کردن تم سیستم فقط با استفاده از برنامه های شخص ثالث امکان پذیر است", + "useBlackTheme": "استفاده از تم تیره سیاه خالص", + "appSortBy": "مرتب سازی برنامه بر اساس", + "authorName": "سازنده/اسم", + "nameAuthor": "اسم/سازنده", + "asAdded": "همانطور که اضافه شد", + "appSortOrder": "ترتیب مرتب سازی برنامه", + "ascending": "صعودی", + "descending": "نزولی", + "bgUpdateCheckInterval": "فاصله بررسی به‌روزرسانی در پس‌زمینه", + "neverManualOnly": "هرگز - فقط دستی", + "appearance": "ظاهر", + "showWebInAppView": "نمایش صفحه وب منبع در نمای برنامه", + "pinUpdates": "به‌روزرسانی‌ها را به نمای بالای برنامه‌ها پین کنید", + "updates": "به روز رسانی ها", + "sourceSpecific": "منبع خاص", + "appSource": "منبع برنامه", + "noLogs": "بدون گزارش", + "appLogs": "گزارش های برنامه", + "close": "بستن", + "share": "اشتراک گذاری", + "appNotFound": "برنامه پیدا نشد", + "obtainiumExportHyphenatedLowercase": "صادر کردن-obtainium", + "pickAnAPK": "یک APK انتخاب کنید", + "appHasMoreThanOnePackage": "{} بیش از یک بسته دارد:", + "deviceSupportsXArch": "دستگاه شما از معماری پردازنده {} پشتیبانی میکند", + "deviceSupportsFollowingArchs": "دستگاه شما از معماری های پردازنده زیر پشتیبانی می کند:", + "warning": "اخطار", + "sourceIsXButPackageFromYPrompt": "منبع برنامه \"{}\" است اما بسته انتشار از \"{}\" آمده است. ادامه هید؟", + "updatesAvailable": "بروزرسانی در دسترس ", + "updatesAvailableNotifDescription": "به کاربر اطلاع می دهد که به روز رسانی برای یک یا چند برنامه ردیابی شده توسط Obtainium در دسترس است", + "noNewUpdates": "به روز رسانی جدیدی وجود ندارد.", + "xHasAnUpdate": "{} یک به روز رسانی دارد.", + "appsUpdated": "برنامه ها به روز شدند", + "appsNotUpdated": "به روز رسانی برنامه ها ناموفق بود", + "appsUpdatedNotifDescription": "به کاربر اطلاع می دهد که به روز رسانی یک یا چند برنامه در پس زمینه اعمال شده است", + "xWasUpdatedToY": "{} به {} به روز شد.", + "xWasNotUpdatedToY": "به روز رسانی {} به {} انجام نشد.", + "errorCheckingUpdates": "خطا در بررسی به‌روزرسانی‌ها", + "errorCheckingUpdatesNotifDescription": "اعلانی که وقتی بررسی به‌روزرسانی پس‌زمینه ناموفق است نشان می‌دهد", + "appsRemoved": "برنامه ها حذف شدند", + "appsRemovedNotifDescription": "به کاربر اطلاع می دهد که یک یا چند برنامه به دلیل خطا در هنگام بارگیری حذف شده است", + "xWasRemovedDueToErrorY": "{} به دلیل این خطا حذف شد: {}", + "completeAppInstallation": "نصب کامل برنامه", + "obtainiumMustBeOpenToInstallApps": "Obtainium باید برای نصب برنامه ها باز باشد", + "completeAppInstallationNotifDescription": "از کاربر می‌خواهد برای پایان نصب برنامه به Obtainium برگردد", + "checkingForUpdates": "بررسی به‌روزرسانی‌ها", + "checkingForUpdatesNotifDescription": "اعلان گذرا که هنگام بررسی به روز رسانی ظاهر می شود", + "pleaseAllowInstallPerm": "لطفاً به Obtainium اجازه دهید برنامه‌ها را نصب کند", + "trackOnly": "فقط ردیابی", + "errorWithHttpStatusCode": "خطا {}", + "versionCorrectionDisabled": "تصحیح نسخه غیرفعال شد (به نظر می رسد افزونه کار نمی کند)", + "unknown": "ناشناخته", + "none": "هیچ", + "all": "All", + "never": "هرگز", + "latestVersionX": "آخرین نسخه: {}", + "installedVersionX": "نسخه نصب شده: {}", + "lastUpdateCheckX": "بررسی آخرین به‌روزرسانی: {}", + "remove": "حذف", + "yesMarkUpdated": "بله، علامت گذاری به عنوان به روز شده", + "fdroid": "F-Droid Official", + "appIdOrName": "شناسه یا نام برنامه", + "appId": "شناسه برنامه", + "appWithIdOrNameNotFound": "هیچ برنامه ای با آن شناسه یا نام یافت نشد", + "reposHaveMultipleApps": "مخازن ممکن است شامل چندین برنامه باشد", + "fdroidThirdPartyRepo": "مخازن شخص ثالث F-Droid", + "install": "نصب", + "markInstalled": "علامت گذاری به عنوان نصب شده", + "update": "به روز رسانی", + "markUpdated": "علامت گذاری به روز شد", + "additionalOptions": "گزینه های اضافی", + "disableVersionDetection": "غیرفعال کردن تشخیص نسخه", + "noVersionDetectionExplanation": "این گزینه فقط باید برای برنامه هایی استفاده شود که تشخیص نسخه به درستی کار نمی کند.", + "downloadingX": "در حال دانلود {}", + "downloadX": "دانلود {}", + "downloadedX": "دانلود شده {}", + "releaseAsset": "انتشار دارایی", + "downloadNotifDescription": "کاربر را از پیشرفت دانلود یک برنامه مطلع می کند", + "noAPKFound": "APK پیدا نشد فایل", + "noVersionDetection": "بدون تشخیص نسخه", + "categorize": "دسته بندی کردن", + "categories": "دسته بندی ها", + "category": "دسته بندی", + "noCategory": "بدون دسته بندی", + "noCategories": "بدون دسته بندی ها", + "deleteCategoriesQuestion": "دسته بندی ها حذف شوند؟", + "categoryDeleteWarning": "همه برنامه‌ها در دسته‌های حذف شده روی دسته‌بندی نشده تنظیم می‌شوند.", + "addCategory": "اضافه کردن دسته", + "label": "برچسب", + "language": "زبان", + "copiedToClipboard": "در کلیپ بورد کپی شد", + "storagePermissionDenied": "مجوز ذخیره سازی رد شد", + "selectedCategorizeWarning": "این جایگزین تنظیمات دسته بندی موجود برای برنامه های انتخابی می شود.", + "filterAPKsByRegEx": "فایل‌های APK را با نظم فیلتر کنید", + "removeFromObtainium": "از Obtainium حذف کنید", + "uninstallFromDevice": "حذف نصب از دستگاه", + "onlyWorksWithNonVersionDetectApps": "فقط برای برنامه‌هایی کار می‌کند که تشخیص نسخه غیرفعال است.", + "releaseDateAsVersion": "از تاریخ انتشار به عنوان نسخه استفاده کنید", + "releaseTitleAsVersion": "از عنوان انتشار به عنوان رشته نسخه استفاده کنید", + "releaseDateAsVersionExplanation": "این گزینه فقط باید برای برنامه هایی استفاده شود که تشخیص نسخه به درستی کار نمی کند، اما تاریخ انتشار در دسترس است.", + "changes": "تغییرات", + "releaseDate": "تاریخ انتشار", + "importFromURLsInFile": "وارد کردن از آدرس های اینترنتی موجود در فایل (مانند OPML)", + "versionDetectionExplanation": "تطبیق رشته نسخه با نسخه شناسایی شده از سیستم عامل", + "versionDetection": "تشخیص نسخه", + "standardVersionDetection": "تشخیص نسخه استاندارد", + "groupByCategory": "گروه بر اساس دسته", + "autoApkFilterByArch": "در صورت امکان سعی کنید APKها را بر اساس معماری CPU فیلتر کنید", + "autoLinkFilterByArch": "Attempt to filter links by CPU architecture if possible", + "overrideSource": "نادیده گرفتن منبع", + "dontShowAgain": "دوباره این را نشان نده", + "dontShowTrackOnlyWarnings": "هشدار 'فقط ردیابی' را نشان ندهید", + "dontShowAPKOriginWarnings": "هشدارهای منبع APK را نشان ندهید", + "moveNonInstalledAppsToBottom": "برنامه های نصب نشده را به نمای پایین برنامه ها منتقل کنید", + "gitlabPATLabel": "رمز دسترسی شخصی GitLab", + "about": "درباره", + "requiresCredentialsInSettings": "{}: این به اعتبارنامه های اضافی نیاز دارد (در تنظیمات)", + "checkOnStart": "بررسی در شروع", + "tryInferAppIdFromCode": "شناسه برنامه را از کد منبع استنباط کنید", + "removeOnExternalUninstall": "حذف خودکار برنامه های حذف نصب شده خارجی", + "pickHighestVersionCode": "انتخاب خودکار بالاترین کد نسخه APK", + "checkUpdateOnDetailPage": "برای باز کردن صفحه جزئیات برنامه، به‌روزرسانی‌ها را بررسی کنید", + "disablePageTransitions": "غیرفعال کردن انیمیشن های انتقال صفحه", + "reversePageTransitions": "انیمیشن های انتقال معکوس صفحه", + "minStarCount": "حداقل تعداد ستاره", + "addInfoBelow": "این اطلاعات را در زیر اضافه کنید", + "addInfoInSettings": "این اطلاعات را در تنظیمات اضافه کنید.", + "githubSourceNote": "با استفاده از کلید API می توان از محدودیت نرخ GitHub جلوگیری کرد.", + "sortByLastLinkSegment": "فقط بر اساس آخرین بخش پیوند مرتب کنید", + "filterReleaseNotesByRegEx": "یادداشت های انتشار را با بیان منظم فیلتر کنید", + "customLinkFilterRegex": "فیلتر پیوند سفارشی بر اساس عبارت منظم (پیش‌فرض '.apk$')", + "appsPossiblyUpdated": "به‌روزرسانی برنامه انجام شد", + "appsPossiblyUpdatedNotifDescription": "به کاربر اطلاع می‌دهد که به‌روزرسانی‌های یک یا چند برنامه به طور بالقوه در پس‌زمینه اعمال شده است", + "xWasPossiblyUpdatedToY": "ممکن است {} به {} به روز شده باشد.", + "enableBackgroundUpdates": "به روز رسانی پس زمینه را فعال کنید", + "backgroundUpdateReqsExplanation": "به روز رسانی پس زمینه ممکن است برای همه برنامه ها امکان پذیر نباشد.", + "backgroundUpdateLimitsExplanation": "موفقیت نصب پس‌زمینه تنها زمانی مشخص می‌شود که Obtainium باز شود.", + "verifyLatestTag": "برچسب \"آخرین\" را تأیید کنید", + "intermediateLinkRegex": "برای بازدید از پیوند «میانگین» فیلتر کنید", + "filterByLinkText": "لینک ها را بر اساس متن پیوند فیلتر کنید", + "matchLinksOutsideATags": "Match links outside tags", + "intermediateLinkNotFound": "لینک میانی پیدا نشد", + "intermediateLink": "پیوند میانی", + "exemptFromBackgroundUpdates": "معاف از به‌روزرسانی‌های پس‌زمینه (در صورت فعال بودن)", + "bgUpdatesOnWiFiOnly": "به‌روزرسانی‌های پس‌زمینه را در صورت عدم اتصال به Wi-Fi غیرفعال کنید", + "bgUpdatesWhileChargingOnly": "به‌روزرسانی‌های پس‌زمینه را هنگام شارژ نشدن غیرفعال کنید", + "autoSelectHighestVersionCode": "انتخاب خودکار بالاترین نسخه کد APK", + "versionExtractionRegEx": "نسخه استخراج RegEx", + "trimVersionString": "برش رشته نسخه با RegEx", + "matchGroupToUseForX": "مطابقت دادن گروه برای استفاده برای \"{}\"", + "matchGroupToUse": "گروه مورد استفاده را مطابقت دهید", + "highlightTouchTargets": "اهداف لمسی کمتر واضح را برجسته کنید", + "pickExportDir": "فهرست صادر کردن را انتخاب کنید", + "autoExportOnChanges": "صادر کردن خودکار تغییرات", + "includeSettings": "شامل تنظیمات", + "filterVersionsByRegEx": "فیلتر کردن نسخه ها با RegEx", + "trySelectingSuggestedVersionCode": "نسخه پیشنهادی APK نسخه کد را انتخاب کنید", + "dontSortReleasesList": "حفظ سفارش انتشار از API", + "reverseSort": "مرتب سازی معکوس", + "takeFirstLink": "لینک اول را بگیرید", + "skipSort": "از مرتب سازی صرف نظر کنید", + "debugMenu": "منوی اشکال زدایی", + "bgTaskStarted": "کار پس زمینه شروع شد - لاگ های مربوط را بررسی کنید.", + "runBgCheckNow": "اکنون به‌روزرسانی پس‌زمینه را بررسی کنید", + "versionExtractWholePage": "نسخه Extraction Regex را در کل صفحه اعمال کنید", + "installing": "در حال نصب", + "skipUpdateNotifications": "رد شدن از اعلان های به روز رسانی", + "updatesAvailableNotifChannel": "بروزرسانی در دسترس ", + "appsUpdatedNotifChannel": "برنامه ها به روز شدند", + "appsPossiblyUpdatedNotifChannel": "به‌روزرسانی برنامه انجام شد", + "errorCheckingUpdatesNotifChannel": "خطا در بررسی به‌روزرسانی‌ها", + "appsRemovedNotifChannel": "برنامه ها حذف شدند", + "downloadingXNotifChannel": "در حال دانلود {}", + "completeAppInstallationNotifChannel": "نصب کامل برنامه", + "checkingForUpdatesNotifChannel": "بررسی به‌روزرسانی‌ها", + "onlyCheckInstalledOrTrackOnlyApps": "فقط برنامه های نصب شده و فقط ردیابی را برای به روز رسانی بررسی کنید", + "supportFixedAPKURL": "پشتیبانی از URL های APK ثابت", + "selectX": "انتخاب کنید {}", + "parallelDownloads": "اجازه دانلود موازی", + "useShizuku": "برای نصب از Shizuku یا Sui استفاده کنید", + "shizukuBinderNotFound": "Shizuku در حال اجرا نیست", + "shizukuOld": "نسخه قدیمی Shizuku (<11) - آن را به روز کنید", + "shizukuOldAndroidWithADB": "Shizuku در Android < 8.1 با ADB اجرا می شود - اندروید را به روز کنید یا به جای آن از Sui استفاده کنید", + "shizukuPretendToBeGooglePlay": "Google Play را به عنوان منبع نصب تنظیم کنید (در صورت استفاده از Shizuku)", + "useSystemFont": "استفاده از فونت سیستم", + "useVersionCodeAsOSVersion": "استفاده کد نسخه برنامه به جای نسخه شناسایی شده توسط سیستم عامل استفاده کنید", + "requestHeader": "درخواست سطر بالایی", + "useLatestAssetDateAsReleaseDate": "استفاده از آخرین بارگذاری دارایی به عنوان تاریخ انتشار", + "defaultPseudoVersioningMethod": "روش پیش فرض شبه نسخه", + "partialAPKHash": "هش جزئی APK", + "APKLinkHash": "هش پیوند APK", + "directAPKLink": "لینک مستقیم APK", + "pseudoVersionInUse": "یک نسخه شبه در حال استفاده است", + "installed": "نصب شده است", + "latest": "آخرین", + "invertRegEx": "معکوس کردن عبارت منظم", + "note": "یادداشت", + "selfHostedNote": "از منوی کرکره ای \"{}\" می توان برای دسترسی به نمونه های خود میزبانی/سفارشی از هر منبعی استفاده کرد.", + "badDownload": "APK قابل تجزیه نیست (دانلود ناسازگار یا جزئی)", + "beforeNewInstallsShareToAppVerifier": "اشتراک‌گذاری برنامه‌های جدید با AppVerifier (در صورت وجود)", + "appVerifierInstructionToast": "در AppVerifier به اشتراک بگذارید، سپس پس از آماده شدن به اینجا برگردید.", + "wiki": "راهنما/ویکی", + "crowdsourcedConfigsLabel": "تنظیمات برنامه های مشارکت جمعی (با مسئولیت خود استفاده کنید)", + "crowdsourcedConfigsShort": "تنظیمات برنامه های مشارکت جمعی", + "allowInsecure": "درخواست های HTTP ناامن را مجاز کنید", + "stayOneVersionBehind": "یک نسخه از آخرین نسخه پشت سر بگذارید", + "useFirstApkOfVersion": "Auto-select first of multiple APKs", + "refreshBeforeDownload": "قبل از دانلود، جزئیات برنامه را بازخوانی کنید", + "tencentAppStore": "Tencent App Store", + "coolApk": "CoolApk", + "vivoAppStore": "vivo App Store (CN)", + "name": "Name", + "smartname": "Name (Smart)", + "sortMethod": "Sort Method", + "welcome": "Welcome", + "documentationLinksNote": "The Obtainium GitHub page linked below contains links to videos, articles, discussions, and other resources that will help you understand how to use the app.", + "batteryOptimizationNote": "Note that background downloads may work more reliably if you disable OS battery optimizations for Obtainium.", + "fileDeletionError": "Failed to delete file (try deleting it manually then try again): \"{}\"", + "foregroundService": "Obtainium foreground service", + "foregroundServiceExplanation": "Use a foreground service for update checking (more reliable, consumes more power)", + "fgServiceNotice": "This notification is required for background update checking (it can be hidden in the OS settings)", + "excludeSecrets": "Exclude secrets", + "GHReqPrefix": "'sky22333/hubproxy' instance for GitHub requests", + "includeZips": "Include ZIP files", + "zippedApkFilterRegEx": "Filter APKs inside ZIP", + "removeAppQuestion": { + "one": "برنامه حذف شود؟", + "other": "برنامه ها حذف شوند؟" + }, + "tooManyRequestsTryAgainInMinutes": { + "one": "درخواست‌های بسیار زیاد (نرخ محدود) - {} دقیقه دیگر دوباره امتحان کنید", + "other": "درخواست های بسیار زیاد (نرخ محدود) - بعد از {} دقیقه دوباره امتحان کنید" + }, + "bgUpdateGotErrorRetryInMinutes": { + "one": "بررسی به‌روزرسانی BG با یک {} مواجه شد، یک بررسی مجدد را در {} دقیقه برنامه‌ریزی می‌کند", + "other": "بررسی به‌روزرسانی BG با {} مواجه شد، یک بررسی مجدد را در {} دقیقه برنامه‌ریزی می‌کند" + }, + "bgCheckFoundUpdatesWillNotifyIfNeeded": { + "one": "بررسی به‌روزرسانی BG پیدا شد {} به‌روزرسانی - در صورت نیاز به کاربر اطلاع می‌دهد", + "other": "بررسی به‌روزرسانی BG {} به‌روزرسانی‌های یافت شده - در صورت نیاز به کاربر اطلاع می‌دهد" + }, + "apps": { + "one": "برنامه {}", + "other": "{} برنامه ها" + }, + "url": { + "one": "{} آدرس اینترنتی", + "other": "{} آدرس های اینترنتی" + }, + "minute": { + "one": "{} دقیقه", + "other": "{} دقیقه" + }, + "hour": { + "one": "{} ساعت", + "other": "{} ساعت" + }, + "day": { + "one": "{} روز", + "other": "{} روز" + }, + "clearedNLogsBeforeXAfterY": { + "one": "گزارش {n} پاک شد (قبل از = {پیش از}، بعد = {بعد})", + "other": "{n} گزارش پاک شد (قبل از = {پیش از}، بعد = {بعد})" + }, + "xAndNMoreUpdatesAvailable": { + "one": "{} و 1 برنامه دیگر به‌روزرسانی دارند.", + "other": "{} و {} برنامه دیگر به روز رسانی دارند." + }, + "xAndNMoreUpdatesInstalled": { + "one": "{} و 1 برنامه دیگر به روز شدند.", + "other": "{} و {} برنامه دیگر به روز شدند." + }, + "xAndNMoreUpdatesFailed": { + "one": "{} و 1 برنامه دیگر به روز نشد.", + "other": "{} و {} برنامه دیگر به روز نشد." + }, + "xAndNMoreUpdatesPossiblyInstalled": { + "one": "{} و 1 برنامه دیگر ممکن است به روز شده باشند.", + "other": "ممکن است {} و {} برنامه های دیگر به روز شده باشند." + }, + "apk": { + "one": "{} APK", + "other": "{} APKs" + } +} diff --git a/assets/translations/fr.json b/assets/translations/fr.json new file mode 100644 index 0000000..9a3f25e --- /dev/null +++ b/assets/translations/fr.json @@ -0,0 +1,402 @@ +{ + "invalidURLForSource": "URL de l'application {} invalide", + "noReleaseFound": "Impossible de trouver une publication correspondante", + "noVersionFound": "Impossible de déterminer la version de la publication", + "urlMatchesNoSource": "L'URL ne correspond pas à une source connue", + "cantInstallOlderVersion": "Impossible d'installer une ancienne version de l'application", + "appIdMismatch": "L'ID du paquet téléchargé ne correspond pas à l'ID de l'application existante", + "functionNotImplemented": "Cette classe n'implémente pas cette fonction", + "placeholder": "Espace réservé", + "someErrors": "Des erreurs sont survenues", + "unexpectedError": "Erreur inattendue", + "ok": "OK", + "and": "et", + "githubPATLabel": "Jeton d'accès personnel GitHub (augmente la limite de débit)", + "includePrereleases": "Inclure les versions préliminaires", + "fallbackToOlderReleases": "Revenir aux anciennes versions", + "filterReleaseTitlesByRegEx": "Filtrer les titres de version par expression régulière", + "invalidRegEx": "Expression régulière invalide", + "noDescription": "Aucune description", + "cancel": "Annuler", + "continue": "Continuer", + "requiredInBrackets": "(Requis)", + "dropdownNoOptsError": "ERREUR: LA LISTE DÉROULANTE DOIT AVOIR AU MOINS UNE OPTION", + "colour": "Couleur", + "standard": "Standard", + "custom": "Personnalisé", + "useMaterialYou": "Utiliser Material You", + "githubStarredRepos": "dépôts étoilés GitHub", + "uname": "Nom d'utilisateur", + "wrongArgNum": "Nombre incorrect des arguments fournis", + "xIsTrackOnly": "{} en Suivi uniquement", + "source": "source", + "app": "Appli", + "appsFromSourceAreTrackOnly": "Les applications de cette source sont en 'Suivi uniquement'.", + "youPickedTrackOnly": "Vous avez sélectionné l'option 'Suivi uniquement'.", + "trackOnlyAppDescription": "L'application sera suivie pour les mises à jour, mais Obtainium ne pourra pas la télécharger ou l'installer.", + "cancelled": "Annulé", + "appAlreadyAdded": "Application déjà ajoutée", + "alreadyUpToDateQuestion": "L'application est déjà à jour?", + "addApp": "Ajouter appli", + "appSourceURL": "URL source de l'application", + "error": "Erreur", + "add": "Ajouter", + "searchSomeSourcesLabel": "Rechercher (certaines sources uniquement)", + "search": "Rechercher", + "additionalOptsFor": "Options supplémentaires pour {}", + "supportedSources": "Sources prises en charge", + "trackOnlyInBrackets": "(Suivi uniquement)", + "searchableInBrackets": "(Interrogeable)", + "appsString": "Applis", + "noApps": "Aucune application", + "noAppsForFilter": "Aucune application correspondant au filtre", + "byX": "Par {}", + "percentProgress": "Progression : {}%", + "pleaseWait": "Veuillez patienter", + "updateAvailable": "Mise à jour disponible", + "notInstalled": "Non installée", + "pseudoVersion": "Version fictive", + "selectAll": "Tout sélectionner", + "deselectX": "Désélectionner {}", + "xWillBeRemovedButRemainInstalled": "{} sera supprimée d'Obtainium mais restera installée sur l'appareil.", + "removeSelectedAppsQuestion": "Supprimer les applications sélectionnées ?", + "removeSelectedApps": "Supprimer les applications sélectionnées", + "updateX": "Mettre à jour {}", + "installX": "Installer {}", + "markXTrackOnlyAsUpdated": "Marquer {}\n(Suivi uniquement)\ncomme étant à jour", + "changeX": "Modifier {}", + "installUpdateApps": "Installer/Mettre à jour les applications", + "installUpdateSelectedApps": "Installer/Mettre à jour les applications sélectionnées", + "markXSelectedAppsAsUpdated": "Marquer les {} applications sélectionnées comme étant à jour ?", + "no": "Non", + "yes": "Oui", + "markSelectedAppsUpdated": "Marquer les applications sélectionnées comme étant à jour", + "pinToTop": "Épingler en haut", + "unpinFromTop": "Désépingler du haut", + "resetInstallStatusForSelectedAppsQuestion": "Réinitialiser l'état d'installation des applications sélectionnées ?", + "installStatusOfXWillBeResetExplanation": "L'état d'installation de toutes les applications sélectionnées sera réinitialisé.\n\nCela peut être utile lorsque la version de l'application affichée dans Obtainium est incorrecte en raison de l'échec des mises à jour ou d'autres problèmes.", + "customLinkMessage": "Ces liens fonctionnent sur les appareils sur lesquels Obtainium est installé", + "shareAppConfigLinks": "Partager la configuration de l'application sous forme de lien HTML", + "shareSelectedAppURLs": "Partager les URL des applications sélectionnées", + "resetInstallStatus": "Réinitialiser l'état d'installation des applications", + "more": "Plus", + "removeOutdatedFilter": "Supprimer le filtre des applications obsolètes", + "showOutdatedOnly": "Afficher uniquement les applications obsolètes", + "filter": "Filtre", + "filterApps": "Filtrer les applications", + "appName": "Nom de l'application", + "author": "Auteur", + "upToDateApps": "Applications à jour", + "nonInstalledApps": "Applications non installées", + "importExport": "Import/Export", + "settings": "Paramètres", + "exportedTo": "Exporté vers {}", + "obtainiumExport": "Exporter la configuration d'Obtainium", + "invalidInput": "Entrée invalide", + "importedX": "Importé {}", + "obtainiumImport": "Importer la configuration sur Obtainium", + "importFromURLList": "Importer depuis une liste d'URL", + "searchQuery": "Requête de recherche", + "appURLList": "Liste d'URL des applications", + "line": "Ligne", + "searchX": "Rechercher {}", + "noResults": "Aucun résultat", + "importX": "Importation de {}", + "importedAppsIdDisclaimer": "Les applications importées peuvent s'afficher de manière incorrecte comme étant \"Non installées\".\nPour résoudre ce problème, réinstallez-les via Obtainium.\nCela n'affectera pas les données des applications.\n\nCela n'affecte que les méthodes d'importation d'URL et par des tiers.", + "importErrors": "Erreurs lors de l'importation", + "importedXOfYApps": "{} applications sur {} ont été importées.", + "followingURLsHadErrors": "Les URL suivantes comportent des erreurs :", + "selectURL": "Sélectionner l'URL", + "selectURLs": "Sélectionner les URL", + "pick": "Choisir", + "theme": "Thème", + "dark": "Sombre", + "light": "Clair", + "followSystem": "Suivre le système", + "followSystemThemeExplanation": "Suivre le thème du système est possible en utilisant des applications tierces.", + "useBlackTheme": "Utiliser un thème noir", + "appSortBy": "Trier les applications par", + "authorName": "Auteur/Nom", + "nameAuthor": "Nom/Auteur", + "asAdded": "Date d'ajout", + "appSortOrder": "Ordre de tri des applications", + "ascending": "Ascendant", + "descending": "Descendant", + "bgUpdateCheckInterval": "Intervalle de recherche de mises à jour en arrière-plan", + "neverManualOnly": "Jamais - Manuellement uniquement", + "appearance": "Apparence", + "showWebInAppView": "Afficher la page Web source dans l'onglet 'Applications'", + "pinUpdates": "Épingler les mises à jour en haut de l'onglet 'Applications'", + "updates": "Mises à jour", + "sourceSpecific": "Spécifique à la source", + "appSource": "Source de l'application", + "noLogs": "Aucun journal", + "appLogs": "Journaux d'application", + "close": "Fermer", + "share": "Partager", + "appNotFound": "Application introuvable", + "obtainiumExportHyphenatedLowercase": "export-obtainium", + "pickAnAPK": "Sélectionner un APK", + "appHasMoreThanOnePackage": "{} a plus d'un paquet :", + "deviceSupportsXArch": "Votre appareil prend en charge l'architecture CPU {}.", + "deviceSupportsFollowingArchs": "Votre appareil prend en charge les architectures CPU suivantes : ", + "warning": "Avertissement", + "sourceIsXButPackageFromYPrompt": "La source de l'application est '{}' mais le paquet de mise à jour provient de '{}'. Continuer ?", + "updatesAvailable": "Mises à jour disponibles", + "updatesAvailableNotifDescription": "Notifie à l'utilisateur que des mises à jour sont disponibles pour une ou plusieurs applications suivies par Obtainium.", + "noNewUpdates": "Aucune nouvelle mise à jour.", + "xHasAnUpdate": "{} a une mise à jour.", + "appsUpdated": "Applications mises à jour", + "appsNotUpdated": "Échec de la mise à jour des applications", + "appsUpdatedNotifDescription": "Notifie à l'utilisateur que des mises à jour d'une ou plusieurs applications ont été installées en arrière-plan.", + "xWasUpdatedToY": "{} a été mise à jour vers {}.", + "xWasNotUpdatedToY": "Échec de la mise à jour de {} vers {}.", + "errorCheckingUpdates": "Erreur lors de la recherche de mises à jour", + "errorCheckingUpdatesNotifDescription": "Notifie l'utilisateur lorsque la recherche de mises à jour en arrière-plan échoue.", + "appsRemoved": "Applications supprimées", + "appsRemovedNotifDescription": "Notifie à l'utilisateur qu'une ou plusieurs applications ont été supprimées en raison d'erreurs lors de leur chargement.", + "xWasRemovedDueToErrorY": "{} a été supprimée en raison de cette erreur : {}", + "completeAppInstallation": "Installation complète de l'application", + "obtainiumMustBeOpenToInstallApps": "Obtainium doit être ouvert pour installer les applications", + "completeAppInstallationNotifDescription": "Demande à l'utilisateur de retourner sur Obtainium pour terminer l'installation d'une application", + "checkingForUpdates": "Recherche de mises à jour", + "checkingForUpdatesNotifDescription": "Notification temporaire qui apparaît lors de la recherche de mises à jour", + "pleaseAllowInstallPerm": "Veuillez autoriser Obtainium à installer des applications", + "trackOnly": "Suivi uniquement", + "errorWithHttpStatusCode": "Erreur {}", + "versionCorrectionDisabled": "Correction de version désactivée (le plugin ne semble pas fonctionner)", + "unknown": "Inconnu", + "none": "Aucun", + "all": "Tous", + "never": "Jamais", + "latestVersionX": "Dernière version : {}", + "installedVersionX": "Version installée : {}", + "lastUpdateCheckX": "Dernière recherche de mises à jour : {}", + "remove": "Supprimer", + "yesMarkUpdated": "Oui, marquer comme étant à jour", + "fdroid": "F-Droid Officiel", + "appIdOrName": "ID ou nom de l'application", + "appId": "ID de l'application", + "appWithIdOrNameNotFound": "Aucune application n'a été trouvée avec cet identifiant ou ce nom", + "reposHaveMultipleApps": "Les dépôts peuvent contenir plusieurs applications", + "fdroidThirdPartyRepo": "Dépôt tiers F-Droid", + "install": "Installer", + "markInstalled": "Marquer comme installée", + "update": "Mettre à jour", + "markUpdated": "Marquer comme à jour", + "additionalOptions": "Options supplémentaires", + "disableVersionDetection": "Désactiver la détection de la version", + "noVersionDetectionExplanation": "Cette option ne doit être utilisée que pour les applications où la détection de la version ne fonctionne pas correctement.", + "downloadingX": "Téléchargement de {}", + "downloadX": "Télécharger {}", + "downloadedX": "Téléchargé {}", + "releaseAsset": "Élément de version", + "downloadNotifDescription": "Notifie l'utilisateur sur l'avancement du téléchargement d'une application", + "noAPKFound": "Aucun APK trouvé", + "noVersionDetection": "Aucune détection de version", + "categorize": "Catégoriser", + "categories": "Catégories", + "category": "Catégorie", + "noCategory": "Aucune catégorie", + "noCategories": "Aucune catégorie", + "deleteCategoriesQuestion": "Supprimer les catégories ?", + "categoryDeleteWarning": "Toutes les applications des catégories supprimées seront définies comme non catégorisées.", + "addCategory": "Ajouter une catégorie", + "label": "Nom", + "language": "Langue", + "copiedToClipboard": "Copié dans le presse-papier", + "storagePermissionDenied": "Permission de stockage refusée", + "selectedCategorizeWarning": "Cela va remplacer toutes les catégories définies des applications sélectionnées.", + "filterAPKsByRegEx": "Filtrer les APK par expression régulière", + "removeFromObtainium": "Supprimer d'Obtainium", + "uninstallFromDevice": "Désinstaller de l'appareil", + "onlyWorksWithNonVersionDetectApps": "Ne fonctionne qu'avec les applications dont la détection de la version est désactivée.", + "releaseDateAsVersion": "Utiliser la date de sortie comme version", + "releaseTitleAsVersion": "Utiliser le titre de la version comme chaîne de version", + "releaseDateAsVersionExplanation": "Cette option ne doit être utilisée que pour les applications pour lesquelles la détection de la version ne fonctionne pas correctement, mais dont une date de sortie est disponible.", + "changes": "Modifications", + "releaseDate": "Date de sortie", + "importFromURLsInFile": "Importer à partir des URLs d'un fichier (comme OPML)", + "versionDetectionExplanation": "Réconcilier la chaîne de version avec la version détectée par le système d'exploitation", + "versionDetection": "Détection de la version", + "standardVersionDetection": "Détection de la version standard", + "groupByCategory": "Grouper par catégorie", + "autoApkFilterByArch": "Essayer de filtrer les APKs par architecture CPU si possible", + "autoLinkFilterByArch": "Essayer de filtrer les liens en fonction de l'architecture de l'unité centrale si possible", + "overrideSource": "Remplacer la source", + "dontShowAgain": "Ne plus afficher", + "dontShowTrackOnlyWarnings": "Ne plus afficher les avertissements 'Suivi uniquement'", + "dontShowAPKOriginWarnings": "Ne plus afficher les avertissements sur l'origine de l'APK", + "moveNonInstalledAppsToBottom": "Déplacer les applications non installées vers le bas de la vue Applications", + "gitlabPATLabel": "Jeton d'accès personnel GitLab", + "about": "À propos", + "requiresCredentialsInSettings": "{} a besoin d'informations d'identification supplémentaires (dans les Paramètres)", + "checkOnStart": "Rechercher les mises à jour au démarrage", + "tryInferAppIdFromCode": "Essayer de déduire l'identifiant de l'application à partir du code source", + "removeOnExternalUninstall": "Supprimer automatiquement les applications désinstallées en externe", + "pickHighestVersionCode": "Sélectionner automatiquement la version la plus récente du code APK", + "checkUpdateOnDetailPage": "Rechercher les mises à jour lors de l'ouverture de la page détaillée d'une application", + "disablePageTransitions": "Désactiver les animations de transition de page", + "reversePageTransitions": "Inverser les animations de transition de page", + "minStarCount": "Nombre minimum d'étoiles", + "addInfoBelow": "Ajoutez cette information ci-dessous.", + "addInfoInSettings": "Ajoutez cette information dans les paramètres.", + "githubSourceNote": "La limitation du débit de GitHub peut être évitée à l'aide d'une clé d'API.", + "sortByLastLinkSegment": "Trier par le dernier segment du lien", + "filterReleaseNotesByRegEx": "Filtrer les notes de version par expression régulière", + "customLinkFilterRegex": "Filtre de lien APK personnalisé par expression régulière (par défaut '.apk$')", + "appsPossiblyUpdated": "Tentatives de mise à jour d'applications", + "appsPossiblyUpdatedNotifDescription": "Notifie à l'utilisateur que des mises à jour d'une ou plusieurs applications ont potentiellement été appliquées en arrière-plan", + "xWasPossiblyUpdatedToY": "{} a peut-être été mise à jour vers {}.", + "enableBackgroundUpdates": "Activer les mises à jour en arrière-plan", + "backgroundUpdateReqsExplanation": "Les mises à jour en arrière-plan peuvent ne pas être possibles pour toutes les applications.", + "backgroundUpdateLimitsExplanation": "Le succès d'une installation en arrière-plan ne peut être déterminé qu'à l'ouverture d'Obtainium.", + "verifyLatestTag": "Vérifier la balise 'latest'", + "intermediateLinkRegex": "Filtrer un lien 'intermédiaire' à visiter", + "filterByLinkText": "Filtrer les liens par texte du lien", + "matchLinksOutsideATags": "Liens en dehors des balises ", + "intermediateLinkNotFound": "Lien intermédiaire introuvable", + "intermediateLink": "Lien intermédiaire", + "exemptFromBackgroundUpdates": "Exclure des mises à jour en arrière-plan (si activées)", + "bgUpdatesOnWiFiOnly": "Désactiver les mises à jour en arrière-plan lorsque vous n'êtes pas en Wi-Fi", + "bgUpdatesWhileChargingOnly": "Désactiver les mises à jour en arrière-plan lorsque l'appareil n'est pas en charge", + "autoSelectHighestVersionCode": "Sélectionner automatiquement la version la plus récente du code APK", + "versionExtractionRegEx": "Expression régulière d'extraction de version", + "trimVersionString": "Découper la chaîne de version avec une expression régulière", + "matchGroupToUseForX": "Groupe de correspondance à utiliser pour \"{}\"", + "matchGroupToUse": "Groupe de correspondance à utiliser pour l'extraction de la version par expression régulière", + "highlightTouchTargets": "Mettre en évidence les zones tactiles moins évidentes", + "pickExportDir": "Sélectionner le dossier d'exportation", + "autoExportOnChanges": "Exporter automatiquement lors de modifications", + "includeSettings": "Inclure les paramètres", + "filterVersionsByRegEx": "Filtrer les versions par expression régulière", + "trySelectingSuggestedVersionCode": "Essayer de sélectionner le code de version APK suggéré", + "dontSortReleasesList": "Conserver l'ordre de version de l'API", + "reverseSort": "Tri inversé", + "takeFirstLink": "Utiliser le premier lien", + "skipSort": "Ignorer le tri", + "debugMenu": "Menu de débogage", + "bgTaskStarted": "Tâche en arrière-plan démarrée - vérifier les journaux.", + "runBgCheckNow": "Exécuter la recherche de mises à jour en arrière-plan maintenant", + "versionExtractWholePage": "Appliquer l'expression régulière d'extraction de version à l'ensemble de la page", + "installing": "Installation", + "skipUpdateNotifications": "Désactiver les notifications de mise à jour", + "updatesAvailableNotifChannel": "Mises à jour disponibles", + "appsUpdatedNotifChannel": "Applications mises à jour", + "appsPossiblyUpdatedNotifChannel": "Tentatives de mise à jour d'applications", + "errorCheckingUpdatesNotifChannel": "Erreur lors de la recherche de mises à jour", + "appsRemovedNotifChannel": "Applications supprimées", + "downloadingXNotifChannel": "Téléchargement de {}", + "completeAppInstallationNotifChannel": "Terminer l'installation de l'application", + "checkingForUpdatesNotifChannel": "Recherche de mises à jour", + "onlyCheckInstalledOrTrackOnlyApps": "Rechercher uniquement les mises à jour des applications installées et des applications 'Suivi uniquement'", + "supportFixedAPKURL": "Prise en charge des URL APK fixes", + "selectX": "Sélectionner {}", + "parallelDownloads": "Autoriser les téléchargements simultanés", + "useShizuku": "Utiliser Shizuku ou Sui pour l'installation", + "shizukuBinderNotFound": "Le service Shizuku n'est pas en cours d'exécution", + "shizukuOld": "Ancienne version de Shizuku (<11) - veuillez le mettre à jour", + "shizukuOldAndroidWithADB": "Shizuku fonctionne sur Android < 8.1 avec ADB - veuillez mettre à jour Android ou utiliser Sui à la place", + "shizukuPretendToBeGooglePlay": "Définir Google Play comme source d'installation (si Shizuku est utilisé)", + "useSystemFont": "Utiliser la police du système", + "useVersionCodeAsOSVersion": "Utiliser le code de version de l'application détectée par le système d'exploitation", + "requestHeader": "En-tête de requête", + "useLatestAssetDateAsReleaseDate": "Utiliser la date du dernier élément mis en ligne comme date de sortie", + "defaultPseudoVersioningMethod": "Méthode de versionnage fictif par défaut", + "partialAPKHash": "Hash partiel de l'APK", + "APKLinkHash": "Hash du lien APK", + "directAPKLink": "Lien direct de l'APK", + "pseudoVersionInUse": "Une version fictive est utilisée", + "installed": "Installée", + "latest": "Dernière version", + "invertRegEx": "Inverser l'expression régulière", + "note": "Note", + "selfHostedNote": "La liste déroulante \"{}\" peut être utilisée pour accéder à des instances auto-hébergées/personnalisées de n'importe quelle source.", + "badDownload": "L'APK n'a pas pu être analysé (téléchargement incompatible ou partiel)", + "beforeNewInstallsShareToAppVerifier": "Partager les nouvelles applications avec AppVerifier (si disponible)", + "appVerifierInstructionToast": "Partagez avec AppVerifier, puis revenez ici lorsque tout est prêt.", + "wiki": "Aide/Wiki", + "crowdsourcedConfigsLabel": "Configurations d'applications communautaires (à utiliser à vos risques et périls)", + "crowdsourcedConfigsShort": "Applications communautaires", + "allowInsecure": "Autoriser les requêtes HTTP non sécurisées", + "stayOneVersionBehind": "Rester une version en arrière de la dernière", + "useFirstApkOfVersion": "Sélection automatique du premier APK parmi plusieurs", + "refreshBeforeDownload": "Actualiser les détails de l'application avant de la télécharger", + "tencentAppStore": "Tencent App Store", + "coolApk": "CoolApk", + "vivoAppStore": "vivo App Store (CN)", + "name": "Nom", + "smartname": "Nom (Smart)", + "sortMethod": "Méthode de tri", + "welcome": "Bienvenue", + "documentationLinksNote": "La page GitHub d'Obtainium, dont le lien figure ci-dessous, contient des liens vers des vidéos, des articles, des discussions et d'autres ressources qui vous aideront à comprendre comment utiliser l'application.", + "batteryOptimizationNote": "Notez que les téléchargements en arrière-plan peuvent fonctionner de manière plus fiable si vous désactivez les optimisations de la batterie du système d'exploitation pour Obtainium.", + "fileDeletionError": "Échec de la suppression du fichier (essayez de le supprimer manuellement puis réessayez) : \"{}\"", + "foregroundService": "Service d'avant-plan Obtainium", + "foregroundServiceExplanation": "Utiliser un service de premier plan pour la vérification des mises à jour (plus fiable, consomme plus d'énergie)", + "fgServiceNotice": "Cette notification est nécessaire pour la vérification des mises à jour en arrière-plan (elle peut être masquée dans les paramètres du système d'exploitation).", + "excludeSecrets": "Exclure les secrets", + "GHReqPrefix": "instance 'sky22333/hubproxy' pour les requêtes GitHub", + "includeZips": "Inclure les fichiers ZIP", + "zippedApkFilterRegEx": "Filtrer les APK à l'intérieur du ZIP", + "removeAppQuestion": { + "one": "Supprimer l'application ?", + "other": "Supprimer les applications ?" + }, + "tooManyRequestsTryAgainInMinutes": { + "one": "Trop de requêtes (taux limité) - réessayez dans {} minute", + "other": "Trop de requêtes (taux limité) - réessayez dans {} minutes" + }, + "bgUpdateGotErrorRetryInMinutes": { + "one": "La recherche de mise à jour en arrière-plan a rencontré une erreur {}, une nouvelle tentative programmée dans {} minute", + "other": "La recherche de mise à jour en arrière-plan a rencontré une erreur {}, une nouvelle tentative programmée dans {} minutes" + }, + "bgCheckFoundUpdatesWillNotifyIfNeeded": { + "one": "La recherche de mises à jour en arrière-plan a trouvé {} mise à jour - l'utilisateur sera notifié si nécessaire", + "other": "La recherche de mises à jour en arrière-plan a trouvé {} mises à jour - l'utilisateur sera notifié si nécessaire" + }, + "apps": { + "one": "{} Application", + "other": "{} Applications" + }, + "url": { + "one": "{} URL", + "other": "{} URLs" + }, + "minute": { + "one": "{} minute", + "other": "{} minutes" + }, + "hour": { + "one": "{} heure", + "other": "{} heures" + }, + "day": { + "one": "{} jour", + "other": "{} jours" + }, + "clearedNLogsBeforeXAfterY": { + "one": "Nettoyage du journal {n} (avant = {before}, après = {after})", + "other": "Nettoyage des journaux {n} (avant = {before}, après = {after})" + }, + "xAndNMoreUpdatesAvailable": { + "one": "{} et 1 autre application ont des mises à jour.", + "other": "{} et {} autres applications ont des mises à jour." + }, + "xAndNMoreUpdatesInstalled": { + "one": "{} et 1 autre application ont été mises à jour.", + "other": "{} et {} autres applications ont été mises à jour." + }, + "xAndNMoreUpdatesFailed": { + "one": "Échec de la mise à jour de {} et 1 autre application.", + "other": "Échec de la mise à jour de {} et {} autres applications." + }, + "xAndNMoreUpdatesPossiblyInstalled": { + "one": "{} et 1 autre application ont peut-être été mises à jour.", + "other": "{} et {} autres applications ont peut-être été mises à jour." + }, + "apk": { + "one": "{} APK", + "other": "{} APKs" + } +} diff --git a/assets/translations/hu.json b/assets/translations/hu.json new file mode 100644 index 0000000..f1a1127 --- /dev/null +++ b/assets/translations/hu.json @@ -0,0 +1,402 @@ +{ + "invalidURLForSource": "Érvénytelen a(z) {} alkalmazás webcíme", + "noReleaseFound": "Nem található megfelelő kiadás", + "noVersionFound": "Nem sikerült meghatározni a kiadás verzióját", + "urlMatchesNoSource": "A webcím nem egyezik egyetlen ismert forrással sem", + "cantInstallOlderVersion": "Nem telepíthető egy alkalmazás régebbi verziója", + "appIdMismatch": "A letöltött csomagazonosító nem egyezik a meglévő alkalmazás azonosítójával", + "functionNotImplemented": "Ebben az ágban nincs implementálva ez a funkció", + "placeholder": "Helyőrző", + "someErrors": "Néhány hiba történt", + "unexpectedError": "Váratlan hiba", + "ok": "OK", + "and": "és", + "githubPATLabel": "GitHub személyes hozzáférési token (megnöveli a lekérdezés-korlátozást)", + "includePrereleases": "Tartalmazza az előzetes kiadásokat", + "fallbackToOlderReleases": "Visszatérés a régebbi kiadásokhoz", + "filterReleaseTitlesByRegEx": "A kiadás címeinek szűrése reguláris kifejezéssel", + "invalidRegEx": "Érvénytelen reguláris kifejezés", + "noDescription": "Nincs leírás", + "cancel": "Mégse", + "continue": "Folytatás", + "requiredInBrackets": "(Szükséges)", + "dropdownNoOptsError": "HIBA: A LEGÖRDÜLŐ LISTÁNAK LEGALÁBB EGY KIVÁLASZTHATÓ BEÁLLÍTÁSSAL KELL RENDELKEZNIE", + "colour": "Szín", + "standard": "Általános", + "custom": "Egyéni", + "useMaterialYou": "Material You használata", + "githubStarredRepos": "Csillagozott GitHub-tárolók", + "uname": "Felhasználónév", + "wrongArgNum": "A megadott argumentumok száma nem megfelelő", + "xIsTrackOnly": "A(z) {} csak nyomon követhető", + "source": "Forrás", + "app": "Alkalmazás", + "appsFromSourceAreTrackOnly": "Az ebből a forrásból származó alkalmazások „csak nyomon követhetők”.", + "youPickedTrackOnly": "„Csak nyomon követés” beállítást választotta.", + "trackOnlyAppDescription": "Az alkalmazás frissítéseit nyomon követi, de az Obtainium nem tudja letölteni vagy telepíteni.", + "cancelled": "Visszavonva", + "appAlreadyAdded": "Az alkalmazás már hozzá van adva", + "alreadyUpToDateQuestion": "Az alkalmazás már naprakész?", + "addApp": "Hozzáadás", + "appSourceURL": "Alkalmazás forrásának webcíme", + "error": "Hiba", + "add": "Hozzáadás", + "searchSomeSourcesLabel": "Keresés (csak bizonyos források)", + "search": "Keresés", + "additionalOptsFor": "További lehetőségek a következőhöz: {}", + "supportedSources": "Támogatott források", + "trackOnlyInBrackets": "(Csak nyomon követés)", + "searchableInBrackets": "(Kereshető)", + "appsString": "Alkalmazások", + "noApps": "Nincsenek alkalmazások", + "noAppsForFilter": "Nincsenek alkalmazások a szűrőhöz", + "byX": "Fejlesztő: {}", + "percentProgress": "Folyamat: {}%", + "pleaseWait": "Kis türelmet", + "updateAvailable": "Frissítés érhető el", + "notInstalled": "Nem telepített", + "pseudoVersion": "pszeudoverzió", + "selectAll": "Összes kiválasztása", + "deselectX": "A(z) {} kiválasztásának elvetése", + "xWillBeRemovedButRemainInstalled": "A(z) {} el lesz távolítva az Obtainiumból, de továbbra is telepítve marad az eszközön.", + "removeSelectedAppsQuestion": "A kiválasztott alkalmazások eltávolítása?", + "removeSelectedApps": "A kiválasztott alkalmazások eltávolítása", + "updateX": "{} frissítése", + "installX": "{} telepítése", + "markXTrackOnlyAsUpdated": "Megjelölés: {}\n(Csak nyomon követés)\nFrissítettként", + "changeX": "{}-változás", + "installUpdateApps": "Alkalmazások telepítése/frissítése", + "installUpdateSelectedApps": "A kiválasztott alkalmazások telepítése/frissítése", + "markXSelectedAppsAsUpdated": "A(z) {} kiválasztott alkalmazás megjelölése frissítettként?", + "no": "Nem", + "yes": "Igen", + "markSelectedAppsUpdated": "A kiválasztott alkalmazások megjelölése frissítettként", + "pinToTop": "Kitűzés felülre", + "unpinFromTop": "Kitűzés megszüntetése", + "resetInstallStatusForSelectedAppsQuestion": "Visszaállítja a kiválasztott alkalmazások telepítési állapotát?", + "installStatusOfXWillBeResetExplanation": "A kiválasztott alkalmazások telepítési állapota visszaáll.\n\nEz akkor segíthet, ha az Obtainiumban megjelenített alkalmazás-verzió hibás, a frissítések vagy egyéb problémák miatt.", + "customLinkMessage": "Ezek a hivatkozások a telepített Obtainiummal rendelkező eszközökön működnek", + "shareAppConfigLinks": "Alkalmazás-konfiguráció megosztása HTML-hivatkozásként", + "shareSelectedAppURLs": "A kiválasztott alkalmazás hivatkozásának megosztása", + "resetInstallStatus": "Telepítési állapot visszaállítása", + "more": "További", + "removeOutdatedFilter": "Elavult alkalmazás-szűrő eltávolítása", + "showOutdatedOnly": "Csak az elavult alkalmazások megjelenítése", + "filter": "Szűrő", + "filterApps": "Alkalmazások szűrése", + "appName": "Név", + "author": "Szerző", + "upToDateApps": "Naprakész alkalmazások", + "nonInstalledApps": "Nem telepített alkalmazások", + "importExport": "Adatmozgatás", + "settings": "Beállítások", + "exportedTo": "Exportálva ide: {}", + "obtainiumExport": "Obtainium-adatok exportálása", + "invalidInput": "Hibás bemenet", + "importedX": "Importálva innen: {}", + "obtainiumImport": "Obtainium-adatok importálása", + "importFromURLList": "Importálás webcímlistából", + "searchQuery": "Keresési lekérdezés", + "appURLList": "Alkalmazás-webcímlista", + "line": "Sor", + "searchX": "{} keresése", + "noResults": "Nincs találat", + "importX": "{} importálása", + "importedAppsIdDisclaimer": "Előfordulhat, hogy az importált alkalmazások helytelenül „Nincs telepítve” jelzéssel jelennek meg.\nA probléma megoldásához telepítse újra őket az Obtainiumon keresztül.\nEz nem érinti az alkalmazásadatokat.\n\nCsak a webcímekre és a harmadik féltől származó importálási módszerekre vonatkozik.", + "importErrors": "Importálási hibák", + "importedXOfYApps": "{}/{} alkalmazás importálva.", + "followingURLsHadErrors": "A következő webcímek hibákat tartalmaztak:", + "selectURL": "Webcím kiválasztása", + "selectURLs": "Webcímek kiválasztása", + "pick": "Kiválasztás", + "theme": "Téma", + "dark": "Sötét", + "light": "Világos", + "followSystem": "Rendszerbeállítás használata", + "followSystemThemeExplanation": "A következő rendszer téma csak harmadik féltől származó alkalmazások használatával lehetséges", + "useBlackTheme": "Teljesen fekete sötét téma használata", + "appSortBy": "Rendezési szempont", + "authorName": "Szerző/Név", + "nameAuthor": "Név/Szerző", + "asAdded": "Hozzáadás dátuma", + "appSortOrder": "Rendezési sorrend", + "ascending": "Növekvő", + "descending": "Csökkenő", + "bgUpdateCheckInterval": "Időtartam a frissítések háttérellenőrzése között", + "neverManualOnly": "Soha – csak kézi", + "appearance": "Megjelenés", + "showWebInAppView": "Forrás megjelenítése az alkalmazásnézetben", + "pinUpdates": "Frissítések kitűzése az alkalmazásnézet tetejére", + "updates": "Frissítések", + "sourceSpecific": "Forrásspecifikus", + "appSource": "Alkalmazás forrása", + "noLogs": "Nincsenek naplók", + "appLogs": "Alkalmazásnaplók", + "close": "Bezárás", + "share": "Megosztás", + "appNotFound": "Az alkalmazás nem található", + "obtainiumExportHyphenatedLowercase": "obtainium-adat", + "pickAnAPK": "Válasszon ki egy APK-t", + "appHasMoreThanOnePackage": "A(z) {} egynél több csomaggal rendelkezik:", + "deviceSupportsXArch": "Ez az eszköz támogatja a(z) {} CPU-architektúrát.", + "deviceSupportsFollowingArchs": "Ez az eszköz a következő CPU-architektúrákat támogatja:", + "warning": "Figyelem", + "sourceIsXButPackageFromYPrompt": "Az alkalmazás forrása a(z) „{}-tároló”, de a kiadási csomag innen származik: „{}”. Folytatja?", + "updatesAvailable": "Frissítések érhetők el", + "updatesAvailableNotifDescription": "Értesíti a felhasználót, hogy egy vagy több, az Obtainium által nyomon követett alkalmazáshoz frissítések állnak rendelkezésre", + "noNewUpdates": "Nincsenek új frissítések.", + "xHasAnUpdate": "A(z) {} frissítést kapott.", + "appsUpdated": "Alkalmazások frissítve", + "appsNotUpdated": "Nem sikerült frissíteni az alkalmazásokat", + "appsUpdatedNotifDescription": "Értesíti a felhasználót, hogy egy vagy több alkalmazás frissítése a háttérben történt.", + "xWasUpdatedToY": "A(z) {} frissítve lett a következőre: {}.", + "xWasNotUpdatedToY": "Nem sikerült frissíteni a következőt: {}, erre: {}.", + "errorCheckingUpdates": "Hiba a frissítések ellenőrzésekor", + "errorCheckingUpdatesNotifDescription": "Értesítés, amely akkor jelenik meg, amikor a frissítések ellenőrzése a háttérben nem sikerül", + "appsRemoved": "Alkalmazások eltávolítva", + "appsRemovedNotifDescription": "Értesíti a felhasználót, hogy egy vagy több alkalmazás egy betöltés közbeni hiba miatt el lesz(nek) távolítva", + "xWasRemovedDueToErrorY": "A(z) {} el lett távolítva a következő hiba miatt: {}", + "completeAppInstallation": "Teljes alkalmazástelepítés", + "obtainiumMustBeOpenToInstallApps": "Az alkalmazások telepítéséhez az Obtainiumnak megnyitva kell lennie", + "completeAppInstallationNotifDescription": "Megkéri a felhasználót, hogy térjen vissza az Obtainiumhoz, hogy befejezze az alkalmazás telepítését", + "checkingForUpdates": "Frissítések ellenőrzése", + "checkingForUpdatesNotifDescription": "Átmeneti értesítés, amely a frissítések ellenőrzésekor jelenik meg", + "pleaseAllowInstallPerm": "Engedélyezze az Obtainiumnak az alkalmazások telepítését", + "trackOnly": "Csak nyomon követés", + "errorWithHttpStatusCode": "Hiba {}", + "versionCorrectionDisabled": "Verziókorrekció letiltva (úgy tűnik, hogy a bővítmény nem működik)", + "unknown": "Ismeretlen", + "none": "Semmi", + "all": "Összes", + "never": "Soha", + "latestVersionX": "Legújabb verzió: {}", + "installedVersionX": "Telepített verzió: {}", + "lastUpdateCheckX": "Frissítések utoljára ellenőrizve: {}", + "remove": "Eltávolítás", + "yesMarkUpdated": "Igen, megjelölés frissítettként", + "fdroid": "F-Droid hivatalos", + "appIdOrName": "Alkalmazás-azonosító vagy név", + "appId": "Alkalmazás-azonosító", + "appWithIdOrNameNotFound": "Nem található alkalmazás ezzel az azonosítóval vagy névvel", + "reposHaveMultipleApps": "Egyes tárolók több alkalmazást is tartalmazhatnak", + "fdroidThirdPartyRepo": "F-Droid-tároló (harmadik fél)", + "install": "Telepítés", + "markInstalled": "Telepítettnek jelölés", + "update": "Frissítés", + "markUpdated": "Frissítettnek jelölés", + "additionalOptions": "További beállítások", + "disableVersionDetection": "Verzióérzékelés letiltása", + "noVersionDetectionExplanation": "Ezt a beállítást csak olyan alkalmazásoknál szabad használni, ahol a verzióérzékelés nem működik megfelelően.", + "downloadingX": "{} letöltése", + "downloadX": "{} letöltése", + "downloadedX": "{} letöltve", + "releaseAsset": "Kiadási csomag", + "downloadNotifDescription": "Értesíti a felhasználót az alkalmazás letöltésének előrehaladásáról", + "noAPKFound": "Nem található APK", + "noVersionDetection": "Nincs verzióérzékelés", + "categorize": "Kategorizálás", + "categories": "Kategóriák", + "category": "Kategória", + "noCategory": "Nincs kategória", + "noCategories": "Nincsenek kategóriák", + "deleteCategoriesQuestion": "Törli a kategóriákat?", + "categoryDeleteWarning": "A törölt kategóriákban lévő összes alkalmazás kategorizálatlanná válik.", + "addCategory": "Kategória hozzáadása", + "label": "Címke", + "language": "Nyelv", + "copiedToClipboard": "Másolva a vágólapra", + "storagePermissionDenied": "Tárhely engedély megtagadva", + "selectedCategorizeWarning": "Ez felváltja a kiválasztott alkalmazások meglévő kategória-beállításait.", + "filterAPKsByRegEx": "APK-k szűrése reguláris kifejezéssel", + "removeFromObtainium": "Eltávolítás az Obtainiumból", + "uninstallFromDevice": "Eltávolítás az eszközről", + "onlyWorksWithNonVersionDetectApps": "Csak azoknál az alkalmazásoknál működik, amelyeknél a verzióérzékelés le van tiltva.", + "releaseDateAsVersion": "Kiadás dátumának használata verzió-karakterláncként", + "releaseTitleAsVersion": "Kiadás címének használata verzió-karakterláncként", + "releaseDateAsVersionExplanation": "Ezt a beállítást csak olyan alkalmazásoknál szabad használni, ahol a verzióérzékelés nem működik megfelelően, de elérhető a kiadás dátuma.", + "changes": "Változáslista", + "releaseDate": "Kiadás dátuma", + "importFromURLsInFile": "Importálás fájlban található webcímből (például: OPML)", + "versionDetectionExplanation": "A verzió-karakterlánc egyeztetése az rendszer által érzékelt verzióval", + "versionDetection": "Verzióérzékelés", + "standardVersionDetection": "Alapértelmezett verzióérzékelés", + "groupByCategory": "Csoportosítás kategória alapján", + "autoApkFilterByArch": "APK-k CPU-architektúra szerinti szűrése, ha lehetséges", + "autoLinkFilterByArch": "Hivatkozások CPU-architektúra szerinti szűrése, ha lehetséges", + "overrideSource": "Forrás felülírása", + "dontShowAgain": "Ne jelenítse meg ezt többé", + "dontShowTrackOnlyWarnings": "„Csak nyomon követés” figyelmeztetés elrejtése", + "dontShowAPKOriginWarnings": "APK eredetére vonatkozó figyelmeztetések elrejtése", + "moveNonInstalledAppsToBottom": "Nem telepített alkalmazások áthelyezése az alkalmazásnézet aljára", + "gitlabPATLabel": "GitLab személyes hozzáférési token", + "about": "Névjegy", + "requiresCredentialsInSettings": "A(z) {} alkalmazásnak további hitelesítő adatokra van szüksége (a beállításokban)", + "checkOnStart": "Frissítések ellenőrzése az alkalmazás megnyitásakor", + "tryInferAppIdFromCode": "Alkalmazás azonosítójának kikövetkeztetése a forráskódból, ha lehetséges", + "removeOnExternalUninstall": "Külsőleg eltávolított alkalmazások automatikus eltávolítása", + "pickHighestVersionCode": "Legmagasabb verziókódú APK automatikus kiválasztása", + "checkUpdateOnDetailPage": "Frissítések ellenőrzése az alkalmazás részleteit tartalmazó oldal megnyitásakor", + "disablePageTransitions": "Lap áttűnési animációk letiltása", + "reversePageTransitions": "Fordított lap áttűnési animációk", + "minStarCount": "Minimális csillagozási szám", + "addInfoBelow": "Adja hozzá ezt az információt alább.", + "addInfoInSettings": "Adja hozzá ezt az információt a beállításokban.", + "githubSourceNote": "A GitHub/GitLab lekérdezés-korlátozás elkerülhető egy API-kulcs használatával.", + "sortByLastLinkSegment": "Rendezés csak a hivatkozás utolsó szakasza szerint", + "filterReleaseNotesByRegEx": "Kiadási megjegyzések szűrése reguláris kifejezéssel", + "customLinkFilterRegex": "Egyéni APK-hivatkozásszűrő reguláris kifejezéssel (Alapértelmezett „.apk$”)", + "appsPossiblyUpdated": "Megkísérelt alkalmazás-frissítések", + "appsPossiblyUpdatedNotifDescription": "Értesíti a felhasználót, hogy egy vagy több alkalmazás frissítése lehetséges a háttérben", + "xWasPossiblyUpdatedToY": "A(z) {} frissülhetett a következőre: {}.", + "enableBackgroundUpdates": "Háttérfrissítések engedélyezése", + "backgroundUpdateReqsExplanation": "Előfordulhat, hogy nem minden alkalmazásnál lehetséges a háttérbeli frissítés.", + "backgroundUpdateLimitsExplanation": "A háttérben történő telepítés sikeressége csak az Obtainium megnyitásakor állapítható meg.", + "verifyLatestTag": "Ellenőrizze a „legújabb” címkét", + "intermediateLinkRegex": "Szűrő egy „köztes” hivatkozás felkereséséhez", + "filterByLinkText": "Hivatkozások szűrése hivatkozásszöveg alapján", + "matchLinksOutsideATags": "Hivatkozások keresése az címkéken kívül is", + "intermediateLinkNotFound": "Nem található köztes hivatkozás", + "intermediateLink": "Köztes hivatkozás", + "exemptFromBackgroundUpdates": "Mentes a háttérben történő frissítések alól (ha engedélyezett)", + "bgUpdatesOnWiFiOnly": "Háttérfrissítések letiltása, amikor az eszköz nem csatlakozik a Wi-Fi-hez", + "bgUpdatesWhileChargingOnly": "Háttérfrissítések letiltása, amikor az eszköz nincs a töltőn", + "autoSelectHighestVersionCode": "Legmagasabb verziókódú APK automatikus kiválasztása", + "versionExtractionRegEx": "Verzió-karakterlánc kivonatolása reguláris kifejezéssel", + "trimVersionString": "Verzió-karakterlánc levágása reguláris kifejezéssel", + "matchGroupToUseForX": "A(z) „{}” esetén használandó csoport egyeztetése", + "matchGroupToUse": "Verzió-karakterlánc kivonatolásához használandó csoport reguláris kifejezéssel való egyeztetése", + "highlightTouchTargets": "Kevésbé nyilvánvaló érintési pontok kiemelése", + "pickExportDir": "Válassza ki a könyvtárat, ahová exportálni szeretne", + "autoExportOnChanges": "Automatikus exportálás a változtatások után", + "includeSettings": "Tartalmazza a beállításokat", + "filterVersionsByRegEx": "Verziók szűrése reguláris kifejezéssel", + "trySelectingSuggestedVersionCode": "Próbálja kiválasztani a „Javasolt” verziókódú APK-t", + "dontSortReleasesList": "API-ból származó kiadási sorrend megőrzése", + "reverseSort": "Fordított rendezés", + "takeFirstLink": "Vegye az első hivatkozást", + "skipSort": "Rendezés kihagyása", + "debugMenu": "Hibakereső menü", + "bgTaskStarted": "A háttérfeladat elindult – ellenőrizze a naplókat.", + "runBgCheckNow": "Frissítések ellenőrzése a háttérben most", + "versionExtractWholePage": "„Verzió-karakterlánc kivonatolása reguláris kifejezéssel” alkalmazása az egész oldalra", + "installing": "Telepítés", + "skipUpdateNotifications": "Frissítési értesítések kihagyása", + "updatesAvailableNotifChannel": "Frissítések érhetők el", + "appsUpdatedNotifChannel": "Alkalmazások frissítve", + "appsPossiblyUpdatedNotifChannel": "Megkísérelt alkalmazás-frissítések", + "errorCheckingUpdatesNotifChannel": "Hiba a frissítések ellenőrzésekor", + "appsRemovedNotifChannel": "Eltávolított alkalmazások", + "downloadingXNotifChannel": "A(z) {} letöltése", + "completeAppInstallationNotifChannel": "Teljes alkalmazás telepítés", + "checkingForUpdatesNotifChannel": "Frissítések ellenőrzése", + "onlyCheckInstalledOrTrackOnlyApps": "Csak a telepített és a csak nyomon követhető alkalmazások frissítéseinek ellenőrzése", + "supportFixedAPKURL": "Támogatja a rögzített APK-webcímeket", + "selectX": "{} kiválasztása", + "parallelDownloads": "Párhuzamos letöltések engedélyezése", + "useShizuku": "Shizuku vagy Sui használata a telepítéshez", + "shizukuBinderNotFound": "A Shizuku szolgáltatás nem fut", + "shizukuOld": "Régi Shizuku verzió (<11) - frissítse", + "shizukuOldAndroidWithADB": "A Shizuku csak Android < 8.1 ADB-vel fut - frissítse az Androidot vagy használja a Suit helyette", + "shizukuPretendToBeGooglePlay": "Google Play beállítása telepítési forrásként (ha Shizukut használ)", + "useSystemFont": "Rendszer betűtípusának használata", + "useVersionCodeAsOSVersion": "Alkalmazás verziókódjának használata a rendszer által érzékelt verzióként", + "requestHeader": "Kérelemfejléc", + "useLatestAssetDateAsReleaseDate": "Legutóbbi csomagfeltöltés használata a kiadás dátumaként", + "defaultPseudoVersioningMethod": "Alapértelmezett pszeudoverziós módszer", + "partialAPKHash": "Részleges APK-hasítóérték", + "APKLinkHash": "APK-hivatkozás-hasítóérték", + "directAPKLink": "Közvetlen APK-hivatkozás", + "pseudoVersionInUse": "Egy pszeudoverzió van használatban", + "installed": "Telepített", + "latest": "Legújabb", + "invertRegEx": "Reguláris kifejezés invertálása", + "note": "Megjegyzés", + "selfHostedNote": "A(z) „{}” legördülő menü segítségével elérhetővé válnak a bármilyen más forrásból származó saját üzemeltetésű vagy egyéni példányok.", + "badDownload": "Az APK-t nem lehetett elemezni (inkompatibilis vagy részleges letöltés)", + "beforeNewInstallsShareToAppVerifier": "Új alkalmazások megosztása az AppVerifierrel (ha elérhető)", + "appVerifierInstructionToast": "Ossza meg az AppVerifierrel, majd térjen vissza ide, ha kész.", + "wiki": "Súgó/Wiki", + "crowdsourcedConfigsLabel": "Közreműködők által összeállított alkalmazásbeállítások (saját felelősségére használja)", + "crowdsourcedConfigsShort": "Alkalmazáslista", + "allowInsecure": "Nem biztonságos HTTP-kérések engedélyezése", + "stayOneVersionBehind": "Maradjon egy verzióval a legújabb mögött", + "useFirstApkOfVersion": "Legelső APK automatikus kiválasztása, ha több APK is található", + "refreshBeforeDownload": "Alkalmazás adatainak frissítése a letöltés előtt", + "tencentAppStore": "Tencent Appstore", + "coolApk": "CoolApk", + "vivoAppStore": "Vivo App Store (CN)", + "name": "Név", + "smartname": "Név (Okos)", + "sortMethod": "Rendezési eljárás", + "welcome": "Üdvözöljük!", + "documentationLinksNote": "Az alábbi hivatkozás az Obtainium GitHub oldalára vezet, amely további videók, cikkek, beszélgetések és egyéb források hivatkozásait tartalmazza, amelyek segítenek megérteni az alkalmazás használatát.", + "batteryOptimizationNote": "Megjegyzés: A háttérfrissítések megbízhatóbban működhetnek, ha kikapcsolja a rendszer akkumulátor-optimalizálását az Obtainium számára.", + "fileDeletionError": "Nem sikerült törölni a fájlt (próbálja meg kézzel törölni, majd próbálja meg újra): \"{}\"", + "foregroundService": "Obtainium előtér-szolgáltatás", + "foregroundServiceExplanation": "Előtér-szolgáltatás használata a frissítések ellenőrzéséhez (megbízhatóbb, de több energiát fogyaszt)", + "fgServiceNotice": "Ez az értesítés a háttérben történő frissítésellenőrzéshez szükséges (a rendszer beállításaiban elrejthető).", + "excludeSecrets": "Érzékeny adatok (például: személyes hozzáférési tokenek) kihagyása", + "GHReqPrefix": "„sky22333/hubproxy” példány a GitHub lekérdezéséhez", + "includeZips": "ZIP-fájlok belefoglalása", + "zippedApkFilterRegEx": "APK-fájlok szűrése a ZIP-fájlon belül", + "removeAppQuestion": { + "one": "Eltávolítja az alkalmazást?", + "other": "Eltávolítja az alkalmazásokat?" + }, + "tooManyRequestsTryAgainInMinutes": { + "one": "Túl sok kérés (lekérdezés-korlátozás) – próbálja újra {} perc múlva,\nvagy adjon meg egy GitHub/GitLab API-kulcsot", + "other": "Túl sok kérés (lekérdezés-korlátozás) – próbálja újra {} perc múlva,\nvagy adjon meg egy GitHub/GitLab API-kulcsot" + }, + "bgUpdateGotErrorRetryInMinutes": { + "one": "Frissítések ellenőrzése a háttérben a következőt észlelte: {} - Újrapróbálkozás: {} perc múlva", + "other": "Frissítések ellenőrzése a háttérben a következőt észlelte: {} - Újrapróbálkozás: {} perc múlva" + }, + "bgCheckFoundUpdatesWillNotifyIfNeeded": { + "one": "Frissítések ellenőrzése a háttérben {} frissítést talált - szükség esetén értesíti a felhasználót", + "other": "Frissítések ellenőrzése a háttérben {} frissítést talált - szükség esetén értesíti a felhasználót" + }, + "apps": { + "one": "{} alkalmazás", + "other": "{} alkalmazás" + }, + "url": { + "one": "{} webcím", + "other": "{} webcím" + }, + "minute": { + "one": "{} perc", + "other": "{} perc" + }, + "hour": { + "one": "{} óra", + "other": "{} óra" + }, + "day": { + "one": "{} nap", + "other": "{} nap" + }, + "clearedNLogsBeforeXAfterY": { + "one": "{n} napló törölve lett ({after} után, és {before} előtt)", + "other": "{n} napló törölve lett ({after} után, és {before} előtt)" + }, + "xAndNMoreUpdatesAvailable": { + "one": "A(z) {} és 1 további alkalmazás frissítést kapott.", + "other": "A(z) {} és {} további alkalmazás frissítést kapott." + }, + "xAndNMoreUpdatesInstalled": { + "one": "A(z) {} és 1 további alkalmazás frissítve.", + "other": "A(z) {} és {} további alkalmazás frissítve." + }, + "xAndNMoreUpdatesFailed": { + "one": "Nem sikerült frissíteni a következőt: {}, valamint 1 további alkalmazást.", + "other": "Nem sikerült frissíteni a következőt: {}, valamint {} további alkalmazást." + }, + "xAndNMoreUpdatesPossiblyInstalled": { + "one": "A(z) {}, valamint 1 további alkalmazás sikeresen frissítve.", + "other": "A(z) {}, valamint {} további alkalmazás sikeresen frissítve." + }, + "apk": { + "one": "{} APK", + "other": "{} APK" + } +} diff --git a/assets/translations/id.json b/assets/translations/id.json new file mode 100644 index 0000000..5298614 --- /dev/null +++ b/assets/translations/id.json @@ -0,0 +1,402 @@ +{ + "invalidURLForSource": "Bukan URL aplikasi {} yang valid", + "noReleaseFound": "Tidak dapat menemukan rilis yang sesuai", + "noVersionFound": "Tidak dapat memastikan versi rilis yang sesuai", + "urlMatchesNoSource": "URL tidak sesuai dengan sumber yang diketahui", + "cantInstallOlderVersion": "Tidak dapat memasang versi aplikasi yang lebih lama", + "appIdMismatch": "ID paket yang diunduh tidak sama dengan ID aplikasi yang ada", + "functionNotImplemented": "Kelas ini belum mengimplementasikan fungsi ini", + "placeholder": "Tempat penampung", + "someErrors": "Terjadi beberapa kesalahan", + "unexpectedError": "Kesalahan tidak terduga", + "ok": "Oke", + "and": "dan", + "githubPATLabel": "Token Akses Pribadi GitHub (tingkatkan batasan tarif)", + "includePrereleases": "Sertakan pra-rilis", + "fallbackToOlderReleases": "Alternatif kembali ke rilis lama", + "filterReleaseTitlesByRegEx": "Filter judul rilis dengan ekspresi reguler", + "invalidRegEx": "Ekspresi reguler tidak valid", + "noDescription": "Tidak ada deskripsi", + "cancel": "Batal", + "continue": "Lanjut", + "requiredInBrackets": "(Diperlukan)", + "dropdownNoOptsError": "KESALAHAN: DROPDOWN HARUS MEMILIKI SETIDAKNYA SATU OPSI", + "colour": "Warna", + "standard": "Standar", + "custom": "Kustom", + "useMaterialYou": "Gunakan Material You", + "githubStarredRepos": "Repositori berbintang GitHub", + "uname": "Nama pengguna", + "wrongArgNum": "Salah memberikan jumlah argumen", + "xIsTrackOnly": "{} adalah Pelacakan Saja", + "source": "Sumber", + "app": "Aplikasi", + "appsFromSourceAreTrackOnly": "Aplikasi dari sumber ini hanya untuk 'Pelacakan Saja'.", + "youPickedTrackOnly": "Anda telah memilih opsi Pelacakan Saja.", + "trackOnlyAppDescription": "Aplikasi akan dilacak untuk pembaruan, tetapi Obtainium tidak akan dapat mengunduh atau memasangnya.", + "cancelled": "Dibatalkan", + "appAlreadyAdded": "Aplikasi sudah ditambahkan", + "alreadyUpToDateQuestion": "Aplikasi sudah yang terbaru?", + "addApp": "Tambah aplikasi", + "appSourceURL": "Tambah sumber URL", + "error": "Kesalahan", + "add": "Tambah", + "searchSomeSourcesLabel": "Cari (beberapa sumber saja)", + "search": "Cari", + "additionalOptsFor": "Opsi tambahan untuk {}", + "supportedSources": "Sumber yang didukung", + "trackOnlyInBrackets": "(Pelacakan Saja)", + "searchableInBrackets": "(Dapat dicari)", + "appsString": "Aplikasi", + "noApps": "Tidak ada aplikasi", + "noAppsForFilter": "Tidak ada aplikasi untuk difilter", + "byX": "Oleh {}", + "percentProgress": "Perkembangan: {}%", + "pleaseWait": "Harap tunggu", + "updateAvailable": "Pembaruan tersedia", + "notInstalled": "Tidak terpasang", + "pseudoVersion": "versi semu", + "selectAll": "Pilih semua", + "deselectX": "Batal pilih {}", + "xWillBeRemovedButRemainInstalled": "{} akan dihapus dari Obtainium tetapi tetap terpasang di perangkat.", + "removeSelectedAppsQuestion": "Hapus aplikasi terpilih?", + "removeSelectedApps": "Hapus aplikasi terpilih", + "updateX": "Perbarui {}", + "installX": "Pasang {}", + "markXTrackOnlyAsUpdated": "Tandai {}\n(Pelacakan Saja)\nsudah diperbarui", + "changeX": "Ubah {}", + "installUpdateApps": "Pasang/perbarui aplikasi", + "installUpdateSelectedApps": "Pasang/perbarui aplikasi terpilih", + "markXSelectedAppsAsUpdated": "Tandai {} aplikasi terpilih sudah diperbarui?", + "no": "Tidak", + "yes": "Ya", + "markSelectedAppsUpdated": "Tandai aplikasi terpilih sudah diperbarui", + "pinToTop": "Sematkan ke atas", + "unpinFromTop": "Lepaskan semat dari atas", + "resetInstallStatusForSelectedAppsQuestion": "Atur ulang status pemasangan untuk aplikasi terpilih?", + "installStatusOfXWillBeResetExplanation": "Status pemasangan dari aplikasi terpilih akan diatur ulang.\n\nHal ini bisa membantu saat versi aplikasi yang ditampilkan di Obtainium salah akibat pembaruan yang gagal atau masalah lainnya.", + "customLinkMessage": "Tautan ini berfungsi pada perangkat yang terpasang Obtainium", + "shareAppConfigLinks": "Bagikan konfigurasi aplikasi sebagai tautan HTML", + "shareSelectedAppURLs": "Bagikan URL aplikasi terpilih", + "resetInstallStatus": "Atur ulang status pemasangan", + "more": "Lebih banyak", + "removeOutdatedFilter": "Hapus filter aplikasi yang usang", + "showOutdatedOnly": "Tampilkan aplikasi yang usang saja", + "filter": "Filter", + "filterApps": "Filter aplikasi", + "appName": "Nama aplikasi", + "author": "Pencipta", + "upToDateApps": "Aplikasi terbaru", + "nonInstalledApps": "Aplikasi tidak terpasang", + "importExport": "Impor/ekspor", + "settings": "Pengaturan", + "exportedTo": "Diekspor ke {}", + "obtainiumExport": "Ekspor Obtainium", + "invalidInput": "Masukan tidak valid", + "importedX": "{} diimpor", + "obtainiumImport": "Impor Obtainium", + "importFromURLList": "Impor dari daftar URL", + "searchQuery": "Cari Kueri", + "appURLList": "Daftar URL aplikasi", + "line": "Baris", + "searchX": "Cari {}", + "noResults": "Tidak ada hasil yang ditemukan", + "importX": "Impor {}", + "importedAppsIdDisclaimer": "Aplikasi yang diimpor mungkin secara salah ditampilkan sebagai \"Tidak terpasang\".\nUntuk memperbaikinya, lakukan pemasangan ulang melalui Obtainium.\nHal ini seharusnya tidak mempengaruhi data aplikasi.\n\nHanya mempengaruhi metode impor URL dan pihak ketiga.", + "importErrors": "Kesalahan impor", + "importedXOfYApps": "{} dari {} aplikasi diimpor.", + "followingURLsHadErrors": "URL berikut mengalami kesalahan:", + "selectURL": "Pilih URL", + "selectURLs": "Pilih URL", + "pick": "Pilih", + "theme": "Tema", + "dark": "Gelap", + "light": "Terang", + "followSystem": "Mengikuti sistem", + "followSystemThemeExplanation": "Tema mengikuti sistem hanya mungkin dengan menggunakan aplikasi pihak ketiga", + "useBlackTheme": "Gunakan tema hitam pekat", + "appSortBy": "Penyortiran aplikasi berdasarkan", + "authorName": "Pencipta/nama", + "nameAuthor": "Nama/pencipta", + "asAdded": "Tanggal ditambahkan", + "appSortOrder": "Urutan penyortiran aplikasi", + "ascending": "Menaik", + "descending": "Menurun", + "bgUpdateCheckInterval": "Interval pemeriksaan pembaruan di latar belakang", + "neverManualOnly": "Tidak pernah - manual saja", + "appearance": "Tampilan", + "showWebInAppView": "Tampilkan halaman web sumber dalam tampilan aplikasi", + "pinUpdates": "Sematkan pembaruan ke atas tampilan aplikasi", + "updates": "Pembaruan", + "sourceSpecific": "Sumber spesifik", + "appSource": "Sumber aplikasi", + "noLogs": "Tidak ada catatan", + "appLogs": "Catatan aplikasi", + "close": "Tutup", + "share": "Bagikan", + "appNotFound": "Aplikasi tidak ditemukan", + "obtainiumExportHyphenatedLowercase": "ekspor-obtainium", + "pickAnAPK": "Pilih APK", + "appHasMoreThanOnePackage": "{} memiliki lebih dari satu paket:", + "deviceSupportsXArch": "Perangkat Anda mendukung arsitektur CPU {}.", + "deviceSupportsFollowingArchs": "Perangkat anda mendukung arsitektur CPU berikut:", + "warning": "Peringatan", + "sourceIsXButPackageFromYPrompt": "Sumber aplikasinya adalah '{}' tetapi paket rilisnya berasal dari '{}'. Lanjutkan?", + "updatesAvailable": "Pembaruan tersedia", + "updatesAvailableNotifDescription": "Memberi tahu pengguna bahwa pembaruan tersedia untuk aplikasi yang dilacak oleh Obtainium", + "noNewUpdates": "Tidak ada pembaruan baru.", + "xHasAnUpdate": "{} memiliki pembaruan.", + "appsUpdated": "Aplikasi diperbarui", + "appsNotUpdated": "Gagal memperbarui aplikasi", + "appsUpdatedNotifDescription": "Memberi tahu pengguna bahwa pembaruan terhadap aplikasi diterapkan di latar belakang", + "xWasUpdatedToY": "{} telah diperbarui ke {}.", + "xWasNotUpdatedToY": "Gagal memperbarui {} ke {}.", + "errorCheckingUpdates": "Kesalahan dalam memeriksa pembaruan", + "errorCheckingUpdatesNotifDescription": "Notifikasi yang ditampilkan saat pemeriksaan pembaruan latar belakang gagal", + "appsRemoved": "Aplikasi dihapus", + "appsRemovedNotifDescription": "Memberi tahu pengguna bahwa aplikasi dihapus karena kesalahan saat memuatnya", + "xWasRemovedDueToErrorY": "{} dihapus karena kesalahan berikut: {}", + "completeAppInstallation": "Selesaikan pemasangan aplikasi", + "obtainiumMustBeOpenToInstallApps": "Obtainium harus terbuka untuk memasang aplikasi", + "completeAppInstallationNotifDescription": "Meminta pengguna kembali ke Obtainium untuk menyelesaikan pemasangan aplikasi", + "checkingForUpdates": "Memeriksa pembaruan", + "checkingForUpdatesNotifDescription": "Notifikasi sementara yang ditampilkan saat memeriksa pembaruan", + "pleaseAllowInstallPerm": "Harap izinkan Obtainium untuk memasang aplikasi", + "trackOnly": "Pelacakan Saja", + "errorWithHttpStatusCode": "Kesalahan {}", + "versionCorrectionDisabled": "Koreksi versi dinonaktifkan (sepertinya plugin tidak berfungsi)", + "unknown": "Tidak diketahui", + "none": "Tidak ada", + "all": "Semua", + "never": "Tidak pernah", + "latestVersionX": "Terbaru: {}", + "installedVersionX": "Terpasang: {}", + "lastUpdateCheckX": "Terakhir memeriksa pembaruan: {}", + "remove": "Hapus", + "yesMarkUpdated": "Ya, tandai bahwa sudah diperbarui", + "fdroid": "F-Droid Resmi", + "appIdOrName": "ID atau nama aplikasi", + "appId": "ID aplikasi", + "appWithIdOrNameNotFound": "Tidak ada aplikasi yang ditemukan dengan ID atau nama tersebut", + "reposHaveMultipleApps": "Repositori dapat berisi beberapa aplikasi", + "fdroidThirdPartyRepo": "Repositori pihak ketiga F-Droid", + "install": "Pasang", + "markInstalled": "Tandai terpasang", + "update": "perbarui", + "markUpdated": "Tandai diperbarui", + "additionalOptions": "Opsi tambahan", + "disableVersionDetection": "Nonaktifkan pendeteksi versi", + "noVersionDetectionExplanation": "Opsi ini hanya boleh digunakan untuk aplikasi dengan pendeteksi versi yang tidak berfungsi dengan benar.", + "downloadingX": "Mengunduh {}", + "downloadX": "Unduh {}", + "downloadedX": "{} diunduh", + "releaseAsset": "Aset rilis", + "downloadNotifDescription": "Memberi tahu pengguna perkembangan dalam mengunduh aplikasi", + "noAPKFound": "Tidak ada APK ditemukan", + "noVersionDetection": "Tidak ada pendeteksi versi", + "categorize": "Kategorikan", + "categories": "Kategori", + "category": "Kategori", + "noCategory": "Tidak ada kategori", + "noCategories": "Tidak ada kategori", + "deleteCategoriesQuestion": "Hapus kategori?", + "categoryDeleteWarning": "Semua aplikasi dalam kategori yang dihapus akan diatur sebagai tidak terkategori.", + "addCategory": "Tambah kategori", + "label": "Label", + "language": "Bahasa", + "copiedToClipboard": "Disalin ke papan klip", + "storagePermissionDenied": "Izin penyimpanan ditolak", + "selectedCategorizeWarning": "Ini akan mengganti pengaturan kategori yang ada untuk aplikasi terpilih.", + "filterAPKsByRegEx": "Filter APK dengan ekspresi reguler", + "removeFromObtainium": "Hapus dari Obtainium", + "uninstallFromDevice": "Copot pemasangan dari perangkat", + "onlyWorksWithNonVersionDetectApps": "Hanya bekerja untuk aplikasi dengan pendeteksi versi yang nonaktif.", + "releaseDateAsVersion": "Gunakan tanggal rilis sebagai versi string", + "releaseTitleAsVersion": "Gunakan judul rilis sebagai string versi", + "releaseDateAsVersionExplanation": "Opsi ini hanya boleh digunakan untuk aplikasi dengan pendeteksi versi yang tidak berfungsi dengan benar, tetapi tanggal rilisnya tersedia.", + "changes": "Perubahan", + "releaseDate": "Tanggal rilis", + "importFromURLsInFile": "Impor dari URL dalam berkas (seperti OPML)", + "versionDetectionExplanation": "Sesuaikan string versi dengan versi yang terdeteksi dari OS", + "versionDetection": "Pendeteksi versi", + "standardVersionDetection": "Pendeteksi versi standar", + "groupByCategory": "Kelompokkan berdasarkan kategori", + "autoApkFilterByArch": "Coba filter APK berdasarkan arsitektur CPU jika memungkinkan", + "autoLinkFilterByArch": "Mencoba memfilter tautan berdasarkan arsitektur CPU jika memungkinkan", + "overrideSource": "Ganti sumber", + "dontShowAgain": "Jangan tampilkan lagi", + "dontShowTrackOnlyWarnings": "Jangan tampilkan peringatan 'Pelacakan Saja'", + "dontShowAPKOriginWarnings": "Jangan tampilkan peringatan asal APK", + "moveNonInstalledAppsToBottom": "Pindahkan aplikasi tidak terpasang ke bawah tampilan aplikasi", + "gitlabPATLabel": "Token Akses Pribadi GitLab", + "about": "Tentang", + "requiresCredentialsInSettings": "{} memerlukan kredensial tambahan (dalam pengaturan)", + "checkOnStart": "Periksa pembaruan saat proses memulai", + "tryInferAppIdFromCode": "Coba untuk menebak ID aplikasi dari kode sumber", + "removeOnExternalUninstall": "Hapus otomatis aplikasi yang dicopot pemasangannya dari luar", + "pickHighestVersionCode": "Pilih otomatis APK dengan versi kode tertinggi", + "checkUpdateOnDetailPage": "Periksa pembaruan saat membuka halaman detail aplikasi", + "disablePageTransitions": "Nonaktifkan animasi transisi halaman", + "reversePageTransitions": "Animasi transisi halaman secara terbalik", + "minStarCount": "Jumlah bintang minimum", + "addInfoBelow": "Tambahkan info ini di bawah.", + "addInfoInSettings": "Tambahkan info ini di pengaturan.", + "githubSourceNote": "Pembatasan tarif pada GitHub dapat dihindari dengan menggunakan kunci API.", + "sortByLastLinkSegment": "Urutkan hanya berdasarkan segmen terakhir tautan", + "filterReleaseNotesByRegEx": "Filter catatan perilisan dengan ekspresi reguler", + "customLinkFilterRegex": "Filter tautan APK kustom dengan ekspresi reguler (Standar '.apk$')", + "appsPossiblyUpdated": "Pembaruan aplikasi dicoba", + "appsPossiblyUpdatedNotifDescription": "Memberi tahu pengguna bahwa pembaruan terhadap aplikasi berpotensi diterapkan di latar belakang", + "xWasPossiblyUpdatedToY": "{} mungkin telah diperbarui ke {}.", + "enableBackgroundUpdates": "Aktifkan pembaruan latar belakang", + "backgroundUpdateReqsExplanation": "Pembaruan latar belakang mungkin tidak dapat dilakukan untuk semua aplikasi.", + "backgroundUpdateLimitsExplanation": "Keberhasilan pemasangan di latar belakang hanya dapat ditentukan ketika Obtainium terbuka.", + "verifyLatestTag": "Verifikasi label 'terbaru'", + "intermediateLinkRegex": "Filter tautan 'perantara' untuk dikunjungi", + "filterByLinkText": "Filter tautan berdasarkan teks tautan", + "matchLinksOutsideATags": "Mencocokkan tautan di luar tag ", + "intermediateLinkNotFound": "Tautan perantara tidak ditemukan", + "intermediateLink": "Tautan perantara", + "exemptFromBackgroundUpdates": "Dikecualikan dari pembaruan latar belakang (jika diaktifkan)", + "bgUpdatesOnWiFiOnly": "Nonaktifkan pembaruan latar belakang saat tidak menggunakan Wi-Fi", + "bgUpdatesWhileChargingOnly": "Menonaktifkan pembaruan latar belakang saat tidak mengisi daya", + "autoSelectHighestVersionCode": "Pilih otomatis APK dengan versi kode tertinggi", + "versionExtractionRegEx": "Reguler ekspresi terkait ekstraksi versi string", + "trimVersionString": "Potong versi string dengan reguler ekspresi", + "matchGroupToUseForX": "Cocokkan grup yang akan digunakan untuk \"{}\"", + "matchGroupToUse": "Cocokkan grup yang akan digunakan untuk reguler ekspresi terkait ekstraksi versi string", + "highlightTouchTargets": "Sorot target sentuh yang kurang jelas", + "pickExportDir": "Pilih direktori ekspor", + "autoExportOnChanges": "Otomatis ekspor terhadap perubahan", + "includeSettings": "Sertakan pengaturan", + "filterVersionsByRegEx": "Filter versi dengan ekspresi reguler", + "trySelectingSuggestedVersionCode": "Coba pilih APK dengan version kode yang disarankan", + "dontSortReleasesList": "Pertahankan urutan rilis dari API", + "reverseSort": "Penyortiran terbalik", + "takeFirstLink": "Ambil tautan pertama", + "skipSort": "Lewati penyortiran", + "debugMenu": "Menu debug", + "bgTaskStarted": "Tugas latar belakang dimulai - periksa catatan.", + "runBgCheckNow": "Jalankan pemeriksaan pembaruan latar belakang sekarang", + "versionExtractWholePage": "Terapkan reguler ekspresi terkait ekstraksi versi string ke seluruh halaman", + "installing": "Memasang", + "skipUpdateNotifications": "Lewati notifikasi pembaruan", + "updatesAvailableNotifChannel": "Pembaruan tersedia", + "appsUpdatedNotifChannel": "Aplikasi diperbarui", + "appsPossiblyUpdatedNotifChannel": "Pembaruan aplikasi dicoba", + "errorCheckingUpdatesNotifChannel": "Kesalahan dalam memeriksa pembaruan", + "appsRemovedNotifChannel": "Aplikasi dihapus", + "downloadingXNotifChannel": "Mengunduh {}", + "completeAppInstallationNotifChannel": "Selesaikan pemasangan aplikasi", + "checkingForUpdatesNotifChannel": "Memeriksa pembaruan", + "onlyCheckInstalledOrTrackOnlyApps": "Hanya periksa aplikasi yang dipasang dan ditandai 'Pelacakan Saja' untuk pembaruan", + "supportFixedAPKURL": "Mendukung URL APK tetap", + "selectX": "Pilih {}", + "parallelDownloads": "Izinkan mengunduh paralel", + "useShizuku": "Gunakan Shizuku atau Sui untuk memasang", + "shizukuBinderNotFound": "Layanan Shizuku tidak berjalan", + "shizukuOld": "Versi Shizuku lama (<11) - harap perbarui", + "shizukuOldAndroidWithADB": "Shizuku berjalan di Android < 8.1 dengan ADB - perbarui Android atau gunakan Sui sebagai gantinya", + "shizukuPretendToBeGooglePlay": "Atur Google Play sebagai sumber pemasangan (jika Shizuku digunakan)", + "useSystemFont": "Gunakan font sistem", + "useVersionCodeAsOSVersion": "Gunakan versi kode aplikasi sebagai versi yang terdeteksi OS", + "requestHeader": "Header permintaan", + "useLatestAssetDateAsReleaseDate": "Gunakan unggahan aset terbaru sebagai tanggal rilis", + "defaultPseudoVersioningMethod": "Metode versi semu standar", + "partialAPKHash": "Hash APK parsial", + "APKLinkHash": "Hash tautan APK", + "directAPKLink": "Tautan APK langsung", + "pseudoVersionInUse": "Versi semu sedang digunakan", + "installed": "Terpasang", + "latest": "Terbaru", + "invertRegEx": "Balikkan ekspresi reguler", + "note": "Catatan", + "selfHostedNote": "Dropdown \"{}\" bisa digunakan untuk menjangkau instansi yang dihosting sendiri/kustom dari sumber mana pun.", + "badDownload": "APK tidak dapat diurai (tidak kompatibel atau diunduh sebagian)", + "beforeNewInstallsShareToAppVerifier": "Bagikan aplikasi baru dengan AppVerifier (jika tersedia)", + "appVerifierInstructionToast": "Bagikan ke AppVerifier, lalu kembali ke sini jika sudah siap.", + "wiki": "Bantuan/Wiki", + "crowdsourcedConfigsLabel": "Konfigurasi aplikasi Crowdsourced (risiko penggunaan ditanggung sendiri)", + "crowdsourcedConfigsShort": "Konfigurasi Aplikasi Crowdsourced", + "allowInsecure": "Izinkan permintaan HTTP yang tidak aman", + "stayOneVersionBehind": "Tetap satu versi di belakang versi terbaru", + "useFirstApkOfVersion": "Pilih otomatis yang pertama dari beberapa APK", + "refreshBeforeDownload": "Segarkan detail aplikasi sebelum mengunduh", + "tencentAppStore": "Tencent App Store", + "coolApk": "CoolApk", + "vivoAppStore": "vivo App Store (CN)", + "name": "Nama", + "smartname": "Nama (Cerdas)", + "sortMethod": "Metode Penyortiran", + "welcome": "Selamat datang.", + "documentationLinksNote": "Halaman GitHub Obtainium yang ditautkan di bawah ini berisi tautan ke video, artikel, diskusi, dan sumber daya lain yang akan membantu Anda memahami cara menggunakan aplikasi.", + "batteryOptimizationNote": "Perhatikan bahwa unduhan latar belakang dapat bekerja lebih andal jika Anda menonaktifkan optimasi baterai OS untuk Obtainium.", + "fileDeletionError": "Gagal menghapus file (coba hapus secara manual, lalu coba lagi): \"{}\"", + "foregroundService": "Layanan latar depan Obtainium", + "foregroundServiceExplanation": "Gunakan layanan latar depan untuk pemeriksaan pembaruan (lebih dapat diandalkan, menghabiskan lebih banyak daya)", + "fgServiceNotice": "Pemberitahuan ini diperlukan untuk pemeriksaan pembaruan latar belakang (dapat disembunyikan dalam pengaturan OS)", + "excludeSecrets": "Mengecualikan rahasia", + "GHReqPrefix": "Instance 'sky22333/hubproxy' untuk permintaan GitHub", + "includeZips": "Menyertakan file ZIP", + "zippedApkFilterRegEx": "Saring APK di dalam ZIP", + "removeAppQuestion": { + "one": "Hapus aplikasi?", + "other": "Hapus aplikasi?" + }, + "tooManyRequestsTryAgainInMinutes": { + "one": "Terlalu banyak permintaan (tarif dibatasi) - coba lagi dalam {} menit", + "other": "Terlalu banyak permintaan (tarif dibatasi) - coba lagi dalam {} menit" + }, + "bgUpdateGotErrorRetryInMinutes": { + "one": "Pemeriksaan pembaruan latar belakang menemui {}, akan menjadwalkan pemeriksaan ulang dalam {} menit", + "other": "Pemeriksaan pembaruan latar belakang menemui {}, akan menjadwalkan pemeriksaan ulang dalam {} menit" + }, + "bgCheckFoundUpdatesWillNotifyIfNeeded": { + "one": "Pemeriksaan pembaruan latar belakang menemukan {} pembaruan - akan memberi tahu pengguna jika diperlukan", + "other": "Pemeriksaan pembaruan latar belakang menemukan {} pembaruan - akan memberi tahu pengguna jika diperlukan" + }, + "apps": { + "one": "{} aplikasi", + "other": "{} aplikasi" + }, + "url": { + "one": "{} URL", + "other": "{} URL" + }, + "minute": { + "one": "{} menit", + "other": "{} menit" + }, + "hour": { + "one": "{} jam", + "other": "{} jam" + }, + "day": { + "one": "{} hari", + "other": "{} hari" + }, + "clearedNLogsBeforeXAfterY": { + "one": "Menghapus {n} catatan (sebelum = {before}, setelah = {after})", + "other": "Menghapus {n} catatan (sebelum = {before}, setelah = {after})" + }, + "xAndNMoreUpdatesAvailable": { + "one": "{} dan 1 aplikasi lainnya memiliki pembaruan.", + "other": "{} dan {} aplikasi lainnya memiliki pembaruan." + }, + "xAndNMoreUpdatesInstalled": { + "one": "{} dan 1 aplikasi lainnya telah diperbarui.", + "other": "{} dan {} aplikasi lainnya telah diperbarui." + }, + "xAndNMoreUpdatesFailed": { + "one": "Gagal memperbarui {} dan 1 aplikasi lainnya.", + "other": "Gagal memperbarui {} dan {} aplikasi lainnya." + }, + "xAndNMoreUpdatesPossiblyInstalled": { + "one": "{} dan 1 aplikasi lainnya mungkin telah diperbarui.", + "other": "{} dan {} aplikasi lainnya mungkin telah diperbarui." + }, + "apk": { + "one": "{} APK", + "other": "{} APK" + } +} diff --git a/assets/translations/it.json b/assets/translations/it.json new file mode 100644 index 0000000..d0d85a7 --- /dev/null +++ b/assets/translations/it.json @@ -0,0 +1,402 @@ +{ + "invalidURLForSource": "URL dell'app {} non valido", + "noReleaseFound": "Impossibile trovare una release adatta", + "noVersionFound": "Impossibile determinare la versione della release", + "urlMatchesNoSource": "L'URL non corrisponde ad alcuna fonte conosciuta", + "cantInstallOlderVersion": "Impossibile installare una versione precedente di un'app", + "appIdMismatch": "L'ID del pacchetto scaricato non corrisponde all'ID dell'app esistente", + "functionNotImplemented": "Questa classe non ha implementato questa funzione", + "placeholder": "Segnaposto", + "someErrors": "Si sono verificati degli errori", + "unexpectedError": "Errore imprevisto", + "ok": "Va bene", + "and": "e", + "githubPATLabel": "GitHub Personal Access Token (aumenta limite di traffico)", + "includePrereleases": "Includi prerelease", + "fallbackToOlderReleases": "Ripiega su release precedenti", + "filterReleaseTitlesByRegEx": "Filtra release con espressioni regolari", + "invalidRegEx": "Espressione regolare non valida", + "noDescription": "Descrizione assente", + "cancel": "Annulla", + "continue": "Continua", + "requiredInBrackets": "(richiesto)", + "dropdownNoOptsError": "ERRORE: LA TENDINA DEVE AVERE ALMENO UN'OPZIONE", + "colour": "Colore", + "standard": "Standard", + "custom": "Personalizzato", + "useMaterialYou": "Utilizzate il materiale che avete a disposizione", + "githubStarredRepos": "repository stellati da GitHub", + "uname": "Nome utente", + "wrongArgNum": "Numero di argomenti forniti errato", + "xIsTrackOnly": "{} è in modalità Solo-Monitoraggio", + "source": "Fonte", + "app": "App", + "appsFromSourceAreTrackOnly": "Le app da questa fonte sono in modalità 'Solo-Monitoraggio'.", + "youPickedTrackOnly": "È stata selezionata l'opzione 'Solo-Monitoraggio'.", + "trackOnlyAppDescription": "L'app sarà monitorata per gli aggiornamenti, ma Obtainium non sarà in grado di scaricarli o di installarli.", + "cancelled": "Annullato", + "appAlreadyAdded": "App già aggiunta", + "alreadyUpToDateQuestion": "L'app è già aggiornata?", + "addApp": "Aggiungi app", + "appSourceURL": "URL della fonte dell'app", + "error": "Errore", + "add": "Aggiungi", + "searchSomeSourcesLabel": "Cerca (solo per alcune fonti)", + "search": "Cerca", + "additionalOptsFor": "Opzioni aggiuntive per {}", + "supportedSources": "Fonti supportate", + "trackOnlyInBrackets": "(Solo-Monitoraggio)", + "searchableInBrackets": "(ricercabile)", + "appsString": "App", + "noApps": "Nessuna app", + "noAppsForFilter": "Nessuna app per i filtri selezionati", + "byX": "Di {}", + "percentProgress": "Avanzamento: {}%", + "pleaseWait": "In attesa", + "updateAvailable": "Aggiornamento disponibile", + "notInstalled": "Non installato", + "pseudoVersion": "pseudo-versione", + "selectAll": "Seleziona tutto", + "deselectX": "Deseleziona {}", + "xWillBeRemovedButRemainInstalled": "Verà effettuata la rimozione di {}, ma non la disinstallazione.", + "removeSelectedAppsQuestion": "Rimuovere le app selezionate?", + "removeSelectedApps": "Rimuovi le app selezionate", + "updateX": "Aggiorna {}", + "installX": "Installa {}", + "markXTrackOnlyAsUpdated": "Contrassegna {}\n(Solo-Monitoraggio)\ncome aggiornata", + "changeX": "Modifica {}", + "installUpdateApps": "Installa/Aggiorna app", + "installUpdateSelectedApps": "Installa/Aggiorna le app selezionate", + "markXSelectedAppsAsUpdated": "Contrassegnare le {} app selezionate come aggiornate?", + "no": "NO", + "yes": "Sì", + "markSelectedAppsUpdated": "Contrassegna le app selezionate come aggiornate", + "pinToTop": "Fissa in alto", + "unpinFromTop": "Rimuovi dall'alto", + "resetInstallStatusForSelectedAppsQuestion": "Ripristinare lo stato d'installazione delle app selezionate?", + "installStatusOfXWillBeResetExplanation": "Lo stato d'installazione di ogni app selezionata sarà ripristinato.\n\nCiò può essere d'aiuto nel caso in cui la versione mostrata dell'app in Obtainium non sia corretta a causa di un aggiornamento fallito o di altri problemi.", + "customLinkMessage": "Questi collegamenti funzionano sui dispositivi con Obtainium installato", + "shareAppConfigLinks": "Condividi la configurazione dell'app come collegamento HTML", + "shareSelectedAppURLs": "Condividi gli URL delle app selezionate", + "resetInstallStatus": "Ripristina lo stato d'installazione", + "more": "Altro", + "removeOutdatedFilter": "Rimuovi il filtro per le app non aggiornate", + "showOutdatedOnly": "Mostra solo le app non aggiornate", + "filter": "Filtri", + "filterApps": "Filtra app", + "appName": "Nome dell'app", + "author": "Autore", + "upToDateApps": "App aggiornate", + "nonInstalledApps": "App non installate", + "importExport": "Importa/Esporta", + "settings": "Impostazioni", + "exportedTo": "Esportato in {}", + "obtainiumExport": "Esporta da Obtainium", + "invalidInput": "Inserimento non valido", + "importedX": "Importato {}", + "obtainiumImport": "Importa in Obtainium", + "importFromURLList": "Importa da lista di URL", + "searchQuery": "Stringa di ricerca", + "appURLList": "Lista di URL delle app", + "line": "Linea", + "searchX": "Cerca su {}", + "noResults": "Nessun risultato trovato", + "importX": "Importa {}", + "importedAppsIdDisclaimer": "Le app importate potrebbero essere visualizzate erroneamente come \"Non installate\".\nPer risolvere il problema, reinstallale con Obtainium.\nCiò non dovrebbe influire sui dati delle app.\n\nRiguarda solo l'URL e i metodi di importazione di terze parti.", + "importErrors": "Errori di importazione", + "importedXOfYApps": "{} app di {} importate.", + "followingURLsHadErrors": "I seguenti URL contengono errori:", + "selectURL": "Seleziona l'URL", + "selectURLs": "Seleziona gli URL", + "pick": "Seleziona", + "theme": "Tema", + "dark": "Scuro", + "light": "Chiaro", + "followSystem": "Segui il sistema", + "followSystemThemeExplanation": "È possibile seguire il tema di sistema solo utilizzando applicazioni di terze parti.", + "useBlackTheme": "Usa il tema nero puro", + "appSortBy": "App ordinate per", + "authorName": "Autore/Nome", + "nameAuthor": "Nome/Autore", + "asAdded": "Data di aggiunta", + "appSortOrder": "Ordine", + "ascending": "Ascendente", + "descending": "Discendente", + "bgUpdateCheckInterval": "Intervallo di controllo degli aggiornamenti in secondo piano", + "neverManualOnly": "Mai - Solo manuale", + "appearance": "Aspetto", + "showWebInAppView": "Mostra pagina web dell'app se selezionata", + "pinUpdates": "Fissa aggiornamenti disponibili in alto", + "updates": "Aggiornamenti", + "sourceSpecific": "Specifiche per la fonte", + "appSource": "Codice dell'app", + "noLogs": "Nessun log", + "appLogs": "Log dell'app", + "close": "Chiudi", + "share": "Condividi", + "appNotFound": "App non trovata", + "obtainiumExportHyphenatedLowercase": "esportazione-obtainium", + "pickAnAPK": "Seleziona un APK", + "appHasMoreThanOnePackage": "{} offre più di un pacchetto:", + "deviceSupportsXArch": "Il dispositivo in uso supporta l'architettura {} della CPU.", + "deviceSupportsFollowingArchs": "Il dispositivo in uso supporta le seguenti architetture della CPU:", + "warning": "Attenzione", + "sourceIsXButPackageFromYPrompt": "L'origine dell'app è '{}' ma il pacchetto della release proviene da '{}'. Continuare?", + "updatesAvailable": "Aggiornamenti disponibili", + "updatesAvailableNotifDescription": "Notifica all'utente che sono disponibili gli aggiornamenti di una o più app monitorate da Obtainium", + "noNewUpdates": "Nessun nuovo aggiornamento.", + "xHasAnUpdate": "Aggiornamento disponibile per {}", + "appsUpdated": "App aggiornate", + "appsNotUpdated": "Impossibile aggiornare le applicazioni", + "appsUpdatedNotifDescription": "Notifica all'utente che una o più app sono state aggiornate in secondo piano", + "xWasUpdatedToY": "{} è stato aggiornato alla {}.", + "xWasNotUpdatedToY": "Impossibile aggiornare {} a {}.", + "errorCheckingUpdates": "Controllo degli errori per gli aggiornamenti", + "errorCheckingUpdatesNotifDescription": "Una notifica che mostra quando il controllo degli aggiornamenti in secondo piano fallisce", + "appsRemoved": "App rimosse", + "appsRemovedNotifDescription": "Notifica all'utente che una o più app sono state rimosse a causa di errori durante il caricamento", + "xWasRemovedDueToErrorY": "{} è stata rimosso a causa di questo errore: {}", + "completeAppInstallation": "Completa l'installazione dell'app", + "obtainiumMustBeOpenToInstallApps": "Obtainium deve essere aperto per poter installare le app", + "completeAppInstallationNotifDescription": "Chiede all'utente di riaprire Obtainium per terminare l'installazione di un'app", + "checkingForUpdates": "Controllo degli aggiornamenti in corso", + "checkingForUpdatesNotifDescription": "Notifica transitoria che appare durante la verifica degli aggiornamenti", + "pleaseAllowInstallPerm": "Per favore permetti a Obtainium di installare le app", + "trackOnly": "Solo-Monitoraggio", + "errorWithHttpStatusCode": "Errore {}", + "versionCorrectionDisabled": "Correzione della versione disattivata (il plugin sembra non funzionare)", + "unknown": "Sconosciuto", + "none": "Nessuno", + "all": "Tutti", + "never": "Mai", + "latestVersionX": "Ultima versione: {}", + "installedVersionX": "Versione installata: {}", + "lastUpdateCheckX": "Ultimo controllo degli aggiornamenti: {}", + "remove": "Rimuovi", + "yesMarkUpdated": "Sì, contrassegna come aggiornata", + "fdroid": "F-Droid ufficiale", + "appIdOrName": "ID o nome dell'app", + "appId": "ID dell'app", + "appWithIdOrNameNotFound": "Non è stata trovata alcuna app con quell'ID o nome", + "reposHaveMultipleApps": "I repository possono contenere più app", + "fdroidThirdPartyRepo": "Repository F-Droid di terze parti", + "install": "Installa", + "markInstalled": "Contrassegna come installata", + "update": "Aggiorna", + "markUpdated": "Contrassegna come aggiornata", + "additionalOptions": "Opzioni aggiuntive", + "disableVersionDetection": "Disattiva il rilevamento della versione", + "noVersionDetectionExplanation": "Questa opzione dovrebbe essere usata solo per le app la cui versione non viene rilevata correttamente.", + "downloadingX": "Scaricamento di {} in corso", + "downloadX": "Scarica {}", + "downloadedX": "Scaricato {}", + "releaseAsset": "Rilascio Asset", + "downloadNotifDescription": "Notifica all'utente lo stato di avanzamento del download di un'app", + "noAPKFound": "Nessun APK trovato", + "noVersionDetection": "Disattiva rilevamento di versione", + "categorize": "Aggiungi a categoria", + "categories": "Categorie", + "category": "Categoria", + "noCategory": "Nessuna categoria", + "noCategories": "Nessuna categoria", + "deleteCategoriesQuestion": "Eliminare le categorie?", + "categoryDeleteWarning": "Tutte le app nelle categorie eliminate saranno impostate come non categorizzate.", + "addCategory": "Aggiungi categoria", + "label": "Etichetta", + "language": "Lingua", + "copiedToClipboard": "Copiato negli appunti", + "storagePermissionDenied": "Accesso ai file non autorizzato", + "selectedCategorizeWarning": "Ciò sostituirà le impostazioni di categoria esistenti per le app selezionate.", + "filterAPKsByRegEx": "Filtra file APK con espressioni regolari", + "removeFromObtainium": "Rimuovi da Obtainium", + "uninstallFromDevice": "Disinstalla dal dispositivo", + "onlyWorksWithNonVersionDetectApps": "Funziona solo per le app con il rilevamento della versione disattivato.", + "releaseDateAsVersion": "Usa data di rilascio come versione", + "releaseTitleAsVersion": "Usa il titolo della versione come stringa di versione", + "releaseDateAsVersionExplanation": "Questa opzione dovrebbe essere usata solo per le app in cui il rilevamento della versione non funziona correttamente, ma è disponibile una data di rilascio.", + "changes": "Novità", + "releaseDate": "Data di rilascio", + "importFromURLsInFile": "Importa da URL in file (come OPML)", + "versionDetectionExplanation": "Riconcilia la stringa della versione con la versione rilevata dal sistema operativo", + "versionDetection": "Rilevamento di versione", + "standardVersionDetection": "Rilevamento di versione standard", + "groupByCategory": "Raggruppa per categoria", + "autoApkFilterByArch": "Tenta di filtrare gli APK in base all'architettura della CPU, se possibile", + "autoLinkFilterByArch": "Tentare di filtrare i collegamenti in base all'architettura della CPU, se possibile.", + "overrideSource": "Sovrascrivi fonte", + "dontShowAgain": "Non mostrarlo più", + "dontShowTrackOnlyWarnings": "Non mostrare gli avvisi 'Solo-Monitoraggio'", + "dontShowAPKOriginWarnings": "Non mostrare gli avvisi di origine dell'APK", + "moveNonInstalledAppsToBottom": "Sposta le app non installate in fondo alla lista", + "gitlabPATLabel": "GitLab Token di accesso personale", + "about": "Informazioni", + "requiresCredentialsInSettings": "{}: Servono credenziali aggiuntive (in Impostazioni)", + "checkOnStart": "Controlla una volta all'avvio", + "tryInferAppIdFromCode": "Prova a dedurre l'ID dell'app dal codice sorgente", + "removeOnExternalUninstall": "Rimuovi automaticamente app disinstallate esternamente", + "pickHighestVersionCode": "Auto-seleziona APK con version code più alto", + "checkUpdateOnDetailPage": "Controlla aggiornamenti all'apertura dei dettagli dell'app", + "disablePageTransitions": "Disattiva animazioni di transizione pagina", + "reversePageTransitions": "Inverti animazioni di transizione pagina", + "minStarCount": "Numero minimo di stelle", + "addInfoBelow": "Aggiungi questa info sotto.", + "addInfoInSettings": "Aggiungi questa info nelle impostazioni.", + "githubSourceNote": "Il limite di ricerca GitHub può essere evitato usando una chiave API.", + "sortByLastLinkSegment": "Ordina solo in base all'ultimo segmento del collegamento", + "filterReleaseNotesByRegEx": "Filtra le note di rilascio con espressione regolare", + "customLinkFilterRegex": "Filtra link APK personalizzato con espressione regolare (predefinito '.apk$')", + "appsPossiblyUpdated": "Aggiornamenti app tentati", + "appsPossiblyUpdatedNotifDescription": "Notifica all'utente che sono stati potenzialmente applicati in secondo piano aggiornamenti a una o più app", + "xWasPossiblyUpdatedToY": "{} potrebbe essere stata aggiornata alla {}.", + "enableBackgroundUpdates": "Attiva aggiornamenti in secondo piano", + "backgroundUpdateReqsExplanation": "Gli aggiornamenti in secondo piano potrebbero non essere possibili per tutte le app.", + "backgroundUpdateLimitsExplanation": "La riuscita di un'installazione in secondo piano può essere determinata solo quando viene aperto Obtainium.", + "verifyLatestTag": "Verifica l'etichetta 'Latest'", + "intermediateLinkRegex": "Filtro per un collegamento 'intermedio' da visitare", + "filterByLinkText": "Filtra i collegamenti in base al testo del collegamento", + "matchLinksOutsideATags": "Corrispondenza dei collegamenti al di fuori dei tag ", + "intermediateLinkNotFound": "Link intermedio non trovato", + "intermediateLink": "Collegamento intermedio", + "exemptFromBackgroundUpdates": "Esente da aggiornamenti in secondo piano (se attivo)", + "bgUpdatesOnWiFiOnly": "Disattiva aggiornamenti in secondo piano quando non si usa il Wi-Fi", + "bgUpdatesWhileChargingOnly": "Disabilita gli aggiornamenti in background quando non è in carica", + "autoSelectHighestVersionCode": "Auto-seleziona APK con versionCode più alto", + "versionExtractionRegEx": "RegEx di estrazione versione", + "trimVersionString": "Tagliare la stringa della versione con RegEx", + "matchGroupToUseForX": "Gruppo di corrispondenza da utilizzare per \"{}\"", + "matchGroupToUse": "Gruppo da usare", + "highlightTouchTargets": "Evidenzia elementi toccabili meno ovvi", + "pickExportDir": "Scegli cartella esp.", + "autoExportOnChanges": "Auto-esporta dopo modifiche", + "includeSettings": "Includi impostazioni", + "filterVersionsByRegEx": "Filtra versioni con espressione regolare", + "trySelectingSuggestedVersionCode": "Prova a selezionare APK con versionCode suggerito", + "dontSortReleasesList": "Conserva l'ordine di release da API", + "reverseSort": "Ordine inverso", + "takeFirstLink": "Prendi il primo link", + "skipSort": "Salta ordinamento", + "debugMenu": "Menu di debug", + "bgTaskStarted": "Attività in secondo piano iniziata - controllo log.", + "runBgCheckNow": "Inizia aggiornamento in secondo piano ora", + "versionExtractWholePage": "Applica regex di estrazione versione a tutta la pagina", + "installing": "Installazione", + "skipUpdateNotifications": "Salta notifiche di aggiornamento", + "updatesAvailableNotifChannel": "Aggiornamenti disponibili", + "appsUpdatedNotifChannel": "App aggiornate", + "appsPossiblyUpdatedNotifChannel": "Aggiornamenti app tentati", + "errorCheckingUpdatesNotifChannel": "Controllo degli errori per gli aggiornamenti", + "appsRemovedNotifChannel": "App rimosse", + "downloadingXNotifChannel": "Scaricamento di {} in corso", + "completeAppInstallationNotifChannel": "Completa l'installazione dell'app", + "checkingForUpdatesNotifChannel": "Controllo degli aggiornamenti in corso", + "onlyCheckInstalledOrTrackOnlyApps": "Cerca aggiornamenti solo per app installate e app in Solo-Monitoraggio", + "supportFixedAPKURL": "Supporta URL fissi di APK", + "selectX": "Seleziona {}", + "parallelDownloads": "Permetti download paralleli", + "useShizuku": "Utilizzare Shizuku o Sui per installare", + "shizukuBinderNotFound": "Shizuku non è in esecuzione", + "shizukuOld": "Vecchia versione di Shizuku (<11) - aggiornarla", + "shizukuOldAndroidWithADB": "Shizuku funziona su Android < 8.1 con ADB - aggiornare Android o utilizzare Sui al suo posto", + "shizukuPretendToBeGooglePlay": "Impostare Google Play come fonte di installazione (se si usa Shizuku)", + "useSystemFont": "Usa i caratteri di sistema", + "useVersionCodeAsOSVersion": "Usa il codice versione dell'app come versione rilevata dal sistema operativo", + "requestHeader": "Intestazione della richiesta", + "useLatestAssetDateAsReleaseDate": "Usa l'ultimo caricamento della risorsa come data di rilascio", + "defaultPseudoVersioningMethod": "Metodo di pseudoversione predefinito", + "partialAPKHash": "Hash APK parziale", + "APKLinkHash": "Hash collegamento APK", + "directAPKLink": "Collegamento APK diretto", + "pseudoVersionInUse": "È in uso una pseudo-versione", + "installed": "Installato", + "latest": "Ultimo", + "invertRegEx": "Inverti espressione regolare", + "note": "Nota", + "selfHostedNote": "Il menu a tendina \"{}\" può essere usato per raggiungere istanze autogestite/personali di qualsiasi fonte.", + "badDownload": "Non è stato possibile analizzare l'APK (download incompatibile o parziale).", + "beforeNewInstallsShareToAppVerifier": "Condividere le nuove applicazioni con AppVerifier (se disponibile)", + "appVerifierInstructionToast": "Condividete con AppVerifier, quindi tornate qui quando siete pronti.", + "wiki": "Aiuto/Wiki", + "crowdsourcedConfigsLabel": "Configurazioni di app in crowdsourcing (uso a proprio rischio)", + "crowdsourcedConfigsShort": "Configurazioni di app in crowdsourcing", + "allowInsecure": "Consentire le richieste HTTP non sicure", + "stayOneVersionBehind": "Rimanere una versione indietro rispetto alla più recente", + "useFirstApkOfVersion": "Selezione automatica del primo di più APK", + "refreshBeforeDownload": "Aggiornare i dettagli dell'app prima del download", + "tencentAppStore": "Tencent App Store", + "coolApk": "CoolApk", + "vivoAppStore": "vivo App Store (CN)", + "name": "Nome", + "smartname": "Nome (intelligente)", + "sortMethod": "Metodo di ordinamento", + "welcome": "Benvenuti", + "documentationLinksNote": "La pagina GitHub di Obtainium collegata qui sotto contiene collegamenti a video, articoli, discussioni e altre risorse che vi aiuteranno a capire come utilizzare l'applicazione.", + "batteryOptimizationNote": "Si noti che i download in background potrebbero funzionare in modo più affidabile se si disabilita l'ottimizzazione della batteria del sistema operativo per Obtainium.", + "fileDeletionError": "Errore nell'eliminazione del file (provare a cancellarlo manualmente e poi riprovare): \"{}\"", + "foregroundService": "Servizio Obtainium in primo piano", + "foregroundServiceExplanation": "Utilizzare un servizio in primo piano per il controllo degli aggiornamenti (più affidabile, consuma più energia)", + "fgServiceNotice": "Questa notifica è necessaria per il controllo degli aggiornamenti in background (può essere nascosta nelle impostazioni del sistema operativo).", + "excludeSecrets": "Escludere i segreti", + "GHReqPrefix": "istanza 'sky22333/hubproxy' per le richieste a GitHub", + "includeZips": "Includere file ZIP", + "zippedApkFilterRegEx": "Filtrare gli APK all'interno dello ZIP", + "removeAppQuestion": { + "one": "Rimuovere l'app?", + "other": "Rimuovere le app?" + }, + "tooManyRequestsTryAgainInMinutes": { + "one": "Troppe richieste (traffico limitato) - riprova tra {} minuto", + "other": "Troppe richieste (traffico limitato) - riprova tra {} minuti" + }, + "bgUpdateGotErrorRetryInMinutes": { + "one": "Il controllo degli aggiornamenti in secondo piano ha riscontrato un {}, nuovo tentativo tra {} minuto", + "other": "Il controllo degli aggiornamenti in secondo piano ha riscontrato un {}, nuovo tentativo tra {} minuti" + }, + "bgCheckFoundUpdatesWillNotifyIfNeeded": { + "one": "Il controllo degli aggiornamenti in secondo piano ha trovato {} aggiornamento - notificherà l'utente se necessario", + "other": "Il controllo degli aggiornamenti in secondo piano ha trovato {} aggiornamenti - notificherà l'utente se necessario" + }, + "apps": { + "one": "{} app", + "other": "{} app" + }, + "url": { + "one": "{} URL", + "other": "{} URL" + }, + "minute": { + "one": "{} minuto", + "other": "{} minuti" + }, + "hour": { + "one": "{} ora", + "other": "{} ore" + }, + "day": { + "one": "{} giorno", + "other": "{} giorni" + }, + "clearedNLogsBeforeXAfterY": { + "one": "Rimosso {n} log (prima = {before}, dopo = {after})", + "other": "Rimossi {n} log (prima = {before}, dopo = {after})" + }, + "xAndNMoreUpdatesAvailable": { + "one": "{} e un'altra app hanno aggiornamenti disponibili.", + "other": "{} e altre {} app hanno aggiornamenti disponibili." + }, + "xAndNMoreUpdatesInstalled": { + "one": "{} e un'altra app sono state aggiornate.", + "other": "{} e altre {} app sono state aggiornate." + }, + "xAndNMoreUpdatesFailed": { + "one": "Non è riuscito ad aggiornare {} e altre 1 app.", + "other": "Non è riuscito ad aggiornare {} e {} altre applicazioni." + }, + "xAndNMoreUpdatesPossiblyInstalled": { + "one": "{} e un'altra app potrebbero essere state aggiornate.", + "other": "{} e altre {} app potrebbero essere state aggiornate." + }, + "apk": { + "one": "{} APK", + "other": "{} APK" + } +} diff --git a/assets/translations/ja.json b/assets/translations/ja.json new file mode 100644 index 0000000..a00a26e --- /dev/null +++ b/assets/translations/ja.json @@ -0,0 +1,402 @@ +{ + "invalidURLForSource": "{}は有効なソースURLではありません", + "noReleaseFound": "適切なリリースが見つかりませんでした", + "noVersionFound": "リリースバージョンを特定できませんでした", + "urlMatchesNoSource": "URLが既知のソースと一致しません", + "cantInstallOlderVersion": "旧バージョンのアプリをインストールできません", + "appIdMismatch": "ダウンロードしたパッケージのIDが既存のApp IDと一致しません", + "functionNotImplemented": "このクラスはこの機能を実装していません", + "placeholder": "プレースホルダー", + "someErrors": "何らかのエラーが発生しました", + "unexpectedError": "予期せぬエラーが発生しました", + "ok": "OK", + "and": "と", + "githubPATLabel": "GitHub パーソナルアクセストークン (レート制限の引き上げ)", + "includePrereleases": "プレリリースを含む", + "fallbackToOlderReleases": "旧リリースへのフォールバック", + "filterReleaseTitlesByRegEx": "正規表現でリリースタイトルをフィルタリングする", + "invalidRegEx": "無効な正規表現", + "noDescription": "説明はありません", + "cancel": "キャンセル", + "continue": "続行", + "requiredInBrackets": "(必須)", + "dropdownNoOptsError": "エラー: ドロップダウンには、少なくとも1つのオプションが必要です", + "colour": "カラー", + "standard": "スタンダード", + "custom": "カスタム", + "useMaterialYou": "Material Youを使用する", + "githubStarredRepos": "Githubでスターしたリポジトリ", + "uname": "ユーザー名", + "wrongArgNum": "提供する引数の数が間違っています", + "xIsTrackOnly": "{} は「追跡のみ」です", + "source": "ソース", + "app": "アプリ", + "appsFromSourceAreTrackOnly": "このソースからのアプリは「追跡のみ」です。", + "youPickedTrackOnly": "「追跡のみ」を選択しています", + "trackOnlyAppDescription": "アプリのアップデートは追跡されますが、Obtainiumはアプリのダウンロードやインストールをすることはできません。", + "cancelled": "キャンセルしました", + "appAlreadyAdded": "アプリはすでに追加されています", + "alreadyUpToDateQuestion": "アプリはすでに最新ですか?", + "addApp": "アプリの追加", + "appSourceURL": "アプリのソースURL", + "error": "エラー", + "add": "追加", + "searchSomeSourcesLabel": "検索 (一部ソースのみ)", + "search": "検索", + "additionalOptsFor": "{}の追加オプション", + "supportedSources": "対応するソース", + "trackOnlyInBrackets": "(追跡のみ)", + "searchableInBrackets": "(検索可能)", + "appsString": "アプリ", + "noApps": "アプリはありません", + "noAppsForFilter": "フィルターに一致するアプリはありません", + "byX": "by {}", + "percentProgress": "ダウンロード中: {}%", + "pleaseWait": "しばらくお待ちください", + "updateAvailable": "アップデートが利用可能", + "notInstalled": "未インストール", + "pseudoVersion": "疑似バージョン", + "selectAll": "すべて選択", + "deselectX": "{}件の選択を解除", + "xWillBeRemovedButRemainInstalled": "{} はObtainiumから削除されますが、デバイスにはインストールされたままです。", + "removeSelectedAppsQuestion": "選択したアプリを削除しますか?", + "removeSelectedApps": "選択したアプリを削除する", + "updateX": "{} をアップデートする", + "installX": "{} をインストールする", + "markXTrackOnlyAsUpdated": "{}\n(追跡のみ)\nをアップデート済みとしてマークする", + "changeX": "{} を変更する", + "installUpdateApps": "アプリのインストール/アップデート", + "installUpdateSelectedApps": "選択したアプリのインストール/アップデート", + "markXSelectedAppsAsUpdated": "{}個の選択したアプリをアップデート済みとしてマークしますか?", + "no": "いいえ", + "yes": "はい", + "markSelectedAppsUpdated": "選択したアプリをアップデート済みとしてマークする", + "pinToTop": "トップに固定", + "unpinFromTop": "トップから固定解除", + "resetInstallStatusForSelectedAppsQuestion": "選択したアプリのインストール状態をリセットしますか?", + "installStatusOfXWillBeResetExplanation": "選択したアプリのインストール状態がリセットされます。\n\nアップデートに失敗した場合など、Obtainiumに表示されるアプリのバージョンが正しくない場合に有効です。", + "customLinkMessage": "これらのリンクはObtainiumがインストールされたデバイスで動作します", + "shareAppConfigLinks": "アプリの設定をHTMLリンクとして共有する", + "shareSelectedAppURLs": "選択したアプリのURLを共有する", + "resetInstallStatus": "インストール状態をリセットする", + "more": "もっと見る", + "removeOutdatedFilter": "アップデートが存在するアプリのフィルターを解除", + "showOutdatedOnly": "アップデートが存在するアプリのみ表示する", + "filter": "フィルター", + "filterApps": "アプリをフィルタリングする", + "appName": "アプリ名", + "author": "作者", + "upToDateApps": "最新のアプリ", + "nonInstalledApps": "未インストールのアプリ", + "importExport": "インポート/エクスポート", + "settings": "設定", + "exportedTo": "{}にエクスポートしました", + "obtainiumExport": "Obtainium エクスポート", + "invalidInput": "無効な入力", + "importedX": "{}をインポートしました", + "obtainiumImport": "Obtainium インポート", + "importFromURLList": "URLリストからのインポート", + "searchQuery": "検索キーワード", + "appURLList": "アプリのURLリスト", + "line": "行", + "searchX": "{}で検索", + "noResults": "結果は見つかりませんでした", + "importX": "{}をインポート", + "importedAppsIdDisclaimer": "インポートしたアプリが「未インストール」と表示されることがあります。\nこれを解決するには、Obtainiumから再インストールしてください。\nアプリのデータには影響しません。\n\nURLとサードパーティのインポートメソッドにのみ影響します。", + "importErrors": "インポートエラー", + "importedXOfYApps": "{} / {} アプリをインポートしました", + "followingURLsHadErrors": "以下のURLでエラーが発生しました:", + "selectURL": "URLを選択", + "selectURLs": "URLを選択", + "pick": "選択", + "theme": "テーマ", + "dark": "ダーク", + "light": "ライト", + "followSystem": "システムに従う", + "followSystemThemeExplanation": "以下のシステムテーマは、サードパーティのアプリケーションを使用することによってのみ可能です。", + "useBlackTheme": "ピュアブラックダークテーマを使用する", + "appSortBy": "アプリの並び方", + "authorName": "作者名/アプリ名", + "nameAuthor": "アプリ名/作者名", + "asAdded": "追加順", + "appSortOrder": "並び順", + "ascending": "昇順", + "descending": "降順", + "bgUpdateCheckInterval": "バックグラウンドでのアップデート確認の間隔", + "neverManualOnly": "手動", + "appearance": "外観", + "showWebInAppView": "アプリページにソースのWebページを表示する", + "pinUpdates": "アップデートがあるアプリをトップに固定する", + "updates": "アップデート", + "sourceSpecific": "ソース別の設定", + "appSource": "アプリのソース", + "noLogs": "ログはありません", + "appLogs": "アプリのログ", + "close": "閉じる", + "share": "共有", + "appNotFound": "アプリが見つかりません", + "obtainiumExportHyphenatedLowercase": "obtainium-エクスポート", + "pickAnAPK": "APKを選択", + "appHasMoreThanOnePackage": "{} は複数のパッケージが存在します: ", + "deviceSupportsXArch": "お使いのデバイスは {} CPUアーキテクチャに対応しています。", + "deviceSupportsFollowingArchs": "お使いのデバイスは、以下のCPUアーキテクチャをサポートしています:", + "warning": "警告", + "sourceIsXButPackageFromYPrompt": "アプリのソースは'{}'ですが、リリースパッケージは'{}'から来ています。続行しますか?", + "updatesAvailable": "アップデートが利用可能", + "updatesAvailableNotifDescription": "Obtainiumが追跡している1つまたは複数のアプリのアップデートが利用可能であることをユーザーに通知する", + "noNewUpdates": "新しいアップデートはありません", + "xHasAnUpdate": "{} のアップデートが利用可能です。", + "appsUpdated": "アプリをアップデートしました", + "appsNotUpdated": "アプリのアップデートに失敗しました", + "appsUpdatedNotifDescription": "1つまたは複数のAppのアップデートがバックグラウンドで適用されたことをユーザーに通知する", + "xWasUpdatedToY": "{} が {} にアップデートされました", + "xWasNotUpdatedToY": "{} の {} へのアップデートに失敗しました", + "errorCheckingUpdates": "アップデート確認中のエラー", + "errorCheckingUpdatesNotifDescription": "バックグラウンドでのアップデート確認に失敗した際に表示される通知", + "appsRemoved": "削除されたアプリ", + "appsRemovedNotifDescription": "アプリの読み込み中にエラーが発生したため、1つまたは複数のアプリが削除されたことをユーザーに通知する", + "xWasRemovedDueToErrorY": "このエラーのため、{} は削除されました: {}", + "completeAppInstallation": "アプリのインストールを完了する", + "obtainiumMustBeOpenToInstallApps": "アプリをインストールするにはObtainiumを開く必要があります", + "completeAppInstallationNotifDescription": "アプリのインストールを完了するために、Obtainiumに戻る必要があります", + "checkingForUpdates": "アップデートを確認中", + "checkingForUpdatesNotifDescription": "アップデートを確認する際に表示される一時的な通知", + "pleaseAllowInstallPerm": "Obtainiumによるアプリのインストールを許可してください", + "trackOnly": "追跡のみ", + "errorWithHttpStatusCode": "エラー {}", + "versionCorrectionDisabled": "バージョン補正無効 (プラグインが動作していません)", + "unknown": "不明", + "none": "なし", + "all": "すべて", + "never": "しない", + "latestVersionX": "最新のバージョン: {}", + "installedVersionX": "インストールされたバージョン: {}", + "lastUpdateCheckX": "最終アップデート確認: {}", + "remove": "削除", + "yesMarkUpdated": "はい、アップデート済みとしてマークします", + "fdroid": "F-Droid公式", + "appIdOrName": "アプリのIDまたは名前", + "appId": "アプリID", + "appWithIdOrNameNotFound": "そのIDや名前を持つアプリは見つかりませんでした", + "reposHaveMultipleApps": "リポジトリには複数のアプリが含まれることがあります", + "fdroidThirdPartyRepo": "F-Droid サードパーティリポジトリ", + "install": "インストール", + "markInstalled": "インストール済みとしてマークする", + "update": "アップデート", + "markUpdated": "アップデート済みとしてマークする", + "additionalOptions": "追加のオプション", + "disableVersionDetection": "バージョン検出を無効にする", + "noVersionDetectionExplanation": "このオプションは、バージョン検出が正しく機能しないアプリにのみ使用する必要があります。", + "downloadingX": "{} をダウンロード中", + "downloadX": "ダウンロード", + "downloadedX": "ダウンロード", + "releaseAsset": "リリース資産", + "downloadNotifDescription": "アプリのダウンロード状況を通知する", + "noAPKFound": "APKが見つかりません", + "noVersionDetection": "バージョン検出を行わない", + "categorize": "カテゴライズ", + "categories": "カテゴリ", + "category": "カテゴリ", + "noCategory": "カテゴリなし", + "noCategories": "カテゴリなし", + "deleteCategoriesQuestion": "カテゴリを削除しますか?", + "categoryDeleteWarning": "削除されたカテゴリ内のアプリは未分類に設定されます。", + "addCategory": "カテゴリを追加", + "label": "ラベル", + "language": "言語", + "copiedToClipboard": "クリップボードにコピーしました", + "storagePermissionDenied": "ストレージ権限が拒否されました", + "selectedCategorizeWarning": "これにより、選択したアプリの既存のカテゴリ設定がすべて置き換えられます。", + "filterAPKsByRegEx": "正規表現でAPKをフィルタリングする", + "removeFromObtainium": "Obtainiumから削除する", + "uninstallFromDevice": "デバイスからアンインストールする", + "onlyWorksWithNonVersionDetectApps": "バージョン検出を無効にしているアプリにのみ動作します。", + "releaseDateAsVersion": "リリース日をバージョンとして使用する", + "releaseTitleAsVersion": "リリースタイトルをバージョンとして使用する", + "releaseDateAsVersionExplanation": "このオプションは、バージョン検出が正しく機能しないアプリで、リリース日が利用可能な場合にのみ使用する必要があります。", + "changes": "変更点", + "releaseDate": "リリース日", + "importFromURLsInFile": "ファイル(OPMLなど)内のURLからインポート", + "versionDetectionExplanation": "バージョン文字列とOSから検出されたバージョンを照合する", + "versionDetection": "バージョン検出", + "standardVersionDetection": "標準のバージョン検出", + "groupByCategory": "カテゴリ別にグループ化する", + "autoApkFilterByArch": "可能であれば、CPUアーキテクチャによるAPKのフィルタリングを試みる", + "autoLinkFilterByArch": "可能であれば、CPUアーキテクチャによるリンクのフィルタリングを試みる", + "overrideSource": "ソースの上書き", + "dontShowAgain": "二度と表示しない", + "dontShowTrackOnlyWarnings": "「追跡のみ」の警告を表示しない", + "dontShowAPKOriginWarnings": "APKのダウンロード元の警告を表示しない", + "moveNonInstalledAppsToBottom": "未インストールのアプリをアプリ一覧の下部に移動させる", + "gitlabPATLabel": "GitLab パーソナルアクセストークン", + "about": "概要", + "requiresCredentialsInSettings": "{}: これには追加の認証が必要です (設定にて)", + "checkOnStart": "起動時にアップデートを確認する", + "tryInferAppIdFromCode": "ソースコードからApp IDを推測する", + "removeOnExternalUninstall": "外部でアンインストールされたアプリを自動的に削除する", + "pickHighestVersionCode": "最も高いバージョンコードのAPKを自動的に選択する", + "checkUpdateOnDetailPage": "アプリの詳細ページを開く際にアップデートを確認する", + "disablePageTransitions": "ページ遷移アニメーションを無効化する", + "reversePageTransitions": "ページ遷移アニメーションを反転する", + "minStarCount": "最小スター数", + "addInfoBelow": "下部でこの情報を追加してください。", + "addInfoInSettings": "設定でこの情報を追加してください。", + "githubSourceNote": "GitHubのレート制限はAPIキーを使うことで回避できます。", + "sortByLastLinkSegment": "リンクの最後のセグメントのみでソートする", + "filterReleaseNotesByRegEx": "正規表現でリリースノートをフィルタリングする", + "customLinkFilterRegex": "正規表現によるカスタムリンクフィルター (デフォルト '.apk$')", + "appsPossiblyUpdated": "アプリのアップデートを試行", + "appsPossiblyUpdatedNotifDescription": "1つまたは複数のアプリのアップデートがバックグラウンドで適用された可能性があることをユーザーに通知する", + "xWasPossiblyUpdatedToY": "{} が {} にアップデートされた可能性があります。", + "enableBackgroundUpdates": "バックグラウンドアップデートを有効化する", + "backgroundUpdateReqsExplanation": "バックグラウンドアップデートは、すべてのアプリで可能とは限りません。", + "backgroundUpdateLimitsExplanation": "バックグラウンドアップデートが成功したかどうかは、Obtainiumを起動したときにしか判断できません。", + "verifyLatestTag": "'latest'タグを確認する", + "intermediateLinkRegex": "訪問する「中間」リンクのフィルター", + "filterByLinkText": "テキストでリンクをフィルタリングする", + "matchLinksOutsideATags": "タグの外にあるリンクに一致させる", + "intermediateLinkNotFound": "中間リンクが見つかりませんでした", + "intermediateLink": "中間リンク", + "exemptFromBackgroundUpdates": "バックグラウンドアップデートを行わない (有効な場合)", + "bgUpdatesOnWiFiOnly": "WiFiを使用していない場合、バックグラウンドアップデートを無効にする", + "bgUpdatesWhileChargingOnly": "非充電時にバックグラウンドアップデートを無効にする", + "autoSelectHighestVersionCode": "最も高いバージョンコードのAPKを自動で選択する", + "versionExtractionRegEx": "バージョン抽出の正規表現", + "trimVersionString": "正規表現でバージョン文字列をトリムする", + "matchGroupToUseForX": "\"{}\"に使用するマッチしたグループ", + "matchGroupToUse": "使用するマッチしたグループ", + "highlightTouchTargets": "目立たないタップ可能な対象をハイライトする", + "pickExportDir": "エクスポートディレクトリを選択", + "autoExportOnChanges": "変更があった際に自動でエクスポートする", + "includeSettings": "設定を含む", + "filterVersionsByRegEx": "正規表現でバージョンをフィルタリングする", + "trySelectingSuggestedVersionCode": "提案されたバージョンコードのAPKを選択する", + "dontSortReleasesList": "APIからのリリース順を保持する", + "reverseSort": "逆順ソート", + "takeFirstLink": "最初のリンクを取得する", + "skipSort": "ソートをスキップする", + "debugMenu": "デバッグメニュー", + "bgTaskStarted": "バックグラウンドタスクが開始されました - ログを確認してください。", + "runBgCheckNow": "今すぐバックグラウンドでのアップデート確認を開始する", + "versionExtractWholePage": "バージョン抽出の正規表現をページ全体に適用する", + "installing": "インストール中", + "skipUpdateNotifications": "アップデート通知を行わない", + "updatesAvailableNotifChannel": "アップデートが利用可能", + "appsUpdatedNotifChannel": "アプリをアップデートしました", + "appsPossiblyUpdatedNotifChannel": "アプリのアップデートを試行", + "errorCheckingUpdatesNotifChannel": "アップデート確認中のエラー", + "appsRemovedNotifChannel": "削除されたアプリ", + "downloadingXNotifChannel": "{} をダウンロード中", + "completeAppInstallationNotifChannel": "アプリのインストールを完了する", + "checkingForUpdatesNotifChannel": "アップデートを確認中", + "onlyCheckInstalledOrTrackOnlyApps": "インストール済みのアプリと「追跡のみ」のアプリのアップデートのみを確認する", + "supportFixedAPKURL": "固定されたAPKのURLをサポートする", + "selectX": "{} 選択", + "parallelDownloads": "並行ダウンロードを許可する", + "useShizuku": "ShizukuまたはSuiを使用してインストールする", + "shizukuBinderNotFound": "Shizukuが起動していません", + "shizukuOld": "古いShizukuのバージョン (<11) - アップデートしてください", + "shizukuOldAndroidWithADB": "ShizukuがAndroid 8.1未満でADBを使用して動作しています - Androidをアップデートするか、代わりにSuiを使用してください", + "shizukuPretendToBeGooglePlay": "Google Playをインストール元として設定する(Shizukuを使用する場合)", + "useSystemFont": "システムフォントを使用する", + "useVersionCodeAsOSVersion": "アプリのバージョンコードをOSで検出されたバージョンとして使用する", + "requestHeader": "リクエストヘッダー", + "useLatestAssetDateAsReleaseDate": "最新のアセットアップロードをリリース日として使用する", + "defaultPseudoVersioningMethod": "デフォルトの疑似バージョン管理方法", + "partialAPKHash": "部分的なAPKのハッシュ", + "APKLinkHash": "APKリンクのハッシュ", + "directAPKLink": "APKのダイレクトリンク", + "pseudoVersionInUse": "疑似バージョンが使用されています", + "installed": "インストール済み", + "latest": "最新", + "invertRegEx": "正規表現を反転", + "note": "注", + "selfHostedNote": "ドロップダウン\"{}\"を使用すると、あらゆるソースのセルフホスト/カスタムインスタンスにアクセスできます。", + "badDownload": "APK を解析できませんでした(互換性がないか、部分的にダウンロードされています)。", + "beforeNewInstallsShareToAppVerifier": "AppVerifierで新しいアプリを共有する(利用可能な場合)", + "appVerifierInstructionToast": "AppVerifierに共有し、準備ができたらここに戻ってください。", + "wiki": "ヘルプ/ウィキ", + "crowdsourcedConfigsLabel": "クラウドソーシングによるアプリの設定(利用は自己責任で)", + "crowdsourcedConfigsShort": "クラウドソーシングによるアプリの設定", + "allowInsecure": "安全でないHTTPリクエストを許可する", + "stayOneVersionBehind": "最新のバージョンから1つ前のものを使用する", + "useFirstApkOfVersion": "複数のAPKから最初のAPKを自動選択する", + "refreshBeforeDownload": "ダウンロード前にアプリの詳細を更新する", + "tencentAppStore": "Tencent App Store", + "coolApk": "Cool Apk", + "vivoAppStore": "vivo App Store (CN)", + "name": "アプリ名", + "smartname": "アプリ名(スマート)", + "sortMethod": "ソート方法", + "welcome": "ようこそ", + "documentationLinksNote": "以下のリンクにあるObtainium GitHubページには、ビデオ、記事、ディスカッション、その他のリソースへのリンクがあり、アプリの使い方を理解するのに役立ちます。", + "batteryOptimizationNote": "ObtainiumのOSバッテリー最適化を無効にすると、バックグラウンドダウンロードがより確実に動作するようになります。", + "fileDeletionError": "ファイルの削除に失敗しました(手動で削除してから再試行してください):\"{}\"", + "foregroundService": "Obtainium フォアグラウンドサービス", + "foregroundServiceExplanation": "アップデート確認にフォアグラウンドサービスを使用する(より信頼性が高いが、より電力を消費する)", + "fgServiceNotice": "この通知は、バックグラウンドでアップデートを確認するために必要です(OSの設定で非表示にできます)。", + "excludeSecrets": "シークレットを除く", + "GHReqPrefix": "GitHub リクエスト用の 'sky22333/hubproxy' インスタンス", + "includeZips": "ZIPファイルを含む", + "zippedApkFilterRegEx": "ZIP内のAPKをフィルタリングする", + "removeAppQuestion": { + "one": "アプリを削除しますか?", + "other": "アプリを削除しますか?" + }, + "tooManyRequestsTryAgainInMinutes": { + "one": "リクエストが多すぎます(レート制限)- {} 分後に再試行してください", + "other": "リクエストが多すぎます(レート制限)- {} 分後に再試行してください" + }, + "bgUpdateGotErrorRetryInMinutes": { + "one": "バックグラウンドでのアップデート確認で {} の問題が発生, {} 分後に再試行します", + "other": "バックグラウンドでのアップデート確認で {} の問題が発生, {} 分後に再試行します" + }, + "bgCheckFoundUpdatesWillNotifyIfNeeded": { + "one": "バックグラウンドでのアップデート確認で {} 個のアップデートを発見 - 必要に応じてユーザーに通知します", + "other": "バックグラウンドでのアップデート確認で {} 個のアップデートを発見 - 必要に応じてユーザーに通知します" + }, + "apps": { + "one": "{} 個のアプリ", + "other": "{} 個のアプリ" + }, + "url": { + "one": "{} 個のURL", + "other": "{} 個のURL" + }, + "minute": { + "one": "{} 分", + "other": "{} 分" + }, + "hour": { + "one": "{} 時間", + "other": "{} 時間" + }, + "day": { + "one": "{} 日", + "other": "{} 日" + }, + "clearedNLogsBeforeXAfterY": { + "one": "{n} 個のログをクリアしました (前 = {before}, 後 = {after})", + "other": "{n} 個のログをクリアしました (前 = {before}, 後 = {after})" + }, + "xAndNMoreUpdatesAvailable": { + "one": "{} とさらに 1 個のアプリのアップデートが利用可能です。", + "other": "{} とさらに {} 個のアプリのアップデートが利用可能です。" + }, + "xAndNMoreUpdatesInstalled": { + "one": "{} とさらに 1 個のアプリがアップデートされました。", + "other": "{} とさらに {} 個のアプリがアップデートされました。" + }, + "xAndNMoreUpdatesFailed": { + "one": "{} とさらに 1 個のアプリのアップデートに失敗しました。", + "other": "{} とさらに {} 個のアプリのアップデートに失敗しました。" + }, + "xAndNMoreUpdatesPossiblyInstalled": { + "one": "{} とさらに 1 個のアプリがアップデートされた可能性があります。", + "other": "{} とさらに {} 個のアプリがアップデートされた可能性があります。" + }, + "apk": { + "one": "{} APK", + "other": "{} APK" + } +} diff --git a/assets/translations/ko.json b/assets/translations/ko.json new file mode 100644 index 0000000..e4f2a62 --- /dev/null +++ b/assets/translations/ko.json @@ -0,0 +1,402 @@ +{ + "invalidURLForSource": "유효한 {} 앱 URL이 아닙니다", + "noReleaseFound": "적절한 릴리스를 찾을 수 없습니다", + "noVersionFound": "릴리스 버전을 결정할 수 없습니다", + "urlMatchesNoSource": "URL이 알려진 소스와 일치하지 않습니다", + "cantInstallOlderVersion": "앱의 이전 버전을 설치할 수 없습니다", + "appIdMismatch": "다운로드된 패키지 ID가 기존 앱 ID와 일치하지 않습니다", + "functionNotImplemented": "이 클래스는 이 기능을 구현하지 않았습니다", + "placeholder": "플레이스홀더", + "someErrors": "일부 오류가 발생했습니다", + "unexpectedError": "예기치 않은 오류", + "ok": "확인", + "and": "그리고", + "githubPATLabel": "GitHub 개인 액세스 토큰 (속도 제한 증가)", + "includePrereleases": "사전 릴리스 포함", + "fallbackToOlderReleases": "이전 릴리스로 대체", + "filterReleaseTitlesByRegEx": "정규 표현식으로 릴리스 제목 필터링", + "invalidRegEx": "잘못된 정규 표현식", + "noDescription": "설명 없음", + "cancel": "취소", + "continue": "계속", + "requiredInBrackets": "(필수)", + "dropdownNoOptsError": "오류: 드롭다운에는 최소 하나의 옵션이 있어야 합니다", + "colour": "색상", + "standard": "표준", + "custom": "사용자 정의", + "useMaterialYou": "Material You 사용", + "githubStarredRepos": "GitHub 즐겨찾기 저장소", + "uname": "사용자 이름", + "wrongArgNum": "잘못된 인수 수 제공", + "xIsTrackOnly": "{}는 추적 전용입니다", + "source": "소스", + "app": "앱", + "appsFromSourceAreTrackOnly": "이 소스의 앱은 '추적 전용'입니다.", + "youPickedTrackOnly": "당신은 '추적 전용' 옵션을 선택했습니다.", + "trackOnlyAppDescription": "앱은 업데이트를 위해 추적되지만 Obtainium은 다운로드하거나 설치할 수 없습니다.", + "cancelled": "취소됨", + "appAlreadyAdded": "앱이 이미 추가되었습니다", + "alreadyUpToDateQuestion": "앱이 이미 최신 상태입니까?", + "addApp": "앱 추가", + "appSourceURL": "앱 소스 URL", + "error": "오류", + "add": "추가", + "searchSomeSourcesLabel": "검색 (일부 소스만)", + "search": "검색", + "additionalOptsFor": "{}에 대한 추가 옵션", + "supportedSources": "지원되는 소스", + "trackOnlyInBrackets": "(추적 전용)", + "searchableInBrackets": "(검색 가능)", + "appsString": "앱", + "noApps": "앱 없음", + "noAppsForFilter": "필터에 대한 앱 없음", + "byX": "{}에 의해", + "percentProgress": "진행률: {}%", + "pleaseWait": "기다려 주세요", + "updateAvailable": "업데이트 가능", + "notInstalled": "설치되지 않음", + "pseudoVersion": "의사 버전", + "selectAll": "모두 선택", + "deselectX": "{} 선택 해제", + "xWillBeRemovedButRemainInstalled": "{}는 Obtainium에서 제거되지만 장치에 설치된 상태로 남아 있습니다.", + "removeSelectedAppsQuestion": "선택한 앱을 제거하시겠습니까?", + "removeSelectedApps": "선택한 앱 제거", + "updateX": "{} 업데이트", + "installX": "{} 설치", + "markXTrackOnlyAsUpdated": "{}\n(추적 전용)\n업데이트됨으로 표시", + "changeX": "{} 변경", + "installUpdateApps": "앱 설치/업데이트", + "installUpdateSelectedApps": "선택한 앱 설치/업데이트", + "markXSelectedAppsAsUpdated": "{} 선택한 앱을 업데이트됨으로 표시하시겠습니까?", + "no": "아니요", + "yes": "예", + "markSelectedAppsUpdated": "선택한 앱을 업데이트됨으로 표시", + "pinToTop": "상단에 고정", + "unpinFromTop": "상단에서 고정 해제", + "resetInstallStatusForSelectedAppsQuestion": "선택한 앱의 설치 상태를 재설정하시겠습니까?", + "installStatusOfXWillBeResetExplanation": "선택한 앱의 설치 상태가 재설정됩니다.\n\n이것은 실패한 업데이트나 기타 문제로 인해 Obtainium에 표시된 앱 버전이 잘못된 경우에 도움이 될 수 있습니다.", + "customLinkMessage": "이 링크는 Obtainium이 설치된 장치에서 작동합니다", + "shareAppConfigLinks": "앱 구성 HTML 링크로 공유", + "shareSelectedAppURLs": "선택한 앱 URL 공유", + "resetInstallStatus": "설치 상태 재설정", + "more": "더보기", + "removeOutdatedFilter": "구식 앱 필터 제거", + "showOutdatedOnly": "구식 앱만 표시", + "filter": "필터", + "filterApps": "앱 필터", + "appName": "앱 이름", + "author": "저자", + "upToDateApps": "최신 상태의 앱", + "nonInstalledApps": "설치되지 않은 앱", + "importExport": "가져오기/내보내기", + "settings": "설정", + "exportedTo": "{}로 내보내기 완료", + "obtainiumExport": "Obtainium 내보내기", + "invalidInput": "잘못된 입력", + "importedX": "{} 가져오기 완료", + "obtainiumImport": "Obtainium 가져오기", + "importFromURLList": "URL 목록에서 가져오기", + "searchQuery": "검색 쿼리", + "appURLList": "앱 URL 목록", + "line": "줄", + "searchX": "{} 검색", + "noResults": "결과가 없습니다", + "importX": "{} 가져오기", + "importedAppsIdDisclaimer": "가져온 앱은 \"설치되지 않음\"으로 잘못 표시될 수 있습니다.\n이를 수정하려면 Obtainium을 통해 다시 설치하십시오.\n앱 데이터에는 영향을 미치지 않습니다.\n\nURL 및 타사 가져오기 방법에만 영향을 미칩니다.", + "importErrors": "가져오기 오류", + "importedXOfYApps": "{}개의 앱 중 {}개 가져오기 완료.", + "followingURLsHadErrors": "다음 URL에 오류가 있었습니다:", + "selectURL": "URL 선택", + "selectURLs": "URL 선택", + "pick": "선택", + "theme": "테마", + "dark": "다크", + "light": "라이트", + "followSystem": "시스템 따르기", + "followSystemThemeExplanation": "시스템 테마를 따르려면 타사 애플리케이션을 사용해야 합니다", + "useBlackTheme": "순수한 검은색 다크 테마 사용", + "appSortBy": "앱 정렬 기준", + "authorName": "저자/이름", + "nameAuthor": "이름/저자", + "asAdded": "추가된 순서대로", + "appSortOrder": "앱 정렬 순서", + "ascending": "오름차순", + "descending": "내림차순", + "bgUpdateCheckInterval": "백그라운드 업데이트 확인 간격", + "neverManualOnly": "절대 - 수동만", + "appearance": "외관", + "showWebInAppView": "앱 보기에서 소스 웹페이지 표시", + "pinUpdates": "앱 보기 상단에 업데이트 고정", + "updates": "업데이트", + "sourceSpecific": "소스별", + "appSource": "앱 소스", + "noLogs": "로그 없음", + "appLogs": "앱 로그", + "close": "닫기", + "share": "공유", + "appNotFound": "앱을 찾을 수 없습니다", + "obtainiumExportHyphenatedLowercase": "obtainium-export", + "pickAnAPK": "APK 선택", + "appHasMoreThanOnePackage": "{}에는 둘 이상의 패키지가 있습니다:", + "deviceSupportsXArch": "장치는 {} CPU 아키텍처를 지원합니다.", + "deviceSupportsFollowingArchs": "장치는 다음 CPU 아키텍처를 지원합니다:", + "warning": "경고", + "sourceIsXButPackageFromYPrompt": "앱 소스는 '{}'이지만 릴리스 패키지는 '{}'에서 제공됩니다. 계속하시겠습니까?", + "updatesAvailable": "업데이트 가능", + "updatesAvailableNotifDescription": "Obtainium이 추적하는 하나 이상의 앱에 대한 업데이트가 있음을 사용자에게 알립니다", + "noNewUpdates": "새로운 업데이트가 없습니다.", + "xHasAnUpdate": "{}에 업데이트가 있습니다.", + "appsUpdated": "앱 업데이트됨", + "appsNotUpdated": "앱 업데이트 실패", + "appsUpdatedNotifDescription": "백그라운드에서 하나 이상의 앱에 대한 업데이트가 적용되었음을 사용자에게 알립니다", + "xWasUpdatedToY": "{}가 {}로 업데이트되었습니다.", + "xWasNotUpdatedToY": "{}를 {}로 업데이트하지 못했습니다.", + "errorCheckingUpdates": "업데이트 확인 오류", + "errorCheckingUpdatesNotifDescription": "백그라운드 업데이트 확인이 실패할 때 표시되는 알림", + "appsRemoved": "앱 제거됨", + "appsRemovedNotifDescription": "로드 중 오류로 인해 하나 이상의 앱이 제거되었음을 사용자에게 알립니다", + "xWasRemovedDueToErrorY": "{}가 다음 오류로 인해 제거되었습니다: {}", + "completeAppInstallation": "앱 설치 완료", + "obtainiumMustBeOpenToInstallApps": "앱을 설치하려면 Obtainium이 열려 있어야 합니다", + "completeAppInstallationNotifDescription": "앱 설치를 완료하려면 Obtainium으로 돌아가도록 사용자에게 요청합니다", + "checkingForUpdates": "업데이트 확인 중", + "checkingForUpdatesNotifDescription": "업데이트 확인 시 나타나는 일시적인 알림", + "pleaseAllowInstallPerm": "Obtainium이 앱을 설치할 수 있도록 허용해 주세요", + "trackOnly": "추적 전용", + "errorWithHttpStatusCode": "오류 {}", + "versionCorrectionDisabled": "버전 수정 비활성화됨 (플러그인이 작동하지 않는 것 같습니다)", + "unknown": "알 수 없음", + "none": "없음", + "all": "모두", + "never": "절대", + "latestVersionX": "최신: {}", + "installedVersionX": "설치됨: {}", + "lastUpdateCheckX": "마지막 업데이트 확인: {}", + "remove": "제거", + "yesMarkUpdated": "예, 업데이트됨으로 표시", + "fdroid": "F-Droid 공식", + "appIdOrName": "앱 ID 또는 이름", + "appId": "앱 ID", + "appWithIdOrNameNotFound": "해당 ID 또는 이름의 앱을 찾을 수 없습니다", + "reposHaveMultipleApps": "저장소에는 여러 앱이 포함될 수 있습니다", + "fdroidThirdPartyRepo": "F-Droid 타사 저장소", + "install": "설치", + "markInstalled": "설치됨으로 표시", + "update": "업데이트", + "markUpdated": "업데이트됨으로 표시", + "additionalOptions": "추가 옵션", + "disableVersionDetection": "버전 감지 비활성화", + "noVersionDetectionExplanation": "이 옵션은 버전 감지가 올바르게 작동하지 않는 앱에만 사용해야 합니다.", + "downloadingX": "{} 다운로드 중", + "downloadX": "{} 다운로드", + "downloadedX": "{} 다운로드 완료", + "releaseAsset": "릴리스 자산", + "downloadNotifDescription": "앱 다운로드 진행 상황을 사용자에게 알립니다", + "noAPKFound": "APK를 찾을 수 없습니다", + "noVersionDetection": "버전 감지 없음", + "categorize": "분류", + "categories": "카테고리", + "category": "카테고리", + "noCategory": "카테고리 없음", + "noCategories": "카테고리 없음", + "deleteCategoriesQuestion": "카테고리를 삭제하시겠습니까?", + "categoryDeleteWarning": "삭제된 카테고리의 모든 앱은 미분류로 설정됩니다.", + "addCategory": "카테고리 추가", + "label": "레이블", + "language": "언어", + "copiedToClipboard": "클립보드에 복사됨", + "storagePermissionDenied": "저장소 권한 거부됨", + "selectedCategorizeWarning": "이 작업은 선택한 앱의 기존 카테고리 설정을 대체합니다.", + "filterAPKsByRegEx": "정규 표현식으로 APK 필터링", + "removeFromObtainium": "Obtainium에서 제거", + "uninstallFromDevice": "장치에서 제거", + "onlyWorksWithNonVersionDetectApps": "버전 감지가 비활성화된 앱에만 작동합니다.", + "releaseDateAsVersion": "릴리스 날짜를 버전 문자열로 사용", + "releaseTitleAsVersion": "릴리스 제목을 버전 문자열로 사용", + "releaseDateAsVersionExplanation": "이 옵션은 버전 감지가 올바르게 작동하지 않지만 릴리스 날짜가 있는 앱에만 사용해야 합니다.", + "changes": "변경 사항", + "releaseDate": "릴리스 날짜", + "importFromURLsInFile": "파일의 URL에서 가져오기 (OPML과 같은)", + "versionDetectionExplanation": "OS에서 감지된 버전과 버전 문자열 조정", + "versionDetection": "버전 감지", + "standardVersionDetection": "표준 버전 감지", + "groupByCategory": "카테고리별 그룹화", + "autoApkFilterByArch": "가능한 경우 CPU 아키텍처별로 APK 필터링 시도", + "autoLinkFilterByArch": "가능하면 CPU 아키텍처별로 링크를 필터링해 보세요.", + "overrideSource": "소스 재정의", + "dontShowAgain": "다시 표시하지 않기", + "dontShowTrackOnlyWarnings": "'추적 전용' 경고 표시 안 함", + "dontShowAPKOriginWarnings": "APK 출처 경고 표시 안 함", + "moveNonInstalledAppsToBottom": "설치되지 않은 앱을 앱 보기 하단으로 이동", + "gitlabPATLabel": "GitLab 개인 액세스 토큰", + "about": "정보", + "requiresCredentialsInSettings": "{}는 추가 자격 증명이 필요합니다 (설정에서)", + "checkOnStart": "시작 시 업데이트 확인", + "tryInferAppIdFromCode": "소스 코드에서 앱 ID 추론 시도", + "removeOnExternalUninstall": "외부에서 제거된 앱 자동 제거", + "pickHighestVersionCode": "가장 높은 버전 코드 APK 자동 선택", + "checkUpdateOnDetailPage": "앱 세부 정보 페이지 열 때 업데이트 확인", + "disablePageTransitions": "페이지 전환 애니메이션 비활성화", + "reversePageTransitions": "페이지 전환 애니메이션 반전", + "minStarCount": "최소 별 개수", + "addInfoBelow": "아래에 이 정보를 추가하십시오.", + "addInfoInSettings": "설정에 이 정보를 추가하십시오.", + "githubSourceNote": "GitHub 속도 제한은 API 키를 사용하여 피할 수 있습니다.", + "sortByLastLinkSegment": "링크의 마지막 세그먼트로만 정렬", + "filterReleaseNotesByRegEx": "정규 표현식으로 릴리스 노트 필터링", + "customLinkFilterRegex": "정규 표현식으로 사용자 정의 APK 링크 필터링 (기본값 '.apk$')", + "appsPossiblyUpdated": "앱 업데이트 시도됨", + "appsPossiblyUpdatedNotifDescription": "백그라운드에서 하나 이상의 앱에 대한 업데이트가 잠재적으로 적용되었음을 사용자에게 알립니다", + "xWasPossiblyUpdatedToY": "{}가 {}로 업데이트되었을 수 있습니다.", + "enableBackgroundUpdates": "백그라운드 업데이트 활성화", + "backgroundUpdateReqsExplanation": "모든 앱에 대해 백그라운드 업데이트가 가능하지 않을 수 있습니다.", + "backgroundUpdateLimitsExplanation": "백그라운드 설치의 성공 여부는 Obtainium이 열릴 때만 확인할 수 있습니다.", + "verifyLatestTag": "'최신' 태그 확인", + "intermediateLinkRegex": "'중간' 링크 방문 필터", + "filterByLinkText": "링크 텍스트로 링크 필터링", + "matchLinksOutsideATags": "<> 태그 외부의 링크 일치", + "intermediateLinkNotFound": "중간 링크를 찾을 수 없습니다", + "intermediateLink": "중간 링크", + "exemptFromBackgroundUpdates": "백그라운드 업데이트에서 제외 (활성화된 경우)", + "bgUpdatesOnWiFiOnly": "WiFi가 아닐 때 백그라운드 업데이트 비활성화", + "bgUpdatesWhileChargingOnly": "충전 중이 아닐 때 백그라운드 업데이트 비활성화", + "autoSelectHighestVersionCode": "가장 높은 versionCode APK 자동 선택", + "versionExtractionRegEx": "버전 문자열 추출 정규 표현식", + "trimVersionString": "정규 표현식으로 버전 문자열 자르기", + "matchGroupToUseForX": "\"{}\"에 사용할 일치 그룹", + "matchGroupToUse": "버전 문자열 추출 정규 표현식에 사용할 일치 그룹", + "highlightTouchTargets": "덜 명확한 터치 대상 강조", + "pickExportDir": "내보내기 디렉토리 선택", + "autoExportOnChanges": "변경 시 자동 내보내기", + "includeSettings": "설정 포함", + "filterVersionsByRegEx": "정규 표현식으로 버전 필터링", + "trySelectingSuggestedVersionCode": "제안된 versionCode APK 선택 시도", + "dontSortReleasesList": "API에서 릴리스 순서 유지", + "reverseSort": "정렬 반전", + "takeFirstLink": "첫 번째 링크 선택", + "skipSort": "정렬 건너뛰기", + "debugMenu": "디버그 메뉴", + "bgTaskStarted": "백그라운드 작업 시작됨 - 로그를 확인하세요.", + "runBgCheckNow": "지금 백그라운드 업데이트 확인 실행", + "versionExtractWholePage": "전체 페이지에 버전 문자열 추출 정규 표현식 적용", + "installing": "설치 중", + "skipUpdateNotifications": "업데이트 알림 건너뛰기", + "updatesAvailableNotifChannel": "업데이트 가능", + "appsUpdatedNotifChannel": "앱 업데이트됨", + "appsPossiblyUpdatedNotifChannel": "앱 업데이트 시도됨", + "errorCheckingUpdatesNotifChannel": "업데이트 확인 오류", + "appsRemovedNotifChannel": "앱 제거됨", + "downloadingXNotifChannel": "{} 다운로드 중", + "completeAppInstallationNotifChannel": "앱 설치 완료", + "checkingForUpdatesNotifChannel": "업데이트 확인 중", + "onlyCheckInstalledOrTrackOnlyApps": "설치된 앱과 추적 전용 앱만 업데이트 확인", + "supportFixedAPKURL": "고정 APK URL 지원", + "selectX": "{} 선택", + "parallelDownloads": "병렬 다운로드 허용", + "useShizuku": "Shizuku 또는 Sui를 사용하여 설치", + "shizukuBinderNotFound": "Shizuku 서비스가 실행 중이 아닙니다", + "shizukuOld": "오래된 Shizuku 버전 (<11) - 업데이트 필요", + "shizukuOldAndroidWithADB": "ADB로 Android < 8.1에서 실행 중인 Shizuku - Android를 업데이트하거나 대신 Sui를 사용하세요", + "shizukuPretendToBeGooglePlay": "설치 소스로 Google Play 설정 (Shizuku 사용 시)", + "useSystemFont": "시스템 글꼴 사용", + "useVersionCodeAsOSVersion": "앱 versionCode를 OS에서 감지된 버전으로 사용", + "requestHeader": "요청 헤더", + "useLatestAssetDateAsReleaseDate": "최신 자산 업로드를 릴리스 날짜로 사용", + "defaultPseudoVersioningMethod": "기본 의사 버전 관리 방법", + "partialAPKHash": "부분 APK 해시", + "APKLinkHash": "APK 링크 해시", + "directAPKLink": "직접 APK 링크", + "pseudoVersionInUse": "의사 버전 사용 중", + "installed": "설치됨", + "latest": "최신", + "invertRegEx": "정규 표현식 반전", + "note": "노트", + "selfHostedNote": "\"{}\" 드롭다운을 사용하여 소스의 자체 호스팅/사용자 정의 인스턴스에 도달할 수 있습니다.", + "badDownload": "APK를 구문 분석할 수 없습니다 (호환되지 않거나 부분 다운로드)", + "beforeNewInstallsShareToAppVerifier": "새 앱을 AppVerifier와 공유 (가능한 경우)", + "appVerifierInstructionToast": "AppVerifier에 공유한 후 준비가 되면 여기로 돌아오세요.", + "wiki": "도움말/위키", + "crowdsourcedConfigsLabel": "크라우드소싱 앱 구성 (자신의 책임 하에 사용)", + "crowdsourcedConfigsShort": "크라우드소싱 앱 구성", + "allowInsecure": "안전하지 않은 HTTP 요청 허용", + "stayOneVersionBehind": "최신 버전보다 한 버전 뒤에 머무르기", + "useFirstApkOfVersion": "여러 앱 중 첫 번째 앱 자동 선택", + "refreshBeforeDownload": "다운로드 전에 앱 세부 정보 새로 고침", + "tencentAppStore": "텐센트 앱 스토어", + "coolApk": "CoolApk", + "vivoAppStore": "vivo App Store (CN)", + "name": "이름", + "smartname": "이름(스마트)", + "sortMethod": "정렬 방법", + "welcome": "환영", + "documentationLinksNote": "아래에 링크된 Obtainium 깃허브 페이지에는 앱 사용 방법을 이해하는 데 도움이 되는 동영상, 기사, 토론 및 기타 리소스에 대한 링크가 포함되어 있습니다.", + "batteryOptimizationNote": "Obtainium의 OS 배터리 최적화를 비활성화하면 백그라운드 다운로드가 더 안정적으로 작동할 수 있습니다.", + "fileDeletionError": "파일을 삭제하지 못했습니다(수동으로 삭제한 후 다시 시도하세요): \"{}\"", + "foregroundService": "오베티움 포그라운드 서비스", + "foregroundServiceExplanation": "업데이트 확인을 위해 포그라운드 서비스 사용(안정성 향상, 전력 소비량 증가)", + "fgServiceNotice": "이 알림은 백그라운드 업데이트 확인에 필요합니다(OS 설정에서 숨길 수 있음).", + "excludeSecrets": "비밀 제외", + "GHReqPrefix": "GitHub 요청을 위한 'sky22333/hubproxy' 인스턴스", + "includeZips": "ZIP 파일 포함", + "zippedApkFilterRegEx": "ZIP 내 APK 필터링", + "removeAppQuestion": { + "one": "앱을 제거하시겠습니까?", + "other": "앱을 제거하시겠습니까?" + }, + "tooManyRequestsTryAgainInMinutes": { + "one": "요청이 너무 많습니다 (속도 제한) - {}분 후에 다시 시도하세요", + "other": "요청이 너무 많습니다 (속도 제한) - {}분 후에 다시 시도하세요" + }, + "bgUpdateGotErrorRetryInMinutes": { + "one": "BG 업데이트 확인 중 {} 오류가 발생했습니다. {}분 후에 다시 확인을 예약합니다", + "other": "BG 업데이트 확인 중 {} 오류가 발생했습니다. {}분 후에 다시 확인을 예약합니다" + }, + "bgCheckFoundUpdatesWillNotifyIfNeeded": { + "one": "BG 업데이트 확인에서 {}개의 업데이트를 발견했습니다 - 필요 시 사용자에게 알립니다", + "other": "BG 업데이트 확인에서 {}개의 업데이트를 발견했습니다 - 필요 시 사용자에게 알립니다" + }, + "apps": { + "one": "{} 앱", + "other": "{} 앱" + }, + "url": { + "one": "{} URL", + "other": "{} URL" + }, + "minute": { + "one": "{} 분", + "other": "{} 분" + }, + "hour": { + "one": "{} 시간", + "other": "{} 시간" + }, + "day": { + "one": "{} 일", + "other": "{} 일" + }, + "clearedNLogsBeforeXAfterY": { + "one": "{n}개의 로그가 지워졌습니다 (이전 = {before}, 이후 = {after})", + "other": "{n}개의 로그가 지워졌습니다 (이전 = {before}, 이후 = {after})" + }, + "xAndNMoreUpdatesAvailable": { + "one": "{} 및 1개의 앱에 업데이트가 있습니다.", + "other": "{} 및 {}개의 앱에 업데이트가 있습니다." + }, + "xAndNMoreUpdatesInstalled": { + "one": "{} 및 1개의 앱이 업데이트되었습니다.", + "other": "{} 및 {}개의 앱이 업데이트되었습니다." + }, + "xAndNMoreUpdatesFailed": { + "one": "{} 및 1개의 앱 업데이트에 실패했습니다.", + "other": "{} 및 {}개의 앱 업데이트에 실패했습니다." + }, + "xAndNMoreUpdatesPossiblyInstalled": { + "one": "{} 및 1개의 앱이 업데이트되었을 수 있습니다.", + "other": "{} 및 {}개의 앱이 업데이트되었을 수 있습니다." + }, + "apk": { + "one": "{} APK", + "other": "{} APK" + } +} diff --git a/assets/translations/ml.json b/assets/translations/ml.json new file mode 100644 index 0000000..0d73063 --- /dev/null +++ b/assets/translations/ml.json @@ -0,0 +1,402 @@ +{ + "invalidURLForSource": "ഒരു സാധുവായ {} ആപ്പ് URL അല്ല", + "noReleaseFound": "അനുയോജ്യമായ റിലീസ് കണ്ടെത്താനായില്ല", + "noVersionFound": "റിലീസ് പതിപ്പ് നിർണ്ണയിക്കാനായില്ല", + "urlMatchesNoSource": "URL അറിയപ്പെടുന്ന ഒരു ഉറവിടവുമായും യോജിക്കുന്നില്ല", + "cantInstallOlderVersion": "ആപ്പിന്റെ പഴയ പതിപ്പ് ഇൻസ്റ്റാൾ ചെയ്യാൻ കഴിയില്ല.", + "appIdMismatch": "ഡൗൺലോഡ് ചെയ്ത പാക്കേജ് ഐഡി നിലവിലുള്ള ആപ്പ് ഐഡിയുമായി ചേരുന്നില്ല", + "functionNotImplemented": "ഈ ക്ലാസ് ഈ ഫംഗ്ഷൻ നടപ്പിലാക്കിയിട്ടില്ല", + "placeholder": "സ്ഥലസൂചകം", + "someErrors": "ചില പിശകുകൾ സംഭവിച്ചു", + "unexpectedError": "പ്രതീക്ഷിക്കാത്ത പിശക്", + "ok": "ശരി", + "and": "കൂടാതെ", + "githubPATLabel": "GitHub പേഴ്സണൽ ആക്സസ് ടോക്കൺ (നിരക്ക് പരിധി വർദ്ധിപ്പിക്കുന്നു)", + "includePrereleases": "പ്രീ-റിലീസുകൾ ഉൾപ്പെടുത്തുക", + "fallbackToOlderReleases": "പഴയ റിലീസുകളിലേക്ക് മടങ്ങുക", + "filterReleaseTitlesByRegEx": "റിലീസ് ശീർഷകങ്ങൾ റെഗുലർ എക്സ്പ്രഷൻ ഉപയോഗിച്ച് ഫിൽട്ടർ ചെയ്യുക", + "invalidRegEx": "സാധുവായ റെഗുലർ എക്സ്പ്രഷൻ അല്ല", + "noDescription": "വിവരണം ലഭ്യമല്ല", + "cancel": "റദ്ദാക്കുക", + "continue": "തുടരുക", + "requiredInBrackets": "(ആവശ്യമാണ്)", + "dropdownNoOptsError": "തെറ്റ്: ഡ്രോപ്പ്ഡൗണിന് കുറഞ്ഞത് ഒരു ഓപ്ഷനെങ്കിലും ഉണ്ടായിരിക്കണം", + "colour": "നിറം", + "standard": "സാധാരണ", + "custom": "ഇഷ്‌ടാനുസൃതം", + "useMaterialYou": "മെറ്റീരിയൽ യൂ ഉപയോഗിക്കുക", + "githubStarredRepos": "GitHub സ്റ്റാർ ചെയ്ത റെപ്പോസിറ്ററികൾ", + "uname": "ഉപയോക്തൃനാമം", + "wrongArgNum": "തെറ്റായ എണ്ണം ആർഗ്യുമെന്റുകൾ നൽകി", + "xIsTrackOnly": "{} ട്രാക്ക്-മാത്രം ആണ്", + "source": "ഉറവിടം", + "app": "ആപ്പ്", + "appsFromSourceAreTrackOnly": "ഈ ഉറവിടത്തിൽ നിന്നുള്ള ആപ്പുകൾ 'ട്രാക്ക്-മാത്രം' ആണ്.", + "youPickedTrackOnly": "നിങ്ങൾ 'ട്രാക്ക്-മാത്രം' ഓപ്ഷൻ തിരഞ്ഞെടുത്തു.", + "trackOnlyAppDescription": "ആപ്പ് അപ്‌ഡേറ്റുകൾക്കായി ട്രാക്ക് ചെയ്യപ്പെടും, പക്ഷേ ഒബ്‌റ്റേനിയത്തിന് അത് ഡൗൺലോഡ് ചെയ്യാനോ ഇൻസ്റ്റാൾ ചെയ്യാനോ കഴിയില്ല.", + "cancelled": "റദ്ദാക്കി", + "appAlreadyAdded": "ആപ്പ് ഇതിനകം കൂട്ടിച്ചേർത്തിട്ടുണ്ട്", + "alreadyUpToDateQuestion": "ആപ്പ് ഇതിനകം ഏറ്റവും പുതിയ പതിപ്പിലാണോ?", + "addApp": "ആപ്പ് ചേർക്കുക", + "appSourceURL": "ആപ്പ് ഉറവിട URL", + "error": "പിശക്", + "add": "ചേർക്കുക", + "searchSomeSourcesLabel": "തിരയുക (ചില ഉറവിടങ്ങളിൽ മാത്രം)", + "search": "തിരയുക", + "additionalOptsFor": "{} നായുള്ള അധിക ഓപ്ഷനുകൾ", + "supportedSources": "പിന്തുണയ്ക്കുന്ന ഉറവിടങ്ങൾ", + "trackOnlyInBrackets": "(ട്രാക്ക്-മാത്രം)", + "searchableInBrackets": "(തിരയാവുന്നത്)", + "appsString": "ആപ്പുകൾ", + "noApps": "ആപ്പുകളൊന്നുമില്ല", + "noAppsForFilter": "ഈ ഫിൽട്ടറിനായി ആപ്പുകളൊന്നുമില്ല", + "byX": "{} വഴി", + "percentProgress": "പുരോഗതി: {}%", + "pleaseWait": "ദയവായി കാത്തിരിക്കുക", + "updateAvailable": "അപ്‌ഡേറ്റ് ലഭ്യമാണ്", + "notInstalled": "ഇൻസ്റ്റാൾ ചെയ്തിട്ടില്ല", + "pseudoVersion": "സ്യൂഡോ-പതിപ്പ്", + "selectAll": "എല്ലാം തിരഞ്ഞെടുക്കുക", + "deselectX": "{} തിരഞ്ഞെടുക്കൽ റദ്ദാക്കുക", + "xWillBeRemovedButRemainInstalled": "{} ഒബ്‌റ്റേനിയത്തിൽ നിന്ന് നീക്കം ചെയ്യപ്പെടും, പക്ഷേ ഉപകരണത്തിൽ ഇൻസ്റ്റാൾ ചെയ്ത നിലയിൽ തുടരും.", + "removeSelectedAppsQuestion": "തിരഞ്ഞെടുത്ത ആപ്പുകൾ നീക്കം ചെയ്യണോ?", + "removeSelectedApps": "തിരഞ്ഞെടുത്ത ആപ്പുകൾ നീക്കം ചെയ്യുക", + "updateX": "{} അപ്‌ഡേറ്റ് ചെയ്യുക", + "installX": "{} ഇൻസ്റ്റാൾ ചെയ്യുക", + "markXTrackOnlyAsUpdated": "{}\n(ട്രാക്ക്-മാത്രം)\nഅപ്‌ഡേറ്റ് ചെയ്തതായി അടയാളപ്പെടുത്തുക", + "changeX": "{} മാറ്റുക", + "installUpdateApps": "ആപ്പുകൾ ഇൻസ്റ്റാൾ ചെയ്യുക/അപ്‌ഡേറ്റ് ചെയ്യുക", + "installUpdateSelectedApps": "തിരഞ്ഞെടുത്ത ആപ്പുകൾ ഇൻസ്റ്റാൾ ചെയ്യുക/അപ്‌ഡേറ്റ് ചെയ്യുക", + "markXSelectedAppsAsUpdated": "{} തിരഞ്ഞെടുത്ത ആപ്പുകൾ അപ്‌ഡേറ്റ് ചെയ്തതായി അടയാളപ്പെടുത്തണോ?", + "no": "ഇല്ല", + "yes": "അതെ", + "markSelectedAppsUpdated": "തിരഞ്ഞെടുത്ത ആപ്പുകൾ അപ്‌ഡേറ്റ് ചെയ്തതായി അടയാളപ്പെടുത്തുക", + "pinToTop": "മുകളിൽ പിൻ ചെയ്യുക", + "unpinFromTop": "മുകളിൽ നിന്ന് അൺപിൻ ചെയ്യുക", + "resetInstallStatusForSelectedAppsQuestion": "തിരഞ്ഞെടുത്ത ആപ്പുകളുടെ ഇൻസ്റ്റാൾ സ്റ്റാറ്റസ് റീസെറ്റ് ചെയ്യണോ?", + "installStatusOfXWillBeResetExplanation": "തിരഞ്ഞെടുത്ത ഏതെങ്കിലും ആപ്പുകളുടെ ഇൻസ്റ്റാൾ സ്റ്റാറ്റസ് റീസെറ്റ് ചെയ്യപ്പെടും.\n\nപരാജയപ്പെട്ട അപ്‌ഡേറ്റുകളോ മറ്റ് പ്രശ്നങ്ങളോ കാരണം ഒബ്‌റ്റേനിയത്തിൽ കാണിക്കുന്ന ആപ്പ് പതിപ്പ് തെറ്റായിരിക്കുമ്പോൾ ഇത് സഹായകമാകും.", + "customLinkMessage": "ഈ ലിങ്കുകൾ ഒബ്‌റ്റേനിയം ഇൻസ്റ്റാൾ ചെയ്ത ഉപകരണങ്ങളിൽ പ്രവർത്തിക്കും", + "shareAppConfigLinks": "ആപ്പ് കോൺഫിഗറേഷൻ HTML ലിങ്കായി പങ്കിടുക", + "shareSelectedAppURLs": "തിരഞ്ഞെടുത്ത ആപ്പ് URL-കൾ പങ്കിടുക", + "resetInstallStatus": "ഇൻസ്റ്റാൾ സ്റ്റാറ്റസ് റീസെറ്റ് ചെയ്യുക", + "more": "കൂടുതൽ", + "removeOutdatedFilter": "കാലഹരണപ്പെട്ട ആപ്പ് ഫിൽട്ടർ നീക്കം ചെയ്യുക", + "showOutdatedOnly": "കാലഹരണപ്പെട്ട ആപ്പുകൾ മാത്രം കാണിക്കുക", + "filter": "ഫിൽട്ടർ", + "filterApps": "ആപ്പുകൾ ഫിൽട്ടർ ചെയ്യുക", + "appName": "ആപ്പിന്റെ പേര്", + "author": "ഡെവലപ്പർ", + "upToDateApps": "ഏറ്റവും പുതിയ പതിപ്പിലുള്ള ആപ്പുകൾ", + "nonInstalledApps": "ഇൻസ്റ്റാൾ ചെയ്യാത്ത ആപ്പുകൾ", + "importExport": "ഇംപോർട്ട്/എക്സ്പോർട്ട്", + "settings": "ക്രമീകരണങ്ങൾ", + "exportedTo": "{} ലേക്ക് എക്സ്പോർട്ട് ചെയ്തു", + "obtainiumExport": "ഒബ്‌റ്റേനിയം എക്സ്പോർട്ട്", + "invalidInput": "തെറ്റായ ഇൻപുട്ട്", + "importedX": "{} ഇംപോർട്ട് ചെയ്തു", + "obtainiumImport": "ഒബ്‌റ്റേനിയം ഇംപോർട്ട്", + "importFromURLList": "URL ലിസ്റ്റിൽ നിന്ന് ഇംപോർട്ട് ചെയ്യുക", + "searchQuery": "തിരയൽ ചോദ്യം", + "appURLList": "ആപ്പ് URL ലിസ്റ്റ്", + "line": "വരി", + "searchX": "{} തിരയുക", + "noResults": "ഫലങ്ങളൊന്നും കണ്ടെത്തിയില്ല", + "importX": "{} ഇംപോർട്ട് ചെയ്യുക", + "importedAppsIdDisclaimer": "ഇംപോർട്ട് ചെയ്ത ആപ്പുകൾ \"ഇൻസ്റ്റാൾ ചെയ്തിട്ടില്ല\" എന്ന് തെറ്റായി കാണിച്ചേക്കാം.\nഇത് ശരിയാക്കാൻ, ഒബ്‌റ്റേനിയം വഴി അവ വീണ്ടും ഇൻസ്റ്റാൾ ചെയ്യുക.\nഇത് ആപ്പ് ഡാറ്റയെ ബാധിക്കില്ല.\n\nURL, മൂന്നാം കക്ഷി ഇംപോർട്ട് രീതികളെ മാത്രം ബാധിക്കുന്നു.", + "importErrors": "ഇംപോർട്ട് പിശകുകൾ", + "importedXOfYApps": "{} ആപ്പുകളിൽ {} എണ്ണം ഇംപോർട്ട് ചെയ്തു.", + "followingURLsHadErrors": "ഇനിപ്പറയുന്ന URL-കളിൽ പിശകുകൾ ഉണ്ടായിരുന്നു:", + "selectURL": "URL തിരഞ്ഞെടുക്കുക", + "selectURLs": "URL-കൾ തിരഞ്ഞെടുക്കുക", + "pick": "തിരഞ്ഞെടുക്കുക", + "theme": "തീം", + "dark": "ഇരുണ്ട", + "light": "ഇളം", + "followSystem": "സിസ്റ്റം പിന്തുടരുക", + "followSystemThemeExplanation": "സിസ്റ്റം തീം പിന്തുടരുന്നത് തേർഡ് പാർട്ടി ആപ്ലിക്കേഷനുകൾ ഉപയോഗിച്ച് മാത്രമേ സാധ്യമാകൂ", + "useBlackTheme": "തനി കറുപ്പ് തീം ഉപയോഗിക്കുക", + "appSortBy": "ആപ്പ് അടുക്കേണ്ട രീതി", + "authorName": "ഡെവലപ്പർ/പേര്", + "nameAuthor": "പേര്/ഡെവലപ്പർ", + "asAdded": "ചേർത്ത ക്രമത്തിൽ", + "appSortOrder": "ആപ്പ് അടുക്കേണ്ട ക്രമം", + "ascending": "ആരോഹണ ക്രമത്തിൽ", + "descending": "അവരോഹണ ക്രമത്തിൽ", + "bgUpdateCheckInterval": "ബാക്ക്ഗ്രൗണ്ട് അപ്‌ഡേറ്റ് പരിശോധന ഇടവേള", + "neverManualOnly": "ഒരിക്കലുമില്ല - സ്വമേധയാ മാത്രം", + "appearance": "രൂപം", + "showWebInAppView": "ആപ്പ് കാഴ്ചയിൽ ഉറവിട വെബ്പേജ് കാണിക്കുക", + "pinUpdates": "അപ്‌ഡേറ്റുകൾ ആപ്പ് കാഴ്ചയുടെ മുകളിൽ പിൻ ചെയ്യുക", + "updates": "അപ്‌ഡേറ്റുകൾ", + "sourceSpecific": "ഉറവിടം അടിസ്ഥാനമാക്കി", + "appSource": "ആപ്പ് ഉറവിടം", + "noLogs": "ലോഗുകളൊന്നുമില്ല", + "appLogs": "ആപ്പ് ലോഗുകൾ", + "close": "അടയ്ക്കുക", + "share": "പങ്കിടുക", + "appNotFound": "ആപ്പ് കണ്ടെത്തിയില്ല", + "obtainiumExportHyphenatedLowercase": "ഒബ്‌റ്റേനിയം-എക്സ്പോർട്ട്", + "pickAnAPK": "ഒരു APK തിരഞ്ഞെടുക്കുക", + "appHasMoreThanOnePackage": "{}-ന് ഒന്നിൽ കൂടുതൽ പാക്കേജുകൾ ഉണ്ട്:", + "deviceSupportsXArch": "നിങ്ങളുടെ ഉപകരണം {} CPU ആർക്കിടെക്ചറിനെ പിന്തുണയ്ക്കുന്നു.", + "deviceSupportsFollowingArchs": "നിങ്ങളുടെ ഉപകരണം ഇനിപ്പറയുന്ന CPU ആർക്കിടെക്ചറുകളെ പിന്തുണയ്ക്കുന്നു:", + "warning": "മുന്നറിയിപ്പ്", + "sourceIsXButPackageFromYPrompt": "ആപ്പ് ഉറവിടം '{}' ആണ്, പക്ഷേ റിലീസ് പാക്കേജ് '{}'-ൽ നിന്നാണ് വരുന്നത്. തുടരണോ?", + "updatesAvailable": "അപ്‌ഡേറ്റുകൾ ലഭ്യമാണ്", + "updatesAvailableNotifDescription": "ഒബ്‌റ്റേനിയം ട്രാക്ക് ചെയ്യുന്ന ഒന്നോ അതിലധികമോ ആപ്പുകൾക്ക് അപ്‌ഡേറ്റുകൾ ലഭ്യമാണെന്ന് ഉപയോക്താവിനെ അറിയിക്കുന്നു", + "noNewUpdates": "പുതിയ അപ്‌ഡേറ്റുകളൊന്നുമില്ല.", + "xHasAnUpdate": "{}-ന് ഒരു അപ്‌ഡേറ്റ് ഉണ്ട്.", + "appsUpdated": "ആപ്പുകൾ അപ്‌ഡേറ്റ് ചെയ്തു", + "appsNotUpdated": "ആപ്ലിക്കേഷനുകൾ അപ്‌ഡേറ്റ് ചെയ്യുന്നതിൽ പരാജയപ്പെട്ടു", + "appsUpdatedNotifDescription": "ഒന്നോ അതിലധികമോ ആപ്പുകളിലേക്കുള്ള അപ്‌ഡേറ്റുകൾ ബാക്ക്ഗ്രൗണ്ടിൽ പ്രയോഗിച്ചു എന്ന് ഉപയോക്താവിനെ അറിയിക്കുന്നു", + "xWasUpdatedToY": "{} {} ലേക്ക് അപ്‌ഡേറ്റ് ചെയ്തു.", + "xWasNotUpdatedToY": "{} {} ലേക്ക് അപ്‌ഡേറ്റ് ചെയ്യാൻ പരാജയപ്പെട്ടു.", + "errorCheckingUpdates": "അപ്‌ഡേറ്റുകൾ പരിശോധിക്കുന്നതിൽ പിശക്", + "errorCheckingUpdatesNotifDescription": "ബാക്ക്ഗ്രൗണ്ട് അപ്‌ഡേറ്റ് പരിശോധന പരാജയപ്പെടുമ്പോൾ കാണിക്കുന്ന അറിയിപ്പ്", + "appsRemoved": "ആപ്പുകൾ നീക്കം ചെയ്തു", + "appsRemovedNotifDescription": "ഒന്നോ അതിലധികമോ ആപ്പുകൾ ലോഡ് ചെയ്യുന്നതിൽ പിശകുകൾ കാരണം നീക്കം ചെയ്തു എന്ന് ഉപയോക്താവിനെ അറിയിക്കുന്നു", + "xWasRemovedDueToErrorY": "{} ഈ പിശക് കാരണം നീക്കം ചെയ്തു: {}", + "completeAppInstallation": "ആപ്പ് ഇൻസ്റ്റാളേഷൻ പൂർത്തിയാക്കുക", + "obtainiumMustBeOpenToInstallApps": "ആപ്പുകൾ ഇൻസ്റ്റാൾ ചെയ്യാൻ ഒബ്‌റ്റേനിയം തുറന്നിരിക്കണം", + "completeAppInstallationNotifDescription": "ഒരു ആപ്പ് ഇൻസ്റ്റാൾ ചെയ്യുന്നത് പൂർത്തിയാക്കാൻ ഒബ്‌റ്റേനിയത്തിലേക്ക് മടങ്ങാൻ ഉപയോക്താവിനോട് ആവശ്യപ്പെടുന്നു", + "checkingForUpdates": "അപ്‌ഡേറ്റുകൾ പരിശോധിക്കുന്നു", + "checkingForUpdatesNotifDescription": "അപ്‌ഡേറ്റുകൾ പരിശോധിക്കുമ്പോൾ ദൃശ്യമാകുന്ന താൽക്കാലിക അറിയിപ്പ്", + "pleaseAllowInstallPerm": "ആപ്പുകൾ ഇൻസ്റ്റാൾ ചെയ്യാൻ ഒബ്‌റ്റേനിയത്തിന് അനുമതി നൽകുക", + "trackOnly": "ട്രാക്ക്-മാത്രം", + "errorWithHttpStatusCode": "പിശക് {}", + "versionCorrectionDisabled": "പതിപ്പ് തിരുത്തൽ പ്രവർത്തനരഹിതമാക്കി (പ്ലഗിൻ പ്രവർത്തിക്കുന്നതായി തോന്നുന്നില്ല)", + "unknown": "അജ്ഞാതം", + "none": "ഒന്നുമില്ല", + "all": "All", + "never": "ഒരിക്കലുമില്ല", + "latestVersionX": "ഏറ്റവും പുതിയത്: {}", + "installedVersionX": "ഇൻസ്റ്റാൾ ചെയ്തത്: {}", + "lastUpdateCheckX": "അവസാന അപ്‌ഡേറ്റ് പരിശോധന: {}", + "remove": "നീക്കം ചെയ്യുക", + "yesMarkUpdated": "അതെ, അപ്‌ഡേറ്റ് ചെയ്തതായി അടയാളപ്പെടുത്തുക", + "fdroid": "എഫ്-ഡ്രോയിഡ് ഒഫീഷ്യൽ", + "appIdOrName": "ആപ്പ് ഐഡി അല്ലെങ്കിൽ പേര്", + "appId": "ആപ്പ് ഐഡി", + "appWithIdOrNameNotFound": "ആ ഐഡിയിലോ പേരിലോ ആപ്പുകളൊന്നും കണ്ടെത്തിയില്ല", + "reposHaveMultipleApps": "റെപ്പോകളിൽ ഒന്നിലധികം ആപ്പുകൾ അടങ്ങിയിരിക്കാം", + "fdroidThirdPartyRepo": "എഫ്-ഡ്രോയിഡ് തേർഡ് പാർട്ടി റെപ്പോ", + "install": "ഇൻസ്റ്റാൾ ചെയ്യുക", + "markInstalled": "ഇൻസ്റ്റാൾ ചെയ്തതായി അടയാളപ്പെടുത്തുക", + "update": "അപ്‌ഡേറ്റ് ചെയ്യുക", + "markUpdated": "അപ്‌ഡേറ്റ് ചെയ്തതായി അടയാളപ്പെടുത്തുക", + "additionalOptions": "കൂടുതൽ ഓപ്ഷനുകൾ", + "disableVersionDetection": "പതിപ്പ് കണ്ടെത്തൽ പ്രവർത്തനരഹിതമാക്കുക", + "noVersionDetectionExplanation": "പതിപ്പ് കണ്ടെത്തൽ ശരിയായി പ്രവർത്തിക്കാത്ത ആപ്പുകൾക്ക് മാത്രമേ ഈ ഓപ്ഷൻ ഉപയോഗിക്കാവൂ.", + "downloadingX": "{} ഡൗൺലോഡ് ചെയ്യുന്നു", + "downloadX": "{} ഡൗൺലോഡ് ചെയ്യുക", + "downloadedX": "{} ഡൗൺലോഡ് ചെയ്തു", + "releaseAsset": "റിലീസ് അസറ്റ്", + "downloadNotifDescription": "ഒരു ആപ്പ് ഡൗൺലോഡ് ചെയ്യുന്നതിലെ പുരോഗതി ഉപയോക്താവിനെ അറിയിക്കുന്നു", + "noAPKFound": "APK കണ്ടെത്തിയില്ല", + "noVersionDetection": "പതിപ്പ് കണ്ടെത്തൽ ഇല്ല", + "categorize": "വിഭാഗീകരിക്കുക", + "categories": "വിഭാഗങ്ങൾ", + "category": "വിഭാഗം", + "noCategory": "വിഭാഗമൊന്നുമില്ല", + "noCategories": "വിഭാഗങ്ങളൊന്നുമില്ല", + "deleteCategoriesQuestion": "വിഭാഗങ്ങൾ ഇല്ലാതാക്കണോ?", + "categoryDeleteWarning": "ഇല്ലാതാക്കിയ വിഭാഗങ്ങളിലെ എല്ലാ ആപ്പുകളും വിഭാഗരഹിതമായി ക്രമീകരിക്കും.", + "addCategory": "വിഭാഗം ചേർക്കുക", + "label": "ലേബൽ", + "language": "ഭാഷ", + "copiedToClipboard": "ക്ലിപ്ബോർഡിലേക്ക് പകർത്തി", + "storagePermissionDenied": "സ്റ്റോറേജ് അനുമതി നിഷേധിച്ചു", + "selectedCategorizeWarning": "ഇത് തിരഞ്ഞെടുത്ത ആപ്പുകൾക്കായി നിലവിലുള്ള ഏതൊരു വിഭാഗ ക്രമീകരണങ്ങളെയും മാറ്റിസ്ഥാപിക്കും.", + "filterAPKsByRegEx": "റെഗുലർ എക്സ്പ്രഷൻ ഉപയോഗിച്ച് APK-കൾ ഫിൽട്ടർ ചെയ്യുക", + "removeFromObtainium": "ഒബ്‌റ്റേനിയത്തിൽ നിന്ന് നീക്കം ചെയ്യുക", + "uninstallFromDevice": "ഉപകരണത്തിൽ നിന്ന് അൺഇൻസ്റ്റാൾ ചെയ്യുക", + "onlyWorksWithNonVersionDetectApps": "പതിപ്പ് കണ്ടെത്തൽ പ്രവർത്തനരഹിതമാക്കിയ ആപ്പുകൾക്ക് മാത്രമേ ഇത് പ്രവർത്തിക്കൂ.", + "releaseDateAsVersion": "റിലീസ് തീയതി പതിപ്പ് സ്ട്രിംഗായി ഉപയോഗിക്കുക", + "releaseTitleAsVersion": "റിലീസ് ശീർഷകം പതിപ്പ് സ്ട്രിംഗായി ഉപയോഗിക്കുക", + "releaseDateAsVersionExplanation": "പതിപ്പ് കണ്ടെത്തൽ ശരിയായി പ്രവർത്തിക്കാത്തതും എന്നാൽ റിലീസ് തീയതി ലഭ്യമായതുമായ ആപ്പുകൾക്ക് മാത്രമേ ഈ ഓപ്ഷൻ ഉപയോഗിക്കാവൂ.", + "changes": "മാറ്റങ്ങൾ", + "releaseDate": "റിലീസ് തീയതി", + "importFromURLsInFile": "ഫയലിലെ URL-കളിൽ നിന്ന് ഇംപോർട്ട് ചെയ്യുക (OPML പോലെ)", + "versionDetectionExplanation": "കണ്ടെത്തിയ പതിപ്പ് സ്ട്രിംഗ് OS-ൽ നിന്ന് കണ്ടെത്തിയ പതിപ്പുമായി പൊരുത്തപ്പെടുത്തുക", + "versionDetection": "പതിപ്പ് കണ്ടെത്തൽ", + "standardVersionDetection": "സാധാരണ പതിപ്പ് കണ്ടെത്തൽ", + "groupByCategory": "വിഭാഗം തിരിച്ച് ഗ്രൂപ്പ് ചെയ്യുക", + "autoApkFilterByArch": "സാധ്യമെങ്കിൽ CPU ആർക്കിടെക്ചർ അനുസരിച്ച് APK-കൾ ഫിൽട്ടർ ചെയ്യാൻ ശ്രമിക്കുക", + "autoLinkFilterByArch": "സാധ്യമെങ്കിൽ CPU ആർക്കിടെക്ചർ അനുസരിച്ച് ലിങ്കുകൾ ഫിൽട്ടർ ചെയ്യാൻ ശ്രമിക്കുക", + "overrideSource": "ഉറവിടം അസാധുവാക്കുക", + "dontShowAgain": "ഇത് വീണ്ടും കാണിക്കരുത്", + "dontShowTrackOnlyWarnings": "'ട്രാക്ക്-മാത്രം' മുന്നറിയിപ്പുകൾ കാണിക്കരുത്", + "dontShowAPKOriginWarnings": "APK ഉറവിട മുന്നറിയിപ്പുകൾ കാണിക്കരുത്", + "moveNonInstalledAppsToBottom": "ഇൻസ്റ്റാൾ ചെയ്യാത്ത ആപ്പുകൾ ആപ്പ് കാഴ്ചയുടെ താഴേക്ക് മാറ്റുക", + "gitlabPATLabel": "GitLab പേഴ്സണൽ ആക്സസ് ടോക്കൺ", + "about": "വിവരങ്ങൾ", + "requiresCredentialsInSettings": "{}-ന് അധിക ക്രെഡൻഷ്യലുകൾ ആവശ്യമാണ് (ക്രമീകരണങ്ങളിൽ)", + "checkOnStart": "തുടങ്ങുമ്പോൾ അപ്‌ഡേറ്റുകൾക്കായി പരിശോധിക്കുക", + "tryInferAppIdFromCode": "സോഴ്സ് കോഡിൽ നിന്ന് ആപ്പ് ഐഡി അനുമാനിക്കാൻ ശ്രമിക്കുക", + "removeOnExternalUninstall": "പുറത്ത് നിന്ന് അൺഇൻസ്റ്റാൾ ചെയ്ത ആപ്പുകൾ സ്വയമേവ നീക്കം ചെയ്യുക", + "pickHighestVersionCode": "ഏറ്റവും ഉയർന്ന പതിപ്പ് കോഡ് APK സ്വയമേവ തിരഞ്ഞെടുക്കുക", + "checkUpdateOnDetailPage": "ഒരു ആപ്പ് വിശദാംശ പേജ് തുറക്കുമ്പോൾ അപ്‌ഡേറ്റുകൾക്കായി പരിശോധിക്കുക", + "disablePageTransitions": "പേജ് ട്രാൻസിഷൻ ആനിമേഷനുകൾ പ്രവർത്തനരഹിതമാക്കുക", + "reversePageTransitions": "പേജ് ട്രാൻസിഷൻ ആനിമേഷനുകൾ വിപരീതമാക്കുക", + "minStarCount": "കുറഞ്ഞ നക്ഷത്രങ്ങളുടെ എണ്ണം", + "addInfoBelow": "ഈ വിവരങ്ങൾ താഴെ ചേർക്കുക.", + "addInfoInSettings": "ഈ വിവരങ്ങൾ ക്രമീകരണങ്ങളിൽ ചേർക്കുക.", + "githubSourceNote": "API കീ ഉപയോഗിച്ച് GitHub നിരക്ക് പരിധി ഒഴിവാക്കാം.", + "sortByLastLinkSegment": "ലിങ്കിന്റെ അവസാന ഭാഗം മാത്രം ഉപയോഗിച്ച് അടുക്കുക", + "filterReleaseNotesByRegEx": "റെഗുലർ എക്സ്പ്രഷൻ ഉപയോഗിച്ച് റിലീസ് നോട്ടുകൾ ഫിൽട്ടർ ചെയ്യുക", + "customLinkFilterRegex": "റെഗുലർ എക്സ്പ്രഷൻ ഉപയോഗിച്ചുള്ള കസ്റ്റം APK ലിങ്ക് ഫിൽട്ടർ (സ്ഥിരസ്ഥിതി '.apk$')", + "appsPossiblyUpdated": "ആപ്പ് അപ്‌ഡേറ്റുകൾ ശ്രമിച്ചു", + "appsPossiblyUpdatedNotifDescription": "ഒന്നോ അതിലധികമോ ആപ്പുകളിലേക്കുള്ള അപ്‌ഡേറ്റുകൾ ബാക്ക്ഗ്രൗണ്ടിൽ പ്രയോഗിക്കാൻ സാധ്യതയുണ്ടെന്ന് ഉപയോക്താവിനെ അറിയിക്കുന്നു", + "xWasPossiblyUpdatedToY": "{} {} ലേക്ക് അപ്‌ഡേറ്റ് ചെയ്തിരിക്കാം.", + "enableBackgroundUpdates": "ബാക്ക്ഗ്രൗണ്ട് അപ്‌ഡേറ്റുകൾ പ്രവർത്തനക്ഷമമാക്കുക", + "backgroundUpdateReqsExplanation": "എല്ലാ ആപ്പുകൾക്കും ബാക്ക്ഗ്രൗണ്ട് അപ്‌ഡേറ്റുകൾ സാധ്യമായെന്ന് വരില്ല.", + "backgroundUpdateLimitsExplanation": "ബാക്ക്ഗ്രൗണ്ട് ഇൻസ്റ്റാളിന്റെ വിജയം ഒബ്‌റ്റേനിയം തുറക്കുമ്പോൾ മാത്രമേ നിർണ്ണയിക്കാൻ കഴിയൂ.", + "verifyLatestTag": "'ഏറ്റവും പുതിയ' ടാഗ് പരിശോധിക്കുക", + "intermediateLinkRegex": "സന്ദർശിക്കാൻ ഒരു 'ഇന്റർമീഡിയറ്റ്' ലിങ്കിനായി ഫിൽട്ടർ ചെയ്യുക", + "filterByLinkText": "ലിങ്ക് ടെക്സ്റ്റ് ഉപയോഗിച്ച് ലിങ്കുകൾ ഫിൽട്ടർ ചെയ്യുക", + "matchLinksOutsideATags": "Match links outside tags", + "intermediateLinkNotFound": "ഇന്റർമീഡിയറ്റ് ലിങ്ക് കണ്ടെത്തിയില്ല", + "intermediateLink": "ഇന്റർമീഡിയറ്റ് ലിങ്ക്", + "exemptFromBackgroundUpdates": "ബാക്ക്ഗ്രൗണ്ട് അപ്‌ഡേറ്റുകളിൽ നിന്ന് ഒഴിവാക്കുക (പ്രവർത്തനക്ഷമമാക്കിയിട്ടുണ്ടെങ്കിൽ)", + "bgUpdatesOnWiFiOnly": "വൈഫൈയിൽ അല്ലാത്തപ്പോൾ ബാക്ക്ഗ്രൗണ്ട് അപ്‌ഡേറ്റുകൾ പ്രവർത്തനരഹിതമാക്കുക", + "bgUpdatesWhileChargingOnly": "ചാർജ് ചെയ്യാത്തപ്പോൾ ബാക്ക്ഗ്രൗണ്ട് അപ്‌ഡേറ്റുകൾ പ്രവർത്തനരഹിതമാക്കുക", + "autoSelectHighestVersionCode": "ഏറ്റവും ഉയർന്ന versionCode APK സ്വയമേവ തിരഞ്ഞെടുക്കുക", + "versionExtractionRegEx": "പതിപ്പ് സ്ട്രിംഗ് വേർതിരിച്ചെടുക്കുന്നതിനുള്ള റെഗുലർ എക്സ്പ്രഷൻ", + "trimVersionString": "റെഗുലർ എക്സ്പ്രഷൻ ഉപയോഗിച്ച് പതിപ്പ് സ്ട്രിംഗ് ട്രിം ചെയ്യുക", + "matchGroupToUseForX": "\"{}\" നായി ഉപയോഗിക്കേണ്ട ഗ്രൂപ്പ് മാച്ച് ചെയ്യുക", + "matchGroupToUse": "പതിപ്പ് സ്ട്രിംഗ് വേർതിരിച്ചെടുക്കുന്നതിനുള്ള റെഗുലർ എക്സ്പ്രഷനായി ഉപയോഗിക്കേണ്ട ഗ്രൂപ്പ് മാച്ച് ചെയ്യുക", + "highlightTouchTargets": "കുറഞ്ഞ വ്യക്തതയുള്ള ടച്ച് ടാർഗെറ്റുകൾ ഹൈലൈറ്റ് ചെയ്യുക", + "pickExportDir": "എക്സ്പോർട്ട് ഡയറക്ടറി തിരഞ്ഞെടുക്കുക", + "autoExportOnChanges": "മാറ്റങ്ങൾ വരുമ്പോൾ സ്വയമേവ എക്സ്പോർട്ട് ചെയ്യുക", + "includeSettings": "ക്രമീകരണങ്ങൾ ഉൾപ്പെടുത്തുക", + "filterVersionsByRegEx": "റെഗുലർ എക്സ്പ്രഷൻ ഉപയോഗിച്ച് പതിപ്പുകൾ ഫിൽട്ടർ ചെയ്യുക", + "trySelectingSuggestedVersionCode": "നിർദ്ദേശിച്ച versionCode APK തിരഞ്ഞെടുക്കാൻ ശ്രമിക്കുക", + "dontSortReleasesList": "API-യിൽ നിന്നുള്ള റിലീസ് ഓർഡർ നിലനിർത്തുക", + "reverseSort": "റിവേഴ്സ് സോർട്ടിംഗ്", + "takeFirstLink": "ആദ്യ ലിങ്ക് എടുക്കുക", + "skipSort": "സോർട്ടിംഗ് ഒഴിവാക്കുക", + "debugMenu": "ഡീബഗ് മെനു", + "bgTaskStarted": "ബാക്ക്ഗ്രൗണ്ട് ടാസ്ക് ആരംഭിച്ചു - ലോഗുകൾ പരിശോധിക്കുക.", + "runBgCheckNow": "ഇപ്പോൾ ബാക്ക്ഗ്രൗണ്ട് അപ്‌ഡേറ്റ് പരിശോധന പ്രവർത്തിപ്പിക്കുക", + "versionExtractWholePage": "മുഴുവൻ പേജിലും പതിപ്പ് സ്ട്രിംഗ് വേർതിരിച്ചെടുക്കുന്ന റെഗുലർ എക്സ്പ്രഷൻ പ്രയോഗിക്കുക", + "installing": "ഇൻസ്റ്റാൾ ചെയ്യുന്നു", + "skipUpdateNotifications": "അപ്‌ഡേറ്റ് അറിയിപ്പുകൾ ഒഴിവാക്കുക", + "updatesAvailableNotifChannel": "അപ്‌ഡേറ്റുകൾ ലഭ്യമാണ്", + "appsUpdatedNotifChannel": "ആപ്പുകൾ അപ്‌ഡേറ്റ് ചെയ്തു", + "appsPossiblyUpdatedNotifChannel": "ആപ്പ് അപ്‌ഡേറ്റുകൾ ശ്രമിച്ചു", + "errorCheckingUpdatesNotifChannel": "അപ്‌ഡേറ്റുകൾ പരിശോധിക്കുന്നതിൽ പിശക്", + "appsRemovedNotifChannel": "ആപ്പുകൾ നീക്കം ചെയ്തു", + "downloadingXNotifChannel": "{} ഡൗൺലോഡ് ചെയ്യുന്നു", + "completeAppInstallationNotifChannel": "ആപ്പ് ഇൻസ്റ്റാളേഷൻ പൂർത്തിയാക്കുക", + "checkingForUpdatesNotifChannel": "അപ്‌ഡേറ്റുകൾ പരിശോധിക്കുന്നു", + "onlyCheckInstalledOrTrackOnlyApps": "ഇൻസ്റ്റാൾ ചെയ്തതും ട്രാക്ക്-മാത്രം ആപ്പുകളും മാത്രം അപ്‌ഡേറ്റുകൾക്കായി പരിശോധിക്കുക", + "supportFixedAPKURL": "സ്ഥിരമായ APK URL-കളെ പിന്തുണയ്ക്കുക", + "selectX": "{} തിരഞ്ഞെടുക്കുക", + "parallelDownloads": "പാരലൽ ഡൗൺലോഡുകൾ അനുവദിക്കുക", + "useShizuku": "ഇൻസ്റ്റാൾ ചെയ്യാൻ ഷിസുകു അല്ലെങ്കിൽ സ്യൂ ഉപയോഗിക്കുക", + "shizukuBinderNotFound": "ഷിസുകു സേവനം പ്രവർത്തിക്കുന്നില്ല", + "shizukuOld": "പഴയ ഷിസുകു പതിപ്പ് (<11) - അത് അപ്‌ഡേറ്റ് ചെയ്യുക", + "shizukuOldAndroidWithADB": "ആൻഡ്രോയിഡ് < 8.1 ഉള്ള ഷിസുകു ADB ഉപയോഗിച്ച് പ്രവർത്തിക്കുന്നു - ആൻഡ്രോയിഡ് അപ്‌ഡേറ്റ് ചെയ്യുക അല്ലെങ്കിൽ പകരം സ്യൂ ഉപയോഗിക്കുക", + "shizukuPretendToBeGooglePlay": "Google Play ഇൻസ്റ്റാളേഷൻ ഉറവിടമായി സജ്ജമാക്കുക (ഷിസുകു ഉപയോഗിക്കുകയാണെങ്കിൽ)", + "useSystemFont": "സിസ്റ്റം ഫോണ്ട് ഉപയോഗിക്കുക", + "useVersionCodeAsOSVersion": "ആപ്പ് versionCode OS-ൽ കണ്ടെത്തിയ പതിപ്പായി ഉപയോഗിക്കുക", + "requestHeader": "അഭ്യർത്ഥന തലക്കെട്ട്", + "useLatestAssetDateAsReleaseDate": "ഏറ്റവും പുതിയ അസറ്റ് അപ്‌ലോഡ് റിലീസ് തീയതിയായി ഉപയോഗിക്കുക", + "defaultPseudoVersioningMethod": "സ്ഥിരസ്ഥിതി സ്യൂഡോ-പതിപ്പ് രീതി", + "partialAPKHash": "ഭാഗിക APK ഹാഷ്", + "APKLinkHash": "APK ലിങ്ക് ഹാഷ്", + "directAPKLink": "നേരിട്ടുള്ള APK ലിങ്ക്", + "pseudoVersionInUse": "ഒരു സ്യൂഡോ-പതിപ്പ് ഉപയോഗത്തിലുണ്ട്", + "installed": "ഇൻസ്റ്റാൾ ചെയ്തത്", + "latest": "ഏറ്റവും പുതിയത്", + "invertRegEx": "റെഗുലർ എക്സ്പ്രഷൻ വിപരീതമാക്കുക", + "note": "ശ്രദ്ധിക്കുക", + "selfHostedNote": "ഏത് ഉറവിടത്തിന്റെയും സെൽഫ്-ഹോസ്റ്റ് ചെയ്ത/കസ്റ്റം ഇൻസ്റ്റൻസുകളിലേക്ക് എത്താൻ \"{}\" ഡ്രോപ്പ്ഡൗൺ ഉപയോഗിക്കാം.", + "badDownload": "APK പാഴ്സ് ചെയ്യാൻ കഴിഞ്ഞില്ല (അനുയോജ്യമല്ലാത്തതോ ഭാഗികമായ ഡൗൺലോഡോ)", + "beforeNewInstallsShareToAppVerifier": "പുതിയ ആപ്പുകൾ AppVerifier-ലേക്ക് പങ്കിടുക (ലഭ്യമെങ്കിൽ)", + "appVerifierInstructionToast": "AppVerifier-ലേക്ക് പങ്കിടുക, തുടർന്ന് തയ്യാറാകുമ്പോൾ ഇവിടെ തിരിച്ചെത്തുക.", + "wiki": "സഹായം/വിക്കി", + "crowdsourcedConfigsLabel": "ക്രൗഡ്‌സോഴ്‌സ് ചെയ്ത ആപ്പ് കോൺഫിഗറേഷനുകൾ (സ്വന്തം ഉത്തരവാദിത്തത്തിൽ ഉപയോഗിക്കുക)", + "crowdsourcedConfigsShort": "ക്രൗഡ്‌സോഴ്‌സ് ചെയ്ത ആപ്പ് കോൺഫിഗറേഷനുകൾ", + "allowInsecure": "സുരക്ഷിതമല്ലാത്ത HTTP അഭ്യർത്ഥനകൾ അനുവദിക്കുക", + "stayOneVersionBehind": "ഏറ്റവും പുതിയ പതിപ്പിന് ഒരു പതിപ്പ് പിന്നിൽ തുടരുക", + "useFirstApkOfVersion": "ഒന്നിലധികം APK-കളിൽ നിന്ന് ആദ്യത്തേത് സ്വയമേവ തിരഞ്ഞെടുക്കുക", + "refreshBeforeDownload": "ഡൗൺലോഡ് ചെയ്യുന്നതിന് മുമ്പ് ആപ്പ് വിവരങ്ങൾ പുതുക്കുക", + "tencentAppStore": "ടെൻസെന്റ് ആപ്പ് സ്റ്റോർ", + "coolApk": "കൂൾ APK", + "vivoAppStore": "വിവോ ആപ്പ് സ്റ്റോർ (CN)", + "name": "പേര്", + "smartname": "പേര് (സ്മാർട്ട്)", + "sortMethod": "അടുക്കുന്ന രീതി", + "welcome": "സ്വാഗതം", + "documentationLinksNote": "താഴെ ലിങ്ക് ചെയ്തിട്ടുള്ള ഒബ്‌റ്റേനിയം GitHub പേജിൽ ആപ്പ് എങ്ങനെ ഉപയോഗിക്കാമെന്ന് മനസ്സിലാക്കാൻ സഹായിക്കുന്ന വീഡിയോകൾ, ലേഖനങ്ങൾ, ചർച്ചകൾ, മറ്റ് വിഭവങ്ങൾ എന്നിവയുടെ ലിങ്കുകൾ അടങ്ങിയിരിക്കുന്നു.", + "batteryOptimizationNote": "ഒബ്‌റ്റേനിയത്തിനായുള്ള OS ബാറ്ററി ഒപ്റ്റിമൈസേഷനുകൾ പ്രവർത്തനരഹിതമാക്കുകയാണെങ്കിൽ ബാക്ക്ഗ്രൗണ്ട് ഡൗൺലോഡുകൾ കൂടുതൽ വിശ്വസനീയമായി പ്രവർത്തിച്ചേക്കാം എന്നത് ശ്രദ്ധിക്കുക.", + "fileDeletionError": "ഫയൽ ഇല്ലാതാക്കാൻ പരാജയപ്പെട്ടു (സ്വമേധയാ ഇല്ലാതാക്കാൻ ശ്രമിക്കുക, എന്നിട്ട് വീണ്ടും ശ്രമിക്കുക): \"{}\"", + "foregroundService": "Obtainium foreground service", + "foregroundServiceExplanation": "Use a foreground service for update checking (more reliable, consumes more power)", + "fgServiceNotice": "This notification is required for background update checking (it can be hidden in the OS settings)", + "excludeSecrets": "Exclude secrets", + "GHReqPrefix": "'sky22333/hubproxy' instance for GitHub requests", + "includeZips": "Include ZIP files", + "zippedApkFilterRegEx": "Filter APKs inside ZIP", + "removeAppQuestion": { + "one": "ആപ്പ് നീക്കം ചെയ്യണോ?", + "other": "ആപ്പുകൾ നീക്കം ചെയ്യണോ?" + }, + "tooManyRequestsTryAgainInMinutes": { + "one": "നിരവധി അഭ്യർത്ഥനകൾ (നിരക്ക് പരിമിതപ്പെടുത്തി) - {} മിനിറ്റിനുള്ളിൽ വീണ്ടും ശ്രമിക്കുക", + "other": "നിരവധി അഭ്യർത്ഥനകൾ (നിരക്ക് പരിമിതപ്പെടുത്തി) - {} മിനിറ്റുകൾക്കുള്ളിൽ വീണ്ടും ശ്രമിക്കുക" + }, + "bgUpdateGotErrorRetryInMinutes": { + "one": "ബാക്ക്ഗ്രൗണ്ട് അപ്‌ഡേറ്റ് പരിശോധനയിൽ ഒരു {} നേരിട്ടു, {} മിനിറ്റിനുള്ളിൽ വീണ്ടും ശ്രമിക്കാൻ ക്രമീകരിക്കും", + "other": "ബാക്ക്ഗ്രൗണ്ട് അപ്‌ഡേറ്റ് പരിശോധനയിൽ ഒരു {} നേരിട്ടു, {} മിനിറ്റുകൾക്കുള്ളിൽ വീണ്ടും ശ്രമിക്കാൻ ക്രമീകരിക്കും" + }, + "bgCheckFoundUpdatesWillNotifyIfNeeded": { + "one": "ബാക്ക്ഗ്രൗണ്ട് അപ്‌ഡേറ്റ് പരിശോധനയിൽ {} അപ്‌ഡേറ്റ് കണ്ടെത്തി - ആവശ്യമെങ്കിൽ ഉപയോക്താവിനെ അറിയിക്കും", + "other": "ബാക്ക്ഗ്രൗണ്ട് അപ്‌ഡേറ്റ് പരിശോധനയിൽ {} അപ്‌ഡേറ്റുകൾ കണ്ടെത്തി - ആവശ്യമെങ്കിൽ ഉപയോക്താവിനെ അറിയിക്കും" + }, + "apps": { + "one": "{} ആപ്പ്", + "other": "{} ആപ്പുകൾ" + }, + "url": { + "one": "{} URL", + "other": "{} URL-കൾ" + }, + "minute": { + "one": "{} മിനിറ്റ്", + "other": "{} മിനിറ്റുകൾ" + }, + "hour": { + "one": "{} മണിക്കൂർ", + "other": "{} മണിക്കൂർ" + }, + "day": { + "one": "{} ദിവസം", + "other": "{} ദിവസങ്ങൾ" + }, + "clearedNLogsBeforeXAfterY": { + "one": "{n} ലോഗ് മായ്ച്ചു (മുമ്പ് = {before}, ശേഷം = {after})", + "other": "{n} ലോഗുകൾ മായ്ച്ചു (മുമ്പ് = {before}, ശേഷം = {after})" + }, + "xAndNMoreUpdatesAvailable": { + "one": "{} കൂടാതെ 1 ആപ്പിന് കൂടി അപ്‌ഡേറ്റുകൾ ലഭ്യമാണ്.", + "other": "{} കൂടാതെ {} ആപ്പുകൾക്ക് കൂടി അപ്‌ഡേറ്റുകൾ ലഭ്യമാണ്." + }, + "xAndNMoreUpdatesInstalled": { + "one": "{} കൂടാതെ 1 ആപ്പ് കൂടി അപ്‌ഡേറ്റ് ചെയ്തു.", + "other": "{} കൂടാതെ {} ആപ്പുകൾ കൂടി അപ്‌ഡേറ്റ് ചെയ്തു." + }, + "xAndNMoreUpdatesFailed": { + "one": "{} കൂടാതെ 1 ആപ്പ് കൂടി അപ്‌ഡേറ്റ് ചെയ്യാൻ പരാജയപ്പെട്ടു.", + "other": "{} കൂടാതെ {} ആപ്പുകൾ കൂടി അപ്‌ഡേറ്റ് ചെയ്യാൻ പരാജയപ്പെട്ടു." + }, + "xAndNMoreUpdatesPossiblyInstalled": { + "one": "{} കൂടാതെ 1 ആപ്പ് കൂടി അപ്‌ഡേറ്റ് ചെയ്തിരിക്കാം.", + "other": "{} കൂടാതെ {} ആപ്പുകൾ കൂടി അപ്‌ഡേറ്റ് ചെയ്തിരിക്കാം." + }, + "apk": { + "one": "{} APK", + "other": "{} APK-കൾ" + } +} diff --git a/assets/translations/nl.json b/assets/translations/nl.json new file mode 100644 index 0000000..b8308f6 --- /dev/null +++ b/assets/translations/nl.json @@ -0,0 +1,402 @@ +{ + "invalidURLForSource": "Ongeldige app-URL voor {}", + "noReleaseFound": "Geen geschikte release gevonden", + "noVersionFound": "Geen versie kunnen bepalen", + "urlMatchesNoSource": "URL komt niet overeen met bekende bron", + "cantInstallOlderVersion": "Kan geen oudere versie van de app installeren", + "appIdMismatch": "Gedownload pakket-ID komt niet overeen met de bestaande app-ID", + "functionNotImplemented": "Deze klasse heeft deze functie niet geïmplementeerd.", + "placeholder": "Dummy", + "someErrors": "Er zijn enkele fouten opgetreden", + "unexpectedError": "Onverwachte fout", + "ok": "Oké", + "and": "en", + "githubPATLabel": "GitHub Personal Access Token\n(Verhoogt limiet aantal verzoeken)", + "includePrereleases": "Inclusief pre-releases", + "fallbackToOlderReleases": "Terugvallen op oudere releases", + "filterReleaseTitlesByRegEx": "Release-titels filteren met reguliere expressies.", + "invalidRegEx": "Ongeldige reguliere expressie", + "noDescription": "Geen omschrijving", + "cancel": "Annuleren", + "continue": "Doorgaan", + "requiredInBrackets": "(Verplicht)", + "dropdownNoOptsError": "FOUTMELDING: UITKLAPMENU MOET TENMINSTE EEN OPT HEBBEN", + "colour": "Kleur", + "standard": "Standaard", + "custom": "Aangepast", + "useMaterialYou": "Material You gebruiken", + "githubStarredRepos": "GitHub-repo's met ster", + "uname": "Gebruikersnaam", + "wrongArgNum": "Incorrect aantal argumenten.", + "xIsTrackOnly": "{} is 'Alleen volgen'", + "source": "Bron", + "app": "App", + "appsFromSourceAreTrackOnly": "Apps van deze bron zijn 'Alleen volgen'.", + "youPickedTrackOnly": "De optie 'Alleen volgen' is geselecteerd.", + "trackOnlyAppDescription": "De app zal worden gevolgd voor updates, maar Obtainium zal niet in staat zijn om deze te downloaden of te installeren.", + "cancelled": "Geannuleerd", + "appAlreadyAdded": "App reeds toegevoegd", + "alreadyUpToDateQuestion": "App al bijgewerkt?", + "addApp": "App toevoegen", + "appSourceURL": "App-bron URL", + "error": "Foutmelding", + "add": "Toevoegen", + "searchSomeSourcesLabel": "Zoeken (sommige bronnen)", + "search": "Zoeken", + "additionalOptsFor": "Aanvullende opties voor {}", + "supportedSources": "Ondersteunde bronnen", + "trackOnlyInBrackets": "(Alleen volgen)", + "searchableInBrackets": "(Doorzoekbaar)", + "appsString": "Apps", + "noApps": "Geen Apps", + "noAppsForFilter": "Geen Apps voor filter", + "byX": "Door {}", + "percentProgress": "Voortgang: {}%", + "pleaseWait": "Even geduld", + "updateAvailable": "Update beschikbaar", + "notInstalled": "Niet geinstalleerd", + "pseudoVersion": "pseudo-versie", + "selectAll": "Alles selecteren", + "deselectX": "Selectie opheffen {}", + "xWillBeRemovedButRemainInstalled": "{} zal worden gewist uit Obtainium, maar blijft geïnstalleerd op het apparaat.", + "removeSelectedAppsQuestion": "Geselecteerde apps verwijderen?", + "removeSelectedApps": "Geselecteerde apps verwijderen", + "updateX": "{} bijwerken", + "installX": "{} installeren", + "markXTrackOnlyAsUpdated": "{}\n(Alleen volgen)\nmarkeren als bijgewerkt", + "changeX": "{} wijzigen", + "installUpdateApps": "Apps installeren/bijwerken", + "installUpdateSelectedApps": "Geselecteerde apps installeren/bijwerken", + "markXSelectedAppsAsUpdated": "{} geselecteerde apps markeren als bijgewerkt?", + "no": "Nee", + "yes": "Ja", + "markSelectedAppsUpdated": "Geselecteerde apps markeren als bijgewerkt", + "pinToTop": "Bovenaan plaatsen", + "unpinFromTop": "Bovenaan wegnemen", + "resetInstallStatusForSelectedAppsQuestion": "Installatiestatus herstellen voor geselecteerde apps?", + "installStatusOfXWillBeResetExplanation": "De installatiestatus van alle geselecteerde apps zal worden hersteld.\n\nDit kan helpen wanneer de versie van de app die in Obtainium wordt weergegeven onjuist is vanwege mislukte updates of andere problemen.", + "customLinkMessage": "Deze koppelingen werken op apparaten waarop Obtainium is geïnstalleerd", + "shareAppConfigLinks": "App-configuratie delen als HTML-link", + "shareSelectedAppURLs": "Geselecteerde app-URL's delen", + "resetInstallStatus": "Installatiestatus herstellen", + "more": "Meer", + "removeOutdatedFilter": "Verouderde apps-filter verwijderen", + "showOutdatedOnly": "Alleen verouderde apps weergeven", + "filter": "Filteren", + "filterApps": "Apps filteren", + "appName": "App-naam", + "author": "Auteur", + "upToDateApps": "Bijgewerkte apps", + "nonInstalledApps": "Niet-geïnstalleerde apps", + "importExport": "Importeren/exporteren", + "settings": "Instellingen", + "exportedTo": "Geëxporteerd naar {}", + "obtainiumExport": "Obtainium export", + "invalidInput": "Ongeldige invoer", + "importedX": "{} geïmporteerd", + "obtainiumImport": "Obtainium import", + "importFromURLList": "Importeren van URL-lijsten", + "searchQuery": "Zoekopdracht", + "appURLList": "App URL-lijst", + "line": "Regel", + "searchX": "{} zoeken", + "noResults": "Geen resultaten gevonden", + "importX": "{} importeren", + "importedAppsIdDisclaimer": "Geïmporteerde apps kunnen mogelijk onjuist worden weergegeven als \"Niet geïnstalleerd\".\nOm dit op te lossen, installeer deze opnieuw via Obtainium.\nDit zou geen invloed moeten hebben op app-gegevens.\n\nDit heeft alleen invloed op URL- en importmethoden van derden.", + "importErrors": "Fouten bij het importeren", + "importedXOfYApps": "{} van {} apps geïmporteerd.", + "followingURLsHadErrors": "De volgende URL's bevatten fouten:", + "selectURL": "URL selecteren", + "selectURLs": "URL's selecteren", + "pick": "Kiezen", + "theme": "Thema", + "dark": "Donker", + "light": "Licht", + "followSystem": "Systeem volgen", + "followSystemThemeExplanation": "Het volgen van het systeemthema is alleen mogelijk met applicaties van derden", + "useBlackTheme": "Zwart thema gebruiken", + "appSortBy": "Sortering", + "authorName": "Auteur/Naam", + "nameAuthor": "Naam/Auteur", + "asAdded": "Datum toegevoegd", + "appSortOrder": "Volgorde", + "ascending": "Oplopend", + "descending": "Aflopend", + "bgUpdateCheckInterval": "Frequentie voor achtergrond-updatecontrole", + "neverManualOnly": "Nooit - Alleen handmatig", + "appearance": "Weergave", + "showWebInAppView": "Bron-webpagina weergeven in app-weergave", + "pinUpdates": "Updates bovenaan plaatsen in de apps-weergave", + "updates": "Updates", + "sourceSpecific": "Bron-specifiek", + "appSource": "App-bron", + "noLogs": "Geen logs", + "appLogs": "App logs", + "close": "Sluiten", + "share": "Delen", + "appNotFound": "App niet gevonden", + "obtainiumExportHyphenatedLowercase": "obtainium-export", + "pickAnAPK": "Kies een APK", + "appHasMoreThanOnePackage": "{} biedt verschillende pakketten:", + "deviceSupportsXArch": "Dit apparaat ondersteunt de {} CPU-architectuur.", + "deviceSupportsFollowingArchs": "Dit apparaat ondersteunt de volgende CPU-architecturen:", + "warning": "Waarschuwing", + "sourceIsXButPackageFromYPrompt": "De app-bron is '{}' maar het release-pakket komt van '{}'. Doorgaan?", + "updatesAvailable": "Updates beschikbaar", + "updatesAvailableNotifDescription": "Stelt de gebruiker op de hoogte dat er updates beschikbaar zijn voor een of meer apps die worden bijgehouden door Obtainium.", + "noNewUpdates": "Geen nieuwe updates.", + "xHasAnUpdate": "{} heeft een update.", + "appsUpdated": "Apps bijgewerkt", + "appsNotUpdated": "Applicaties konden niet worden bijgewerkt", + "appsUpdatedNotifDescription": "Stelt de gebruiker op de hoogte dat updates voor één of meer apps in de achtergrond zijn toegepast.", + "xWasUpdatedToY": "{} is bijgewerkt naar {}.", + "xWasNotUpdatedToY": "Het bijwerken van {} naar {} is mislukt.", + "errorCheckingUpdates": "Fout bij het controleren op updates", + "errorCheckingUpdatesNotifDescription": "Een melding die verschijnt wanneer de achtergrondcontrole op updates mislukt", + "appsRemoved": "Apps verwijderd", + "appsRemovedNotifDescription": "Stelt de gebruiker op de hoogte dat een of meer apps zijn verwijderd vanwege fouten tijdens het laden", + "xWasRemovedDueToErrorY": "{} is verwijderd vanwege de fout: {}", + "completeAppInstallation": "App-installatie voltooien", + "obtainiumMustBeOpenToInstallApps": "Obtainium moet geopend zijn om apps te installeren", + "completeAppInstallationNotifDescription": "Vraagt de gebruiker om terug te keren naar Obtainium om de installatie van een app af te ronden", + "checkingForUpdates": "Controleren op updates", + "checkingForUpdatesNotifDescription": "Tijdelijke melding die verschijnt tijdens het controleren op updates", + "pleaseAllowInstallPerm": "Toestaan dat Obtainium apps installeert", + "trackOnly": "'Alleen volgen'", + "errorWithHttpStatusCode": "Foutmelding {}", + "versionCorrectionDisabled": "Versiecorrectie uitgeschakeld (de plug-in lijkt niet te werken)", + "unknown": "Onbekend", + "none": "Geen", + "all": "Alle", + "never": "Nooit", + "latestVersionX": "Laatste versie: {}", + "installedVersionX": "Geïnstalleerde versie: {}", + "lastUpdateCheckX": "Laatste updatecontrole: {}", + "remove": "Verwijderen", + "yesMarkUpdated": "Ja, markeren als bijgewerkt", + "fdroid": "F-Droid (Officieel)", + "appIdOrName": "App-ID of naam", + "appId": "App-ID", + "appWithIdOrNameNotFound": "Er is geen app gevonden met dat ID of die naam", + "reposHaveMultipleApps": "Repositories kunnen meerdere apps bevatten", + "fdroidThirdPartyRepo": "F-Droid Repository voor derden", + "install": "Installeren", + "markInstalled": "Als geïnstalleerd markeren", + "update": "Bijwerken", + "markUpdated": "Als bijgewerkt markeren", + "additionalOptions": "Aanvullende opties", + "disableVersionDetection": "Versieherkenning uitschakelen", + "noVersionDetectionExplanation": "Deze optie moet alleen worden gebruikt voor apps waar versieherkenning niet correct werkt.", + "downloadingX": "{} downloaden", + "downloadX": "Downloaden", + "downloadedX": "{} gedownload", + "releaseAsset": "Release Activa", + "downloadNotifDescription": "Stelt de gebruiker op de hoogte van de voortgang bij het downloaden van een app", + "noAPKFound": "Geen APK gevonden", + "noVersionDetection": "Geen versieherkenning", + "categorize": "Categoriseren", + "categories": "Categorieën", + "category": "Categorie", + "noCategory": "Geen categorie", + "noCategories": "Geen categorieën", + "deleteCategoriesQuestion": "Categorieën verwijderen?", + "categoryDeleteWarning": "Alle apps in verwijderde categorieën worden teruggezet naar 'ongecategoriseerd'.", + "addCategory": "Categorie toevoegen", + "label": "Label", + "language": "Taal", + "copiedToClipboard": "Gekopieerd naar klembord", + "storagePermissionDenied": "Toegang tot opslag geweigerd", + "selectedCategorizeWarning": "Dit zal eventuele bestaande categorie-instellingen voor de geselecteerde apps vervangen.", + "filterAPKsByRegEx": "APK's flteren met reguliere expressie", + "removeFromObtainium": "Uit Obtainium verwijderen", + "uninstallFromDevice": "Van apparaat verwijderen", + "onlyWorksWithNonVersionDetectApps": "Werkt alleen voor apps waarbij versieherkenning is uitgeschakeld.", + "releaseDateAsVersion": "Releasedatum als versie gebruiken", + "releaseTitleAsVersion": "Gebruik releasetitel als versiestring", + "releaseDateAsVersionExplanation": "Deze optie moet alleen worden gebruikt voor apps waar versieherkenning niet correct werkt, maar waar wel een releasedatum beschikbaar is.", + "changes": "Aanpassingen", + "releaseDate": "Releasedatum", + "importFromURLsInFile": "Importeren vanaf URL's in een bestand (zoals OPML)", + "versionDetectionExplanation": "Versiereeks afstemmen met versie gedetecteerd door besturingssysteem", + "versionDetection": "Versieherkenning", + "standardVersionDetection": "Standaard versieherkenning", + "groupByCategory": "Groeperen op categorie", + "autoApkFilterByArch": "Probeer APK's te filteren op CPU-architectuur, indien mogelijk", + "autoLinkFilterByArch": "Probeer links zo mogelijk te filteren op CPU-architectuur", + "overrideSource": "Bron overschrijven", + "dontShowAgain": "Laat dit niet meer zien", + "dontShowTrackOnlyWarnings": "Geen waarschuwingen weergeven voor 'Alleen volgen'", + "dontShowAPKOriginWarnings": "Geen waarschuwingen weergeven voor APK-herkomst", + "moveNonInstalledAppsToBottom": "Niet-geïnstalleerde apps onderaan de apps-lijst plaatsen", + "gitlabPATLabel": "GitLab persoonlijk toegangskenmerk", + "about": "Over", + "requiresCredentialsInSettings": "{} vereist aanvullende referenties (in Instellingen)", + "checkOnStart": "Bij opstarten op updates controleren", + "tryInferAppIdFromCode": "Probeer de app-ID af te leiden uit de broncode", + "removeOnExternalUninstall": "Extern verwijderde apps automatisch verwijderen", + "pickHighestVersionCode": "De APK met de hoogste versiecode automatisch selecteren", + "checkUpdateOnDetailPage": "Controleren op updates bij het openen van een app-detailpagina", + "disablePageTransitions": "Overgangsanimaties tussen pagina's uitschakelen", + "reversePageTransitions": "Overgangsanimaties tussen pagina's herstellen", + "minStarCount": "Minimum Github Stars", + "addInfoBelow": "Deze informatie hieronder toevoegen.", + "addInfoInSettings": "Deze informatie toevoegen in de instellingen.", + "githubSourceNote": "Beperkingen van GitHub kunnen worden vermeden door het gebruik van een API-sleutel.", + "sortByLastLinkSegment": "Alleen sorteren op het laatste segment van de link", + "filterReleaseNotesByRegEx": "Release-opmerkingen fiteren met een reguliere expressie.", + "customLinkFilterRegex": "Aangepaste APK-links filteren met een reguliere expressie (Standaard '.apk$').", + "appsPossiblyUpdated": "Pogingen tot app-updates", + "appsPossiblyUpdatedNotifDescription": "Stelt de gebruiker op de hoogte dat updates voor één of meer apps mogelijk in de achtergrond zijn toegepast", + "xWasPossiblyUpdatedToY": "{} kan bijgewerkt zijn naar {}.", + "enableBackgroundUpdates": "Achtergrond-updates inschakelen", + "backgroundUpdateReqsExplanation": "Achtergrond-updates zijn niet voor alle apps mogelijk.", + "backgroundUpdateLimitsExplanation": "Het succes van een installatie in de achtergrond kan alleen worden bepaald wanneer Obtainium is geopend.", + "verifyLatestTag": "Het label 'Laatste' verifiëren", + "intermediateLinkRegex": "Filteren op een 'Intermediaire' link om te bezoeken", + "filterByLinkText": "Links filteren op linktekst", + "matchLinksOutsideATags": "Koppelingen buiten -tags matchen", + "intermediateLinkNotFound": "Intermediaire link niet gevonden", + "intermediateLink": "Intermediaire link", + "exemptFromBackgroundUpdates": "Vrijgesteld van achtergrond-updates (indien ingeschakeld)", + "bgUpdatesOnWiFiOnly": "Achtergrond-updates uitschakelen wanneer niet verbonden met Wi-Fi", + "bgUpdatesWhileChargingOnly": "Achtergrondupdates uitschakelen als er niet wordt opgeladen", + "autoSelectHighestVersionCode": "De APK met de hoogste versiecode automatisch selecteren", + "versionExtractionRegEx": "Reguliere expressie voor versie-extractie", + "trimVersionString": "Versie string trimmen met RegEx", + "matchGroupToUseForX": "Overeenkomende groep te gebruiken voor \"{}\"", + "matchGroupToUse": "Overeenkomende groep om te gebruiken voor de reguliere expressie voor versie-extractie", + "highlightTouchTargets": "Minder voor de hand liggende aanraakdoelen markeren.", + "pickExportDir": "Kies de exportmap", + "autoExportOnChanges": "Bij wijzigingen automatisch exporteren", + "includeSettings": "Instellingen opnemen", + "filterVersionsByRegEx": "Versies met een reguliere expressie filteren", + "trySelectingSuggestedVersionCode": "Probeer de voorgestelde versiecode APK te selecteren", + "dontSortReleasesList": "Volgorde van releases behouden vanuit de API", + "reverseSort": "Omgekeerde sortering", + "takeFirstLink": "Neem de eerste link", + "skipSort": "Sortering overslaan", + "debugMenu": "Debug-menu", + "bgTaskStarted": "Achtergrondtaak gestart - controleer de logs.", + "runBgCheckNow": "Nu een achtergrond-updatecontrole uitvoeren", + "versionExtractWholePage": "De reguliere expressie voor versie-extractie toepassen op de hele pagina", + "installing": "Installeren", + "skipUpdateNotifications": "Updatemeldingen overslaan", + "updatesAvailableNotifChannel": "Updates beschikbaar", + "appsUpdatedNotifChannel": "Apps bijgewerkt", + "appsPossiblyUpdatedNotifChannel": "Pogingen tot app-updates", + "errorCheckingUpdatesNotifChannel": "Foutcontrole bij het zoeken naar updates", + "appsRemovedNotifChannel": "Apps verwijderd", + "downloadingXNotifChannel": "{} downloaden", + "completeAppInstallationNotifChannel": "App-installatie voltooien", + "checkingForUpdatesNotifChannel": "Controleren op updates", + "onlyCheckInstalledOrTrackOnlyApps": "Alleen geïnstalleerde apps en 'Alleen volgen' controleren op updates", + "supportFixedAPKURL": "Vaste APK-URL's ondersteunen", + "selectX": "{} selecteren", + "parallelDownloads": "Parallelle downloads toestaan", + "useShizuku": "Shizuku of Sui gebruiken om te installeren", + "shizukuBinderNotFound": "Shizuku is niet actief", + "shizukuOld": "Verouderde Shizuku-versie (<11) - bijwerken", + "shizukuOldAndroidWithADB": "Shizuku draait op Android < 8.1 met ADB - update Android of gebruik in plaats daarvan Sui", + "shizukuPretendToBeGooglePlay": "Google Play instellen als installatiebron (bij Shizuku)", + "useSystemFont": "Systeemlettertype gebruiken", + "useVersionCodeAsOSVersion": "App versiecode gebruiken als door OS gedetecteerde versie", + "requestHeader": "Verzoekkoptekst", + "useLatestAssetDateAsReleaseDate": "Laatste upload als releasedatum gebruiken", + "defaultPseudoVersioningMethod": "Standaard pseudo-versiebeheermethode", + "partialAPKHash": "Gedeeltelijke APK-hash", + "APKLinkHash": "APK-link-hash", + "directAPKLink": "Directe APK-link", + "pseudoVersionInUse": "Er is een pseudo-versie in gebruik", + "installed": "Geïnstalleerd", + "latest": "Laatste", + "invertRegEx": "Reguliere expressie omkeren", + "note": "Opmerking", + "selfHostedNote": "De \"{}\" dropdown kan gebruikt worden om zelf gehoste/aangepaste instanties van elke bron te bereiken.", + "badDownload": "De APK kon niet worden verwerkt (incompatibele of gedeeltelijke download)", + "beforeNewInstallsShareToAppVerifier": "Nieuwe Apps delen met AppVerifier (indien beschikbaar)", + "appVerifierInstructionToast": "Deel het met AppVerifier en keer daarna hier terug.", + "wiki": "Help/wiki", + "crowdsourcedConfigsLabel": "Crowdsourced App-configuraties (gebruik op eigen risico)", + "crowdsourcedConfigsShort": "App-configuraties door menigte", + "allowInsecure": "Onveilige HTTP-verzoeken toestaan", + "stayOneVersionBehind": "Blijf een versie achter op de nieuwste", + "useFirstApkOfVersion": "Automatisch de eerste van meerdere APK's selecteren", + "refreshBeforeDownload": "Vernieuw app details voor download", + "tencentAppStore": "Tencent App Store", + "coolApk": "CoolApk", + "vivoAppStore": "vivo App Store (CN)", + "name": "Naam", + "smartname": "Naam (Slim)", + "sortMethod": "Sorteermethode", + "welcome": "Welkom", + "documentationLinksNote": "De GitHub pagina van Obtainium waarnaar hieronder wordt gelinkt bevat links naar video's, artikelen, discussies en andere bronnen die je zullen helpen begrijpen hoe je de app kunt gebruiken.", + "batteryOptimizationNote": "Merk op dat downloads op de achtergrond mogelijk betrouwbaarder werken als je de batterijoptimalisatie van het besturingssysteem voor Obtainium uitschakelt.", + "fileDeletionError": "Bestand is niet verwijderd (probeer het handmatig te verwijderen en probeer het opnieuw): \"{}\"", + "foregroundService": "Obtainium foreground service", + "foregroundServiceExplanation": "Gebruik een voorgronddienst voor het controleren van updates (betrouwbaarder, verbruikt meer stroom)", + "fgServiceNotice": "Deze melding is nodig voor het controleren van updates op de achtergrond (kan worden verborgen in de OS-instellingen)", + "excludeSecrets": "Geheimen uitsluiten", + "GHReqPrefix": "'sky22333/hubproxy' instantie voor GitHub verzoeken", + "includeZips": "ZIP-bestanden opnemen", + "zippedApkFilterRegEx": "APK's filteren in ZIP", + "removeAppQuestion": { + "one": "App verwijderen?", + "other": "Apps verwijderen?" + }, + "tooManyRequestsTryAgainInMinutes": { + "one": "Te veel verzoeken (aantal beperkt) - opnieuw proberen over {} minuut", + "other": "Te veel verzoeken (aantal beperkt) - opnieuw proberen over {} minuten" + }, + "bgUpdateGotErrorRetryInMinutes": { + "one": "Achtergrond-updatecontrole heeft een {}, zal een nieuwe controle plannen over {} minuut", + "other": "Achtergrond-updatecontrole heeft een {}, zal een nieuwe controle plannen over {} minuten" + }, + "bgCheckFoundUpdatesWillNotifyIfNeeded": { + "one": "Achtergrond-updatecontrole heeft {} update gevonden - zal de gebruiker op de hoogte stellen indien nodig", + "other": "Achtergrond-updatecontrole heeft {} updates gevonden - zal de gebruiker op de hoogte stellen indien nodig" + }, + "apps": { + "one": "{} app", + "other": "{} apps" + }, + "url": { + "one": "{} URL", + "other": "{} URL's" + }, + "minute": { + "one": "{} minuut", + "other": "{} minuten" + }, + "hour": { + "one": "{} uur", + "other": "{} uur" + }, + "day": { + "one": "{} dag", + "other": "{} dagen" + }, + "clearedNLogsBeforeXAfterY": { + "one": "{n} logboekitem gewist (voor = {before}, na = {after})", + "other": "{n} logboekitems gewist (voor = {before}, na = {after})" + }, + "xAndNMoreUpdatesAvailable": { + "one": "{} en nog 1 app hebben updates.", + "other": "{} en nog {} apps hebben updates." + }, + "xAndNMoreUpdatesInstalled": { + "one": "{} en nog 1 app is bijgewerkt.", + "other": "{} en nog {} apps zijn bijgewerkt." + }, + "xAndNMoreUpdatesFailed": { + "one": "Bijwerken mislukt voor {} en nog 1 app.", + "other": "Bijwerken mislukt voor {} en nog {} apps." + }, + "xAndNMoreUpdatesPossiblyInstalled": { + "one": "{} en nog 1 app zijn mogelijk bijgewerkt.", + "other": "{} en nog {} apps zijn mogelijk bijgwerkt." + }, + "apk": { + "one": "{} APK", + "other": "{} APK's" + } +} diff --git a/assets/translations/pl.json b/assets/translations/pl.json new file mode 100644 index 0000000..213ffe4 --- /dev/null +++ b/assets/translations/pl.json @@ -0,0 +1,432 @@ +{ + "invalidURLForSource": "Nieprawidłowy adres URL aplikacji {}", + "noReleaseFound": "Nie można znaleźć odpowiedniego wydania", + "noVersionFound": "Nie można określić wersji wydania", + "urlMatchesNoSource": "Adres URL nie pasuje do znanego źródła", + "cantInstallOlderVersion": "Nie można zainstalować starszej wersji aplikacji", + "appIdMismatch": "Pobrane ID pakietu nie pasuje do istniejącego ID aplikacji", + "functionNotImplemented": "Ta klasa nie zaimplementowała tej funkcji", + "placeholder": "Placeholder", + "someErrors": "Wystąpiły pewne błędy", + "unexpectedError": "Nieoczekiwany błąd", + "ok": "Okej", + "and": "i", + "githubPATLabel": "Osobisty token dostępu GitHub (zwiększa limit zapytań)", + "includePrereleases": "Uwzględnij wersje wstępne", + "fallbackToOlderReleases": "Powracaj do starszych wersji", + "filterReleaseTitlesByRegEx": "Filtruj tytuły wydań wg. wyrażeń regularnych", + "invalidRegEx": "Nieprawidłowe wyrażenie regularne", + "noDescription": "Brak opisu", + "cancel": "Anuluj", + "continue": "Kontynuuj", + "requiredInBrackets": "(Wymagane)", + "dropdownNoOptsError": "BŁĄD: LISTA ROZWIJANA MUSI MIEĆ CO NAJMNIEJ JEDNĄ OPCJĘ", + "colour": "Kolor", + "standard": "Domyślny", + "custom": "Własny", + "useMaterialYou": "Material You", + "githubStarredRepos": "Repozytoria GitHub oznaczone gwiazdką", + "uname": "Nazwa użytkownika", + "wrongArgNum": "Nieprawidłowa liczba podanych argumentów", + "xIsTrackOnly": "{} jest tylko obserwowane", + "source": "Źródło", + "app": "Aplikacja", + "appsFromSourceAreTrackOnly": "Aplikacje z tego źródła są tylko obserwowane.", + "youPickedTrackOnly": "Wybrano opcję \"Tylko obserwuj\".", + "trackOnlyAppDescription": "Aplikacja będzie obserwowana pod kątem aktualizacji, ale Obtainium nie będzie w stanie jej pobrać ani zainstalować.", + "cancelled": "Anulowano", + "appAlreadyAdded": "Aplikacja już została dodana", + "alreadyUpToDateQuestion": "Aplikacja jest już aktualna?", + "addApp": "Dodaj apkę", + "appSourceURL": "Adres URL źródła aplikacji", + "error": "Błąd", + "add": "Dodaj", + "searchSomeSourcesLabel": "Szukaj (tylko niektóre źródła)", + "search": "Szukaj", + "additionalOptsFor": "Dodatkowe opcje dla {}", + "supportedSources": "Obsługiwane źródła", + "trackOnlyInBrackets": "(tylko obserwowane)", + "searchableInBrackets": "(wyszukiwalne)", + "appsString": "Aplikacje", + "noApps": "Brak aplikacji", + "noAppsForFilter": "Brak aplikacji dla filtra", + "byX": "Autorstwa {}", + "percentProgress": "Postęp: {}%", + "pleaseWait": "Proszę czekać", + "updateAvailable": "Dostępna aktualizacja", + "notInstalled": "Nie zainstalowano", + "pseudoVersion": "pseudo-wersja", + "selectAll": "Zaznacz wszystkie", + "deselectX": "Odznacz {}", + "xWillBeRemovedButRemainInstalled": "{} zostanie usunięty z Obtainium, ale pozostanie zainstalowany na urządzeniu.", + "removeSelectedAppsQuestion": "Usunąć wybrane aplikacje?", + "removeSelectedApps": "Usuń wybrane aplikacje", + "updateX": "Zaktualizuj {}", + "installX": "Zainstaluj {}", + "markXTrackOnlyAsUpdated": "Oznacz {}\n(tylko obserwowana)\njako zaktualizowaną", + "changeX": "Zmień {}", + "installUpdateApps": "Instaluj/aktualizuj aplikacje", + "installUpdateSelectedApps": "Zainstaluj/zaktualizuj wybrane aplikacje", + "markXSelectedAppsAsUpdated": "Oznaczyć {} wybranych aplikacji jako zaktualizowane?", + "no": "Nie", + "yes": "Tak", + "markSelectedAppsUpdated": "Oznacz wybrane aplikacje jako zaktualizowane", + "pinToTop": "Przypnij", + "unpinFromTop": "Odepnij", + "resetInstallStatusForSelectedAppsQuestion": "Zresetować status instalacji dla wybranych aplikacji?", + "installStatusOfXWillBeResetExplanation": "Stan instalacji wybranych aplikacji zostanie zresetowany.\n\nMoże być to pomocne, gdy wersja aplikacji wyświetlana w Obtainium jest nieprawidłowa z powodu nieudanych aktualizacji lub innych problemów.", + "customLinkMessage": "Te linki działają na urządzeniach z zainstalowanym Obtainium", + "shareAppConfigLinks": "Udostępnij konfigurację aplikacji w formie linku", + "shareSelectedAppURLs": "Udostępnij wybrane adresy URL aplikacji", + "resetInstallStatus": "Zresetuj stan instalacji", + "more": "Więcej", + "removeOutdatedFilter": "Usuń filtr nieaktualnych aplikacji", + "showOutdatedOnly": "Pokaż tylko nieaktualne aplikacje", + "filter": "FIltr", + "filterApps": "Filtruj aplikacje", + "appName": "Nazwa aplikacji", + "author": "Autor", + "upToDateApps": "Aktualne aplikacje", + "nonInstalledApps": "Niezainstalowane aplikacje", + "importExport": "Import/Eksport", + "settings": "Ustawienia", + "exportedTo": "Wyeksportowano do {}", + "obtainiumExport": "Eksportuj Obtainium", + "invalidInput": "Nieprawidłowe wprowadzenie", + "importedX": "Zaimportowano {}", + "obtainiumImport": "Import Obtainium", + "importFromURLList": "Importuj z listy adresów URL", + "searchQuery": "Wyszukiwane zapytanie", + "appURLList": "Lista adresów URL aplikacji", + "line": "Linia", + "searchX": "Przeszukaj {}", + "noResults": "Nie znaleziono wyników", + "importX": "Importuj {}", + "importedAppsIdDisclaimer": "Zaimportowane aplikacje mogą być wyświetlane jako niezainstalowane.\nAby to naprawić, przeinstaluj je za pomocą Obtainium.\nNie powinno to mieć wpływu na dane aplikacji.\n\nDotyczy tylko adresu URL i innych metod importu.", + "importErrors": "Błędy importowania", + "importedXOfYApps": "Zaimportowano {} z {} aplikacji.", + "followingURLsHadErrors": "Następujące adresy URL zawierały błędy:", + "selectURL": "Wybierz adres URL", + "selectURLs": "Wybierz adresy URL", + "pick": "Wybierz", + "theme": "Motyw", + "dark": "Ciemny", + "light": "Jasny", + "followSystem": "Zgodny z systemem", + "followSystemThemeExplanation": "Podążanie za motywem systemowym jest możliwe tylko przy użyciu aplikacji firm trzecich", + "useBlackTheme": "Użyj czarnego motywu", + "appSortBy": "Sortuj aplikacje według", + "authorName": "Autor/Nazwa", + "nameAuthor": "Nazwa/Autor", + "asAdded": "Dodania", + "appSortOrder": "Kolejność sortowania aplikacji", + "ascending": "Rosnąco", + "descending": "Malejąco", + "bgUpdateCheckInterval": "Częstotliwość sprawdzania aktualizacji w tle", + "neverManualOnly": "Nigdy - tylko ręcznie", + "appearance": "Wygląd", + "showWebInAppView": "Pokaż stronę źródłową w widoku aplikacji", + "pinUpdates": "Przypnij aktualizacje na górze widoku aplikacji", + "updates": "Aktualizacje", + "sourceSpecific": "Zależnie od źródła", + "appSource": "Źródło aplikacji", + "noLogs": "Brak logów", + "appLogs": "Logi aplikacji", + "close": "Zamknij", + "share": "Udostępnij", + "appNotFound": "Nie znaleziono aplikacji", + "obtainiumExportHyphenatedLowercase": "obtainium-eksport", + "pickAnAPK": "Wybierz plik APK", + "appHasMoreThanOnePackage": "{} ma więcej niż jeden pakiet:", + "deviceSupportsXArch": "Urządzenie obsługuje architekturę procesora {}.", + "deviceSupportsFollowingArchs": "Urządzenie obsługuje następujące architektury procesora:", + "warning": "Uwaga", + "sourceIsXButPackageFromYPrompt": "Źródłem aplikacji jest '{}', ale pakiet wydania pochodzi z '{}'. Kontynuować?", + "updatesAvailable": "Dostępne aktualizacje", + "updatesAvailableNotifDescription": "Informuje o dostępności aktualizacji dla jednej lub więcej aplikacji obserwowanych przez Obtainium", + "noNewUpdates": "Brak nowych aktualizacji.", + "xHasAnUpdate": "{} ma aktualizację.", + "appsUpdated": "Zaktualizowano aplikacje", + "appsNotUpdated": "Nie udało się zaktualizować aplikacji", + "appsUpdatedNotifDescription": "Informuje, gdy co najmniej jedna aplikacja została zaktualizowana w tle", + "xWasUpdatedToY": "{} zaktualizowano do {}.", + "xWasNotUpdatedToY": "Błąd aktualizacji {} do {}.", + "errorCheckingUpdates": "Błąd sprawdzania aktualizacji", + "errorCheckingUpdatesNotifDescription": "Jest wyświetlane, gdy sprawdzanie aktualizacji w tle nie powiedzie się", + "appsRemoved": "Usunięte aplikacje", + "appsRemovedNotifDescription": "Informuje, gdy co najmniej jedna aplikacja została usunięta z powodu błędów podczas wczytywania", + "xWasRemovedDueToErrorY": "Usunięto {} z powodu błędu: {}", + "completeAppInstallation": "Ukończenie instalacji aplikacji", + "obtainiumMustBeOpenToInstallApps": "Aby zainstalować aplikacje, Obtainium musi być otwarte", + "completeAppInstallationNotifDescription": "Informuje o możliwości powrotu do Obtainium w celu dokończenia instalacji aplikacji", + "checkingForUpdates": "Sprawdzanie aktualizacji", + "checkingForUpdatesNotifDescription": "Tymczasowe powiadomienie pojawiające się podczas sprawdzania aktualizacji", + "pleaseAllowInstallPerm": "Pozwól Obtainium instalować aplikacje", + "trackOnly": "Tylko obserwuj", + "errorWithHttpStatusCode": "Błąd {}", + "versionCorrectionDisabled": "Korekta wersji wyłączona (wtyczka wydaje się nie działać)", + "unknown": "Nieznane", + "none": "Brak", + "all": "Wszystkie", + "never": "Nigdy", + "latestVersionX": "Najnowsza wersja: {}", + "installedVersionX": "Zainstalowana wersja: {}", + "lastUpdateCheckX": "Ostatnio sprawdzono: {}", + "remove": "Usuń", + "yesMarkUpdated": "Tak, oznacz jako zaktualizowane", + "fdroid": "Oficjalny F-Droid", + "appIdOrName": "ID aplikacji lub nazwa", + "appId": "ID aplikacji", + "appWithIdOrNameNotFound": "Nie znaleziono aplikacji o tym identyfikatorze lub nazwie", + "reposHaveMultipleApps": "Repozytoria mogą zawierać wiele aplikacji", + "fdroidThirdPartyRepo": "Zewnętrzne repo F-Droid", + "install": "Instaluj", + "markInstalled": "Oznacz jako zainstalowane", + "update": "Zaktualizuj", + "markUpdated": "Oznacz jako zaktualizowane", + "additionalOptions": "Dodatkowe opcje", + "disableVersionDetection": "Wyłącz wykrywanie wersji", + "noVersionDetectionExplanation": "Opcja ta powinna być używana tylko w przypadku aplikacji, w których wykrywanie wersji nie działa poprawnie.", + "downloadingX": "Pobieranie {}", + "downloadX": "Pobierz {}", + "downloadedX": "Pobrano {}", + "releaseAsset": "Wydany pakiet", + "downloadNotifDescription": "Informuje o postępach w pobieraniu aplikacji", + "noAPKFound": "Nie znaleziono pakietu APK", + "noVersionDetection": "Bez wykrywania wersji", + "categorize": "Kategoryzuj", + "categories": "Kategorie", + "category": "Kategoria", + "noCategory": "Bez kategorii", + "noCategories": "Brak kategorii", + "deleteCategoriesQuestion": "Usunąć kategorie?", + "categoryDeleteWarning": "Wszystkie aplikacje w usuniętych kategoriach zostaną ustawione jako nieskategoryzowane.", + "addCategory": "Dodaj kategorię", + "label": "Etykieta", + "language": "Język", + "copiedToClipboard": "Skopiowano do schowka", + "storagePermissionDenied": "Odmówiono zezwolenia dostępu do pamięci", + "selectedCategorizeWarning": "Spowoduje to zastąpienie wszystkich istniejących ustawień kategorii dla wybranych aplikacji.", + "filterAPKsByRegEx": "Filtruj pliki APK według wyrażeń regularnych", + "removeFromObtainium": "Usuń z Obtainium", + "uninstallFromDevice": "Odinstaluj z urządzenia", + "onlyWorksWithNonVersionDetectApps": "Działa tylko w przypadku aplikacji z wyłączonym wykrywaniem wersji.", + "releaseDateAsVersion": "Użyj daty wydania jako wersji", + "releaseTitleAsVersion": "Używaj nazwy wydania jako ciągu wersji", + "releaseDateAsVersionExplanation": "Opcja ta powinna być używana tylko w przypadku aplikacji, w których wykrywanie wersji nie działa poprawnie, ale dostępna jest data wydania.", + "changes": "Zmiany", + "releaseDate": "Data wydania", + "importFromURLsInFile": "Importuj z adresów URL w pliku (typu OPML)", + "versionDetectionExplanation": "Uzgodnij ciąg wersji z wersją wykrytą przez system operacyjny", + "versionDetection": "Wykrywanie wersji", + "standardVersionDetection": "Standardowe wykrywanie wersji", + "groupByCategory": "Grupuj według kategorii", + "autoApkFilterByArch": "Spróbuj filtrować pliki APK według architektury procesora, jeśli to możliwe", + "autoLinkFilterByArch": "Spróbuj filtrować linki według architektury procesora, jeśli to możliwe.", + "overrideSource": "Nadpisz źródło", + "dontShowAgain": "Nie pokazuj tego ponownie", + "dontShowTrackOnlyWarnings": "Nie pokazuj ostrzeżeń \"Tylko obserwowana\"", + "dontShowAPKOriginWarnings": "Nie pokazuj ostrzeżeń o pochodzeniu APK", + "moveNonInstalledAppsToBottom": "Przenieś niezainstalowane aplikacje na dół widoku aplikacji", + "gitlabPATLabel": "Osobisty token dostępu GitLab", + "about": "Więcej informacji", + "requiresCredentialsInSettings": "{}: Wymaga to dodatkowych poświadczeń (w Ustawieniach)", + "checkOnStart": "Sprawdź aktualizacje przy uruchomieniu", + "tryInferAppIdFromCode": "Spróbuj wywnioskować identyfikator aplikacji z kodu źródłowego", + "removeOnExternalUninstall": "Automatyczne usuń odinstalowane zewnętrznie aplikacje", + "pickHighestVersionCode": "Automatycznie wybierz najwyższy kod wersji APK", + "checkUpdateOnDetailPage": "Sprawdzaj aktualizacje podczas otwierania strony szczegółów aplikacji", + "disablePageTransitions": "Wyłącz animacje przejścia między stronami", + "reversePageTransitions": "Odwróć animacje przejścia pomiędzy stronami", + "minStarCount": "Minimalna ilość gwiazdek", + "addInfoBelow": "Dodaj tę informację poniżej.", + "addInfoInSettings": "Dodaj tę informację w Ustawieniach.", + "githubSourceNote": "Limit żądań GitHub można ominąć za pomocą klucza API.", + "sortByLastLinkSegment": "Sortuj tylko według ostatniego segmentu łącza", + "filterReleaseNotesByRegEx": "Filtruj informacje o wersji według wyrażenia regularnego", + "customLinkFilterRegex": "Filtruj linki APK według wyrażenia regularnego (domyślnie \".apk$\")", + "appsPossiblyUpdated": "Aplikacje mogły zostać zaktualizowane", + "appsPossiblyUpdatedNotifDescription": "Powiadamia, gdy co najmniej jedna aktualizacja aplikacji została potencjalnie zastosowana w tle", + "xWasPossiblyUpdatedToY": "{} być może zaktualizowano do {}.", + "enableBackgroundUpdates": "Włącz aktualizacje w tle", + "backgroundUpdateReqsExplanation": "Aktualizacje w tle mogą nie być możliwe dla wszystkich aplikacji.", + "backgroundUpdateLimitsExplanation": "Powodzenie instalacji w tle można określić dopiero po otwarciu Obtainium.", + "verifyLatestTag": "Zweryfikuj najnowszy tag", + "intermediateLinkRegex": "Filtr linków \"pośrednich\" do odwiedzenia w pierwszej kolejności", + "filterByLinkText": "Filtruj linki według tekstu linku", + "matchLinksOutsideATags": "Dopasowywanie linków poza znacznikami ", + "intermediateLinkNotFound": "Nie znaleziono linku pośredniego", + "intermediateLink": "Link pośredni", + "exemptFromBackgroundUpdates": "Wyklucz z uaktualnień w tle (jeśli są włączone)", + "bgUpdatesOnWiFiOnly": "Wyłącz aktualizacje w tle, gdy nie ma połączenia z Wi-Fi", + "bgUpdatesWhileChargingOnly": "Wyłącz aktualizacje w tle, gdy urządzenie nie jest ładowane", + "autoSelectHighestVersionCode": "Automatycznie wybierz najwyższy kod wersji APK", + "versionExtractionRegEx": "Wyrażenie regularne wyodrębniające wersję", + "trimVersionString": "Przytnij ciąg wersji za pomocą RegEx", + "matchGroupToUseForX": "Dopasuj grupę do użycia dla \"{}\"", + "matchGroupToUse": "Dopasuj grupę do użycia dla wyrażenia regularnego wyodrębniania wersji", + "highlightTouchTargets": "Wyróżnij mniej oczywiste elementy dotykowe", + "pickExportDir": "Wybierz katalog eksportu", + "autoExportOnChanges": "Automatyczny eksport po wprowadzeniu zmian", + "includeSettings": "Dołącz ustawienia", + "filterVersionsByRegEx": "Filtruj wersje według wyrażenia regularnego", + "trySelectingSuggestedVersionCode": "Spróbuj wybierać sugerowany kod wersji APK", + "dontSortReleasesList": "Utrzymaj kolejność wydań z interfejsu API", + "reverseSort": "Odwrotne sortowanie", + "takeFirstLink": "Wykorzystaj pierwszy link", + "skipSort": "Pomiń sortowanie", + "debugMenu": "Menu debugowania", + "bgTaskStarted": "Uruchomiono zadanie w tle - sprawdź logi.", + "runBgCheckNow": "Wymuś sprawdzenie aktualizacji w tle", + "versionExtractWholePage": "Zastosuj wyrażenie regularne wyodrębniania wersji dla całej strony", + "installing": "Instalacja", + "skipUpdateNotifications": "Pomiń powiadomienia o aktualizacjach", + "updatesAvailableNotifChannel": "Dostępne aktualizacje aplikacji", + "appsUpdatedNotifChannel": "Zaktualizowane aplikacje", + "appsPossiblyUpdatedNotifChannel": "Informuj o próbach aktualizacji", + "errorCheckingUpdatesNotifChannel": "Błędy sprawdzania aktualizacji", + "appsRemovedNotifChannel": "Usunięte aplikacje", + "downloadingXNotifChannel": "Pobieranie {}", + "completeAppInstallationNotifChannel": "Ukończenie instalacji aplikacji", + "checkingForUpdatesNotifChannel": "Sprawdzanie dostępności aktualizacji", + "onlyCheckInstalledOrTrackOnlyApps": "Sprawdzaj tylko zainstalowane i obserwowane aplikacje pod kątem aktualizacji", + "supportFixedAPKURL": "Obsługuj stałe adresy URL APK", + "selectX": "Wybierz {}", + "parallelDownloads": "Zezwalaj na równoległe pobierania", + "useShizuku": "Użyj Shizuku lub Sui, aby zainstalować", + "shizukuBinderNotFound": "Usługa Shizuku nie działa", + "shizukuOld": "Stara wersja Shizuku (<11) - zaktualizuj ją", + "shizukuOldAndroidWithADB": "Shizuku przez ADB działa na Androidzie 8.1+. Zaktualizuj Androida lub użyj zamiast tego Sui", + "shizukuPretendToBeGooglePlay": "Ustaw Google Play jako źródło instalacji (jeśli używana jest aplikacja Shizuku)", + "useSystemFont": "Czcionka systemowa", + "useVersionCodeAsOSVersion": "Użyj versionCode aplikacji jako wersji wykrytej przez system operacyjny", + "requestHeader": "Nagłówek żądania", + "useLatestAssetDateAsReleaseDate": "Użyj najnowszego przesłanego zasobu jako daty wydania", + "defaultPseudoVersioningMethod": "Domyślna metoda pseudo-wersji", + "partialAPKHash": "Częściowy Hash pliku apk", + "APKLinkHash": "Link Hash pliku apk", + "directAPKLink": "Bezpośredni link do pliku apk", + "pseudoVersionInUse": "Pseudo-wersja jest w użyciu", + "installed": "Zainstalowano", + "latest": "Najnowsza", + "invertRegEx": "Odwróć wyrażenie regularne", + "note": "Uwaga", + "selfHostedNote": "Wybierz \"{}\", aby uzyskać dostęp do samodzielnie hostowanych lub niestandardowych instancji dowolnego źródła.", + "badDownload": "Nie można przeanalizować pliku apk (jest niekompatybilny lub częściowo pobrany)", + "beforeNewInstallsShareToAppVerifier": "Udostępnij nowe aplikacje za pomocą weryfikatora aplikacji (jeśli jest dostępny)", + "appVerifierInstructionToast": "Udostępnij do weryfikatora aplikacji, a następnie wróć tutaj.", + "wiki": "Pomoc/Wiki", + "crowdsourcedConfigsLabel": "Baza konfiguracji", + "crowdsourcedConfigsShort": "Baza konfiguracji", + "allowInsecure": "Zezwalaj na niezabezpieczone żądania HTTP", + "stayOneVersionBehind": "Pozostań jedną wersję w tyle za najnowszą", + "useFirstApkOfVersion": "Automatyczny wybór pierwszego z wielu plików APK", + "refreshBeforeDownload": "Odśwież szczegóły aplikacji przed pobraniem", + "tencentAppStore": "Tencent App Store", + "coolApk": "CoolApk", + "vivoAppStore": "vivo App Store (CN)", + "name": "Nazwa", + "smartname": "Nazwa (Smart)", + "sortMethod": "Metoda sortowania", + "welcome": "Witamy", + "documentationLinksNote": "Strona Obtainium GitHub, do której link znajduje się poniżej, zawiera linki do filmów, artykułów, dyskusji i innych zasobów, które pomogą ci zrozumieć, jak korzystać z aplikacji.", + "batteryOptimizationNote": "Należy pamiętać, że pobieranie w tle może działać bardziej niezawodnie po wyłączeniu optymalizacji baterii systemu operacyjnego dla Obtainium.", + "fileDeletionError": "Nie udało się usunąć pliku (spróbuj usunąć go ręcznie, a następnie spróbuj ponownie): \"{}\"", + "foregroundService": "Usługa nowej generacji Obtainium", + "foregroundServiceExplanation": "Używanie usługi pierwszoplanowej do sprawdzania aktualizacji (bardziej niezawodne, zużywa więcej energii)", + "fgServiceNotice": "To powiadomienie jest wymagane do sprawdzania aktualizacji w tle (można je ukryć w ustawieniach systemu operacyjnego).", + "excludeSecrets": "Wyklucz sekrety", + "GHReqPrefix": "Instancja \"sky22333/hubproxy\" dla żądań GitHub", + "includeZips": "Dołączanie plików ZIP", + "zippedApkFilterRegEx": "Filtrowanie plików APK wewnątrz ZIP", + "removeAppQuestion": { + "one": "Usunąć aplikację?", + "few": "Usunąć aplikacje?", + "many": "Usunąć aplikacje?", + "other": "Usunąć aplikacje?" + }, + "tooManyRequestsTryAgainInMinutes": { + "one": "Zbyt wiele żądań (ograniczona częstotliwość) - spróbuj ponownie za {} minutę", + "few": "Zbyt wiele żądań (ograniczona częstotliwość) - spróbuj ponownie za {} minuty", + "many": "Zbyt wiele żądań (ograniczona częstotliwość) - spróbuj ponownie za {} minut", + "other": "Zbyt wiele żądań (ograniczona częstotliwość) - spróbuj ponownie za {} minuty" + }, + "bgUpdateGotErrorRetryInMinutes": { + "one": "Sprawdzanie aktualizacji w tle napotkało {}, zaplanuje ponowne sprawdzenie za {} minutę", + "few": "Sprawdzanie aktualizacji w tle napotkało {}, zaplanuje ponowne sprawdzenie za {} minuty", + "many": "Sprawdzanie aktualizacji w tle napotkało {}, zaplanuje ponowne sprawdzenie za {} minut", + "other": "Sprawdzanie aktualizacji w tle napotkało {}, zaplanuje ponowne sprawdzenie za {} minuty" + }, + "bgCheckFoundUpdatesWillNotifyIfNeeded": { + "one": "W tle znaleziono {} aktualizację - w razie potrzeby użytkownik zostanie o tym powiadomiony", + "few": "W tle znaleziono {} aktualizacje - w razie potrzeby użytkownik zostanie o tym powiadomiony", + "many": "W tle znaleziono {} aktualizacji - w razie potrzeby użytkownik zostanie o tym powiadomiony", + "other": "W tle znaleziono {} aktualizacje - w razie potrzeby użytkownik zostanie o tym powiadomiony" + }, + "apps": { + "one": "{} apkę", + "few": "{} apki", + "many": "{} apek", + "other": "{} apki" + }, + "url": { + "one": "{} adres URL", + "few": "{} adresy URL", + "many": "{} adresów URL", + "other": "{} adresy URL" + }, + "minute": { + "one": "{} minuta", + "few": "{} minuty", + "many": "{} minut", + "other": "{} minuty" + }, + "hour": { + "one": "{} godzina", + "few": "{} godziny", + "many": "{} godzin", + "other": "{} godziny" + }, + "day": { + "one": "{} dzień", + "few": "{} dni", + "many": "{} dni", + "other": "{} dni" + }, + "clearedNLogsBeforeXAfterY": { + "one": "Wyczyszczono {n} log (przed = {before}, po = {after})", + "few": "Wyczyszczono {n} logi (przed = {before}, po = {after})", + "many": "Wyczyszczono {n} logów (przed = {before}, po = {after})", + "other": "Wyczyszczono {n} logi (przed = {before}, po = {after})" + }, + "xAndNMoreUpdatesAvailable": { + "one": "{} i 1 inna apka mają aktualizacje.", + "few": "{} i {} inne apki mają aktualizacje.", + "many": "{} i {} innych apek ma aktualizacje.", + "other": "{} i {} inne apki mają aktualizacje." + }, + "xAndNMoreUpdatesInstalled": { + "one": "Zaktualizowano {} i 1 inną apkę.", + "few": "{} i {} inne apki zostały zaktualizowane.", + "many": "{} i {} innych apek zostało zaktualizowanych.", + "other": "{} i {} inne apki zostały zaktualizowane." + }, + "xAndNMoreUpdatesFailed": { + "one": "Błąd aktualizacji {} i 1 innej apki.", + "few": "Błąd aktualizacji {} i {} innych apek.", + "many": "Błąd aktualizacji {} i {} innych apek.", + "other": "Błąd aktualizacji {} i {} innych apek." + }, + "xAndNMoreUpdatesPossiblyInstalled": { + "one": "{} i 1 inna apka mogły zostać zaktualizowane.", + "few": "{} i {} inne apki mogły zostać zaktualizowane.", + "many": "{} i {} innych apek mogło zostać zaktualizowanych.", + "other": "{} i {} inne apki mogły zostać zaktualizowane." + }, + "apk": { + "one": "{} apk", + "few": "{} apki", + "many": "{} apek", + "other": "{} apki" + } +} diff --git a/assets/translations/pt-BR.json b/assets/translations/pt-BR.json new file mode 100644 index 0000000..73abdd3 --- /dev/null +++ b/assets/translations/pt-BR.json @@ -0,0 +1,402 @@ +{ + "invalidURLForSource": "Não é uma URL de app válida de {}", + "noReleaseFound": "Não foi possível encontrar um lançamento adequado", + "noVersionFound": "Não foi possível determinar a versão do lançamento", + "urlMatchesNoSource": "A URL não corresponde com nenhuma fonte conhecida", + "cantInstallOlderVersion": "Não é possível instalar uma versão mais antiga de um app", + "appIdMismatch": "O ID do pacote baixado não corresponde ao existente", + "functionNotImplemented": "Essa classe não implementou esse recurso ainda", + "placeholder": "Espaço reservado", + "someErrors": "Ocorreram alguns erros", + "unexpectedError": "Erro inesperado", + "ok": "Ok", + "and": "e", + "githubPATLabel": "Token de acesso pessoal do GitHub (aumenta o limite de taxa)", + "includePrereleases": "Incluir pré-lançamentos", + "fallbackToOlderReleases": "Recorrer à lançamentos mais antigos", + "filterReleaseTitlesByRegEx": "Filtrar títulos de lançamentos por expressão regular", + "invalidRegEx": "Expressão regular inválida", + "noDescription": "Sem descrição", + "cancel": "Cancelar", + "continue": "Continuar", + "requiredInBrackets": "(obrigatório)", + "dropdownNoOptsError": "ERRO: O MENU DEVE TER PELO MENOS UMA OPÇÃO", + "colour": "Cor", + "standard": "Padrão", + "custom": "Personalizado", + "useMaterialYou": "Usar Material You", + "githubStarredRepos": "Repositórios com estrela do GitHub", + "uname": "Nome de usuário", + "wrongArgNum": "Número errado de argumentos fornecidos", + "xIsTrackOnly": "{} é somente de rastreio", + "source": "Fonte", + "app": "Aplicativo", + "appsFromSourceAreTrackOnly": "Apps desta fonte são somente para rastreamento.", + "youPickedTrackOnly": "Você selecionou a opção de somente rastreamento.", + "trackOnlyAppDescription": "As atualizações do app serão rastreadas, mas o Obtainium não baixará ou instalará elas.", + "cancelled": "Cancelado", + "appAlreadyAdded": "O app já foi adicionado", + "alreadyUpToDateQuestion": "O app já está atualizado?", + "addApp": "Adicionar app", + "appSourceURL": "URL da fonte do app", + "error": "Erro", + "add": "Adicionar", + "searchSomeSourcesLabel": "Pesquisar (somente algumas fontes)", + "search": "Pesquisar", + "additionalOptsFor": "Opções adicionais de {}", + "supportedSources": "Fontes suportadas", + "trackOnlyInBrackets": "(somente rastreamento)", + "searchableInBrackets": "(pesquisável)", + "appsString": "Aplicativos", + "noApps": "Nenhum app", + "noAppsForFilter": "Nenhum app pro filtro", + "byX": "Por {}", + "percentProgress": "Progresso: {}%", + "pleaseWait": "Por favor aguarde", + "updateAvailable": "Atualização disponível", + "notInstalled": "Não instalado", + "pseudoVersion": "pseudo-versão", + "selectAll": "Selecionar tudo", + "deselectX": "Desselecionar {}", + "xWillBeRemovedButRemainInstalled": "{} será removido do Obtainium mas continuará instalado no dispositivo.", + "removeSelectedAppsQuestion": "Remover os apps selecionados?", + "removeSelectedApps": "Remover apps selecionados", + "updateX": "Atualizar {}", + "installX": "Instalar {}", + "markXTrackOnlyAsUpdated": "Marcar {}\n(somente rastreamento)\ncomo atualizado", + "changeX": "Alterar {}", + "installUpdateApps": "Instalar/atualizar apps", + "installUpdateSelectedApps": "Instalar/atualizar apps selecionados", + "markXSelectedAppsAsUpdated": "Marcar os {} apps selecionados como atualizados?", + "no": "Não", + "yes": "Sim", + "markSelectedAppsUpdated": "Marcar apps selecionados como atualizados", + "pinToTop": "Fixar ao topo", + "unpinFromTop": "Desfixar do topo", + "resetInstallStatusForSelectedAppsQuestion": "Redefinir o estado de instalação dos apps selecionados?", + "installStatusOfXWillBeResetExplanation": "Os estados de instalação dos apps selecionados serão redefinidos.\n\nIsso pode ajudar quando a versão exibida no Obtainium está incorreta devido a atualizações malsucedidas ou outros problemas.", + "customLinkMessage": "Esses links funcionarão em dispositivos com o Obtainium instalado", + "shareAppConfigLinks": "Compartilhar configuração do app como um link HTML", + "shareSelectedAppURLs": "Compartilhar as URLs dos apps selecionados", + "resetInstallStatus": "Redefinir estado de instalação", + "more": "Mais", + "removeOutdatedFilter": "Remover filtro de apps desatualizados", + "showOutdatedOnly": "Mostrar somente apps desatualizados", + "filter": "Filtro", + "filterApps": "Filtrar apps", + "appName": "Nome do app", + "author": "Autor", + "upToDateApps": "Apps atualizados", + "nonInstalledApps": "Apps não instalados", + "importExport": "Importar/Exportar", + "settings": "Configurações", + "exportedTo": "Exportado para {}", + "obtainiumExport": "Exportação do Obtainium", + "invalidInput": "Entrada inválida", + "importedX": "{} importado(s)", + "obtainiumImport": "Importação do Obtainium", + "importFromURLList": "Importar da lista de URLs", + "searchQuery": "Consulta de pesquisa", + "appURLList": "Lista de URLs dos apps", + "line": "Linha", + "searchX": "Pesquisar {}", + "noResults": "Nenhum resultado encontrado", + "importX": "Importar {}", + "importedAppsIdDisclaimer": "Os apps importados podem ser exibidos incorretamente como se não estivessem instalados.\nPara resolver isso, reinstale eles pelo Obtainium.\nIsso não afetará os dados dos apps.\n\nIsso somente afeta a URL e os métodos de importação de terceiros.", + "importErrors": "Erros de importação", + "importedXOfYApps": "{} de {} foram importados.", + "followingURLsHadErrors": "As seguintes URLs tiveram erros:", + "selectURL": "Selecionar URL", + "selectURLs": "Selecionar URLs", + "pick": "Escolher", + "theme": "Tema", + "dark": "Escuro", + "light": "Claro", + "followSystem": "Seguir o sistema", + "followSystemThemeExplanation": "Só é possível seguir o tema do sistema ao usar aplicativos de terceiros", + "useBlackTheme": "Usar o tema escuro de preto profundo", + "appSortBy": "Ordenar apps por", + "authorName": "Autor/nome", + "nameAuthor": "Nome/autor", + "asAdded": "Como adicionados", + "appSortOrder": "Ordem dos apps", + "ascending": "Crescente", + "descending": "Decrescente", + "bgUpdateCheckInterval": "Intervalo de busca por atualizações em segundo plano", + "neverManualOnly": "Nunca - somente manualmente", + "appearance": "Aparência", + "showWebInAppView": "Mostrar a fonte da pagina web na tela de apps", + "pinUpdates": "Fixar atualizações no topo da tela de apps", + "updates": "Atualizações", + "sourceSpecific": "Específico à fonte", + "appSource": "Fonte do app", + "noLogs": "Nenhum registro", + "appLogs": "Registros do app", + "close": "Fechar", + "share": "Compartilhar", + "appNotFound": "O app não foi encontrado", + "obtainiumExportHyphenatedLowercase": "obtainium-export", + "pickAnAPK": "Selecione um APK", + "appHasMoreThanOnePackage": "{} tem mais de um pacote:", + "deviceSupportsXArch": "Seu dispositivo suporta a arquitetura de CPU {}.", + "deviceSupportsFollowingArchs": "Seu dispositivo suporta as seguintes arquiteturas de CPU:", + "warning": "Alerta", + "sourceIsXButPackageFromYPrompt": "A fonte do app é '{}' mas o pacote de lançamento vem de '{}'. Continuar mesmo assim?", + "updatesAvailable": "Atualizações disponíveis", + "updatesAvailableNotifDescription": "Notifica o usuário que atualizações estão disponíveis para um ou mais apps rastreados pelo Obtainium", + "noNewUpdates": "Nenhuma atualização disponível.", + "xHasAnUpdate": "{} tem uma atualização.", + "appsUpdated": "Apps atualizados", + "appsNotUpdated": "Falhou ao atualizar os aplicativos", + "appsUpdatedNotifDescription": "Notifica o usuário que atualizações de um ou mais apps foram aplicadas em segundo plano", + "xWasUpdatedToY": "{} foi atualizado para a versão {}.", + "xWasNotUpdatedToY": "Falha ao atualizar {} para a versão {}.", + "errorCheckingUpdates": "Ocorreu um erro ao buscar atualizações", + "errorCheckingUpdatesNotifDescription": "Uma notificação que mostra quando a busca de atualizações em segundo plano falha", + "appsRemoved": "Apps removidos", + "appsRemovedNotifDescription": "Notifica o usuário que um ou mais apps foram removidos devido a erros ao carregá-los", + "xWasRemovedDueToErrorY": "{} for removido devido ao erro: {}", + "completeAppInstallation": "Concluir instalação do app", + "obtainiumMustBeOpenToInstallApps": "O Obtainium precisa estar aberto para instalar apps", + "completeAppInstallationNotifDescription": "Pede pro usuário voltar ao Obtainium para concluir a instalação de um app", + "checkingForUpdates": "Buscando atualizações", + "checkingForUpdatesNotifDescription": "Notificação transitória que aparece ao buscar atualizações", + "pleaseAllowInstallPerm": "Permita que o Obtainium instale apps", + "trackOnly": "Somente rastreamento", + "errorWithHttpStatusCode": "Erro {}", + "versionCorrectionDisabled": "Correção de versão desativada (o plugin parece não funcionar)", + "unknown": "Desconhecido", + "none": "Nenhum", + "all": "Todos", + "never": "Nunca", + "latestVersionX": "Mais recente: {}", + "installedVersionX": "Instalado: {}", + "lastUpdateCheckX": "Última busca por atualizações: {}", + "remove": "Remover", + "yesMarkUpdated": "Sim, marcar como atualizado", + "fdroid": "Oficial do F-Droid", + "appIdOrName": "ID do app ou nome", + "appId": "ID do app", + "appWithIdOrNameNotFound": "Nenhum app foi encontrado com aquele ID ou nome", + "reposHaveMultipleApps": "Repositórios podem conter vários apps", + "fdroidThirdPartyRepo": "Repositório de terceiros do F-Droid", + "install": "Instalar", + "markInstalled": "Marcar como instalado", + "update": "Atualizar", + "markUpdated": "Marcar como atualizado", + "additionalOptions": "Opções adicionais", + "disableVersionDetection": "Desativar detecção de versão", + "noVersionDetectionExplanation": "Essa opção só seve ser usada para apps aonde a detecção de versão não funciona corretamente.", + "downloadingX": "Baixando {}", + "downloadX": "Baixar {}", + "downloadedX": "{} foi baixado", + "releaseAsset": "Item de lançamento", + "downloadNotifDescription": "Notifica o usuário do progresso ao baixar um app", + "noAPKFound": "Nenhum APK encontrado", + "noVersionDetection": "Sem detecção de versão", + "categorize": "Categorizar", + "categories": "Categorias", + "category": "Categoria", + "noCategory": "Nenhuma categoria", + "noCategories": "Nenhuma categoria", + "deleteCategoriesQuestion": "Excluir categorias?", + "categoryDeleteWarning": "Todos os apps em categorias excluídas ficarão sem categoria.", + "addCategory": "Adicionar categoria", + "label": "Rótulo", + "language": "Idioma", + "copiedToClipboard": "Copiado para a área de transferência", + "storagePermissionDenied": "Permissão de armazenamento negada", + "selectedCategorizeWarning": "Isso substituirá a configuração de categoria existente dos apps selecionados.", + "filterAPKsByRegEx": "Filtrar APKs por expressão regular", + "removeFromObtainium": "Remover do Obtainium", + "uninstallFromDevice": "Desinstalar do dispositivo", + "onlyWorksWithNonVersionDetectApps": "Funciona somente em apps com a detecção de versão desativada.", + "releaseDateAsVersion": "Usar data de lançamento como número da versão", + "releaseTitleAsVersion": "Usar título do lançamento como número da versão", + "releaseDateAsVersionExplanation": "Essa opção só deve ser usada para apps quais a detecção de versão não funciona corretamente, mas uma data de lançamento está disponível.", + "changes": "Alterações", + "releaseDate": "Data de lançamento", + "importFromURLsInFile": "Importar das URLs em arquivo (como OPML)", + "versionDetectionExplanation": "Combinar o número da versão com a versão detectada pelo sistema", + "versionDetection": "Detecção de versão", + "standardVersionDetection": "Detecção de versão padrão", + "groupByCategory": "Agrupar por categoria", + "autoApkFilterByArch": "Tentar filtrar APKs pela arquitetura da CPU quando possível", + "autoLinkFilterByArch": "Tentar filtrar links pela arquitetura da CPU quando possível", + "overrideSource": "Sobrescrever fonte", + "dontShowAgain": "Não mostrar isso novamente", + "dontShowTrackOnlyWarnings": "Não mostrar alertas de \"somente rastreamento\"", + "dontShowAPKOriginWarnings": "Não mostrar alertas de origem dos APKs", + "moveNonInstalledAppsToBottom": "Mover apps não instalados ao final da tela de apps", + "gitlabPATLabel": "Token de acesso pessoal do GitLab", + "about": "Sobre", + "requiresCredentialsInSettings": "{} precisa de credenciais adicionais (nas Configurações)", + "checkOnStart": "Buscar atualizações ao abrir o app", + "tryInferAppIdFromCode": "Tentar inferir o ID do app pelo código fonte", + "removeOnExternalUninstall": "Remover automaticamente apps desinstalados externamente", + "pickHighestVersionCode": "Selecionar APK de versão mais alta automaticamente", + "checkUpdateOnDetailPage": "Buscar atualizações ao abrir a tela de detalhes de um app", + "disablePageTransitions": "Desativar animações de transição de tela", + "reversePageTransitions": "Inverter animações de transição de tela", + "minStarCount": "Número de estrelas mínimo", + "addInfoBelow": "Adicione essa informação abaixo.", + "addInfoInSettings": "Adicione essa informação nas Configurações.", + "githubSourceNote": "O limite de taxa do GitHub pode ser evitado ao usar uma chave de API.", + "sortByLastLinkSegment": "Ordenar somente pelo ultimo segmento do link", + "filterReleaseNotesByRegEx": "Filtrar notas de lançamento por expressão regular", + "customLinkFilterRegex": "Filtro de link de APK personalizado por expressão regular (padrão '.apk$')", + "appsPossiblyUpdated": "Tentativas de atualização de apps", + "appsPossiblyUpdatedNotifDescription": "Notifica o usuário que atualizações de um ou mais apps podem ter sido aplicadas em segundo plano", + "xWasPossiblyUpdatedToY": "{} pode ter sido atualizado para a versão {}.", + "enableBackgroundUpdates": "Ativar atualizações em segundo plano", + "backgroundUpdateReqsExplanation": "Atualizações em segundo plano podem não funcionar com todos os apps.", + "backgroundUpdateLimitsExplanation": "O sucesso de uma instalação em segundo plano só pode ser determinada ao abrir o Obtainium.", + "verifyLatestTag": "Verificar a tag 'mais recente'", + "intermediateLinkRegex": "Filtrar por um link 'intermediário' para visitar", + "filterByLinkText": "Filtrar links por texto do link", + "matchLinksOutsideATags": "Corresponder links fora das tags ", + "intermediateLinkNotFound": "Link intermediário não encontrado", + "intermediateLink": "Link intermediário", + "exemptFromBackgroundUpdates": "Isento de atualizações em segundo plano (caso ativadas)", + "bgUpdatesOnWiFiOnly": "Desativar atualizações em segundo plano fora do Wi-Fi", + "bgUpdatesWhileChargingOnly": "Desativar atualizações em segundo plano fora do carregador", + "autoSelectHighestVersionCode": "Selecionar automaticamente APK com o código de versão mais alto", + "versionExtractionRegEx": "ExReg de extração do número da versão", + "trimVersionString": "Cortar número da versal com ExReg", + "matchGroupToUseForX": "Corresponder grupo para o uso em \"{}\"", + "matchGroupToUse": "Corresponder grupo para o uso para a extração do número da versão por ExReg", + "highlightTouchTargets": "Acentuar alvos de toque menos óbvios", + "pickExportDir": "Selecionar pasta de exportação", + "autoExportOnChanges": "Exportar automaticamente ao ocorrer alterações", + "includeSettings": "Incluir configurações", + "filterVersionsByRegEx": "Filtrar versões por expressão regular", + "trySelectingSuggestedVersionCode": "Tente selecionar o APK com o código de versão sugerido", + "dontSortReleasesList": "Manter ordem de lançamento da API", + "reverseSort": "Ordem inversa", + "takeFirstLink": "Usar o primeiro link", + "skipSort": "Pular ordenação", + "debugMenu": "Menu de depuração", + "bgTaskStarted": "Tarefa em segundo plano iniada - verifique os registros.", + "runBgCheckNow": "Executar busca por atualizações em segundo plano agora", + "versionExtractWholePage": "Aplicar ExReg de extração de número de versão à página inteira", + "installing": "Instalando", + "skipUpdateNotifications": "Pular notificações de atualização", + "updatesAvailableNotifChannel": "Atualizações disponíveis", + "appsUpdatedNotifChannel": "Apps atualizados", + "appsPossiblyUpdatedNotifChannel": "Tentativas de atualização de apps", + "errorCheckingUpdatesNotifChannel": "Erro ao buscar atualizações", + "appsRemovedNotifChannel": "Apps removidos", + "downloadingXNotifChannel": "Baixando {}", + "completeAppInstallationNotifChannel": "Concluir instalação do app", + "checkingForUpdatesNotifChannel": "Buscando atualizações", + "onlyCheckInstalledOrTrackOnlyApps": "Buscar atualizações somente para apps instalados e de somente rastreamento", + "supportFixedAPKURL": "Suportar URLs de APK fixas", + "selectX": "Selecionar {}", + "parallelDownloads": "Permitir downloads em paralelo", + "useShizuku": "Usar Shizuku ou Sui para instalação", + "shizukuBinderNotFound": "Serviço Shizuku não está em execução", + "shizukuOld": "Versão do Shizuku antiga (<11) - atualize", + "shizukuOldAndroidWithADB": "Shizuku sendo executado no Android < 8.1 com ADB - atualize o Android ou use o Sui", + "shizukuPretendToBeGooglePlay": "Definir Google Play como a fonte de instalação (se o Shizuku é usado)", + "useSystemFont": "Usar a fonte do sistema", + "useVersionCodeAsOSVersion": "Usar código de versão do app como a versão detectada pelo sistema", + "requestHeader": "Cabeçalho da solicitação", + "useLatestAssetDateAsReleaseDate": "Usar o envio de item mais recente como a data de lançamento", + "defaultPseudoVersioningMethod": "Método de pseudo-versão padrão", + "partialAPKHash": "Hash do APK parcial", + "APKLinkHash": "Hash do link do APK", + "directAPKLink": "Link direto ao APK", + "pseudoVersionInUse": "Uma pseudo-versão está em uso", + "installed": "Instalado", + "latest": "Mais recente", + "invertRegEx": "Inverter expressão regular", + "note": "Observação", + "selfHostedNote": "O menu de opções \"{}\" pode ser usado para alcançar instâncias hospedadas-por-você/personalizadas de qualquer fonte.", + "badDownload": "O APK não pode ser interpretado (incompatível ou baixado parcialmente)", + "beforeNewInstallsShareToAppVerifier": "Compartilhar apps novos com o AppVerifier (se disponível)", + "appVerifierInstructionToast": "Compartilhe com o AppVerifier, e volte aqui ao estar pronto.", + "wiki": "Ajuda/Wiki", + "crowdsourcedConfigsLabel": "Configurações de app pela comunidade (use ao seu próprio risco)", + "crowdsourcedConfigsShort": "Configurações de app da comunidade", + "allowInsecure": "Permitir solicitações de HTTP inseguras", + "stayOneVersionBehind": "Ficar uma versão antes da mais recente", + "useFirstApkOfVersion": "Seleção automática do primeiro de vários APKs", + "refreshBeforeDownload": "Atualizar detalhes do app antes de baixar", + "tencentAppStore": "Loja de Apps da Tencent", + "coolApk": "CoolApk", + "vivoAppStore": "Vivo App Store (CN)", + "name": "Nome", + "smartname": "Nome (inteligente)", + "sortMethod": "Método de ordenação", + "welcome": "Boas vindas", + "documentationLinksNote": "A página do Obtainium no GitHub visível abaixo contém links de vídeos, artigos, discussões, e outros recursos que podem te ajudar ao usar o app.", + "batteryOptimizationNote": "Observe que os downloads em segundo plano podem funcionar de forma mais confiável se você desativar as otimizações de bateria do sistema operacional para o Obtainium.", + "fileDeletionError": "Falha ao excluir o arquivo (tente excluí-lo manualmente e tente novamente): \"{}\"", + "foregroundService": "Serviço de primeiro plano do Obtainium", + "foregroundServiceExplanation": "Usar um serviço em primeiro plano para verificação de atualizações (mais confiável, consome mais energia)", + "fgServiceNotice": "Essa notificação é necessária para a verificação de atualizações em segundo plano (ela pode ser ocultada nas configurações do sistema operacional)", + "excludeSecrets": "Excluir segredos", + "GHReqPrefix": "Instância \"sky22333/hubproxy\" para solicitações do GitHub", + "includeZips": "Incluir arquivos ZIP", + "zippedApkFilterRegEx": "Filtrar APKs dentro do ZIP", + "removeAppQuestion": { + "one": "Remover app?", + "other": "Remover apps?" + }, + "tooManyRequestsTryAgainInMinutes": { + "one": "Muitas solicitações (limitado) - tente novamente em {} minuto", + "other": "Muitas solicitações (limitado) - tente novamente em {} minutos" + }, + "bgUpdateGotErrorRetryInMinutes": { + "one": "A busca de atualizações em segundo plano encontrou um {}, será agendado uma nova tentativa em {} minuto", + "other": "A busca de atualizações em segundo plano encontrou um {}, será agendado uma nova tentativa em {} minutos" + }, + "bgCheckFoundUpdatesWillNotifyIfNeeded": { + "one": "Verificação da atualização do BG encontrada {} atualização - notificará o usuário se necessário", + "other": "Verificação de atualização do BG encontrou atualizações {} - notificará o usuário se necessário" + }, + "apps": { + "one": "{} app", + "other": "{} apps" + }, + "url": { + "one": "{} URL", + "other": "{} URLs" + }, + "minute": { + "one": "{} minuto", + "other": "{} minutos" + }, + "hour": { + "one": "{} hora", + "other": "{} horas" + }, + "day": { + "one": "{} dia", + "other": "{} dias" + }, + "clearedNLogsBeforeXAfterY": { + "one": "Limpou {n} registros (before = {before}, after = {after})", + "other": "Limpou {n} registros (antes = {before}, depois = {after})" + }, + "xAndNMoreUpdatesAvailable": { + "one": "{} e mais 1 app têm atualizações.", + "other": "{} e mais {} apps têm atualizações." + }, + "xAndNMoreUpdatesInstalled": { + "one": "{} e mais 1 app foram atualizados.", + "other": "{} e mais {} apps foram atualizados." + }, + "xAndNMoreUpdatesFailed": { + "one": "Falha ao atualizar {} e mais 1 app.", + "other": "Falha ao atualizar {} e mais {} apps." + }, + "xAndNMoreUpdatesPossiblyInstalled": { + "one": "{} e mais 1 app podem ter sido atualizados.", + "other": "{} e mais {} apps podem ter sido atualizados." + }, + "apk": { + "one": "{} APK", + "other": "{} APKs" + } +} diff --git a/assets/translations/pt.json b/assets/translations/pt.json new file mode 100644 index 0000000..3b3e0a9 --- /dev/null +++ b/assets/translations/pt.json @@ -0,0 +1,402 @@ +{ + "invalidURLForSource": "URL {} inválida", + "noReleaseFound": "Não foi possível encontrar uma versão adequada", + "noVersionFound": "Não foi possível encontrar uma versão", + "urlMatchesNoSource": "A URL não corresponde a uma fonte conhecida", + "cantInstallOlderVersion": "Não é permitido instalar uma versão anterior de uma aplicação", + "appIdMismatch": "O ID do pacote descarregado não é igual ao ID da aplicação instalada", + "functionNotImplemented": "Esta classe não implementou essa função", + "placeholder": "Espaço reservado", + "someErrors": "Alguns erros ocorreram", + "unexpectedError": "Erro inesperado", + "ok": "OK", + "and": "e", + "githubPATLabel": "Token de acesso pessoal do GitHub\n(Reduz tempos de espera)", + "includePrereleases": "Incluir pré-lançamentos", + "fallbackToOlderReleases": "Retornar para versões anteriores", + "filterReleaseTitlesByRegEx": "Filtrar títulos de versões usando expressão regular", + "invalidRegEx": "Expressão regular inválida", + "noDescription": "Sem descrição", + "cancel": "Cancelar", + "continue": "Continuar", + "requiredInBrackets": "(Necessário)", + "dropdownNoOptsError": "ERRO: O DROPDOWN DEVE TER PELO MENOS UMA OPÇÃO", + "colour": "Cor", + "standard": "Padrão", + "custom": "Personalizado", + "useMaterialYou": "Utilizar o material que", + "githubStarredRepos": "repositórios favoritos no GitHub", + "uname": "Nome de usuário", + "wrongArgNum": "Número de argumentos errado", + "xIsTrackOnly": "{} é 'Apenas monitorar'", + "source": "Fonte", + "app": "Aplicação", + "appsFromSourceAreTrackOnly": "As aplicações desta fonte são 'Apenas monitorar'.", + "youPickedTrackOnly": "Você selecionou a opção 'Apenas monitorar'.", + "trackOnlyAppDescription": "As atualizações desta aplicação serão monitorizadas, mas o Obtainium não poderá descarregá-la ou instalá-la.", + "cancelled": "Cancelado", + "appAlreadyAdded": "Aplicação já adicionada", + "alreadyUpToDateQuestion": "Aplicação já foi atualizada?", + "addApp": "Adicionar aplicação", + "appSourceURL": "URL de origem da aplicação", + "error": "Erro", + "add": "Adicionar", + "searchSomeSourcesLabel": "Procurar (apenas algumas fontes)", + "search": "Procurar", + "additionalOptsFor": "Opções adicionais para {}", + "supportedSources": "Fontes compatíveis", + "trackOnlyInBrackets": "(apenas monitorar)", + "searchableInBrackets": "(pesquisável)", + "appsString": "Aplicações", + "noApps": "Não há aplicações", + "noAppsForFilter": "Sem aplicações para filtrar", + "byX": "Por {}", + "percentProgress": "Progresso: {}%", + "pleaseWait": "Por favor, espere", + "updateAvailable": "Atualização disponível", + "notInstalled": "Não instalado", + "pseudoVersion": "pseudo-versão", + "selectAll": "Selecionar todos", + "deselectX": "Deselecionar {}", + "xWillBeRemovedButRemainInstalled": "{} será removido do Obtainium mais permanecerá instalado no dispositivo.", + "removeSelectedAppsQuestion": "Remover aplicações selecionadas?", + "removeSelectedApps": "Remover aplicações selecionadas", + "updateX": "Atualizar {}", + "installX": "Instalar {}", + "markXTrackOnlyAsUpdated": "Marcar {}\n(Apenas monitorar)\ncomo Atualizado", + "changeX": "Mudar {}", + "installUpdateApps": "Instalar/Atualizar aplicações", + "installUpdateSelectedApps": "Instalar/Atualizar aplicações selecionadas", + "markXSelectedAppsAsUpdated": "Marcar {} aplicações selecionadas como atualizadas?", + "no": "Não", + "yes": "Sim", + "markSelectedAppsUpdated": "Marcar aplicações selecionadas como Atualizadas", + "pinToTop": "Fixar no topo", + "unpinFromTop": "Desafixar do topo", + "resetInstallStatusForSelectedAppsQuestion": "Reiniciar o estado de instalação das aplicações selecionadas?", + "installStatusOfXWillBeResetExplanation": "O estado de instalação de todas as aplicações selecionadas será reiniciado.\n\nIsto pode ajudar quando uma versão de uma aplicação mostrada no Obtainium está incorreta devido a falhas na atualização ou outros problemas.", + "customLinkMessage": "Esses links funcionam em dispositivos com o Obtainium instalado", + "shareAppConfigLinks": "Partilhar a configuração da aplicação como um link HTML", + "shareSelectedAppURLs": "Partilhar URLs de aplicações selecionadas", + "resetInstallStatus": "Reiniciar status de instalação", + "more": "Mais", + "removeOutdatedFilter": "Remover filtro de aplicações desatualizadas", + "showOutdatedOnly": "Mostrar apenas aplicações desatualizadas", + "filter": "Filtro", + "filterApps": "Filtrar aplicações", + "appName": "Nome da aplicação", + "author": "Autor", + "upToDateApps": "Aplicações atualizadas", + "nonInstalledApps": "Aplicações não instaladas", + "importExport": "Importar/Exportar", + "settings": "Configurações", + "exportedTo": "Exportado para {}", + "obtainiumExport": "Exportar dados do Obtainium", + "invalidInput": "Entrada inválida", + "importedX": "Importado {}", + "obtainiumImport": "Importar dados do Obtainium", + "importFromURLList": "Importar de lista de URLs", + "searchQuery": "Pesquisa", + "appURLList": "Lista de URLs de aplicações", + "line": "Linha", + "searchX": "Pesquisar na/o {}", + "noResults": "Nenhum resultado encontrado", + "importX": "Importar {}", + "importedAppsIdDisclaimer": "Aplicações Importadas podem ser mostradas incorretamente como \"Não Instalado\".\nPara corrigir, reinstale-as usando o Obtainium.\nIsto não deve afetar os dados da aplicação.\n\nAfeta apenas os métodos de importação de URL e de terceiros.", + "importErrors": "Erros de importação", + "importedXOfYApps": "{} de {} aplicações importadas.", + "followingURLsHadErrors": "As seguintes URLs apresentaram erros:", + "selectURL": "Selecionar URL", + "selectURLs": "Selecionar URLs", + "pick": "Escolher", + "theme": "Tema", + "dark": "Escuro", + "light": "Claro", + "followSystem": "Padrão do sistema", + "followSystemThemeExplanation": "O tema do sistema seguinte só é possível através da utilização de aplicações de terceiros", + "useBlackTheme": "Usar tema preto AMOLED", + "appSortBy": "Classificar aplicação por", + "authorName": "Autor/Nome", + "nameAuthor": "Nome/Autor", + "asAdded": "Como adicionado", + "appSortOrder": "Ordem de classificação das aplicações", + "ascending": "Ascendente", + "descending": "Descendente", + "bgUpdateCheckInterval": "Intervalo de verificação de atualizações em segundo-plano", + "neverManualOnly": "Nunca - apenas manual", + "appearance": "Aparência", + "showWebInAppView": "Mostrar a página web da aplicação nas informações da aplicação", + "pinUpdates": "Fixar atualizações no topo da janela das aplicações", + "updates": "Atualizações", + "sourceSpecific": "Token de acesso", + "appSource": "Fonte da aplicação", + "noLogs": "Sem logs", + "appLogs": "Logs da aplicação", + "close": "Fechar", + "share": "Compartilhar", + "appNotFound": "Aplicação não encontrada", + "obtainiumExportHyphenatedLowercase": "exportação de obtainium", + "pickAnAPK": "Selecionar um APK", + "appHasMoreThanOnePackage": "{} tem mais de um pacote:", + "deviceSupportsXArch": "Seu dispositivo suporta a arquitetura de CPU {}.", + "deviceSupportsFollowingArchs": "Seu dispositivo suporta as seguintes arquiteturas de CPU:", + "warning": "Aviso", + "sourceIsXButPackageFromYPrompt": "A fonte da aplicação é '{}' mas a origem do pacote é '{}'. Continuar?", + "updatesAvailable": "Atualizações disponíveis", + "updatesAvailableNotifDescription": "Notifica o utilizador quando as atualizações de uma ou mais aplicações monitorizadas pelo Obtainium estão disponíveis", + "noNewUpdates": "Sem novas atualizações.", + "xHasAnUpdate": "{} tem uma atualização.", + "appsUpdated": "Aplicações atualizadas", + "appsNotUpdated": "Falha na atualização das aplicações", + "appsUpdatedNotifDescription": "Notifica o utilizador quando as atualizações foram aplicadas em segundo plano para uma ou mais aplicações ", + "xWasUpdatedToY": "{} foi atualizado para {}.", + "xWasNotUpdatedToY": "Falha ao atualizar {} para {}.", + "errorCheckingUpdates": "Erro ao procurar por atualizações", + "errorCheckingUpdatesNotifDescription": "Uma notificação que mostra quando a checagem por atualizações em segundo-plano falha", + "appsRemoved": "Aplicações removidas", + "appsRemovedNotifDescription": "Notifica o utilizador quando uma ou mais aplicações foram removidas devido a erros de carregamento", + "xWasRemovedDueToErrorY": "{} foi removido devido a este erro: {}", + "completeAppInstallation": "Instalação da aplicação concluída", + "obtainiumMustBeOpenToInstallApps": "O Obtainium deve estar aberto para instalar as aplicações", + "completeAppInstallationNotifDescription": "Pede ao usuário que retorne ao Obtainium para finalizar a instalação de uma aplicação", + "checkingForUpdates": "Verificando atualizações", + "checkingForUpdatesNotifDescription": "Notificação transiente que aparece quando o Obtainium está verificando se há atualizações", + "pleaseAllowInstallPerm": "Por favor, permita que o Obtainium instale aplicações", + "trackOnly": "Apenas monitorar", + "errorWithHttpStatusCode": "Erro {}", + "versionCorrectionDisabled": "Correção de versão desativada (plugin parece não funcionar)", + "unknown": "Desconhecido", + "none": "Nenhum", + "all": "Todos", + "never": "Nunca", + "latestVersionX": "Última versão: {}", + "installedVersionX": "Versão instalada: {}", + "lastUpdateCheckX": "Última verificação de atualizações: {}", + "remove": "Remover", + "yesMarkUpdated": "Sim, marcar como atualizado", + "fdroid": "Oficial F-Droid", + "appIdOrName": "ID da aplicação ou nome", + "appId": "ID da aplicação", + "appWithIdOrNameNotFound": "Nenhuma aplicação foi encontrada com esse ID ou nome", + "reposHaveMultipleApps": "Os repositórios podem conter múltiplas aplicações", + "fdroidThirdPartyRepo": "Repositórios de terceiros F-Droid", + "install": "Instalar", + "markInstalled": "Marcar instalado", + "update": "Atualizar", + "markUpdated": "Marcar como atualizado", + "additionalOptions": "Opções adicionais", + "disableVersionDetection": "Desativar detecção de versão", + "noVersionDetectionExplanation": "Esta opção deve ser usada apenas por aplicações onde a deteção de versão não funciona corretamente.", + "downloadingX": "Baixando {}", + "downloadX": "Descarregar {}", + "downloadedX": "Descarregado {}", + "releaseAsset": "Libertação de activos", + "downloadNotifDescription": "Notifica o utilizador sobre o progresso do download de uma aplicação", + "noAPKFound": "APK não encontrado", + "noVersionDetection": "Sem detecção de versão", + "categorize": "Categorizar", + "categories": "Categorias", + "category": "Categoria", + "noCategory": "Sem categoria", + "noCategories": "Sem categorias", + "deleteCategoriesQuestion": "Deletar categorias?", + "categoryDeleteWarning": "Todas as aplicações em categorias removidas serão descategorizadas.", + "addCategory": "Adicionar categoria", + "label": "Etiqueta", + "language": "Linguagem", + "copiedToClipboard": "Copiado para a área de transferência", + "storagePermissionDenied": "Permissão de armazenamento negada", + "selectedCategorizeWarning": "Isto irá substituir qualquer configuração de categoria para as aplicações selecionadas.", + "filterAPKsByRegEx": "Filtrar APKs usando expressão regular", + "removeFromObtainium": "Remover do Obtainium", + "uninstallFromDevice": "Desinstalar do dispositivo", + "onlyWorksWithNonVersionDetectApps": "Apenas funciona para aplicações com a deteção de versão desativada.", + "releaseDateAsVersion": "Usar data de lançamento como versão", + "releaseTitleAsVersion": "Utilizar o título da versão como cadeia de versões", + "releaseDateAsVersionExplanation": "Esta opção só deve ser usada para aplicações onde a deteção de versão não funciona corretamente, mas existe uma data de lançamento disponível.", + "changes": "Alterações", + "releaseDate": "Data de lançamento", + "importFromURLsInFile": "Importar de URLs em arquivo (formato OPML)", + "versionDetectionExplanation": "Reconciliar string de versão com versão detectada no sistema operacional", + "versionDetection": "Detecção de versão", + "standardVersionDetection": "Detecção de versão padrão", + "groupByCategory": "Agroupar por categoria", + "autoApkFilterByArch": "Tente filtrar APKs por arquitetura de CPU, se possível", + "autoLinkFilterByArch": "Tentativa de filtrar as ligações por arquitetura de CPU, se possível", + "overrideSource": "Substituir fonte", + "dontShowAgain": "Não mostrar isso novamente", + "dontShowTrackOnlyWarnings": "Não mostrar avisos 'Apenas monitorar'", + "dontShowAPKOriginWarnings": "Não mostrar avisos de origem da APK", + "moveNonInstalledAppsToBottom": "Mover aplicações não instaladas para o fundo da lista de aplicações", + "gitlabPATLabel": "Token de acesso pessoal do Gitlab", + "about": "Sobre", + "requiresCredentialsInSettings": "{}: Isso requer credenciais adicionais (em Configurações)", + "checkOnStart": "Verificar se há atualizações ao iniciar", + "tryInferAppIdFromCode": "Tentar inferir o ID da aplicação a partir do código-fonte", + "removeOnExternalUninstall": "Remover automaticamente aplicações desinstaladas externamente", + "pickHighestVersionCode": "Auto-selecionar o maior número de versão do APK", + "checkUpdateOnDetailPage": "Checar por atualizações ao abrir a página de detalhes de uma aplicação", + "disablePageTransitions": "Desativar animações de transição de página", + "reversePageTransitions": "Animações de transição de página invertidas", + "minStarCount": "Contagem mínima de estrelas", + "addInfoBelow": "Adicionar essa informação abaixo.", + "addInfoInSettings": "Adicionar essa informação nas configurações.", + "githubSourceNote": "A limitação de taxa do GitHub pode ser evitada usando uma chave de API.", + "sortByLastLinkSegment": "Ordenar apenas usando o último segmento do link", + "filterReleaseNotesByRegEx": "Filtrar notas de versão usando Regex", + "customLinkFilterRegex": "Filtro de link personalizado usando expressão regular (Padrão '.apk$')", + "appsPossiblyUpdated": "Aplicações possivelmente atualizadas", + "appsPossiblyUpdatedNotifDescription": "Notifica o utilizador de que as atualizações de uma ou mais aplicações foram potencialmente aplicadas em segundo plano", + "xWasPossiblyUpdatedToY": "{} pode ter sido atualizado para {}.", + "enableBackgroundUpdates": "Ativar atualizações em segundo-plano", + "backgroundUpdateReqsExplanation": "As atualizações em segundo plano podem não ser possíveis para todas as aplicações.", + "backgroundUpdateLimitsExplanation": "O sucesso de uma instalação em segundo-plano só pode ser determinado quando o Obtainium é aberto.", + "verifyLatestTag": "Verifique a 'última' etiqueta", + "intermediateLinkRegex": "Filtrar um link 'intermediário' para visitar", + "filterByLinkText": "Filtrar links pelo texto do link", + "matchLinksOutsideATags": "Corresponder ligações fora das etiquetas ", + "intermediateLinkNotFound": "Link intermediário não encontrado", + "intermediateLink": "Link intermediário", + "exemptFromBackgroundUpdates": "Isento de atualizações em segundo-plano (se ativadas)", + "bgUpdatesOnWiFiOnly": "Desative as atualizações em segundo-plano quando não estiver conectado no Wi-Fi", + "bgUpdatesWhileChargingOnly": "Desativar actualizações em segundo plano quando não estiver a carregar", + "autoSelectHighestVersionCode": "Auto-selecionar a versão mais recente", + "versionExtractionRegEx": "Regex de extração de versão", + "trimVersionString": "Cortar a cadeia de caracteres da versão com RegEx", + "matchGroupToUseForX": "Grupo de correspondência a utilizar para \"{}\"", + "matchGroupToUse": "Grupo correspondente a ser usado no Regex de extração de versão", + "highlightTouchTargets": "Realçar áreas sensíveis ao toque que são menos óbvias", + "pickExportDir": "Escolher diretório para exportação", + "autoExportOnChanges": "Auto-exportar em mudanças", + "includeSettings": "Incluir configurações", + "filterVersionsByRegEx": "Filtrar versões por expressão regular", + "trySelectingSuggestedVersionCode": "Tente selecionar a versão sugerida", + "dontSortReleasesList": "Reter a ordem de lançamento da API", + "reverseSort": "Ordenação reversa", + "takeFirstLink": "Obter primeiro link", + "skipSort": "Ignorar ordenação", + "debugMenu": "Menu debug", + "bgTaskStarted": "Tarefa em segundo-plano iniciada - verifique os logs.", + "runBgCheckNow": "Execute agora em segundo-plano a verificação de atualizações", + "versionExtractWholePage": "Aplicar regex de extração de versão à página inteira", + "installing": "Instalando", + "skipUpdateNotifications": "Pular notificações de update", + "updatesAvailableNotifChannel": "Atualizações disponíveis", + "appsUpdatedNotifChannel": "Aplicações atualizadas", + "appsPossiblyUpdatedNotifChannel": "Aplicações possivelmente atualizadas", + "errorCheckingUpdatesNotifChannel": "Erro ao procurar por atualizações", + "appsRemovedNotifChannel": "Aplicações removidas", + "downloadingXNotifChannel": "Baixando {}", + "completeAppInstallationNotifChannel": "Instalação da aplicação concluída", + "checkingForUpdatesNotifChannel": "Checando por atualizações", + "onlyCheckInstalledOrTrackOnlyApps": "Apenas verificar atualizações de aplicações instaladas e 'Apenas monitorizar'", + "supportFixedAPKURL": "Suporte a APK com URLs fixas", + "selectX": "Selecionar {}", + "parallelDownloads": "Permitir downloads paralelos", + "useShizuku": "Utilizar Shizuku ou Sui para instalar", + "shizukuBinderNotFound": "O Shizuku não está rodando", + "shizukuOld": "Versão antiga do Shizuku (<11) - atualizar", + "shizukuOldAndroidWithADB": "Shizuku a funcionar no Android < 8.1 com ADB - atualizar o Android ou utilizar o Sui", + "shizukuPretendToBeGooglePlay": "Definir o Google Play como fonte de instalação (se for utilizado o Shizuku)", + "useSystemFont": "Usar fonte padrão do sistema", + "useVersionCodeAsOSVersion": "Usar o versionCode da aplicação como a versão detetada pelo sistema operativo", + "requestHeader": "Requisitar cabeçalho", + "useLatestAssetDateAsReleaseDate": "Use o último upload de recursos como data de lançamento", + "defaultPseudoVersioningMethod": "Método de pseudo-versionamento padrão", + "partialAPKHash": "Hash APK parcial", + "APKLinkHash": "Hash de links APK", + "directAPKLink": "Link direto do APK", + "pseudoVersionInUse": "Uma pseudo-versão está em uso", + "installed": "Instalado", + "latest": "Mais recente", + "invertRegEx": "Inverter expressão regular", + "note": "Nota", + "selfHostedNote": "O menu suspenso \"{}\" pode ser usado para acessar instâncias auto-hospedadas/personalizadas de qualquer fonte.", + "badDownload": "Não foi possível analisar o APK (transferência incompatível ou parcial)", + "beforeNewInstallsShareToAppVerifier": "Partilhar novas aplicações com o AppVerifier (se disponível)", + "appVerifierInstructionToast": "Partilhe com o AppVerifier e, em seguida, regresse aqui quando estiver pronto.", + "wiki": "Ajuda/Wiki", + "crowdsourcedConfigsLabel": "Configurações de aplicações de crowdsourcing (utilização por sua conta e risco)", + "crowdsourcedConfigsShort": "Configurações de aplicações com base em crowdsourcing", + "allowInsecure": "Permitir pedidos HTTP inseguros", + "stayOneVersionBehind": "Manter-se uma versão atrás da mais recente", + "useFirstApkOfVersion": "Seleção automática do primeiro de vários APKs", + "refreshBeforeDownload": "Atualizar os detalhes da aplicação antes da transferência", + "tencentAppStore": "Tencent App Store", + "coolApk": "CoolApk", + "vivoAppStore": "vivo App Store (CN)", + "name": "Nome", + "smartname": "Nome (Smart)", + "sortMethod": "Método de ordenação", + "welcome": "Bem-vindo", + "documentationLinksNote": "A página do Obtainium no GitHub com a ligação abaixo contém ligações para vídeos, artigos, discussões e outros recursos que o ajudarão a compreender como utilizar a aplicação.", + "batteryOptimizationNote": "Note que os downloads em segundo plano podem funcionar de forma mais fiável se desativar as optimizações da bateria do SO para o Obtainium.", + "fileDeletionError": "Falha ao eliminar o ficheiro (tente eliminá-lo manualmente e depois tente novamente): \"{}\"", + "foregroundService": "Serviço de primeiro plano Obtainium", + "foregroundServiceExplanation": "Utilizar um serviço em primeiro plano para verificação de actualizações (mais fiável, consome mais energia)", + "fgServiceNotice": "Esta notificação é necessária para a verificação de actualizações em segundo plano (pode ser ocultada nas definições do SO)", + "excludeSecrets": "Excluir segredos", + "GHReqPrefix": "Instância 'sky22333/hubproxy' para pedidos de GitHub", + "includeZips": "Incluir ficheiros ZIP", + "zippedApkFilterRegEx": "Filtrar APKs dentro do ZIP", + "removeAppQuestion": { + "one": "Remover aplicação?", + "other": "Remover aplicações?" + }, + "tooManyRequestsTryAgainInMinutes": { + "one": "Muitos pedidos (taxa de pedidos limitada) - tente novamente em {} minuto", + "other": "Muitos pedidos (taxa limitada) - tente novamente em {} minutos" + }, + "bgUpdateGotErrorRetryInMinutes": { + "one": "A verificação de atualizações em segundo plano encontrou um {}, agendada uma nova verificação em {} minuto", + "other": "A verificação de atualizações em segundo plano encontrou um {}, agendada uma nova verificação em {} minutos" + }, + "bgCheckFoundUpdatesWillNotifyIfNeeded": { + "one": "A verificação de atualizações em segundo plano encontrou {} atualização, o utilizador será notificado caso necessário", + "other": "A verificação de atualizações em segundo plano encontrou {} atualizações, o utilizador será notificado caso necessário" + }, + "apps": { + "one": "{} Aplicação", + "other": "{} Aplicações" + }, + "url": { + "one": "{} URL", + "other": "{} URLs" + }, + "minute": { + "one": "{} minuto", + "other": "{} minutos" + }, + "hour": { + "one": "{} hora", + "other": "{} horas" + }, + "day": { + "one": "{} dia", + "other": "{} dias" + }, + "clearedNLogsBeforeXAfterY": { + "one": "Foi limpo {n} log (antes = {antes}, depois = {depois})", + "other": "Foram limpos {n} logs (antes = {antes}, depois = {depois})" + }, + "xAndNMoreUpdatesAvailable": { + "one": "{} e uma outra aplicação possui atualizações.", + "other": "{} e {} outras aplicações possuem atualizações." + }, + "xAndNMoreUpdatesInstalled": { + "one": "{} e uma outra aplicação foram atualizadas.", + "other": "{} e {} outras aplicações foram atualizadas." + }, + "xAndNMoreUpdatesFailed": { + "one": "Falha ao atualizar {} e mais 1 aplicação.", + "other": "Falha ao atualizar {} e {} outras aplicações." + }, + "xAndNMoreUpdatesPossiblyInstalled": { + "one": "{} e uma outra aplicação podem ter sido atualizadas.", + "other": "{} e {} outras aplicações podem ter sido atualizadas." + }, + "apk": { + "one": "{} APK", + "other": "{} APKs" + } +} diff --git a/assets/translations/ru.json b/assets/translations/ru.json new file mode 100644 index 0000000..8d3d579 --- /dev/null +++ b/assets/translations/ru.json @@ -0,0 +1,414 @@ +{ + "invalidURLForSource": "Неверный URL-адрес приложения: {}", + "noReleaseFound": "Не удалось найти подходящий выпуск", + "noVersionFound": "Не удалось определить версию выпуска", + "urlMatchesNoSource": "URL-адрес не соответствует известному источнику", + "cantInstallOlderVersion": "Невозможно установить более старую версию приложения", + "appIdMismatch": "ID загруженного пакета не совпадает с существующим ID приложения", + "functionNotImplemented": "Этот класс не реализовал эту функцию", + "placeholder": "Заполнитель", + "someErrors": "Возникли некоторые ошибки", + "unexpectedError": "Неожиданная ошибка", + "ok": "OK", + "and": "и", + "githubPATLabel": "Персональный токен доступа GitHub\n(увеличивает лимит запросов)", + "includePrereleases": "Включать предварительные выпуски", + "fallbackToOlderReleases": "Откатываться к предыдущей версии", + "filterReleaseTitlesByRegEx": "Фильтровать заголовки выпусков\n(регулярное выражение)", + "invalidRegEx": "Неверное регулярное выражение", + "noDescription": "Нет описания", + "cancel": "Отмена", + "continue": "Продолжить", + "requiredInBrackets": "(обязательно)", + "dropdownNoOptsError": "Ошибка: в выпадающем списке должна быть выбрана хотя бы одна настройка", + "colour": "Цвет", + "standard": "Стандартный", + "custom": "Индивидуальный", + "useMaterialYou": "Использовать Material You", + "githubStarredRepos": "Избранные репозитории GitHub", + "uname": "Имя пользователя", + "wrongArgNum": "Неправильное количество предоставленных аргументов", + "xIsTrackOnly": "{} только для отслеживания", + "source": "Источник", + "app": "Приложение", + "appsFromSourceAreTrackOnly": "Приложения из этого источника настроены только для отслеживания", + "youPickedTrackOnly": "Выбрана настройка «только для отслеживания»", + "trackOnlyAppDescription": "Приложение будет отслеживаться на предмет обновлений, но Obtainium не сможет загрузить или установить его", + "cancelled": "Отменено", + "appAlreadyAdded": "Приложение уже добавлено", + "alreadyUpToDateQuestion": "Приложение уже обновлено?", + "addApp": "Добавить", + "appSourceURL": "URL-адрес источника приложения", + "error": "Ошибка", + "add": "Добавить", + "searchSomeSourcesLabel": "Поиск (в некоторых источниках)", + "search": "Поиск", + "additionalOptsFor": "Дополнительные настройки для {}", + "supportedSources": "Поддерживаемые источники", + "trackOnlyInBrackets": "(только отслеживание)", + "searchableInBrackets": "(поиск)", + "appsString": "Приложения", + "noApps": "Нет приложений", + "noAppsForFilter": "Нет приложений для фильтра", + "byX": "От {}", + "percentProgress": "Прогресс: {}%", + "pleaseWait": "Пожалуйста, подождите", + "updateAvailable": "Доступно обновление", + "notInstalled": "Не установлено", + "pseudoVersion": "псевдоверсия", + "selectAll": "Выбрать всё", + "deselectX": "Отменить выбор {}", + "xWillBeRemovedButRemainInstalled": "{} будет удалено из Obtainium, но останется на устройстве", + "removeSelectedAppsQuestion": "Удалить выбранные приложения?", + "removeSelectedApps": "Удалить выбранные приложения", + "updateX": "Обновить {}", + "installX": "Установить {}", + "markXTrackOnlyAsUpdated": "Отметить {}\n(только для отслеживания)\nкак обновлённое", + "changeX": "Изменить {}", + "installUpdateApps": "Установить/обновить приложения", + "installUpdateSelectedApps": "Установить/обновить выбранные приложения", + "markXSelectedAppsAsUpdated": "Выбрано приложений: {}. Отметить как обновлённые?", + "no": "Нет", + "yes": "Да", + "markSelectedAppsUpdated": "Отметить выбранные приложения как обновлённые", + "pinToTop": "Закрепить сверху", + "unpinFromTop": "Открепить", + "resetInstallStatusForSelectedAppsQuestion": "Сбросить статус установки для выбранных приложений?", + "installStatusOfXWillBeResetExplanation": "Статус установки для выбранных приложений будет сброшен.\n\nЭто может помочь, если версия приложения, отображаемая в Obtainium, некорректная (из-за неудачных обновлений или других проблем).", + "customLinkMessage": "Эти ссылки работают на устройствах с установленным Obtainium", + "shareAppConfigLinks": "Поделиться конфигурацией приложения в виде HTML-ссылки", + "shareSelectedAppURLs": "Поделиться URL-адресами выбранных приложений", + "resetInstallStatus": "Сбросить статус установки", + "more": "Ещё", + "removeOutdatedFilter": "Удалить фильтр для устаревших приложений", + "showOutdatedOnly": "Показывать только устаревшие приложения", + "filter": "Фильтр", + "filterApps": "Фильтровать приложения", + "appName": "Название приложения", + "author": "Автор", + "upToDateApps": "Приложения с обновлениями", + "nonInstalledApps": "Неустановленные приложения", + "importExport": "Данные", + "settings": "Настройки", + "exportedTo": "Экспортировано в {}", + "obtainiumExport": "Экспорт из Obtainium", + "invalidInput": "Неверный ввод", + "importedX": "Импортировано {}", + "obtainiumImport": "Импорт в Obtainium", + "importFromURLList": "Импорт из списка URL-адресов", + "searchQuery": "Поисковый запрос", + "appURLList": "Список URL-адресов приложений", + "line": "Строка", + "searchX": "Поиск {}", + "noResults": "Ничего не найдено", + "importX": "Импорт {}", + "importedAppsIdDisclaimer": "Импортированные приложения могут неверно отображаться как неустановленные.\nДля исправления этой проблемы повторно установите их через Obtainium.\nЭто не должно повлиять на данные приложения.\n\nПроблемы возникают только при импорте из URL-адреса и сторонних источников.", + "importErrors": "Ошибка импорта", + "importedXOfYApps": "Импортировано приложений: {} из {}", + "followingURLsHadErrors": "При импорте следующие URL-адреса содержали ошибки:", + "selectURL": "Выбрать URL-адрес", + "selectURLs": "Выбрать URL-адреса", + "pick": "Выбрать", + "theme": "Тема", + "dark": "Тёмная", + "light": "Светлая", + "followSystem": "Как в системе", + "followSystemThemeExplanation": "Следование системной теме возможно только при использовании сторонних приложений", + "useBlackTheme": "Использовать чёрную тему", + "appSortBy": "Сортировка приложений", + "authorName": "Автор/название", + "nameAuthor": "Название/автор", + "asAdded": "В порядке добавления", + "appSortOrder": "Порядок", + "ascending": "По возрастанию", + "descending": "По убыванию", + "bgUpdateCheckInterval": "Интервал проверки обновлений в фоновом режиме", + "neverManualOnly": "Никогда — только вручную", + "appearance": "Внешний вид", + "showWebInAppView": "Показывать исходную веб-страницу на странице приложения", + "pinUpdates": "Показывать обновления приложений сверху списка", + "updates": "Обновления", + "sourceSpecific": "Настройки источников", + "appSource": "Источник", + "noLogs": "Нет журналов", + "appLogs": "Журналы", + "close": "Закрыть", + "share": "Поделиться", + "appNotFound": "Приложение не найдено", + "obtainiumExportHyphenatedLowercase": "экспорт-obtainium", + "pickAnAPK": "Выберите APK-файл", + "appHasMoreThanOnePackage": "{} имеет более одного пакета:", + "deviceSupportsXArch": "Ваше устройство поддерживает архитектуру процессора {}", + "deviceSupportsFollowingArchs": "Ваше устройство поддерживает следующие архитектуры процессора:", + "warning": "Предупреждение", + "sourceIsXButPackageFromYPrompt": "Источник приложения — «{}», но пакет для установки получен из «{}». Продолжить?", + "updatesAvailable": "Доступны обновления", + "updatesAvailableNotifDescription": "Уведомляет о наличии обновлений для одного или нескольких приложений в Obtainium", + "noNewUpdates": "Нет обновлений", + "xHasAnUpdate": "Для {} есть обновление", + "appsUpdated": "Приложения обновлены", + "appsNotUpdated": "Не удалось обновить приложения", + "appsUpdatedNotifDescription": "Уведомляет об обновлении одного или нескольких приложений в фоновом режиме", + "xWasUpdatedToY": "{} обновлено до версии {}", + "xWasNotUpdatedToY": "Не удалось обновить {} до версии {}", + "errorCheckingUpdates": "Ошибка при проверке обновлений", + "errorCheckingUpdatesNotifDescription": "Уведомление о завершении проверки обновлений в фоновом режиме с ошибкой", + "appsRemoved": "Приложение удалено", + "appsRemovedNotifDescription": "Уведомление об удалении одного или несколько приложений из-за ошибок при их загрузке", + "xWasRemovedDueToErrorY": "{} удалено из-за ошибки: {}", + "completeAppInstallation": "Завершение установки приложения", + "obtainiumMustBeOpenToInstallApps": "Obtainium должен быть открыт для установки приложений", + "completeAppInstallationNotifDescription": "Уведомление о необходимости открыть Obtainium для завершения установки приложения", + "checkingForUpdates": "Проверка обновлений", + "checkingForUpdatesNotifDescription": "Временное уведомление, которое появляется при проверке обновлений", + "pleaseAllowInstallPerm": "Пожалуйста, разрешите Obtainium устанавливать приложения", + "trackOnly": "Только отслеживать", + "errorWithHttpStatusCode": "Ошибка {}", + "versionCorrectionDisabled": "Коррекция версий отключена (плагин, кажется, не работает)", + "unknown": "Неизвестно", + "none": "Отсутствует", + "all": "Все", + "never": "Никогда", + "latestVersionX": "Последняя версия: {}", + "installedVersionX": "Установленная версия: {}", + "lastUpdateCheckX": "Последняя проверка: {}", + "remove": "Удалить", + "yesMarkUpdated": "Да, отметить как обновлённое", + "fdroid": "Официальные репозитории F-Droid", + "appIdOrName": "ID или название приложения", + "appId": "ID приложения", + "appWithIdOrNameNotFound": "Приложение с таким ID или названием не было найдено", + "reposHaveMultipleApps": "В хранилище несколько приложений", + "fdroidThirdPartyRepo": "Сторонние репозитории F-Droid", + "install": "Установить", + "markInstalled": "Отметить установленным", + "update": "Обновить", + "markUpdated": "Отметить обновлённым", + "additionalOptions": "Дополнительные настройки", + "disableVersionDetection": "Отключить определение версии", + "noVersionDetectionExplanation": "Эта настройка должна использоваться только для приложений, где определение версии не работает корректно", + "downloadingX": "Загрузка {}", + "downloadX": "Загрузить {}", + "downloadedX": "Загружено {}", + "releaseAsset": "Объект выпуска", + "downloadNotifDescription": "Уведомляет пользователя о прогрессе загрузки приложения", + "noAPKFound": "APK-файл не найден", + "noVersionDetection": "Определение версий отключено", + "categorize": "Категоризировать", + "categories": "Категории", + "category": "Категория", + "noCategory": "Без категории", + "noCategories": "Без категорий", + "deleteCategoriesQuestion": "Удалить категории?", + "categoryDeleteWarning": "Все приложения в удалённых категориях будут помечены как «без категории»", + "addCategory": "Добавить категорию", + "label": "Метка", + "language": "Язык", + "copiedToClipboard": "Скопировано в буфер обмена", + "storagePermissionDenied": "Отказано в доступе к хранилищу", + "selectedCategorizeWarning": "Это заменит все текущие настройки категорий для выбранных приложений", + "filterAPKsByRegEx": "Фильтровать APK-файлы\n(регулярное выражение)", + "removeFromObtainium": "Удалить из Obtainium", + "uninstallFromDevice": "Удалить с устройства", + "onlyWorksWithNonVersionDetectApps": "Работает только для приложений с отключённым определением версии", + "releaseDateAsVersion": "Использовать дату выпуска в качестве версии", + "releaseTitleAsVersion": "Использовать название выпуска в качестве версии", + "releaseDateAsVersionExplanation": "Эта настройка должна использоваться только для приложений, в которых определение версии не работает правильно, но имеется дата выпуска", + "changes": "Изменения", + "releaseDate": "Дата выпуска", + "importFromURLsInFile": "Импорт из файла URL-адресов (например: OPML)", + "versionDetectionExplanation": "Согласовать строку версии с версией, обнаруженной в ОС", + "versionDetection": "Определение версии", + "standardVersionDetection": "Стандартное", + "groupByCategory": "Группировать по категориям", + "autoApkFilterByArch": "Пытаться фильтровать APK по архитектуре процессора", + "autoLinkFilterByArch": "Пытаться фильтровать ссылки по архитектуре процессора, если это возможно", + "overrideSource": "Переопределить источник", + "dontShowAgain": "Не показывать снова", + "dontShowTrackOnlyWarnings": "Не показывать предупреждения о только отслеживаемых приложениях", + "dontShowAPKOriginWarnings": "Не показывать предупреждения об отличающемся источнике APK-файлов", + "moveNonInstalledAppsToBottom": "Показывать неустановленные приложения внизу списка", + "gitlabPATLabel": "Персональный токен доступа GitLab", + "about": "Описание", + "requiresCredentialsInSettings": "{}: для этого требуются дополнительные учётные данные (в настройках)", + "checkOnStart": "Проверять наличие обновлений при запуске", + "tryInferAppIdFromCode": "Пытаться определить ID приложения из исходного кода", + "removeOnExternalUninstall": "Автоматически убирать из списка удалённые извне приложения", + "pickHighestVersionCode": "Автовыбор актуальной версии кода APK", + "checkUpdateOnDetailPage": "Проверять наличие обновлений при открытии страницы приложения", + "disablePageTransitions": "Отключить анимацию перехода между страницами", + "reversePageTransitions": "Реверс анимации перехода между страницами", + "minStarCount": "Минимальное количество звёзд", + "addInfoBelow": "Добавьте эту информацию ниже", + "addInfoInSettings": "Добавьте эту информацию в «Настройки»", + "githubSourceNote": "Используя ключ API, можно обойти ограничение запросов GitHub", + "sortByLastLinkSegment": "Сортировать только по последнему сегменту ссылки", + "filterReleaseNotesByRegEx": "Фильтровать примечания к выпуску\n(регулярное выражение)", + "customLinkFilterRegex": "Пользовательский фильтр ссылок APK\n(регулярное выражение, по умолчанию: «.apk$»)", + "appsPossiblyUpdated": "Попытки обновления приложений", + "appsPossiblyUpdatedNotifDescription": "Уведомление о возможных обновлениях одного или нескольких приложений в фоновом режиме", + "xWasPossiblyUpdatedToY": "{} возможно был обновлён до {}", + "enableBackgroundUpdates": "Включить обновления в фоне", + "backgroundUpdateReqsExplanation": "Фоновые обновления могут быть возможны не для всех приложений", + "backgroundUpdateLimitsExplanation": "Успешность фоновой установки можно определить только после открытия Obtainium", + "verifyLatestTag": "Проверять метку «latest»", + "intermediateLinkRegex": "Фильтр для «промежуточной» ссылки для посещения", + "filterByLinkText": "Фильтровать ссылки по тексту ссылки", + "matchLinksOutsideATags": "Сопоставлять ссылки вне тегов ", + "intermediateLinkNotFound": "Промежуточная ссылка не найдена", + "intermediateLink": "Промежуточная ссылка", + "exemptFromBackgroundUpdates": "Исключить из фоновых обновлений (если включено)", + "bgUpdatesOnWiFiOnly": "Отключить фоновые обновления, если нет подключения к Wi-Fi", + "bgUpdatesWhileChargingOnly": "Отключить фоновые обновления, если не идёт зарядка", + "autoSelectHighestVersionCode": "Автовыбор APK с актуальной версией кода", + "versionExtractionRegEx": "Извлечение версии\n(регулярное выражение)", + "trimVersionString": "Обрезка строки версии\n(регулярное выражение)", + "matchGroupToUseForX": "Группа соответствия для «{}»", + "matchGroupToUse": "Выбрать группу соответствия", + "highlightTouchTargets": "Выделять менее очевидные элементы управления касанием", + "pickExportDir": "Выбрать каталог для экспорта", + "autoExportOnChanges": "Автоэкспорт при изменениях", + "includeSettings": "Включить настройки", + "filterVersionsByRegEx": "Фильтровать версии по регулярному выражению", + "trySelectingSuggestedVersionCode": "Пробовать выбрать предложенный код версии APK", + "dontSortReleasesList": "Сохранить порядок выпусков от API", + "reverseSort": "Обратная сортировка", + "takeFirstLink": "Взять первую ссылку", + "skipSort": "Пропустить сортировку", + "debugMenu": "Меню отладки", + "bgTaskStarted": "Фоновая задача начата — проверьте журналы", + "runBgCheckNow": "Запустить проверку фонового обновления сейчас", + "versionExtractWholePage": "Применить регулярное выражение версии ко всей странице", + "installing": "Устанавливается", + "skipUpdateNotifications": "Не оповещать об обновлениях", + "updatesAvailableNotifChannel": "Доступны обновления", + "appsUpdatedNotifChannel": "Приложения обновлены", + "appsPossiblyUpdatedNotifChannel": "Попытки обновления приложений", + "errorCheckingUpdatesNotifChannel": "Ошибка при проверке обновлений", + "appsRemovedNotifChannel": "Приложение удалено", + "downloadingXNotifChannel": "Загрузка {}", + "completeAppInstallationNotifChannel": "Завершение установки приложения", + "checkingForUpdatesNotifChannel": "Проверка обновлений", + "onlyCheckInstalledOrTrackOnlyApps": "Проверять обновления только у установленных или отслеживаемых приложений", + "supportFixedAPKURL": "Поддержка фиксированных URL-адресов APK", + "selectX": "Выбрать {}", + "parallelDownloads": "Использовать параллельные загрузки", + "useShizuku": "Использовать Shizuku или Sui для установки", + "shizukuBinderNotFound": "Совместимая служба Shizuku не найдена, возможно, она не запущена", + "shizukuOld": "Устаревшая версия Shizuku (<11), обновите", + "shizukuOldAndroidWithADB": "Shizuku работает на Android < 8.1 с ADB, обновите Android или используйте Sui", + "shizukuPretendToBeGooglePlay": "Указывать Google Play как источник установки (если используется Shizuku)", + "useSystemFont": "Использовать системный шрифт", + "useVersionCodeAsOSVersion": "Использовать код версии приложения как версию, обнаруженную ОС", + "requestHeader": "Заголовок запроса", + "useLatestAssetDateAsReleaseDate": "Использовать последнюю загрузку объекта в качестве даты выпуска", + "defaultPseudoVersioningMethod": "Метод псевдоверсионирования по умолчанию", + "partialAPKHash": "Частичный хеш APK", + "APKLinkHash": "Хеш ссылки APK", + "directAPKLink": "Прямая ссылка на APK", + "pseudoVersionInUse": "Используется псевдоверсия", + "installed": "Установлен", + "latest": "Последний", + "invertRegEx": "Инвертировать регулярное выражение", + "note": "Примечание", + "selfHostedNote": "Выпадающий список «{}» можно использовать для доступа к самостоятельно размещённым/настроенным экземплярам любого источника.", + "badDownload": "Не удалось разобрать APK (несовместимая или неполная загрузка)", + "beforeNewInstallsShareToAppVerifier": "Делиться новыми приложениями с AppVerifier (если доступно)", + "appVerifierInstructionToast": "Поделитесь с AppVerifier, а затем вернитесь сюда, когда будете готовы.", + "wiki": "Помощь/Вики", + "crowdsourcedConfigsLabel": "Конфигурации приложений на основе краудсорсинга (используйте на свой страх и риск)", + "crowdsourcedConfigsShort": "Краудсорсинг конфигураций приложений", + "allowInsecure": "Разрешить небезопасные HTTP-запросы", + "stayOneVersionBehind": "Оставаться на одну версию ниже последней", + "useFirstApkOfVersion": "Автовыбор первого из нескольких APK", + "refreshBeforeDownload": "Обновлять информацию о приложении перед загрузкой", + "tencentAppStore": "Tencent App Store", + "coolApk": "CoolApk", + "vivoAppStore": "vivo App Store (CN)", + "name": "Имя", + "smartname": "Имя (умное)", + "sortMethod": "Метод сортировки", + "welcome": "Добро пожаловать", + "documentationLinksNote": "На странице Obtainium в GitHub, ссылка на которую приведена ниже, содержатся ссылки на видео, статьи, обсуждения и другие ресурсы, которые помогут вам понять, как пользоваться приложением.", + "batteryOptimizationNote": "Обратите внимание, что фоновая загрузка может работать более надёжно, если отключить оптимизацию батареи ОС для Obtainium.", + "fileDeletionError": "Не удалось удалить файл (попробуйте удалить его вручную, а затем повторите попытку): «{}»", + "foregroundService": "Приоритетная служба Obtainium", + "foregroundServiceExplanation": "Использовать приоритетную службу для проверки обновлений (надёжнее, энергозатратнее)", + "fgServiceNotice": "Это уведомление необходимо для фоновой проверки обновлений (оно может быть скрыто в настройках ОС)", + "excludeSecrets": "Исключить секреты", + "GHReqPrefix": "Экземпляр 'sky22333/hubproxy' для запросов на GitHub", + "includeZips": "Включить ZIP-файлы", + "zippedApkFilterRegEx": "Фильтр APK внутри ZIP", + "removeAppQuestion": { + "one": "Удалить приложение?", + "other": "Удалить приложения?" + }, + "tooManyRequestsTryAgainInMinutes": { + "one": "Слишком много запросов (ограничение скорости) — попробуйте снова через {} минуту", + "few": "Слишком много запросов (ограничение скорости) — попробуйте снова через {} минуты", + "other": "Слишком много запросов (ограничение скорости) — попробуйте снова через {} минут" + }, + "bgUpdateGotErrorRetryInMinutes": { + "one": "При проверке обновлений в фоновом режиме возникла ошибка {}, повторная проверка будет через {} минуту", + "few": "При проверке обновлений в фоновом режиме возникла ошибка {}, повторная проверка будет через {} минуты", + "other": "При проверке обновлений в фоновом режиме возникла ошибка {}, повторная проверка будет через {} минут" + }, + "bgCheckFoundUpdatesWillNotifyIfNeeded": { + "one": "При проверке в фоновом режиме было обнаружено {} обновления — пользователь будет уведомлен по необходимости", + "other": "При проверке в фоновом режиме было обнаружено {} обновлений — пользователь будет уведомлен по необходимости" + }, + "apps": { + "one": "{} приложение", + "few": "{} приложения", + "other": "{} приложений" + }, + "url": { + "one": "{} URL-адрес", + "few": "{} URL-адреса", + "other": "{} URL-адресов" + }, + "minute": { + "one": "{} минута", + "few": "{} минуты", + "other": "{} минут" + }, + "hour": { + "one": "{} час", + "few": "{} часа", + "other": "{} часов" + }, + "day": { + "one": "{} день", + "few": "{} дня", + "other": "{} дней" + }, + "clearedNLogsBeforeXAfterY": { + "one": "Очищен {n} журнал (до = {before}, после = {after})", + "few": "Очищены {n} журнала (до = {before}, после = {after})", + "other": "Очищено {n} журналов (до = {before}, после = {after})" + }, + "xAndNMoreUpdatesAvailable": { + "one": "У {} и ещё 1 приложения есть обновление", + "other": "У {} и ещё {} приложений есть обновления" + }, + "xAndNMoreUpdatesInstalled": { + "one": "{} и ещё 1 приложение были обновлены", + "few": "{} и ещё {} приложения были обновлены", + "other": "{} и ещё {} приложений были обновлены" + }, + "xAndNMoreUpdatesFailed": { + "one": "Не удалось обновить {} и ещё 1 приложение", + "few": "Не удалось обновить {} и ещё {} приложения", + "other": "Не удалось обновить {} и ещё {} приложений" + }, + "xAndNMoreUpdatesPossiblyInstalled": { + "one": "{} и ещё 1 приложение могли быть обновлены", + "few": "{} и ещё {} приложения могли быть обновлены", + "other": "{} и ещё {} приложений могли быть обновлены" + }, + "apk": { + "one": "{} APK-файл", + "few": "{} APK-файла", + "other": "{} APK-файлов" + } +} diff --git a/assets/translations/standardize.js b/assets/translations/standardize.js new file mode 100644 index 0000000..bb83e90 --- /dev/null +++ b/assets/translations/standardize.js @@ -0,0 +1,137 @@ +// Take one (hardcoded) translation file and ensure that all other translation files have the same keys in the same order +// Then report which other translation files have identical items (or auto-translate them if a DeepL API key is provided) + +const fs = require('fs') +const https = require('https') + +const deeplAPIKey = process.argv[2] + +const neverAutoTranslate = { + steamMobile: ['*'], + steamChat: ['*'], + root: ['*'], + obtainiumExportHyphenatedLowercase: ['*'], + theme: ['de'], + appId: ['de'], + placeholder: ['pl'], + importExport: ['fr'], + url: ['fr'], + vivoAppStore: ['cs', 'ja', 'ko', 'vi'], + coolapk: ['ja'], + obtainiumImport: ['nl'], + appLogs: ['nl'], + apks: ['vi'], + minute: ['fr'], + tencentAppStore: ['*'] +} + +const translateText = async (text, targetLang, authKey) => { + return new Promise((resolve, reject) => { + const postData = `text=${encodeURIComponent(text)}&target_lang=${encodeURIComponent(targetLang)}&source_lang=EN` + const options = { + hostname: 'api-free.deepl.com', + port: 443, + path: '/v2/translate', + method: 'POST', + headers: { + 'Authorization': `DeepL-Auth-Key ${authKey}`, + 'Content-Type': 'application/x-www-form-urlencoded', + 'Content-Length': Buffer.byteLength(postData) + } + } + const req = https.request(options, (res) => { + let responseData = '' + res.on('data', (chunk) => { + responseData += chunk + }) + res.on('end', () => { + try { + const jsonResponse = JSON.parse(responseData) + resolve(jsonResponse) + } catch (error) { + reject(error) + } + }) + }) + req.on('error', (error) => { + reject(error) + }) + req.write(postData) + req.end() + }) +} + +const main = async () => { + const translationsDir = __dirname + const templateFile = `${translationsDir}/en.json` + const otherFiles = fs.readdirSync(translationsDir).map(f => { + return `${translationsDir}/${f}` + }).filter(f => f.endsWith('.json') && f != templateFile) + + const templateTranslation = JSON.parse(fs.readFileSync(templateFile).toString()) + + otherFiles.forEach(file => { + const thisTranslationOriginal = JSON.parse(fs.readFileSync((file).toString())) + const thisTranslationNew = {} + Object.keys(templateTranslation).forEach(k => { + thisTranslationNew[k] = thisTranslationOriginal[k] || templateTranslation[k] + }) + fs.writeFileSync(file, `${JSON.stringify(thisTranslationNew, null, ' ')}\n`) + }) + + for (let i in otherFiles) { + const file = otherFiles[i] + const thisTranslation = JSON.parse(fs.readFileSync((file).toString())) + const translationKeys = Object.keys(templateTranslation) + for (let j in translationKeys) { + const k = translationKeys[j] + try { + if (JSON.stringify(thisTranslation[k]) == JSON.stringify(templateTranslation[k])) { + const lang = file.split('/').pop().split('.')[0] + if (!neverAutoTranslate[k] || (neverAutoTranslate[k].indexOf('*') < 0 && neverAutoTranslate[k].indexOf(lang) < 0)) { + const reportLine = `${file} :::: ${k} :::: ${JSON.stringify(thisTranslation[k])}` + if (deeplAPIKey) { + const translateFunc = async (str) => { + await new Promise((resolve, reject) => { + setTimeout(() => { + resolve() + }, Math.random() * 10000); // Try to avoid rate limit + }) + const response = await translateText(str, lang, deeplAPIKey) + if (response.translations) { + return response.translations[0].text + } else { + throw JSON.stringify(response) + } + } + try { + if (typeof templateTranslation[k] == 'string') { + thisTranslation[k] = await translateFunc(thisTranslation[k]) + } else { + const subKeys = Object.keys(templateTranslation[k]) + for (let n in subKeys) { + const kk = subKeys[n] + thisTranslation[k][kk] = await translateFunc(thisTranslation[k][kk]) + } + } + } catch (e) { + if (typeof e == 'string') { + console.log(`${reportLine} :::: ${e}`) + } else { + throw e + } + } + } else { + console.log(reportLine) + } + } + } + } catch (err) { + console.error(err) + } + } + fs.writeFileSync(file, `${JSON.stringify(thisTranslation, null, ' ')}\n`) + } +} + +main().catch(e => console.error) diff --git a/assets/translations/sv.json b/assets/translations/sv.json new file mode 100644 index 0000000..01b02ea --- /dev/null +++ b/assets/translations/sv.json @@ -0,0 +1,402 @@ +{ + "invalidURLForSource": "Inte giltig {} App-URL", + "noReleaseFound": "Kunde inte hitta en lämplig releaseversion", + "noVersionFound": "Kunde inte bestämma releaseversion", + "urlMatchesNoSource": "URL matchar inte känd källa", + "cantInstallOlderVersion": "Kan inte installera en äldre version av en app", + "appIdMismatch": "Nerladdat paket-ID matchar inte nuvarande App-ID", + "functionNotImplemented": "Den här klassen har inte implementerat den här funktionen", + "placeholder": "Platshållare", + "someErrors": "Några fel uppstod", + "unexpectedError": "Oväntat fel", + "ok": "Okej", + "and": "och", + "githubPATLabel": "GitHub Personal Access Token (ökar hastighetsgräns)", + "includePrereleases": "Inkludera förreleaser", + "fallbackToOlderReleases": "Fall tillbaka till äldre releaser", + "filterReleaseTitlesByRegEx": "Filtrera utgivningstitlar efter reguljärt uttryck", + "invalidRegEx": "Ogiltigt reguljärt uttryck", + "noDescription": "Ingen beskrivning", + "cancel": "Avbryt", + "continue": "Fortsätt", + "requiredInBrackets": "(Kräver)", + "dropdownNoOptsError": "FEL: DROPDOWN MÅSTE HA MINST ETT OPT", + "colour": "Färg", + "standard": "Standard", + "custom": "Anpassad", + "useMaterialYou": "Använd material Du", + "githubStarredRepos": "GitHub Stjärnmärkta Förråd", + "uname": "Användarnamn", + "wrongArgNum": "Fel antal argument har angetts", + "xIsTrackOnly": "{} är 'Följ-Endast'", + "source": "Källa", + "app": "App", + "appsFromSourceAreTrackOnly": "Apparna från denna källa är 'Följ-Endast'.", + "youPickedTrackOnly": "Du har markerat 'Följ-Endast'-alternativet", + "trackOnlyAppDescription": "Appen kommer följas för uppdateringar men Obtainium kommer inte ladda ner eller installera den.", + "cancelled": "Avbruten", + "appAlreadyAdded": "App redan tillagd", + "alreadyUpToDateQuestion": "App redan uppdaterad?", + "addApp": "Lägg till App", + "appSourceURL": "URL till Appkälla", + "error": "Fel", + "add": "Lägg till", + "searchSomeSourcesLabel": "Sök (Bara några källor)", + "search": "Sök", + "additionalOptsFor": "Ytterligare Alternativ för {}", + "supportedSources": "Stödda Källor", + "trackOnlyInBrackets": "(Följ-Endast)", + "searchableInBrackets": "(Sökbar)", + "appsString": "Appar", + "noApps": "Inga Appar", + "noAppsForFilter": "Inga Appar för Filter", + "byX": "Av {}", + "percentProgress": "Framsteg: {}%", + "pleaseWait": "Vänta", + "updateAvailable": "Uppdatering Tillgänglig", + "notInstalled": "Inte Installerad", + "pseudoVersion": "pseudoversion", + "selectAll": "Välj Alla", + "deselectX": "Avmarkera {}", + "xWillBeRemovedButRemainInstalled": "{} kommer tas bort från Obtainium men kommer vara fortsatt installerad på enheten.", + "removeSelectedAppsQuestion": "Ta bort markerade Appar?", + "removeSelectedApps": "Ta bort markerade Appar", + "updateX": "Uppdatera {}", + "installX": "Installera {}", + "markXTrackOnlyAsUpdated": "Märk {}\n(Följ-Endast)\nsom Uppdaterad", + "changeX": "Byt {}", + "installUpdateApps": "Installera/Uppdatera Appar", + "installUpdateSelectedApps": "Installera/Uppdatera Markerade Appar", + "markXSelectedAppsAsUpdated": "Märk {} markerade Appar som Uppdaterade?", + "no": "Nej", + "yes": "Ja", + "markSelectedAppsUpdated": "Märk Valda Appar som Uppdaterade", + "pinToTop": "Nåla fast högst upp", + "unpinFromTop": "Avnåla", + "resetInstallStatusForSelectedAppsQuestion": "Återställ Installationsstatus för valda Appar?", + "installStatusOfXWillBeResetExplanation": "Installationsstatusen för de markerade apparna kommer återställas.\n\n Detta kan hjälpa när appversionen visad i Obtanium är fel på grund av misslyckade uppdateringar eller andra orsaker.", + "customLinkMessage": "Dessa länkar fungerar på enheter med Obtainium installerat", + "shareAppConfigLinks": "Dela appkonfiguration som HTML-länk", + "shareSelectedAppURLs": "Dela Valda Appars URL:er", + "resetInstallStatus": "Återställ Installationstatus", + "more": "Mer", + "removeOutdatedFilter": "Ta bort Utgånga App-filtret", + "showOutdatedOnly": "Visa Endast Utgånga Appar", + "filter": "Filtrera", + "filterApps": "Filtrera Appar", + "appName": "Appnamn", + "author": "Utvecklare", + "upToDateApps": "Uppdaterade Appar", + "nonInstalledApps": "Icke-Installerade Appar", + "importExport": "Importera/Exportera", + "settings": "Inställningar", + "exportedTo": "Exporterad till {}", + "obtainiumExport": "Obtainiumexport", + "invalidInput": "Ogiltig inmatning", + "importedX": "Importerad {}", + "obtainiumImport": "Obtainium Import", + "importFromURLList": "Importera från URL-lista", + "searchQuery": "Sökförfrågan", + "appURLList": "App URL-lista", + "line": "Linje", + "searchX": "Sök {}", + "noResults": "Inga resultat", + "importX": "Importera {}", + "importedAppsIdDisclaimer": "Importerade Appar kan felaktigt visas som \"Inte Installerad\".\nFör att fixa detta återinstallera dem genom Obtainium.\nDetta skall inte påverka appdata.\n\n Påverkar endast URL:en och tredjepartsimportermetoder.", + "importErrors": "Importfel", + "importedXOfYApps": "{} av {} Appar importerade.", + "followingURLsHadErrors": "Följande URL:er hade fel:", + "selectURL": "Välj URL", + "selectURLs": "Välj URL:er", + "pick": "Välj", + "theme": "Tema", + "dark": "Mörkt", + "light": "Ljust", + "followSystem": "Följ System", + "followSystemThemeExplanation": "Följande systemtema är endast möjligt med hjälp av tredjepartsapplikationer", + "useBlackTheme": "Använd svart tema", + "appSortBy": "Sortera Appar via", + "authorName": "Utvecklare/Namn", + "nameAuthor": "Namn/Utvecklare", + "asAdded": "Som tillagd", + "appSortOrder": "Appsorteringsordning", + "ascending": "Stigande", + "descending": "Fallande", + "bgUpdateCheckInterval": "Bakgrundsuppdateringskollfrekvens", + "neverManualOnly": "Aldrig - Endast manuell", + "appearance": "Utseende", + "showWebInAppView": "Visa källans hemsida i appvyn", + "pinUpdates": "Fäst uppdateringar högst upp i appvyn", + "updates": "Uppdateringar", + "sourceSpecific": "Källspecifik", + "appSource": "Appkälla", + "noLogs": "Inga Loggar", + "appLogs": "Apploggar", + "close": "Stäng", + "share": "Dela", + "appNotFound": "App ej funnen", + "obtainiumExportHyphenatedLowercase": "obtainium-export", + "pickAnAPK": "Välj en APK", + "appHasMoreThanOnePackage": "{} har fler än ett paket:", + "deviceSupportsXArch": "Din enhet stödjer {} CPU-arkiktektur.", + "deviceSupportsFollowingArchs": "YDin enhet stödjer följande CPU-arkitekturer:", + "warning": "Varning", + "sourceIsXButPackageFromYPrompt": "Appens källa är '{}' men releasepaketet kommer från '{}'. Vill du fortsätta?", + "updatesAvailable": "Uppdateringar Tillgängliga", + "updatesAvailableNotifDescription": "Aviserar användaren att det finns uppdateringar tillgängaliga för en eller fler Appar som följs av Obtainium", + "noNewUpdates": "Inga nya uppdateringar.", + "xHasAnUpdate": "{} har en uppdatering.", + "appsUpdated": "Appar Uppdaterade", + "appsNotUpdated": "Misslyckades med att uppdatera applikationer", + "appsUpdatedNotifDescription": "Meddelar användaren att uppdateringar av en eller flera appar har tillämpats i bakgrunden", + "xWasUpdatedToY": "{} uppdaterades till {}.", + "xWasNotUpdatedToY": "Det gick inte att uppdatera {} till {}.", + "errorCheckingUpdates": "Fel vid uppdateringskoll", + "errorCheckingUpdatesNotifDescription": "En aviserings som visar när bakgrundsuppdateringarkollar misslyckas", + "appsRemoved": "Appar borttagna", + "appsRemovedNotifDescription": "Aviserar användaren när en eller fler Appar togs bort på grund av fel när de laddades", + "xWasRemovedDueToErrorY": "{} togs bort på grund av detta felet: {}", + "completeAppInstallation": "Gör klar appinstallation", + "obtainiumMustBeOpenToInstallApps": "Obtainium måste vara öppet för att installera Appar", + "completeAppInstallationNotifDescription": "Frågar användaren att återvända till Obtaiunium när appinstallation är klar", + "checkingForUpdates": "Kollar efter Uppdateringar", + "checkingForUpdatesNotifDescription": "Övergående meddelande som visas när du söker efter uppdateringar", + "pleaseAllowInstallPerm": "Tillåt Obtanium att installera Appar", + "trackOnly": "Följ-Endast", + "errorWithHttpStatusCode": "Fel {}", + "versionCorrectionDisabled": "Versionskorrigering inaktiverat (plugin verkar inte fungera)", + "unknown": "Okänd", + "none": "Ingen", + "all": "Alla", + "never": "Aldrig", + "latestVersionX": "Senaste Version: {}", + "installedVersionX": "Installerad Version: {}", + "lastUpdateCheckX": "Senaste uppdateringskoll: {}", + "remove": "Ta bort", + "yesMarkUpdated": "Ja, Märk som Uppdaterad", + "fdroid": "F-Droid Officiell", + "appIdOrName": "App-ID eller Namn", + "appId": "App-ID", + "appWithIdOrNameNotFound": "Ingen App funnen med det namnet eller ID", + "reposHaveMultipleApps": "Förråd kan innehålla flera ApparR", + "fdroidThirdPartyRepo": "F-Droid Tredjeparts Förråd", + "install": "Installera", + "markInstalled": "Märk Installerad", + "update": "Uppdatera", + "markUpdated": "Märk Uppdaterad", + "additionalOptions": "Ytterligare Alternativ", + "disableVersionDetection": "Inaktivera versionsdetektering", + "noVersionDetectionExplanation": "Det här alternativet bör endast användas för appar där versionsidentifiering inte fungerar korrekt.", + "downloadingX": "Laddar ner {}", + "downloadX": "Ladda ner {}", + "downloadedX": "Nedladdad {}", + "releaseAsset": "Frigör tillgång", + "downloadNotifDescription": "Meddelar användaren om framstegen med att ladda ner en app", + "noAPKFound": "Ingen APK funnen", + "noVersionDetection": "Ingen versiondetektering", + "categorize": "Kategorisera", + "categories": "Kategorier", + "category": "Kategori", + "noCategory": "Ingen Kategori", + "noCategories": "Inga Kategorier", + "deleteCategoriesQuestion": "Ta Bort Kategorier?", + "categoryDeleteWarning": "Alla Appar i de borttagna kategorierna kommer att märkas som okategoriserade.", + "addCategory": "Lägg till Kategori", + "label": "Märka", + "language": "Språk", + "copiedToClipboard": "Kopierat till Urklipp", + "storagePermissionDenied": "Lagringsbehörighet nekad", + "selectedCategorizeWarning": "Detta kommer att ersätta alla befintliga kategoriinställningar för de valda apparna.", + "filterAPKsByRegEx": "Filtrera APK-filer efter reguljärt uttryck", + "removeFromObtainium": "Ta bort från Obtainium", + "uninstallFromDevice": "Avinstallera från Enheten", + "onlyWorksWithNonVersionDetectApps": "Fungerar bara för Appar med versionsdetektering inaktiverat..", + "releaseDateAsVersion": "Använd releasedatum som version", + "releaseTitleAsVersion": "Använd release-titel som versionssträng", + "releaseDateAsVersionExplanation": "Det här alternativet bör endast användas för appar där versionsidentifiering inte fungerar korrekt, men ett releasedatum är tillgängligt.", + "changes": "Ändringar", + "releaseDate": "Releasedatum", + "importFromURLsInFile": "Importera från URL:er i fil (som OPML)", + "versionDetectionExplanation": "Sammanställ versionssträng med version upptäckt från OS", + "versionDetection": "Versionsdetektering", + "standardVersionDetection": "Standardversionsdetektering", + "groupByCategory": "Gruppera via Kategori", + "autoApkFilterByArch": "Försök att filtrera APK-filer efter CPU-arkitektur om möjligt", + "autoLinkFilterByArch": "Försök att filtrera länkar efter CPU-arkitektur om möjligt", + "overrideSource": "Överskrid Källa", + "dontShowAgain": "Visa inte detta igen", + "dontShowTrackOnlyWarnings": "Visa inte 'Följ-Endast' varningar", + "dontShowAPKOriginWarnings": "Visa inte APK-ursprung varningar", + "moveNonInstalledAppsToBottom": "Flytta icke-installerade appar till botten av appvyn", + "gitlabPATLabel": "Personligt åtkomsttoken för GitLab", + "about": "Om", + "requiresCredentialsInSettings": "{}: This needs additional credentials (in Settings)", + "checkOnStart": "Kolla efter uppdateringar vid start", + "tryInferAppIdFromCode": "Försök härleda app-id från källkoden", + "removeOnExternalUninstall": "Ta bort externt avinstallerade appar automatiskt", + "pickHighestVersionCode": "Välj automatiskt högsta versionskod APK", + "checkUpdateOnDetailPage": "Sök efter uppdateringar om att öppna en app-detaljsida", + "disablePageTransitions": "Inaktivera sidövergångsanimationer", + "reversePageTransitions": "Animeringar för omvänd sidövergång", + "minStarCount": "Minsta antal stjärnmarkeringar", + "addInfoBelow": "Lägg till denna information nedanför.", + "addInfoInSettings": "Lägg till denna information i Inställningar.", + "githubSourceNote": "GitHub-hastighetsbegränsning kan undvikas med en API-nyckel.", + "sortByLastLinkSegment": "Sortera endast efter det sista segmentet av länken", + "filterReleaseNotesByRegEx": "Filtrera versionskommentarer efter reguljärt uttryck", + "customLinkFilterRegex": "Anpassad APK-länkfiltrera efter reguljärt uttryck (standard '.apk$')", + "appsPossiblyUpdated": "Appuppdateringar försökte", + "appsPossiblyUpdatedNotifDescription": "Meddelar användaren om att uppdateringar av en eller flera appar potentiellt har tillämpats i bakgrunden", + "xWasPossiblyUpdatedToY": "{} kan ha uppdaterats till {}.", + "enableBackgroundUpdates": "Aktivera Bakgrundsuppdateringar", + "backgroundUpdateReqsExplanation": "Bakgrundsuppdateringar är inte möjligt för alla appar.", + "backgroundUpdateLimitsExplanation": "Framgången för en bakgrundsinstallation kan bara avgöras när Obtainium öppnas.", + "verifyLatestTag": "Verifiera 'senaste'-taggen", + "intermediateLinkRegex": "Filtrera för en \"mellanliggande\" länk att besöka", + "filterByLinkText": "Filtrera länkar efter länktext", + "matchLinksOutsideATags": "Matcha länkar utanför -taggar", + "intermediateLinkNotFound": "Mellanlänk hittades inte", + "intermediateLink": "Mellanlänk", + "exemptFromBackgroundUpdates": "Undta från bakgrundsuppdateringar (om aktiverad)", + "bgUpdatesOnWiFiOnly": "Inaktivera Bakgrundsuppdateringar utan Wi-Fi", + "bgUpdatesWhileChargingOnly": "Inaktivera bakgrundsuppdateringar när du inte laddar", + "autoSelectHighestVersionCode": "Välj automatiskt högsta versionskod APK", + "versionExtractionRegEx": "Version Extraction RegEx", + "trimVersionString": "Trimma versionssträng med RegEx", + "matchGroupToUseForX": "Matchningsgrupp att använda för \"{}\"", + "matchGroupToUse": "Match Group to Use", + "highlightTouchTargets": "Markera mindre uppenbara beröringsobjekt", + "pickExportDir": "Välj Exportsökväg", + "autoExportOnChanges": "Automatisk export vid ändringar", + "includeSettings": "Inkludera inställningar", + "filterVersionsByRegEx": "Filtrera versioner efter reguljärt uttryck", + "trySelectingSuggestedVersionCode": "Försök att välja föreslagen versionCode APK", + "dontSortReleasesList": "Behåll släpporder från API", + "reverseSort": "Omvänd sortering", + "takeFirstLink": "Ta första länken", + "skipSort": "Hoppa över sortering", + "debugMenu": "Felsökningsmeny", + "bgTaskStarted": "Bakgrundsuppgift startat - kontrollera loggar.", + "runBgCheckNow": "Kör Bakgrundsuppdateringskoll Nu", + "versionExtractWholePage": "Tillämpa Regex för versionssträngextraktion på hela sidan", + "installing": "Installerar", + "skipUpdateNotifications": "Hoppa över uppdateringsmeddelanden", + "updatesAvailableNotifChannel": "Uppdateringar tillgängliga", + "appsUpdatedNotifChannel": "Appar uppdaterade", + "appsPossiblyUpdatedNotifChannel": "Appuppdateringar försökte", + "errorCheckingUpdatesNotifChannel": "Fel vid sökning efter uppdateringar", + "appsRemovedNotifChannel": "Appar borttagna", + "downloadingXNotifChannel": "Laddar ner {}", + "completeAppInstallationNotifChannel": "Fullständig appinstallation", + "checkingForUpdatesNotifChannel": "Kollar efter uppdateringar", + "onlyCheckInstalledOrTrackOnlyApps": "Kontrollera bara installerade appar och endast spårbara appar för uppdateringar", + "supportFixedAPKURL": "Stöd fasta APK-webbadresser", + "selectX": "Välj {}", + "parallelDownloads": "Tillåt parallella nedladdningar", + "useShizuku": "Använd Shizuku eller Sui för att installera", + "shizukuBinderNotFound": "Shizuku is not running", + "shizukuOld": "Gammal Shizuku-version (<11) - uppdatera den", + "shizukuOldAndroidWithADB": "Shizuku körs på Android < 8.1 med ADB - uppdatera Android eller använd Sui istället", + "shizukuPretendToBeGooglePlay": "Ange Google Play som installationskälla (om Shizuku används)", + "useSystemFont": "Använd systemteckensnittet", + "useVersionCodeAsOSVersion": "Använd appversionskoden som OS-upptäckt version", + "requestHeader": "Rubrik för begäran", + "useLatestAssetDateAsReleaseDate": "Använd senaste tillgångsuppladdning som releasedatum", + "defaultPseudoVersioningMethod": "Standard pseudoversionsmetod", + "partialAPKHash": "Delvis APK-hash", + "APKLinkHash": "APK-länk Hash", + "directAPKLink": "Direkt APK-länk", + "pseudoVersionInUse": "En pseudoversion används", + "installed": "Installerad", + "latest": "Senast", + "invertRegEx": "Invertera reguljärt uttryck", + "note": "Anmärkning", + "selfHostedNote": "Rullgardinsmenyn \"{}\" kan användas för att nå självhostade/anpassade instanser av valfri källa.", + "badDownload": "APK kunde inte analyseras (inkompatibel eller partiell nedladdning)", + "beforeNewInstallsShareToAppVerifier": "Dela nya appar med AppVerifier (om tillgängligt)", + "appVerifierInstructionToast": "Dela till AppVerifier och återvänd sedan hit när du är klar.", + "wiki": "Hjälp/Wiki", + "crowdsourcedConfigsLabel": "Crowdsourcade appkonfigurationer (använd på egen risk)", + "crowdsourcedConfigsShort": "Appkonfigurationer med hjälp av crowdsourcing", + "allowInsecure": "Tillåt osäkra HTTP-förfrågningar", + "stayOneVersionBehind": "Håll dig en version bakom den senaste", + "useFirstApkOfVersion": "Välj automatiskt den första av flera APK:er", + "refreshBeforeDownload": "Uppdatera appdetaljerna före nedladdning", + "tencentAppStore": "Tencent App Store", + "coolApk": "CoolApk", + "vivoAppStore": "vivo App Store (CN)", + "name": "Namn", + "smartname": "Namn (Smart)", + "sortMethod": "Sorteringsmetod", + "welcome": "Välkommen", + "documentationLinksNote": "Obtainium GitHub-sidan som länkas nedan innehåller länkar till videor, artiklar, diskussioner och andra resurser som hjälper dig att förstå hur du använder appen.", + "batteryOptimizationNote": "Observera att nedladdningar i bakgrunden kan fungera mer tillförlitligt om du inaktiverar OS-batterioptimeringar för Obtainium.", + "fileDeletionError": "Misslyckades med att radera filen (försök radera den manuellt och försök sedan igen): \"{}\"", + "foregroundService": "Obtainium förgrundstjänst", + "foregroundServiceExplanation": "Använd en förgrundstjänst för uppdateringskontroll (mer tillförlitlig, förbrukar mer ström)", + "fgServiceNotice": "Detta meddelande krävs för bakgrundsuppdateringskontroll (det kan döljas i OS-inställningarna)", + "excludeSecrets": "Utesluta hemligheter", + "GHReqPrefix": "Instansen \"sky22333/hubproxy\" för GitHub-förfrågningar", + "includeZips": "Inkludera ZIP-filer", + "zippedApkFilterRegEx": "Filtrera APK:er inuti ZIP", + "removeAppQuestion": { + "one": "Ta Bort App?", + "other": "Ta Bort Appar?" + }, + "tooManyRequestsTryAgainInMinutes": { + "one": "För många förfrågningar (begränsat pris) - försök igen om {} minut", + "other": "För många förfrågningar (begränsat pris) - försök igen om {} minuter" + }, + "bgUpdateGotErrorRetryInMinutes": { + "one": "BG-uppdateringskontroll påträffade en {}, kommer att schemalägga ett nytt försök om {} minut", + "other": "BG-uppdateringskontroll påträffade en {}, kommer att schemalägga ett nytt försök om {} minuter" + }, + "bgCheckFoundUpdatesWillNotifyIfNeeded": { + "one": "BG-uppdateringskontroll hittades {} uppdatering - kommer att meddela användaren om det behövs", + "other": "BG-uppdateringskontroll hittades {} uppdateringar - kommer att meddela användaren om det behövs" + }, + "apps": { + "one": "{} App", + "other": "{} Appar" + }, + "url": { + "one": "{} URL", + "other": "{} URL:er" + }, + "minute": { + "one": "{} minut", + "other": "{} minuter" + }, + "hour": { + "one": "{} timme", + "other": "{} timmar" + }, + "day": { + "one": "{} dag", + "other": "{} dagar" + }, + "clearedNLogsBeforeXAfterY": { + "one": "Rensade {n} logg (före = {before}, efter = {after})", + "other": "Rensade {n} loggar (före = {before}, efter = {after})" + }, + "xAndNMoreUpdatesAvailable": { + "one": "{} och 1 app till har tillgängliga uppdateringar.", + "other": "{} och {} appar till har tillgängliga uppdateringar." + }, + "xAndNMoreUpdatesInstalled": { + "one": "{} och 1 till app uppdaterades.", + "other": "{} och {} appar till uppdaterades." + }, + "xAndNMoreUpdatesFailed": { + "one": "Misslyckades med att uppdatera {} och ytterligare 1 app.", + "other": "Det gick inte att uppdatera {} och {} fler appar." + }, + "xAndNMoreUpdatesPossiblyInstalled": { + "one": "{} och 1 till app kan ha uppdaterats.", + "other": "{} och {} appar till kan ha uppdaterats." + }, + "apk": { + "one": "{} APK", + "other": "{} APK:er" + } +} diff --git a/assets/translations/tr.json b/assets/translations/tr.json new file mode 100644 index 0000000..08e9f4c --- /dev/null +++ b/assets/translations/tr.json @@ -0,0 +1,402 @@ +{ + "invalidURLForSource": "Geçerli bir {} Uygulama URL'si değil", + "noReleaseFound": "Uygun bir sürüm bulunamadı", + "noVersionFound": "Sürüm bulunamadı", + "urlMatchesNoSource": "URL, bilinen bir kaynağa uymuyor", + "cantInstallOlderVersion": "Eski bir sürüm yüklenemez", + "appIdMismatch": "İndirilen paket kimliği mevcut Uygulama kimliği ile eşleşmiyor", + "functionNotImplemented": "Bu sınıf bu işlevi uygulamamıştır", + "placeholder": "Yer Tutucu", + "someErrors": "Bazı Hatalar Oluştu", + "unexpectedError": "Beklenmeyen Hata", + "ok": "Tamam", + "and": "ve", + "githubPATLabel": "GitHub Kişisel Erişim Anahtarı (Sınırlamayı Artırır)", + "includePrereleases": "Ön sürümleri dahil et", + "fallbackToOlderReleases": "Daha eski sürümleri alternatif olarak tut", + "filterReleaseTitlesByRegEx": "Düzenli İfadelerle Sürüm Başlıklarını Filtrele", + "invalidRegEx": "Geçersiz düzenli ifade", + "noDescription": "Açıklama yok", + "cancel": "İptal", + "continue": "Devam Et", + "requiredInBrackets": "(Gerekli)", + "dropdownNoOptsError": "HATA: AÇILIR MENÜDE EN AZ BİR SEÇENEK OLMALI", + "colour": "Renk", + "standard": "Standart", + "custom": "Özel", + "useMaterialYou": "MaterialYou Kullanın", + "githubStarredRepos": "GitHub Yıldızlı Depolar", + "uname": "Kullanıcı Adı", + "wrongArgNum": "Hatalı sayıda argüman sağlandı", + "xIsTrackOnly": "{} yalnızca Takip Ediliyor", + "source": "Kaynak", + "app": "Uygulama", + "appsFromSourceAreTrackOnly": "Bu kaynaktan gelen uygulamalar 'Yalnızca Takip Edilen'dir.", + "youPickedTrackOnly": "'Yalnızca Takip Edilen' seçeneğini seçtiniz.", + "trackOnlyAppDescription": "Uygulama güncellemeleri için takip edilecek, ancak Obtainium onu indiremeyecek veya kuramayacaktır.", + "cancelled": "İptal Edildi", + "appAlreadyAdded": "Uygulama zaten eklenmiş", + "alreadyUpToDateQuestion": "Uygulama Zaten Güncel mi?", + "addApp": "Uygulama Ekle", + "appSourceURL": "Uygulama Kaynak URL'si", + "error": "Hata", + "add": "Ekle", + "searchSomeSourcesLabel": "Ara (Yalnızca Bazı Kaynaklar)", + "search": "Ara", + "additionalOptsFor": "{} için Ek Seçenekler", + "supportedSources": "Desteklenen Kaynaklar", + "trackOnlyInBrackets": "(Yalnızca Takip)", + "searchableInBrackets": "(Aranabilir)", + "appsString": "Uygulamalar", + "noApps": "Uygulama Yok", + "noAppsForFilter": "Filtre İçin Uygulama Yok", + "byX": "{} Tarafından", + "percentProgress": "İlerleme: {}%", + "pleaseWait": "Lütfen Bekleyin", + "updateAvailable": "Güncelleme Var", + "notInstalled": "Yüklenmedi", + "pseudoVersion": "sözde versiyon", + "selectAll": "Hepsini Seç", + "deselectX": "{}'yi Seçimden Kaldır", + "xWillBeRemovedButRemainInstalled": "{} Obtainium'dan kaldırılacak ancak cihazınızda yüklü kalacaktır.", + "removeSelectedAppsQuestion": "Seçilen Uygulamaları Kaldırmak İstiyor musunuz?", + "removeSelectedApps": "Seçilen Uygulamaları Kaldır", + "updateX": "{}'yi Güncelle", + "installX": "{}'yi Yükle", + "markXTrackOnlyAsUpdated": "{}(Takip Edilen) olarak Güncellendi olarak İşaretle", + "changeX": "{}'yi Değiştir", + "installUpdateApps": "Uygulamaları Yükle/Güncelle", + "installUpdateSelectedApps": "Seçilen Uygulamaları Yükle/Güncelle", + "markXSelectedAppsAsUpdated": "Seçilen Uygulamaları {} olarak Güncellendi olarak İşaretle?", + "no": "Hayır", + "yes": "Evet", + "markSelectedAppsUpdated": "Seçilen Uygulamaları Güncellendi olarak İşaretle", + "pinToTop": "Üstte Tut", + "unpinFromTop": "Üstten Kaldır", + "resetInstallStatusForSelectedAppsQuestion": "Seçilen Uygulamaların Yükleme Durumunu Sıfırlamak İstiyor musunuz?", + "installStatusOfXWillBeResetExplanation": "Seçilen Uygulamaların yükleme durumu sıfırlanacak.\n\nBu, Obtainium'da gösterilen uygulama sürümünün başarısız güncellemeler veya diğer sorunlar nedeniyle yanlış olması durumunda yardımcı olabilir.", + "customLinkMessage": "Bu bağlantılar Obtainium'un kurulu olduğu cihazlarda çalışır", + "shareAppConfigLinks": "Uygulama yapılandırmasını HTML bağlantısı olarak paylaş", + "shareSelectedAppURLs": "Seçilen Uygulama URL'larını Paylaş", + "resetInstallStatus": "Yükleme Durumunu Sıfırla", + "more": "Daha Fazla", + "removeOutdatedFilter": "Güncel Olmayan Uygulama Filtresini Kaldır", + "showOutdatedOnly": "Yalnızca Güncel Olmayan Uygulamaları Göster", + "filter": "Filtre", + "filterApps": "Uygulamaları Filtrele", + "appName": "Uygulama Adı", + "author": "Yazar", + "upToDateApps": "Güncel Uygulamalar", + "nonInstalledApps": "Yüklenmemiş Uygulamalar", + "importExport": "İçe/Dışa Aktar", + "settings": "Ayarlar", + "exportedTo": "{}'e Dışa Aktarıldı", + "obtainiumExport": "Obtainium Dışa Aktar", + "invalidInput": "Geçersiz Giriş", + "importedX": "{} İçe Aktarıldı", + "obtainiumImport": "Obtainium İçe Aktar", + "importFromURLList": "URL Listesinden İçe Aktar (Örneğin OPML)", + "searchQuery": "Arama Sorgusu", + "appURLList": "Uygulama URL Listesi", + "line": "Satır", + "searchX": "{}'yi Ara", + "noResults": "Sonuç Bulunamadı", + "importX": "{} İçe Aktar", + "importedAppsIdDisclaimer": "İçe Aktarılan Uygulamalar yanlışlıkla \"Yüklenmedi\" olarak gösterilebilir.\nBunu düzeltmek için bunları Obtainium üzerinden yeniden yükleyin.\nBu, yalnızca URL ve üçüncü taraf içe aktarma yöntemlerini etkiler.\n\nYalnızca URL ve üçüncü taraf içe aktarma yöntemlerini etkiler.", + "importErrors": "İçe Aktarma Hataları", + "importedXOfYApps": "{}'den {} Uygulama İçe Aktarıldı.", + "followingURLsHadErrors": "Aşağıdaki URL'lerde hatalar oluştu:", + "selectURL": "URL Seç", + "selectURLs": "URL'leri Seç", + "pick": "Seç", + "theme": "Tema", + "dark": "Koyu", + "light": "Aydınlık", + "followSystem": "Sistemi Takip Et", + "followSystemThemeExplanation": "Sistem temasını takip etmek yalnızca üçüncü taraf uygulamaları kullanarak mümkündür", + "useBlackTheme": "Saf siyah koyu temasını kullan", + "appSortBy": "Uygulama Sıralama Ölçütü", + "authorName": "Yazar/Ad", + "nameAuthor": "Ad/Yazar", + "asAdded": "Eklendiği Gibi", + "appSortOrder": "Uygulama Sıralama Sırası", + "ascending": "Artan", + "descending": "Azalan", + "bgUpdateCheckInterval": "Arka Planda Güncelleme Kontrol Aralığı", + "neverManualOnly": "Asla - Yalnızca El ile", + "appearance": "Görünüm", + "showWebInAppView": "Kaynağı Uygulama Görünümünde Göster", + "pinUpdates": "Güncellemeleri Uygulamalar Görünümünün Üstüne Sabitle", + "updates": "Güncellemeler", + "sourceSpecific": "Kaynak Özel", + "appSource": "Uygulama Kaynağı", + "noLogs": "Günlük Yok", + "appLogs": "Uygulama Günlükleri", + "close": "Kapat", + "share": "Paylaş", + "appNotFound": "Uygulama Bulunamadı", + "obtainiumExportHyphenatedLowercase": "obtainium-ihracat", + "pickAnAPK": "APK Seç", + "appHasMoreThanOnePackage": "{}'nin birden fazla paketi var:", + "deviceSupportsXArch": "Cihazınız {} CPU mimarisini destekliyor.", + "deviceSupportsFollowingArchs": "Cihazınız aşağıdaki CPU mimarilerini destekliyor:", + "warning": "Uyarı", + "sourceIsXButPackageFromYPrompt": "Uygulama kaynağı '{}', ancak dağıtım paketi '{}'. Devam etmek istiyor musunuz?", + "updatesAvailable": "Güncellemeler Var", + "updatesAvailableNotifDescription": "Kullanıcıya Obtainium tarafından takip edilen bir veya daha fazla uygulama için güncelleme bulunduğuna dair bilgi verir", + "noNewUpdates": "Yeni güncelleme yok.", + "xHasAnUpdate": "{} güncelleme alıyor.", + "appsUpdated": "Uygulamalar Güncellendi", + "appsNotUpdated": "Uygulamalar güncellenemedi", + "appsUpdatedNotifDescription": "Kullanıcıya bir veya daha fazla uygulamanın arka planda güncellendiğine dair bilgi verir", + "xWasUpdatedToY": "{} şu sürüme güncellendi: {}.", + "xWasNotUpdatedToY": "{} öğesi {} olarak güncellenemedi.", + "errorCheckingUpdates": "Güncellemeler Kontrol Edilirken Hata Oluştu", + "errorCheckingUpdatesNotifDescription": "Arka planda güncelleme kontrolü sırasında hata oluştuğunda görünen bir bildirim", + "appsRemoved": "Uygulamalar Kaldırıldı", + "appsRemovedNotifDescription": "Bir veya daha fazla uygulamanın yüklenirken hata nedeniyle kaldırıldığını bildiren bir bildirim", + "xWasRemovedDueToErrorY": "{} şu hatadan dolayı kaldırıldı: {}", + "completeAppInstallation": "Uygulama Yüklemeyi Tamamla", + "obtainiumMustBeOpenToInstallApps": "Uygulamaları yüklemek için Obtainium'un açık olması gerekiyor", + "completeAppInstallationNotifDescription": "Kullanıcıdan Obtainium'a geri dönüp bir uygulama yüklemeyi tamamlamasını isteyen bir bildirim", + "checkingForUpdates": "Güncellemeler Kontrol Ediliyor", + "checkingForUpdatesNotifDescription": "Güncellemeler kontrol edildiğinde görünen geçici bir bildirim", + "pleaseAllowInstallPerm": "Lütfen Obtainium'un uygulama yüklemesine izin verin", + "trackOnly": "Sadece Takip Et", + "errorWithHttpStatusCode": "Hata {}", + "versionCorrectionDisabled": "Sürüm düzeltme devre dışı bırakıldı (eklenti çalışmıyor gibi görünüyor)", + "unknown": "Bilinmiyor", + "none": "Hiçbiri", + "all": "Tümü", + "never": "Asla", + "latestVersionX": "En Son Sürüm: {}", + "installedVersionX": "Yüklenen Sürüm: {}", + "lastUpdateCheckX": "Son Güncelleme Kontrolü: {}", + "remove": "Kaldır", + "yesMarkUpdated": "Evet, Güncellendi olarak İşaretle", + "fdroid": "Resmi F-Droid", + "appIdOrName": "Uygulama Kimliği veya Adı", + "appId": "Uygulama Kimliği", + "appWithIdOrNameNotFound": "Bu kimlik veya ada sahip bir uygulama bulunamadı", + "reposHaveMultipleApps": "Depolar birden fazla uygulama içerebilir", + "fdroidThirdPartyRepo": "F-Droid Üçüncü Parti Depo", + "install": "Yükle", + "markInstalled": "Yüklendi olarak İşaretle", + "update": "Güncelle", + "markUpdated": "Güncellendi olarak İşaretle", + "additionalOptions": "Ek Seçenekler", + "disableVersionDetection": "Sürüm Algılama Devre Dışı", + "noVersionDetectionExplanation": "Bu seçenek, sürüm algılamanın doğru çalışmadığı uygulamalar için kullanılmalıdır.", + "downloadingX": "{} İndiriliyor", + "downloadX": "İndir {}", + "downloadedX": "İndirildi {}", + "releaseAsset": "Varlık Serbest Bırakma", + "downloadNotifDescription": "Bir uygulamanın indirme sürecinde ilerlemeyi bildiren bir bildirim", + "noAPKFound": "APK bulunamadı", + "noVersionDetection": "Sürüm Algılanamıyor", + "categorize": "Kategorize Et", + "categories": "Kategoriler", + "category": "Kategori", + "noCategory": "Kategori Yok", + "noCategories": "Kategoriler Yok", + "deleteCategoriesQuestion": "Kategorileri Silmek İstiyor musunuz?", + "categoryDeleteWarning": "Silinen kategorilerdeki tüm uygulamalar kategorisiz olarak ayarlanacaktır.", + "addCategory": "Kategori Ekle", + "label": "Etiket", + "language": "Dil", + "copiedToClipboard": "Panoya Kopyalandı", + "storagePermissionDenied": "Depolama izni reddedildi", + "selectedCategorizeWarning": "Bu, seçilen uygulamalar için mevcut kategori ayarlarını değiştirecektir.", + "filterAPKsByRegEx": "APK'leri Düzenli İfade ile Filtrele", + "removeFromObtainium": "Obtainium'dan Kaldır", + "uninstallFromDevice": "Cihazdan Kaldır", + "onlyWorksWithNonVersionDetectApps": "Yalnızca Sürüm Algılaması Devre Dışı Uygulamalar İçin Çalışır.", + "releaseDateAsVersion": "Sürüm Olarak Yayın Tarihi Kullan", + "releaseTitleAsVersion": "Sürüm dizesi olarak sürüm başlığını kullan", + "releaseDateAsVersionExplanation": "Bu seçenek, sürüm algılamanın doğru çalışmadığı ancak bir sürüm tarihinin mevcut olduğu uygulamalar için kullanılmalıdır.", + "changes": "Değişiklikler", + "releaseDate": "Yayın Tarihi", + "importFromURLsInFile": "Dosyadaki URL'lerden İçe Aktar", + "versionDetectionExplanation": "Sürüm dizesini işletim sistemi tarafından algılanan sürümle uzlaştır", + "versionDetection": "Sürüm Tespiti", + "standardVersionDetection": "Standart sürüm tespiti", + "groupByCategory": "Kategoriye Göre Grupla", + "autoApkFilterByArch": "Mümkünse APK'leri CPU mimarisi ile filtreleme girişimi", + "autoLinkFilterByArch": "Mümkünse bağlantıları CPU mimarisine göre filtrelemeye çalışın", + "overrideSource": "Öncelenecek Kaynak", + "dontShowAgain": "Bunu tekrar gösterme", + "dontShowTrackOnlyWarnings": "'Yalnızca Takip Edilen' uyarılarını gösterme", + "dontShowAPKOriginWarnings": "APK kaynağı uyarılarını gösterme", + "moveNonInstalledAppsToBottom": "Yüklenmemiş Uygulamaları Uygulamalar Görünümünün Altına Taşı", + "gitlabPATLabel": "GitLab Kişisel Erişim Belirteci", + "about": "Hakkında", + "requiresCredentialsInSettings": "{}: Bu, ek kimlik bilgilerine ihtiyaç duyar (Ayarlar'da)", + "checkOnStart": "Başlangıçta güncellemeleri kontrol et", + "tryInferAppIdFromCode": "Uygulama kimliğini kaynak kodundan çıkarma girişimi", + "removeOnExternalUninstall": "Harici kaldırmada otomatik olarak kaldırılan uygulamalar", + "pickHighestVersionCode": "Otomatik olarak en yüksek sürüm kodlu APK'yi seç", + "checkUpdateOnDetailPage": "Uygulama detay sayfasını açarken güncellemeleri kontrol et", + "disablePageTransitions": "Sayfa geçiş animasyonlarını devre dışı bırak", + "reversePageTransitions": "Sayfa geçiş animasyonlarını tersine çevir", + "minStarCount": "Minimum Yıldız Sayısı", + "addInfoBelow": "Bu bilgiyi aşağıya ekle.", + "addInfoInSettings": "Bu bilgiyi Ayarlar'da ekleyin.", + "githubSourceNote": "GitHub hız sınırlaması bir API anahtarı kullanılarak atlanabilir.", + "sortByLastLinkSegment": "Bağlantının yalnızca son bölümüne göre sırala", + "filterReleaseNotesByRegEx": "Sürüm Notlarını Düzenli İfade ile Filtrele", + "customLinkFilterRegex": "Özel APK Bağlantı Filtresi Düzenli İfade ile (Varsayılan '.apk$')", + "appsPossiblyUpdated": "Uygulama Güncellemeleri Denendi", + "appsPossiblyUpdatedNotifDescription": "Kullanıcıya bir veya daha fazla uygulamanın arka planda potansiyel olarak güncellendiğini bildiren bildirim", + "xWasPossiblyUpdatedToY": "{} muhtemelen {} sürümüne güncellendi.", + "enableBackgroundUpdates": "Arka plan güncellemelerini etkinleştir", + "backgroundUpdateReqsExplanation": "Arka plan güncellemeleri tüm uygulamalar için mümkün olmayabilir.", + "backgroundUpdateLimitsExplanation": "Arka plan kurulumunun başarısı, Obtainium'un açıldığında ancak belirlenebilir.", + "verifyLatestTag": "'latest' etiketini doğrula", + "intermediateLinkRegex": "Ziyaret Edilecek 'Orta Düzey' Bağlantıyı Filtrele", + "filterByLinkText": "Bağlantıları bağlantı metnine göre filtrele", + "matchLinksOutsideATags": " etiketleri dışındaki bağlantıları eşleştirin", + "intermediateLinkNotFound": "Ara bağlantı bulunamadı", + "intermediateLink": "Ara bağlantı", + "exemptFromBackgroundUpdates": "Arka plan güncellemelerinden muaf tut (etkinse)", + "bgUpdatesOnWiFiOnly": "WiFi olmadığında arka plan güncellemelerini devre dışı bırak", + "bgUpdatesWhileChargingOnly": "Şarj olmadığında arka plan güncellemelerini devre dışı bırakma", + "autoSelectHighestVersionCode": "Otomatik olarak en yüksek sürüm kodunu seç", + "versionExtractionRegEx": "Sürüm Çıkarma Düzenli İfade", + "trimVersionString": "RegEx ile Sürüm Dizesini Kırpma", + "matchGroupToUseForX": "\"{}\" için Kullanılacak Grubu Eşleştirin", + "matchGroupToUse": "Sürüm Çıkarma Regex için Kullanılacak Eşleşme Grubu", + "highlightTouchTargets": "Daha az belirgin dokunma hedeflerini vurgula", + "pickExportDir": "Dışa Aktarılacak Klasörü Seç", + "autoExportOnChanges": "Değişikliklerde otomatik olarak dışa aktar", + "includeSettings": "Ayarları dahil et", + "filterVersionsByRegEx": "Sürümleri Düzenli İfade ile Filtrele", + "trySelectingSuggestedVersionCode": "Önerilen sürüm kodunu seçmeyi dene", + "dontSortReleasesList": "API'den sıralama düzenini koru", + "reverseSort": "Ters sıralama", + "takeFirstLink": "İlk bağlantıyı al", + "skipSort": "Sıralamayı atla", + "debugMenu": "Hata Ayıklama Menüsü", + "bgTaskStarted": "Arka plan görevi başladı - günlükleri kontrol et.", + "runBgCheckNow": "Arka Plan Güncelleme Kontrolünü Şimdi Çalıştır", + "versionExtractWholePage": "Tüm Sayfaya Sürüm Çıkarma Regex'i Uygula", + "installing": "Yükleniyor", + "skipUpdateNotifications": "Güncelleme bildirimlerini atla", + "updatesAvailableNotifChannel": "Güncellemeler Mevcut", + "appsUpdatedNotifChannel": "Güncellenen Uygulamalar", + "appsPossiblyUpdatedNotifChannel": "Uygulama Güncellemeleri Denendi", + "errorCheckingUpdatesNotifChannel": "Güncellemeler Kontrol Edilirken Hata", + "appsRemovedNotifChannel": "Kaldırılan Uygulamalar", + "downloadingXNotifChannel": "{} İndiriliyor", + "completeAppInstallationNotifChannel": "Uygulama Kurulumu Tamamlandı", + "checkingForUpdatesNotifChannel": "Güncellemeler Kontrol Ediliyor", + "onlyCheckInstalledOrTrackOnlyApps": "Yalnızca yüklü ve Yalnızca İzleme Uygulamalarını güncelleme", + "supportFixedAPKURL": "Sabit APK URL'lerini destekleyin", + "selectX": "{} Tanesini Seç", + "parallelDownloads": "Paralel indirmelere izin ver", + "useShizuku": "Yüklemek için Shizuku veya Sui'yi kullanın", + "shizukuBinderNotFound": "Shizuku servisi çalışmıyor", + "shizukuOld": "Eski Shizuku sürümü (<11) - güncelleyin", + "shizukuOldAndroidWithADB": "Shizuku ADB ile Android < 8.1 üzerinde çalışıyor - Android'i güncelleyin veya bunun yerine Sui kullanın", + "shizukuPretendToBeGooglePlay": "Google Play'i yükleme kaynağı olarak ayarlayın (Shizuku kullanılıyorsa)", + "useSystemFont": "Sistem yazı tipini kullan", + "useVersionCodeAsOSVersion": "Uygulama versionCode'unu işletim sistemi tarafından algılanan sürüm olarak kullan", + "requestHeader": "Başlık talep et", + "useLatestAssetDateAsReleaseDate": "Yayın tarihi olarak en son öğe yüklemesini kullan", + "defaultPseudoVersioningMethod": "Varsayılan Sözde Sürüm Oluşturma Yöntemi", + "partialAPKHash": "Kısmi APK Karması", + "APKLinkHash": "APK Bağlantı Karması", + "directAPKLink": "Doğrudan APK Bağlantısı", + "pseudoVersionInUse": "Sözde Versiyon Kullanımda", + "installed": "Kurulmuş", + "latest": "En sonuncu", + "invertRegEx": "Normal ifadeyi ters çevir", + "note": "Not", + "selfHostedNote": "\"{}\" açılır menüsü, herhangi bir kaynağın kendi kendine barındırılan/özel örneklerine ulaşmak için kullanılabilir.", + "badDownload": "APK ayrıştırılamadı (uyumsuz veya kısmi indirme)", + "beforeNewInstallsShareToAppVerifier": "Yeni Uygulamaları AppVerifier ile paylaşın (varsa)", + "appVerifierInstructionToast": "AppVerifier ile paylaşın, hazır olduğunuzda buraya dönün.", + "wiki": "Yardım/Wiki", + "crowdsourcedConfigsLabel": "Kitle Kaynaklı Uygulama Yapılandırmaları (riski size ait olmak üzere kullanın)", + "crowdsourcedConfigsShort": "Kitle Kaynaklı Uygulama Yapılandırmaları", + "allowInsecure": "Güvensiz HTTP isteklerine izin ver", + "stayOneVersionBehind": "En son sürümün bir sürüm gerisinde kalın", + "useFirstApkOfVersion": "Birden fazla APK arasından ilkini otomatik seçme", + "refreshBeforeDownload": "İndirmeden önce uygulama ayrıntılarını yenileyin", + "tencentAppStore": "Tencent App Store", + "coolApk": "CoolApk", + "vivoAppStore": "vivo App Store (CN)", + "name": "İsim", + "smartname": "İsim (Akıllı)", + "sortMethod": "Sıralama Yöntemi", + "welcome": "Hoş geldiniz", + "documentationLinksNote": "Aşağıda bağlantısı verilen Obtainium GitHub sayfası, uygulamayı nasıl kullanacağınızı anlamanıza yardımcı olacak videolara, makalelere, tartışmalara ve diğer kaynaklara bağlantılar içerir.", + "batteryOptimizationNote": "Obtainium için işletim sistemi pil optimizasyonlarını devre dışı bırakırsanız arka planda indirmelerin daha güvenilir şekilde çalışabileceğini unutmayın.", + "fileDeletionError": "Dosya silinemedi (elle silmeyi deneyin ve sonra tekrar deneyin): \"{}\"", + "foregroundService": "Obtainium ön plan hizmeti", + "foregroundServiceExplanation": "Güncelleme denetimi için bir ön plan hizmeti kullanın (daha güvenilir, daha fazla güç tüketir)", + "fgServiceNotice": "Bu bildirim arka planda güncelleme kontrolü için gereklidir (işletim sistemi ayarlarından gizlenebilir)", + "excludeSecrets": "Sırları hariç tut", + "GHReqPrefix": "GitHub istekleri için 'sky22333/hubproxy' örneği", + "includeZips": "ZIP dosyalarını dahil edin", + "zippedApkFilterRegEx": "ZIP içindeki APK'ları filtreleme", + "removeAppQuestion": { + "one": "Uygulamayı Kaldır?", + "other": "Uygulamaları Kaldır?" + }, + "tooManyRequestsTryAgainInMinutes": { + "one": "Çok fazla istek (hız sınırlı) - {} dakika sonra tekrar deneyin", + "other": "Çok fazla istek (hız sınırlı) - {} dakika sonra tekrar deneyin" + }, + "bgUpdateGotErrorRetryInMinutes": { + "one": "Arka plan güncelleme kontrolü bir hatayla karşılaştı, {} dakika sonra tekrar kontrol edilecek", + "other": "Arka plan güncelleme kontrolü bir hatayla karşılaştı, {} dakika sonra tekrar kontrol edilecek" + }, + "bgCheckFoundUpdatesWillNotifyIfNeeded": { + "one": "Arka plan güncelleme kontrolü {} güncelleme buldu - gerektiğinde kullanıcıyı bilgilendirecek", + "other": "Arka plan güncelleme kontrolü {} güncelleme buldu - gerektiğinde kullanıcıyı bilgilendirecek" + }, + "apps": { + "one": "{} Uygulama", + "other": "{} Uygulamalar" + }, + "url": { + "one": "{} URL", + "other": "{} URL" + }, + "minute": { + "one": "{} dakika", + "other": "{} dakika" + }, + "hour": { + "one": "{} saat", + "other": "{} saat" + }, + "day": { + "one": "{} gün", + "other": "{} gün" + }, + "clearedNLogsBeforeXAfterY": { + "one": "{n} log temizlendi (önce = {before}, sonra = {after})", + "other": "{n} log temizlendi (önce = {before}, sonra = {after})" + }, + "xAndNMoreUpdatesAvailable": { + "one": "{} ve 1 diğer uygulama güncellemeye sahip.", + "other": "{} ve {} daha fazla uygulama güncellemeye sahip." + }, + "xAndNMoreUpdatesInstalled": { + "one": "{} ve 1 diğer uygulama güncellendi.", + "other": "{} ve {} daha fazla uygulama güncellendi." + }, + "xAndNMoreUpdatesFailed": { + "one": "{} ve 1 uygulama daha güncellenemedi.", + "other": "{} ve {} daha fazla uygulama güncellenemedi." + }, + "xAndNMoreUpdatesPossiblyInstalled": { + "one": "{} ve 1 diğer uygulama muhtemelen güncellendi.", + "other": "{} ve {} daha fazla uygulama muhtemelen güncellendi." + }, + "apk": { + "one": "{} APK", + "other": "{} APK" + } +} diff --git a/assets/translations/uk.json b/assets/translations/uk.json new file mode 100644 index 0000000..a3f720a --- /dev/null +++ b/assets/translations/uk.json @@ -0,0 +1,402 @@ +{ + "invalidURLForSource": "Неправильна URL-адреса для джерела застосунку {}", + "noReleaseFound": "Не вдалося знайти відповідне видання", + "noVersionFound": "Не вдалося визначити версію видання", + "urlMatchesNoSource": "URL не відповідає відомому джерелу", + "cantInstallOlderVersion": "Не можна встановити старішу версію застосунку", + "appIdMismatch": "Ідентифікатор пакета, завантажений, не відповідає ідентифікатору існуючого застосунку", + "functionNotImplemented": "Цей клас не реалізував цю функцію", + "placeholder": "Заповнювач", + "someErrors": "Виникла деяка помилка", + "unexpectedError": "Неочікувана помилка", + "ok": "Добре", + "and": "та", + "githubPATLabel": "Персональний ключ доступу GitHub (збільшує обмеження на швидкість)", + "includePrereleases": "Включити попередні видання", + "fallbackToOlderReleases": "Повернутися до старіших видань", + "filterReleaseTitlesByRegEx": "Фільтрувати заголовки видань за допомогою регулярного виразу", + "invalidRegEx": "Неприпустимий регулярний вираз", + "noDescription": "Немає опису", + "cancel": "Скасувати", + "continue": "Продовжити", + "requiredInBrackets": "(Обов'язково)", + "dropdownNoOptsError": "ПОМИЛКА: В ВИПАДАЮЧОМУ СПИСКУ МАЄ БУТИ ХОЧА Б ОДИН ЕЛЕМЕНТ", + "colour": "Колір", + "standard": "Стандартний", + "custom": "Нестандартний", + "useMaterialYou": "Використовуйте матеріал, який ви", + "githubStarredRepos": "Відзначені репозиторії GitHub", + "uname": "Ім'я користувача", + "wrongArgNum": "Надано неправильну кількість аргументів", + "xIsTrackOnly": "{} - тільки відстежування", + "source": "Джерело", + "app": "застосунок", + "appsFromSourceAreTrackOnly": "Застосунки з цього джерела є лише для відстежування.", + "youPickedTrackOnly": "Ви вибрали опцію лише для відстежування.", + "trackOnlyAppDescription": "Застосунок буде відстежуватися для оновлень, але Obtainium не зможе його завантажити або встановити.", + "cancelled": "Скасовано", + "appAlreadyAdded": "Застосунок вже додано", + "alreadyUpToDateQuestion": "Застосунок вже оновлено?", + "addApp": "Додати", + "appSourceURL": "URL-адреса джерела застосунку", + "error": "Помилка", + "add": "Додати", + "searchSomeSourcesLabel": "Пошук (Лише деякі джерела)", + "search": "Пошук", + "additionalOptsFor": "Додаткові опції для {}", + "supportedSources": "Підтримувані джерела", + "trackOnlyInBrackets": "(Тільки для відстеження)", + "searchableInBrackets": "(Можливий пошук)", + "appsString": "Застосунки", + "noApps": "Застосунків немає", + "noAppsForFilter": "Застосунків для фільтрації немає", + "byX": "Від {}", + "percentProgress": "Прогрес: {}%", + "pleaseWait": "Будь ласка, зачекайте", + "updateAvailable": "Доступно оновлення", + "notInstalled": "Не встановлено", + "pseudoVersion": "псевдо-версія", + "selectAll": "Вибрати все", + "deselectX": "Скасувати вибір {}", + "xWillBeRemovedButRemainInstalled": "{} буде видалено з Obtainium, але залишиться встановленим на пристрої.", + "removeSelectedAppsQuestion": "Видалити вибрані застосунки?", + "removeSelectedApps": "Видалити вибрані застосунки", + "updateX": "Оновити {}", + "installX": "Встановити {}", + "markXTrackOnlyAsUpdated": "Позначити {}\n(Тільки відстежування)\nяк оновлено", + "changeX": "Змінити {}", + "installUpdateApps": "Встановити/Оновити застосунки", + "installUpdateSelectedApps": "Встановити/Оновити вибрані застосунки", + "markXSelectedAppsAsUpdated": "Позначити {} вибрані застосунки як оновлені?", + "no": "Ні", + "yes": "Так", + "markSelectedAppsUpdated": "Позначити вибрані застосунки як оновлені", + "pinToTop": "Закріпити угорі", + "unpinFromTop": "Відкріпити зверху", + "resetInstallStatusForSelectedAppsQuestion": "Скинути статус встановлення для вибраних застосунків?", + "installStatusOfXWillBeResetExplanation": "Статус встановлення будь-яких вибраних застосунків буде скинутий.\n\nЦе може допомогти, коли версія застосунку, відображена в Obtainium, є неправильною через невдалі оновлення або інші проблеми.", + "customLinkMessage": "Ці посилання працюють на пристроях з встановленим Obtainium", + "shareAppConfigLinks": "Поділитися посиланнями на конфігурацію Застосунку як HTML", + "shareSelectedAppURLs": "Поділитися вибраними URL-адресами застосунків", + "resetInstallStatus": "Скинути статус встановлення", + "more": "Більше", + "removeOutdatedFilter": "Видалити фільтр застарілих застосунків", + "showOutdatedOnly": "Показати лише застарілі застосунки", + "filter": "Фільтр", + "filterApps": "Фільтрувати застосунки", + "appName": "Назва застосунку", + "author": "Автор", + "upToDateApps": "Актуальні застосунки", + "nonInstalledApps": "Невстановлені застосунки", + "importExport": "Імпорт/Експорт", + "settings": "Налаштування", + "exportedTo": "Експортовано в {}", + "obtainiumExport": "Експорт з Obtainium", + "invalidInput": "Недійсний ввід", + "importedX": "Імпортовано {}", + "obtainiumImport": "Імпорт в Obtainium", + "importFromURLList": "Імпорт зі списку URL-адрес", + "searchQuery": "Пошуковий запит", + "appURLList": "Список URL-адрес застосунків", + "line": "Лінія", + "searchX": "Пошук {}", + "noResults": "Результати відсутні", + "importX": "Імпорт {}", + "importedAppsIdDisclaimer": "Імпортовані застосунки можуть неправильно відображатися як \"Не встановлені\".\nДля виправлення цього перевстановіть їх через Obtainium.\nЦе не повинно вплинути на дані застосунків.\n\nПов'язано лише з URL-адресами та імпортом від третіх сторін.", + "importErrors": "Помилки імпорту", + "importedXOfYApps": "Імпортовано {} з {} застосунків.", + "followingURLsHadErrors": "Помилки в наступних URL-адресах:", + "selectURL": "Вибрати URL", + "selectURLs": "Вибрати URL-адреси", + "pick": "Вибрати", + "theme": "Тема", + "dark": "Темна", + "light": "Світла", + "followSystem": "Дотримуватися системи", + "followSystemThemeExplanation": "Зміна теми системи можлива лише за допомогою сторонніх додатків", + "useBlackTheme": "Використовувати чорну тему (Amoled)", + "appSortBy": "Сортувати застосунки за", + "authorName": "Автор/Назва", + "nameAuthor": "Назва/Автор", + "asAdded": "За додаванням", + "appSortOrder": "Порядок сортування застосунків", + "ascending": "За зростанням", + "descending": "За спаданням", + "bgUpdateCheckInterval": "Інтервал перевірки оновлень у фоновому режимі", + "neverManualOnly": "Ніколи - Тільки вручну", + "appearance": "Вигляд", + "showWebInAppView": "Показати джерело застосунку у вигляді веб-сторінки", + "pinUpdates": "Закріпити оновлення у верхній частині вигляду застосунків", + "updates": "Оновлення", + "sourceSpecific": "Певне джерело", + "appSource": "Джерело застосунку", + "noLogs": "Немає логів", + "appLogs": "Лог застосунку", + "close": "Закрити", + "share": "Поділитися", + "appNotFound": "Застосунок не знайдено", + "obtainiumExportHyphenatedLowercase": "експорт з Obtainium", + "pickAnAPK": "Вибрати APK", + "appHasMoreThanOnePackage": "{} має більше одного пакету:", + "deviceSupportsXArch": "Ваш пристрій підтримує архітектуру процесора {}.", + "deviceSupportsFollowingArchs": "Ваш пристрій підтримує наступні архітектури процесора:", + "warning": "Попередження", + "sourceIsXButPackageFromYPrompt": "Джерело застосунку - '{}' але пакет випуску походить з '{}'. Продовжити?", + "updatesAvailable": "Доступні оновлення", + "updatesAvailableNotifDescription": "Повідомляє користувача, що доступні оновлення для одного чи декількох застосунків, які відстежує Obtainium", + "noNewUpdates": "Немає нових оновлень.", + "xHasAnUpdate": "{} має оновлення.", + "appsUpdated": "Застосунки оновлено", + "appsNotUpdated": "Не вдалося оновити програми", + "appsUpdatedNotifDescription": "Повідомляє користувача, що оновлення одного чи декількох застосунків було застосовано в фоновому режимі", + "xWasUpdatedToY": "{} було оновлено до {}.", + "xWasNotUpdatedToY": "Не вдалося оновити {} на {}.", + "errorCheckingUpdates": "Помилка перевірки оновлень", + "errorCheckingUpdatesNotifDescription": "Повідомлення, яке з'являється, коли перевірка оновлень в фоновому режимі завершується невдачею", + "appsRemoved": "Застосунки видалено", + "appsRemovedNotifDescription": "Повідомляє користувача, що один чи декілька застосунків були видалені через помилки при завантаженні", + "xWasRemovedDueToErrorY": "{} було видалено через цю помилку: {}", + "completeAppInstallation": "Завершення установки застосунку", + "obtainiumMustBeOpenToInstallApps": "Для встановлення застосунків Obtainium має бути відкритий", + "completeAppInstallationNotifDescription": "Прохання користувача повернутися до Obtainium для завершення установки застосунку", + "checkingForUpdates": "Перевірка оновлень", + "checkingForUpdatesNotifDescription": "Тимчасове повідомлення, яке з'являється при перевірці оновлень", + "pleaseAllowInstallPerm": "Будь ласка, дозвольте Obtainium встановлювати застосунки", + "trackOnly": "Тільки відстеження", + "errorWithHttpStatusCode": "Помилка {} HTTP-коду", + "versionCorrectionDisabled": "Виправлення версії вимкнено (здається, плагін не працює)", + "unknown": "Невідомо", + "none": "Нічого", + "all": "Усе.", + "never": "Ніколи", + "latestVersionX": "Остання версія: {}", + "installedVersionX": "Встановлено: {}", + "lastUpdateCheckX": "Остання перевірка оновлень: {}", + "remove": "Видалити", + "yesMarkUpdated": "Так, позначити як оновлене", + "fdroid": "F-Droid Офіційний", + "appIdOrName": "Ідентифікатор або назва застосунку", + "appId": "Ідентифікатор застосунку", + "appWithIdOrNameNotFound": "Застосунок з таким ідентифікатором або назвою не знайдено", + "reposHaveMultipleApps": "Сховища можуть містити кілька застосунків", + "fdroidThirdPartyRepo": "F-Droid Стороннє сховище", + "install": "Встановити", + "markInstalled": "Позначити як встановлене", + "update": "Оновити", + "markUpdated": "Позначити як оновлене", + "additionalOptions": "Додаткові опції", + "disableVersionDetection": "Вимкнути визначення версії", + "noVersionDetectionExplanation": "Цю опцію слід використовувати лише для застосунків, де визначення версії працює неправильно.", + "downloadingX": "Завантаження {}", + "downloadX": "Завантажити {}", + "downloadedX": "Завантажено {}", + "releaseAsset": "Звільнити актив", + "downloadNotifDescription": "Повідомляє користувача про прогрес завантаження застосунку", + "noAPKFound": "APK не знайдено", + "noVersionDetection": "Визначення версії відключено", + "categorize": "Категоризувати", + "categories": "Категорії", + "category": "Категорія", + "noCategory": "Без категорії", + "noCategories": "Немає категорій", + "deleteCategoriesQuestion": "Видалити категорії?", + "categoryDeleteWarning": "Усі застосунки у видалених категоріях будуть переведені у некатегоризовані.", + "addCategory": "Додати категорію", + "label": "Мітка", + "language": "Мова", + "copiedToClipboard": "Скопійовано в буфер обміну", + "storagePermissionDenied": "Відмовлено у дозволі на доступ до сховища", + "selectedCategorizeWarning": "Це замінить будь-які існуючі налаштування категорій для вибраних застосунків.", + "filterAPKsByRegEx": "Фільтрувати APK за регулярним виразом", + "removeFromObtainium": "Видалити з Obtainium", + "uninstallFromDevice": "Видалити з пристрою", + "onlyWorksWithNonVersionDetectApps": "Працює лише з застосунками з вимкненим визначенням версії.", + "releaseDateAsVersion": "Використовувати дату випуску як рядок версії", + "releaseTitleAsVersion": "Використовувати назву випуску як рядок версії", + "releaseDateAsVersionExplanation": "Цю опцію слід використовувати лише для застосунків, де визначення версії працює неправильно, але є дата випуску.", + "changes": "Зміни", + "releaseDate": "Дата випуску", + "importFromURLsInFile": "Імпорт з URL-адрес у файлі (наприклад, OPML)", + "versionDetectionExplanation": "Порівняти рядок версії з версією, визначеною операційною системою", + "versionDetection": "Визначення версії", + "standardVersionDetection": "Стандартне визначення версії", + "groupByCategory": "Групувати за категоріями", + "autoApkFilterByArch": "Спробувати фільтрувати APK за архітектурою ЦП, якщо можливо", + "autoLinkFilterByArch": "Спробуйте відфільтрувати посилання за архітектурою процесора, якщо це можливо", + "overrideSource": "Перевизначити джерело", + "dontShowAgain": "Не показувати це знову", + "dontShowTrackOnlyWarnings": "Не показувати попередження про 'Тільки відстеження'", + "dontShowAPKOriginWarnings": "Не показувати попередження про походження APK", + "moveNonInstalledAppsToBottom": "Перемістити невстановлені застосунки вниз у перегляді застосунків", + "gitlabPATLabel": "Особистий токен GitLab (Увімкнення пошуку та краще виявлення APK)", + "about": "Про програму", + "requiresCredentialsInSettings": "{} потребує додаткових облікових даних (у налаштуваннях)", + "checkOnStart": "Перевірити наявність оновлень при запуску", + "tryInferAppIdFromCode": "Спробувати вивести ідентифікатор застосунку з вихідного коду", + "removeOnExternalUninstall": "Автоматично видаляти застосунки, які було видалено зовнішнім чином", + "pickHighestVersionCode": "Автоматично вибрати APK з найвищим кодом версії", + "checkUpdateOnDetailPage": "Перевіряти наявність оновлень при відкритті сторінки деталей застосунку", + "disablePageTransitions": "Вимкнути анімації переходів між сторінками", + "reversePageTransitions": "Зворотні анімації переходів між сторінками", + "minStarCount": "Мінімальна кількість зірок", + "addInfoBelow": "Додати цю інформацію нижче.", + "addInfoInSettings": "Додати цю інформацію у налаштуваннях.", + "githubSourceNote": "Лімітування швидкості GitHub можна уникнути, використовуючи ключ API.", + "sortByLastLinkSegment": "Сортувати лише за останнім сегментом посилання", + "filterReleaseNotesByRegEx": "Фільтрувати примітки до релізу за регулярним виразом", + "customLinkFilterRegex": "Фільтр кастомного посилання на APK за регулярним виразом (за замовчуванням '.apk$')", + "appsPossiblyUpdated": "Спроб оновлення застосунків", + "appsPossiblyUpdatedNotifDescription": "Повідомляє користувача, що оновлення одного або декількох застосунків можливо були застосовані в фоновому режимі", + "xWasPossiblyUpdatedToY": "{} можливо було оновлено до {}.", + "enableBackgroundUpdates": "Увімкнути оновлення в фоновому режимі", + "backgroundUpdateReqsExplanation": "Оновлення в фоновому режимі може бути неможливим для всіх застосунків.", + "backgroundUpdateLimitsExplanation": "Успіх фонової установки може бути визначений лише після відкриття Obtainium.", + "verifyLatestTag": "Перевірити тег 'latest'", + "intermediateLinkRegex": "Фільтр для 'Проміжного' Посилання для Відвідування", + "filterByLinkText": "Фільтрувати посилання за текстом посилання", + "matchLinksOutsideATags": "Зіставлення посилань поза тегами ", + "intermediateLinkNotFound": "Проміжне посилання не знайдено", + "intermediateLink": "Проміжне посилання", + "exemptFromBackgroundUpdates": "Виключено з фонових оновлень (якщо ввімкнено)", + "bgUpdatesOnWiFiOnly": "Вимкнути фонові оновлення поза Wi-Fi", + "bgUpdatesWhileChargingOnly": "Вимкнути фонові оновлення, коли не заряджається", + "autoSelectHighestVersionCode": "Автоматичний вибір APK з найвищим кодом версії", + "versionExtractionRegEx": "Регулярний вираз для вилучення рядка версії", + "trimVersionString": "Обрізати рядок версії за допомогою RegEx", + "matchGroupToUseForX": "Група збігів для \"{}\"", + "matchGroupToUse": "Група співпадінь для використання в регулярному виразі вилучення версії", + "highlightTouchTargets": "Підсвічувати менш очевидні області дотику", + "pickExportDir": "Вибрати каталог експорту", + "autoExportOnChanges": "Автоматичний експорт при змінах", + "includeSettings": "Включити налаштування", + "filterVersionsByRegEx": "Фільтрувати версії за регулярним виразом", + "trySelectingSuggestedVersionCode": "Спробуйте вибрати запропонований код версії APK", + "dontSortReleasesList": "Зберігати порядок випуску з API", + "reverseSort": "Зворотне сортування", + "takeFirstLink": "Вибрати перше посилання", + "skipSort": "Пропустити сортування", + "debugMenu": "Меню налагодження", + "bgTaskStarted": "Запущено фонове завдання - перевірте журнали.", + "runBgCheckNow": "Запустити перевірку оновлень в фоновому режимі зараз", + "versionExtractWholePage": "Застосувати регулярний вираз вилучення версії до всієї сторінки", + "installing": "Встановлення", + "skipUpdateNotifications": "Пропустити сповіщення про оновлення", + "updatesAvailableNotifChannel": "Доступні оновлення", + "appsUpdatedNotifChannel": "Застосунки оновлені", + "appsPossiblyUpdatedNotifChannel": "Спроба оновлення застосунків", + "errorCheckingUpdatesNotifChannel": "Помилка перевірки оновлень", + "appsRemovedNotifChannel": "Застосунки видалені", + "downloadingXNotifChannel": "Завантаження {}", + "completeAppInstallationNotifChannel": "Завершення встановлення застосунку", + "checkingForUpdatesNotifChannel": "Перевірка оновлень", + "onlyCheckInstalledOrTrackOnlyApps": "Перевіряти лише встановлені та застосунки, які відстежуються для оновлень", + "supportFixedAPKURL": "Підтримка фіксованих посилань на APK", + "selectX": "Вибрати {}", + "parallelDownloads": "Дозволити паралельні завантаження", + "useShizuku": "Використовуйте Shizuku або Sui для встановлення", + "shizukuBinderNotFound": "Сумісний сервіс Shizuku не було знайдено", + "shizukuOld": "Стара версія Shizuku (<11) - оновіть її", + "shizukuOldAndroidWithADB": "Shizuku працює на Android < 8.1 з ADB - оновіть Android або використовуйте Sui замість нього", + "shizukuPretendToBeGooglePlay": "Виберіть Google Play як джерело встановлення (якщо використовується Shizuku)", + "useSystemFont": "Використовувати системний шрифт", + "useVersionCodeAsOSVersion": "Використовувати код версії застосунку як версію, визначену операційною системою", + "requestHeader": "Заголовок запиту", + "useLatestAssetDateAsReleaseDate": "Використовувати останню дату завантаження ресурсу як дату випуску", + "defaultPseudoVersioningMethod": "Метод за замовчуванням псевдо-версіонування", + "partialAPKHash": "Хеш часткового APK", + "APKLinkHash": "Хеш посилання на APK", + "directAPKLink": "Пряме посилання на APK", + "pseudoVersionInUse": "Використовується псевдо-версія", + "installed": "Встановлено", + "latest": "Остання", + "invertRegEx": "Інвертувати регулярний вираз", + "note": "Примітка", + "selfHostedNote": "Випадаючий список \"{}\" може використовуватися для доступу до власних/призначених для самостійного використання екземплярів будь-якого джерела.", + "badDownload": "APK не вдалося розпарсити (несумісний або часткове завантаження)", + "beforeNewInstallsShareToAppVerifier": "Діліться новими додатками з AppVerifier (якщо доступно)", + "appVerifierInstructionToast": "Надішліть на AppVerifier, а потім поверніться сюди, коли будете готові.", + "wiki": "Довідка/Вікі", + "crowdsourcedConfigsLabel": "Краудсорсингові конфігурації додатків (використовуйте на свій страх і ризик)", + "crowdsourcedConfigsShort": "Налаштування краудсорсингових додатків", + "allowInsecure": "Дозволити незахищені HTTP-запити", + "stayOneVersionBehind": "Залишайтеся на одну версію актуальнішою", + "useFirstApkOfVersion": "Автоматичний вибір першого з декількох APK", + "refreshBeforeDownload": "Оновіть інформацію про програму перед завантаженням", + "tencentAppStore": "Tencent App Store", + "coolApk": "CoolApk", + "vivoAppStore": "vivo App Store (CN)", + "name": "Ім'я", + "smartname": "Ім'я (Smart)", + "sortMethod": "Метод сортування", + "welcome": "Ласкаво просимо.", + "documentationLinksNote": "Сторінка Obtainium на GitHub, посилання на яку наведено нижче, містить посилання на відео, статті, дискусії та інші ресурси, які допоможуть вам зрозуміти, як користуватися додатком.", + "batteryOptimizationNote": "Зауважте, що фонові завантаження можуть працювати надійніше, якщо ви вимкнете оптимізацію батареї ОС для Obtainium.", + "fileDeletionError": "Не вдалося видалити файл (спробуйте видалити його вручну, а потім спробуйте ще раз): \"{}\"", + "foregroundService": "Обслуговування переднього плану Obtainium", + "foregroundServiceExplanation": "Використовуйте службу переднього плану для перевірки оновлень (надійніша, споживає більше енергії)", + "fgServiceNotice": "Це сповіщення необхідне для фонової перевірки оновлень (його можна приховати в налаштуваннях ОС)", + "excludeSecrets": "Виключити секрети", + "GHReqPrefix": "екземпляр 'sky22333/hubproxy' для запитів на GitHub", + "includeZips": "Додайте ZIP-файли", + "zippedApkFilterRegEx": "Фільтруйте APK-файли всередині ZIP", + "removeAppQuestion": { + "one": "Видалити застосунок?", + "other": "Видалити застосунки?" + }, + "tooManyRequestsTryAgainInMinutes": { + "one": "Забагато запитів (обмеження швидкості) - повторіть спробу через {} хвилину", + "other": "Забагато запитів (обмеження швидкості) - повторіть спробу через {} хвилин" + }, + "bgUpdateGotErrorRetryInMinutes": { + "one": "Помилка перевірки оновлень у фоновому режимі - спробую знову через {} хвилину", + "other": "Помилка перевірки оновлень у фоновому режимі - спробую знову через {} хвилин" + }, + "bgCheckFoundUpdatesWillNotifyIfNeeded": { + "one": "Фонова перевірка оновлень знайшла {} оновлення - сповістити користувача, якщо це необхідно", + "other": "Фонова перевірка оновлень знайшла {} оновлень - сповістити користувача, якщо це необхідно" + }, + "apps": { + "one": "{} застосунок", + "other": "{} застосунки" + }, + "url": { + "one": "{} URL-адреса", + "other": "{} URL-адреси" + }, + "minute": { + "one": "{} хвилина", + "other": "{} хвилин" + }, + "hour": { + "one": "{} година", + "other": "{} годин" + }, + "day": { + "one": "{} день", + "other": "{} днів" + }, + "clearedNLogsBeforeXAfterY": { + "one": "Очищено {n} журнал (до = {before}, після = {after})", + "other": "Очищено {n} журналів (до = {before}, після = {after})" + }, + "xAndNMoreUpdatesAvailable": { + "one": "{} та ще 1 застосунок мають оновлення.", + "other": "{} та ще {} застосунки мають оновлення." + }, + "xAndNMoreUpdatesInstalled": { + "one": "{} та ще 1 застосунок було оновлено.", + "other": "{} та ще {} застосунків було оновлено." + }, + "xAndNMoreUpdatesFailed": { + "one": "Не вдалося оновити {} та ще 1 програму.", + "other": "Не вдалося оновити {} і {} та інші програми." + }, + "xAndNMoreUpdatesPossiblyInstalled": { + "one": "{} та ще 1 застосунок можливо було оновлено.", + "other": "{} та ще {} застосунків можливо було оновлено." + }, + "apk": { + "one": "{} APK", + "other": "{} APK-файли" + } +} diff --git a/assets/translations/vi.json b/assets/translations/vi.json new file mode 100644 index 0000000..40966cd --- /dev/null +++ b/assets/translations/vi.json @@ -0,0 +1,402 @@ +{ + "invalidURLForSource": "URL ứng dụng {} không hợp lệ", + "noReleaseFound": "Không thể tìm thấy bản phát hành phù hợp", + "noVersionFound": "Không thể xác định phiên bản phát hành", + "urlMatchesNoSource": "URL không khớp với nguồn đã biết", + "cantInstallOlderVersion": "Không thể cài đặt phiên bản cũ hơn của Ứng dụng", + "appIdMismatch": "ID gói đã tải xuống không khớp với ID ứng dụng hiện tại", + "functionNotImplemented": "Lớp này chưa triển khai chức năng này", + "placeholder": "Giữ chỗ", + "someErrors": "Đã xảy ra một số lỗi", + "unexpectedError": "Lỗi không mong đợi", + "ok": "OK", + "and": "và", + "githubPATLabel": "Token truy cập cá nhân GitHub (Cải thiện tốc độ giới hạn)", + "includePrereleases": "Bao gồm các bản phát hành trước", + "fallbackToOlderReleases": "Dự phòng về bản phát hành cũ hơn", + "filterReleaseTitlesByRegEx": "Lọc tiêu đề bản phát hành theo biểu thức chính quy", + "invalidRegEx": "Biểu thức chính quy không hợp lệ", + "noDescription": "Không có mô tả", + "cancel": "Hủy", + "continue": "Tiếp tục", + "requiredInBrackets": "(Yêu cầu)", + "dropdownNoOptsError": "LỖI: TẢI XUỐNG PHẢI CÓ ÍT NHẤT MỘT LỰA CHỌN", + "colour": "Màu sắc", + "standard": "Mặc định", + "custom": "Tùy chỉnh", + "useMaterialYou": "Sử dụng Material You", + "githubStarredRepos": "Kho lưu trữ có gắn dấu sao GitHub", + "uname": "Tên người dùng", + "wrongArgNum": "Số lượng đối số được cung cấp sai", + "xIsTrackOnly": "{} là Chỉ theo dõi", + "source": "Nguồn", + "app": "Ứng dụng", + "appsFromSourceAreTrackOnly": "Các ứng dụng từ nguồn này là 'Chỉ theo dõi'.", + "youPickedTrackOnly": "Bạn đã chọn tùy chọn 'Chỉ theo dõi'.", + "trackOnlyAppDescription": "Ứng dụng sẽ được theo dõi để cập nhật, nhưng Obtainium sẽ không thể tải xuống hoặc cài đặt nó.", + "cancelled": "Đã hủy", + "appAlreadyAdded": "Ứng dụng được thêm rồi", + "alreadyUpToDateQuestion": "Ứng dụng đã được cập nhật?", + "addApp": "Thêm", + "appSourceURL": "URL nguồn ứng dụng", + "error": "Lỗi", + "add": "Thêm", + "searchSomeSourcesLabel": "Tìm kiếm (Chỉ một số nguồn)", + "search": "Tìm kiếm", + "additionalOptsFor": "Tùy chọn bổ sung cho {}", + "supportedSources": "Nguồn được hỗ trợ", + "trackOnlyInBrackets": "(Chỉ theo dõi)", + "searchableInBrackets": "(Có thể tìm kiếm)", + "appsString": "Ứng dụng", + "noApps": "Không có ứng dụng", + "noAppsForFilter": "Không có ứng dụng cho bộ lọc", + "byX": "Bởi {}", + "percentProgress": "Đang tải {}%", + "pleaseWait": "Vui lòng chờ", + "updateAvailable": "Có sẵn bản cập nhật", + "notInstalled": "Chưa cài đặt", + "pseudoVersion": "phiên bản giả", + "selectAll": "Chọn tất cả", + "deselectX": "Bỏ chọn {}", + "xWillBeRemovedButRemainInstalled": "{} sẽ bị xóa khỏi Obtainium nhưng vẫn còn cài đặt trên thiết bị.", + "removeSelectedAppsQuestion": "Xóa ứng dụng đã chọn?", + "removeSelectedApps": "Xóa ứng dụng đã chọn", + "updateX": "Cập nhật {}", + "installX": "Cài đặt {}", + "markXTrackOnlyAsUpdated": "Đánh dấu {}\n(Chỉ theo dõi)\nnhư là đã cập nhật", + "changeX": "Thay đổi {}", + "installUpdateApps": "Cài đặt/Cập nhật ứng dụng", + "installUpdateSelectedApps": "Cài đặt/Cập nhật ứng dụng đã chọn", + "markXSelectedAppsAsUpdated": "Đánh dấu {} ứng dụng đã chọn là đã cập nhật?", + "no": "Không", + "yes": "Đúng", + "markSelectedAppsUpdated": "Đánh dấu các ứng dụng đã chọn là đã cập nhật", + "pinToTop": "Ghim đầu trang", + "unpinFromTop": "Bỏ ghim khỏi đầu trang", + "resetInstallStatusForSelectedAppsQuestion": "Đặt lại trạng thái cài đặt cho ứng dụng đã chọn?", + "installStatusOfXWillBeResetExplanation": "Trạng thái cài đặt của mọi Ứng dụng đã chọn sẽ được đặt lại.\n\nĐiều này có thể hữu ích khi phiên bản Ứng dụng hiển thị trong Obtainium không chính xác do cập nhật không thành công hoặc các sự cố khác.", + "customLinkMessage": "Các liên kết này hoạt động trên các thiết bị có cài đặt Obtainium", + "shareAppConfigLinks": "Chia sẻ cấu hình ứng dụng dưới dạng liên kết HTML", + "shareSelectedAppURLs": "Chia sẻ URL ứng dụng đã chọn", + "resetInstallStatus": "Đặt lại trạng thái cài đặt", + "more": "Nhiều hơn", + "removeOutdatedFilter": "Xóa bộ lọc ứng dụng lỗi thời", + "showOutdatedOnly": "Chỉ hiển thị các ứng dụng lỗi thời", + "filter": "Lọc", + "filterApps": "Lọc ứng dụng", + "appName": "Tên ứng dụng", + "author": "Tác giả", + "upToDateApps": "Ứng dụng cập nhật", + "nonInstalledApps": "Ứng dụng chưa được cài đặt", + "importExport": "Nhập/Xuất", + "settings": "Thiết đặt", + "exportedTo": "Đã xuất sang {}", + "obtainiumExport": "Xuất", + "invalidInput": "Đầu vào không hợp lệ", + "importedX": "Đã nhập {}", + "obtainiumImport": "Nhập", + "importFromURLList": "Nhập từ danh sách URL", + "searchQuery": "Truy vấn tìm kiếm", + "appURLList": "Danh sách URL ứng dụng", + "line": "Hàng", + "searchX": "Tìm kiếm {}", + "noResults": "Không có kết quả nào được tìm thấy", + "importX": "Nhập {}", + "importedAppsIdDisclaimer": "Ứng dụng đã nhập có thể hiển thị không chính xác là \"Chưa được cài đặt\".\nĐể khắc phục sự cố này, hãy cài đặt lại chúng thông qua Obtainium.\nĐiều này sẽ không ảnh hưởng đến dữ liệu Ứng dụng.\n\nChỉ ảnh hưởng đến URL và phương thức nhập của bên thứ ba.", + "importErrors": "Lỗi nhập", + "importedXOfYApps": "{} trong số {} Ứng dụng đã được nhập.", + "followingURLsHadErrors": "Các URL sau có lỗi:", + "selectURL": "Chọn URL", + "selectURLs": "Chọn URL", + "pick": "Chọn", + "theme": "Chủ đề", + "dark": "Tối", + "light": "Sáng", + "followSystem": "Theo hệ thống", + "followSystemThemeExplanation": "Việc áp dụng chủ đề hệ thống chỉ có thể thực hiện được thông qua việc sử dụng các ứng dụng của bên thứ ba.", + "useBlackTheme": "Nền đen", + "appSortBy": "Sắp xếp ứng dụng", + "authorName": "Tác giả", + "nameAuthor": "Tên", + "asAdded": "Như đã thêm", + "appSortOrder": "Thứ tự sắp xếp", + "ascending": "Tăng dần", + "descending": "Giảm dần", + "bgUpdateCheckInterval": "Thời gian tự động kiểm tra cập nhật", + "neverManualOnly": "Không bao giờ", + "appearance": "Hiển thị", + "showWebInAppView": "Hiển thị trang web Nguồn trong chế độ xem chi tiết Ứng dụng", + "pinUpdates": "Chuyển ứng dụng có phiên bản mới lên đầu danh sách", + "updates": "Cập nhật", + "sourceSpecific": "Cài đặt Nguồn", + "appSource": "Nguồn ứng dụng", + "noLogs": "Không có nhật ký", + "appLogs": "Nhật ký ứng dụng", + "close": "Đóng", + "share": "Chia sẻ", + "appNotFound": "Không tìm thấy ứng dụng", + "obtainiumExportHyphenatedLowercase": "obtainium-export", + "pickAnAPK": "Chọn một APK", + "appHasMoreThanOnePackage": "{} có nhiều gói:", + "deviceSupportsXArch": "Thiết bị của bạn hỗ trợ kiến trúc CPU {}.", + "deviceSupportsFollowingArchs": "Thiết bị của bạn hỗ trợ các kiến trúc CPU sau:", + "warning": "Cảnh báo", + "sourceIsXButPackageFromYPrompt": "Nguồn ứng dụng là '{}' nhưng gói phát hành đến từ '{}'. Tiếp tục?", + "updatesAvailable": "Cập nhật có sẵn", + "updatesAvailableNotifDescription": "Thông báo cho người dùng rằng có bản cập nhật cho một hoặc nhiều Ứng dụng được theo dõi bởi Obtainium", + "noNewUpdates": "Không có bản cập nhật mới.", + "xHasAnUpdate": "{} có bản cập nhật.", + "appsUpdated": "Ứng dụng đã cập nhật ", + "appsNotUpdated": "Ứng dụng đã cập nhật không thành công", + "appsUpdatedNotifDescription": "Thông báo cho người dùng rằng các bản cập nhật cho một hoặc nhiều Ứng dụng đã được áp dụng trong nền", + "xWasUpdatedToY": "{} đã được cập nhật thành {}.", + "xWasNotUpdatedToY": "{} đã cập nhật thành {} không thành công.", + "errorCheckingUpdates": "Lỗi kiểm tra bản cập nhật", + "errorCheckingUpdatesNotifDescription": "Thông báo hiển thị khi kiểm tra cập nhật nền không thành công", + "appsRemoved": "Ứng dụng đã loại bỏ", + "appsRemovedNotifDescription": "Thông báo cho người dùng rằng một hoặc nhiều Ứng dụng đã bị loại bỏ do lỗi khi tải chúng", + "xWasRemovedDueToErrorY": "{} đã bị loại bỏ do lỗi này: {}", + "completeAppInstallation": "Hoàn tất cài đặt ứng dụng", + "obtainiumMustBeOpenToInstallApps": "Obtainium phải được mở để cài đặt Ứng dụng", + "completeAppInstallationNotifDescription": "Yêu cầu người dùng quay lại Obtainium để hoàn tất cài đặt Ứng dụng", + "checkingForUpdates": "Đang kiểm tra cập nhật", + "checkingForUpdatesNotifDescription": "Thông báo tạm thời xuất hiện khi kiểm tra bản cập nhật", + "pleaseAllowInstallPerm": "Vui lòng cho phép Obtainium cài đặt Ứng dụng", + "trackOnly": "Chỉ theo dõi", + "errorWithHttpStatusCode": "Lỗi {}", + "versionCorrectionDisabled": "Tính năng sửa phiên bản bị vô hiệu hóa (plugin dường như không hoạt động)", + "unknown": "Không xác định", + "none": "Không", + "all": "Tất cả", + "never": "Không bao giờ", + "latestVersionX": "Phiên bản mới nhất: {}", + "installedVersionX": "Phiên bản đã cài đặt: {}", + "lastUpdateCheckX": "Kiểm tra cập nhật lần cuối: {}", + "remove": "Loại bỏ", + "yesMarkUpdated": "Có, Đánh dấu là đã cập nhật", + "fdroid": "F-Droid Chính thức", + "appIdOrName": "ID hoặc tên ứng dụng", + "appId": "ID ứng dụng", + "appWithIdOrNameNotFound": "Không tìm thấy ứng dụng nào có ID hoặc tên đó", + "reposHaveMultipleApps": "Kho có thể chứa nhiều Ứng dụng", + "fdroidThirdPartyRepo": "Kho lưu trữ bên thứ ba F-Droid", + "install": "Cài đặt", + "markInstalled": "Đánh dấu là đã cài đặt", + "update": "Cập nhật", + "markUpdated": "Đánh dấu đã cập nhật", + "additionalOptions": "Tùy chọn bổ sung", + "disableVersionDetection": "Tắt tính năng phát hiện phiên bản", + "noVersionDetectionExplanation": "Chỉ nên sử dụng tùy chọn này cho Ứng dụng mà tính năng phát hiện phiên bản không hoạt động chính xác.", + "downloadingX": "Đang tải xuống {}", + "downloadX": "Tải xuống {}", + "downloadedX": "Đã tải xuống {}", + "releaseAsset": "Release Asset", + "downloadNotifDescription": "Thông báo cho người dùng về tiến trình tải xuống Ứng dụng", + "noAPKFound": "Không tìm thấy APK", + "noVersionDetection": "Không phát hiện phiên bản", + "categorize": "Phân loại", + "categories": "Danh mục", + "category": "Danh mục", + "noCategory": "Không danh mục", + "noCategories": "Không danh mục", + "deleteCategoriesQuestion": "Xóa danh mục?", + "categoryDeleteWarning": "Tất cả ứng dụng trong danh mục đã xóa sẽ được đặt thành chưa được phân loại.", + "addCategory": "Thêm thể loại", + "label": "Nhãn", + "language": "Ngôn ngữ", + "copiedToClipboard": "Sao chép vào clipboard", + "storagePermissionDenied": "Quyền lưu trữ bị từ chối", + "selectedCategorizeWarning": "Điều này sẽ thay thế mọi thiết đặt danh mục hiện có cho Ứng dụng đã chọn.", + "filterAPKsByRegEx": "Lọc APK theo biểu thức chính quy", + "removeFromObtainium": "Loại khỏi Obtainium", + "uninstallFromDevice": "Gỡ cài đặt khỏi thiết bị", + "onlyWorksWithNonVersionDetectApps": "Chỉ hoạt động với Ứng dụng đã tắt tính năng phát hiện phiên bản.", + "releaseDateAsVersion": "Sử dụng ngày phát hành làm phiên bản", + "releaseTitleAsVersion": "Sử dụng tiêu đề bản phát hành làm chuỗi phiên bản", + "releaseDateAsVersionExplanation": "Chỉ nên sử dụng tùy chọn này cho Ứng dụng trong đó tính năng phát hiện phiên bản không hoạt động chính xác nhưng đã có ngày phát hành.", + "changes": "Thay đổi", + "releaseDate": "Ngày phát hành", + "importFromURLsInFile": "Nhập từ URL trong Tệp (như OPML)", + "versionDetectionExplanation": "Đối chiếu chuỗi phiên bản với phiên bản được phát hiện từ hệ điều hành", + "versionDetection": "Phát hiện phiên bản", + "standardVersionDetection": "Phát hiện phiên bản tiêu chuẩn", + "groupByCategory": "Nhóm theo danh mục", + "autoApkFilterByArch": "Cố gắng lọc APK theo kiến trúc CPU nếu có thể", + "autoLinkFilterByArch": "Cố gắng lọc các liên kết theo kiến trúc CPU nếu có thể.", + "overrideSource": "Ghi đè nguồn", + "dontShowAgain": "Đừng hiển thị thông tin này nữa", + "dontShowTrackOnlyWarnings": "Không hiển thị cảnh báo 'Chỉ theo dõi'", + "dontShowAPKOriginWarnings": "Không hiển thị cảnh báo nguồn gốc APK", + "moveNonInstalledAppsToBottom": "Chuyển Ứng dụng chưa được cài đặt xuống cuối danh sách", + "gitlabPATLabel": "Token truy cập cá nhân GitLab", + "about": "Giới thiệu", + "requiresCredentialsInSettings": "{}: Điều này cần thông tin xác thực bổ sung (trong Thiết đặt)", + "checkOnStart": "Kiểm tra các bản cập nhật khi khởi động", + "tryInferAppIdFromCode": "Thử suy ra ID ứng dụng từ mã nguồn", + "removeOnExternalUninstall": "Tự động xóa ứng dụng đã gỡ cài đặt bên ngoài", + "pickHighestVersionCode": "Tự động chọn APK mã phiên bản cao nhất", + "checkUpdateOnDetailPage": "Kiểm tra các bản cập nhật khi mở trang chi tiết Ứng dụng", + "disablePageTransitions": "Tắt hiệu ứng chuyển trang", + "reversePageTransitions": "Hoạt ảnh chuyển đổi trang đảo ngược", + "minStarCount": "Số lượng sao tối thiểu", + "addInfoBelow": "Thêm thông tin này vào bên dưới.", + "addInfoInSettings": "Thêm thông tin này vào Thiết đặt.", + "githubSourceNote": "Có thể tránh được việc giới hạn tốc độ GitHub bằng cách sử dụng khóa API.", + "sortByLastLinkSegment": "Chỉ sắp xếp theo đoạn cuối của liên kết", + "filterReleaseNotesByRegEx": "Lọc ghi chú phát hành theo biểu thức chính quy", + "customLinkFilterRegex": "Bộ lọc liên kết APK tùy chỉnh theo biểu thức chính quy (Mặc định '.apk$')", + "appsPossiblyUpdated": "Đã cố gắng cập nhật ứng dụng", + "appsPossiblyUpdatedNotifDescription": "Thông báo cho người dùng rằng các bản cập nhật cho một hoặc nhiều Ứng dụng có khả năng được áp dụng trong nền", + "xWasPossiblyUpdatedToY": "{} có thể đã được cập nhật thành {}.", + "enableBackgroundUpdates": "Tự động cập nhật trong nền", + "backgroundUpdateReqsExplanation": "Có thể không thực hiện được cập nhật trong nền cho tất cả ứng dụng.", + "backgroundUpdateLimitsExplanation": "Sự thành công của cài đặt trong nền chỉ có thể được xác định khi mở Obtainium.", + "verifyLatestTag": "Xác minh thẻ 'mới nhất'", + "intermediateLinkRegex": "Lọc tìm liên kết 'Trung cấp' để truy cập", + "filterByLinkText": "Lọc liên kết theo văn bản liên kết", + "matchLinksOutsideATags": "Khớp các liên kết bên ngoài thẻ ", + "intermediateLinkNotFound": "Không tìm thấy liên kết trung gian", + "intermediateLink": "Liên kết trung gian", + "exemptFromBackgroundUpdates": "Miễn cập nhật nền (nếu được bật)", + "bgUpdatesOnWiFiOnly": "Tắt cập nhật nền khi không có Wi-Fi", + "bgUpdatesWhileChargingOnly": "Tắt cập nhật nền khi không sạc pin.", + "autoSelectHighestVersionCode": "Tự động chọn APK mã phiên bản cao nhất", + "versionExtractionRegEx": "Trích xuất phiên bản RegEx", + "trimVersionString": "Trim Version String With RegEx", + "matchGroupToUseForX": "Match Group to Use for \"{}\"", + "matchGroupToUse": "Nhóm đối sánh để sử dụng cho Regex trích xuất phiên bản", + "highlightTouchTargets": "Đánh dấu các mục tiêu cảm ứng ít rõ ràng hơn", + "pickExportDir": "Chọn thư mục xuất", + "autoExportOnChanges": "Tự động xuất", + "includeSettings": "Bao gồm thiết đặt", + "filterVersionsByRegEx": "Lọc phiên bản theo biểu thức chính quy", + "trySelectingSuggestedVersionCode": "Thử chọn APK Mã phiên bản được đề xuất", + "dontSortReleasesList": "Giữ lại thứ tự phát hành từ API", + "reverseSort": "Sắp xếp ngược", + "takeFirstLink": "Lấy liên kết đầu tiên", + "skipSort": "Bỏ qua việc sắp xếp", + "debugMenu": "Danh sách gỡ lỗi", + "bgTaskStarted": "Tác vụ nền đã bắt đầu - kiểm tra nhật ký.", + "runBgCheckNow": "Chạy kiểm tra cập nhật nền ngay bây giờ", + "versionExtractWholePage": "Áp dụng Regex trích xuất phiên bản cho toàn bộ trang", + "installing": "Đang cài đặt", + "skipUpdateNotifications": "Bỏ qua thông báo cập nhật", + "updatesAvailableNotifChannel": "Cập nhật có sẵn", + "appsUpdatedNotifChannel": "Đã cập nhật ứng dụng", + "appsPossiblyUpdatedNotifChannel": "Đã cố gắng cập nhật ứng dụng", + "errorCheckingUpdatesNotifChannel": "Lỗi kiểm tra bản cập nhật", + "appsRemovedNotifChannel": "Ứng dụng đã bị loại bỏ", + "downloadingXNotifChannel": "Đang tải xuống {}", + "completeAppInstallationNotifChannel": "Hoàn tất cài đặt ứng dụng", + "checkingForUpdatesNotifChannel": "Đang kiểm tra cập nhật", + "onlyCheckInstalledOrTrackOnlyApps": "Chỉ kiểm tra cập nhật các ứng dụng đã cài đặt và Chỉ theo dõi", + "supportFixedAPKURL": "Hỗ trợ URL APK cố định", + "selectX": "Lựa chọn {}", + "parallelDownloads": "Cho phép tải đa luồng", + "useShizuku": "Sử dụng Shizuku hoặc Sui để cài đặt", + "shizukuBinderNotFound": "Shizuku chưa khởi động", + "shizukuOld": "Phiên bản Shizuku lỗi thời (<11) - hãy cập nhật nó", + "shizukuOldAndroidWithADB": "Shizuku chạy trên Android < 8.1 với ADB - hãy cập nhật Android hoặc thay bằng Sui", + "shizukuPretendToBeGooglePlay": "Đặt Google Play làm nguồn cài đặt (nếu sử dụng Shizuku)", + "useSystemFont": "Sử dụng phông chữ hệ thống", + "useVersionCodeAsOSVersion": "Sử dụng Mã phiên bản ứng dụng làm phiên bản do hệ điều hành phát hiện", + "requestHeader": "Tiêu đề yêu cầu", + "useLatestAssetDateAsReleaseDate": "Sử dụng nội dung tải lên mới nhất làm ngày phát hành", + "defaultPseudoVersioningMethod": "Phương pháp tạo phiên bản giả mặc định", + "partialAPKHash": "Băm APK một phần", + "APKLinkHash": "Băm liên kết APK", + "directAPKLink": "Liên kết APK trực tiếp", + "pseudoVersionInUse": "Phiên bản giả đang được sử dụng", + "installed": "Đã cài đặt", + "latest": "Mới nhất", + "invertRegEx": "Đảo ngược biểu thức chính quy", + "note": "Ghi chú", + "selfHostedNote": "Trình đơn thả xuống \"{}\" có thể được dùng để tiếp cận các phiên bản tự lưu trữ/tùy chỉnh của bất kỳ nguồn nào.", + "badDownload": "Không thể phân tích cú pháp APK (tải xuống một phần hoặc không tương thích)", + "beforeNewInstallsShareToAppVerifier": "Chia sẻ ứng dụng mới với AppVerifier (nếu có)", + "appVerifierInstructionToast": "Chia sẻ lên AppVerifier, sau đó quay lại đây khi sẵn sàng.", + "wiki": "Trợ giúp/Wiki", + "crowdsourcedConfigsLabel": "Crowdsourced App Configurations (use at your own risk)", + "crowdsourcedConfigsShort": "Crowdsourced App Configurations", + "allowInsecure": "Cho phép các yêu cầu HTTP không an toàn", + "stayOneVersionBehind": "Luôn sử dụng phiên bản cũ hơn một phiên bản so với phiên bản mới nhất.", + "useFirstApkOfVersion": "Tự động chọn tệp APK đầu tiên trong danh sách nhiều tệp APK.", + "refreshBeforeDownload": "Cập nhật thông tin ứng dụng trước khi tải xuống", + "tencentAppStore": "Tencent App Store", + "coolApk": "CoolApk", + "vivoAppStore": "vivo App Store (CN)", + "name": "Tên", + "smartname": "Name (Smart)", + "sortMethod": "Sort Method", + "welcome": "Chào mừng", + "documentationLinksNote": "Trang GitHub của Obtainium được liên kết bên dưới chứa các liên kết đến video, bài viết, thảo luận và các tài nguyên khác sẽ giúp bạn hiểu cách sử dụng ứng dụng.", + "batteryOptimizationNote": "Note that background downloads may work more reliably if you disable OS battery optimizations for Obtainium.", + "fileDeletionError": "Không thể xóa tệp (hãy thử xóa tệp thủ công rồi thử lại): \"{}\"", + "foregroundService": "Dịch vụ nền Obtainium", + "foregroundServiceExplanation": "Sử dụng dịch vụ nền trước để kiểm tra cập nhật (đáng tin cậy hơn, tiêu tốn nhiều pin hơn)", + "fgServiceNotice": "Thông báo này là bắt buộc để kiểm tra cập nhật nền (có thể ẩn trong cài đặt hệ điều hành).", + "excludeSecrets": "Loại trừ thông tin bí mật", + "GHReqPrefix": "Thực thể 'sky22333/hubproxy' cho các yêu cầu GitHub", + "includeZips": "Ba gồm các tệp ZIP", + "zippedApkFilterRegEx": "Lọc các tệp APK bên trong tệp ZIP", + "removeAppQuestion": { + "one": "Gỡ ứng dụng?", + "other": "Gỡ ứng dụng?" + }, + "tooManyRequestsTryAgainInMinutes": { + "one": "Quá nhiều yêu cầu (tốc độ giới hạn) - hãy thử lại sau {} phút", + "other": "Quá nhiều yêu cầu (tốc độ giới hạn) - hãy thử lại sau {} phút" + }, + "bgUpdateGotErrorRetryInMinutes": { + "one": "Việc kiểm tra bản cập nhật BG gặp phải {}, sẽ lên lịch kiểm tra lại sau {} phút", + "other": "Việc kiểm tra bản cập nhật BG gặp phải {}, sẽ lên lịch kiểm tra lại sau {} phút" + }, + "bgCheckFoundUpdatesWillNotifyIfNeeded": { + "one": "Đang kiểm tra bản cập nhật BG tìm thấy {} bản cập nhật - sẽ thông báo cho người dùng nếu cần", + "other": "Đang kiểm tra bản cập nhật BG tìm thấy {} bản cập nhật - sẽ thông báo cho người dùng nếu cần" + }, + "apps": { + "one": "{} Ứng dụng", + "other": "{} Ứng dụng" + }, + "url": { + "one": "{} URL", + "other": "{} URL" + }, + "minute": { + "one": "{} phút", + "other": "{} phút" + }, + "hour": { + "one": "{} giờ", + "other": "{} giờ" + }, + "day": { + "one": "{} ngày", + "other": "{} ngày" + }, + "clearedNLogsBeforeXAfterY": { + "one": "Đã xóa {n} nhật ký (trước = {trước}, sau = {sau})", + "other": "Đã xóa {n} nhật ký (trước = {trước}, sau = {sau})" + }, + "xAndNMoreUpdatesAvailable": { + "one": "{} và 1 ứng dụng khác có bản cập nhật.", + "other": "{} và {} ứng dụng khác có bản cập nhật." + }, + "xAndNMoreUpdatesInstalled": { + "one": "{} và 1 ứng dụng khác đã được cập nhật.", + "other": "{} và {} ứng dụng khác đã được cập nhật." + }, + "xAndNMoreUpdatesFailed": { + "one": "{} và 1 ứng dụng khác đã cập nhật không thành công.", + "other": "{} và {} ứng dụng khác đã cập nhật không thảnh công." + }, + "xAndNMoreUpdatesPossiblyInstalled": { + "one": "{} và 1 ứng dụng khác có thể đã được cập nhật.", + "other": "{} và {} ứng dụng khác có thể đã được cập nhật." + }, + "apk": { + "one": "{} APK", + "other": "{} APKs" + } +} diff --git a/assets/translations/zh-Hant-TW.json b/assets/translations/zh-Hant-TW.json new file mode 100644 index 0000000..27168a1 --- /dev/null +++ b/assets/translations/zh-Hant-TW.json @@ -0,0 +1,402 @@ +{ + "invalidURLForSource": "不是有效的 {} 應用程式 URL", + "noReleaseFound": "找不到合適的版本", + "noVersionFound": "無法確定版本", + "urlMatchesNoSource": "URL 不符合已知來源", + "cantInstallOlderVersion": "無法安裝舊版本的應用程式", + "appIdMismatch": "下載的套件 ID 與現有的應用程式 ID 不相符", + "functionNotImplemented": "此類別尚未實作此功能", + "placeholder": "佔位字串", + "someErrors": "發生了一些錯誤", + "unexpectedError": "意外錯誤", + "ok": "確定", + "and": "和", + "githubPATLabel": "GitHub 個人存取權杖(放寬速率限制)", + "includePrereleases": "包含預先釋出版本", + "fallbackToOlderReleases": "回退到舊版本", + "filterReleaseTitlesByRegEx": "用正則表達式過濾版本發佈標題", + "invalidRegEx": "無效的正則表達式", + "noDescription": "沒有描述", + "cancel": "取消", + "continue": "繼續", + "requiredInBrackets": "(必填)", + "dropdownNoOptsError": "錯誤:下拉選單必須至少有一個選項", + "colour": "顏色", + "standard": "標準", + "custom": "自訂", + "useMaterialYou": "使用 Material You", + "githubStarredRepos": "GitHub 打星星的專案", + "uname": "使用者名稱", + "wrongArgNum": "提供的參數數量錯誤", + "xIsTrackOnly": "{} 是僅追蹤", + "source": "來源", + "app": "應用程式", + "appsFromSourceAreTrackOnly": "來自此來源的應用程式是「僅追蹤」。", + "youPickedTrackOnly": "您已選擇「僅追蹤」選項。", + "trackOnlyAppDescription": "該應用程式將被追蹤更新,但 Obtainium 將無法下載或安裝它。", + "cancelled": "已取消", + "appAlreadyAdded": "應用程式已新增", + "alreadyUpToDateQuestion": "應用程式已經是最新的?", + "addApp": "新增應用程式", + "appSourceURL": "應用程式來源 URL", + "error": "錯誤", + "add": "新增", + "searchSomeSourcesLabel": "搜尋(僅限部分來源)", + "search": "搜尋", + "additionalOptsFor": "{} 的其他選項", + "supportedSources": "支援的來源", + "trackOnlyInBrackets": "(僅追蹤)", + "searchableInBrackets": "(可搜尋)", + "appsString": "應用程式", + "noApps": "無應用程式", + "noAppsForFilter": "無符合過濾條件的應用程式", + "byX": "由 {}", + "percentProgress": "進度:{}%", + "pleaseWait": "請稍候", + "updateAvailable": "有可用的更新", + "notInstalled": "未安裝", + "pseudoVersion": "偽版本", + "selectAll": "全選", + "deselectX": "取消選取 {}", + "xWillBeRemovedButRemainInstalled": "{} 將從 Obtainium 中移除,但仍然安裝在裝置上。", + "removeSelectedAppsQuestion": "移除選取的應用程式?", + "removeSelectedApps": "移除選取的應用程式", + "updateX": "更新 {}", + "installX": "安裝 {}", + "markXTrackOnlyAsUpdated": "標記 {}\n(僅追蹤)\n為已更新", + "changeX": "更改 {}", + "installUpdateApps": "安裝/更新應用程式", + "installUpdateSelectedApps": "安裝/更新選取的應用程式", + "markXSelectedAppsAsUpdated": "標記 {} 個選取的應用程式為已更新?", + "no": "否", + "yes": "是", + "markSelectedAppsUpdated": "標記選取的應用程式為已更新", + "pinToTop": "釘選到頂端", + "unpinFromTop": "取消釘選", + "resetInstallStatusForSelectedAppsQuestion": "重設選取應用程式的安裝狀態?", + "installStatusOfXWillBeResetExplanation": "任何選取應用程式的安裝狀態將被重設。\n\n這可以在由於更新失敗或其他問題導致 Obtainium 顯示的應用程式版本不正確時有所幫助。", + "customLinkMessage": "這些連結適用於已安裝 Obtainium 的裝置", + "shareAppConfigLinks": "分享應用程式設定為 HTML 連結", + "shareSelectedAppURLs": "分享選取的應用程式 URL", + "resetInstallStatus": "重設安裝狀態", + "more": "更多", + "removeOutdatedFilter": "移除過時應用程式過濾", + "showOutdatedOnly": "僅顯示過時的應用程式", + "filter": "過濾", + "filterApps": "過濾應用程式", + "appName": "應用程式名稱", + "author": "作者", + "upToDateApps": "最新的應用程式", + "nonInstalledApps": "未安裝的應用程式", + "importExport": "匯入/匯出", + "settings": "設定", + "exportedTo": "匯出到 {}", + "obtainiumExport": "Obtainium 匯出", + "invalidInput": "無效的輸入", + "importedX": "已匯入 {}", + "obtainiumImport": "Obtainium 匯入", + "importFromURLList": "從 URL 清單匯入", + "searchQuery": "搜尋查詢", + "appURLList": "應用程式 URL 清單", + "line": "行", + "searchX": "搜尋 {}", + "noResults": "沒有找到結果", + "importX": "匯入 {}", + "importedAppsIdDisclaimer": "匯入的應用程式可能會錯誤地顯示為「未安裝」。\n要修正此問題,請透過 Obtainium 重新安裝它們。\n這不應該影響應用程式資料。\n\n僅影響 URL 和第三方匯入方法。", + "importErrors": "匯入錯誤", + "importedXOfYApps": "已匯入 {} 個中的 {} 個應用程式。", + "followingURLsHadErrors": "以下 URL 有錯誤:", + "selectURL": "選擇 URL", + "selectURLs": "選擇多個 URL", + "pick": "選取", + "theme": "主題", + "dark": "深色", + "light": "淺色", + "followSystem": "跟隨系統", + "followSystemThemeExplanation": "僅使用第三方應用程式時才可跟隨系統主題", + "useBlackTheme": "使用純黑色深色主題", + "appSortBy": "應用程式排序依據", + "authorName": "作者/名稱", + "nameAuthor": "名稱/作者", + "asAdded": "新增順序", + "appSortOrder": "應用程式排序順序", + "ascending": "升序", + "descending": "降序", + "bgUpdateCheckInterval": "背景更新檢查間隔", + "neverManualOnly": "從不 - 僅手動", + "appearance": "外觀", + "showWebInAppView": "在應用程式檢視中顯示來源網頁", + "pinUpdates": "將更新釘選至應用程式檢視的頂端", + "updates": "更新", + "sourceSpecific": "特定來源", + "appSource": "應用程式來源", + "noLogs": "無日誌", + "appLogs": "應用程式日誌", + "close": "關閉", + "share": "分享", + "appNotFound": "沒有找到應用程式", + "obtainiumExportHyphenatedLowercase": "obtainium-export", + "pickAnAPK": "選擇一個 APK", + "appHasMoreThanOnePackage": "{} 有多個套件:", + "deviceSupportsXArch": "您的裝置支援 {} CPU 架構。", + "deviceSupportsFollowingArchs": "您的裝置支援以下 CPU 架構:", + "warning": "警告", + "sourceIsXButPackageFromYPrompt": "應用程式來源是 「{}」,但發佈套件來自 「{}」。要繼續嗎?", + "updatesAvailable": "有可用的更新", + "updatesAvailableNotifDescription": "通知使用者有一個或多個由 Obtainium 追蹤的應用程式有更新", + "noNewUpdates": "沒有新更新。", + "xHasAnUpdate": "{} 有一個更新。", + "appsUpdated": "應用程式已更新", + "appsNotUpdated": "未能更新應用程式", + "appsUpdatedNotifDescription": "通知使用者一個或多個應用程式的更新已在背景中套用", + "xWasUpdatedToY": "{} 已更新到 {}。", + "xWasNotUpdatedToY": "未能將 {} 更新到 {}。", + "errorCheckingUpdates": "檢查更新時出錯", + "errorCheckingUpdatesNotifDescription": "背景檢查更新失敗時顯示的通知", + "appsRemoved": "應用程式已移除", + "appsRemovedNotifDescription": "通知使用者由於載入時出錯,一個或多個應用程式已被移除", + "xWasRemovedDueToErrorY": "{} 已因以下錯誤被移除:{}", + "completeAppInstallation": "完成應用程式安裝", + "obtainiumMustBeOpenToInstallApps": "Obtainium 必須開啟才能安裝應用程式", + "completeAppInstallationNotifDescription": "請使用者回到 Obtainium 以完成應用程式安裝", + "checkingForUpdates": "正在檢查更新", + "checkingForUpdatesNotifDescription": "檢查更新時顯示的暫時性通知", + "pleaseAllowInstallPerm": "請允許 Obtainium 安裝應用程式", + "trackOnly": "僅追蹤", + "errorWithHttpStatusCode": "錯誤 {}", + "versionCorrectionDisabled": "版本校正已停用(外掛程式似乎無法正常工作)", + "unknown": "未知", + "none": "無", + "all": "All", + "never": "從不", + "latestVersionX": "最新版本:{}", + "installedVersionX": "已安裝版本:{}", + "lastUpdateCheckX": "上次檢查更新時間:{}", + "remove": "移除", + "yesMarkUpdated": "是,標記為已更新", + "fdroid": "F-Droid 官方", + "appIdOrName": "應用程式 ID 或名稱", + "appId": "應用程式 ID", + "appWithIdOrNameNotFound": "找不到具有該 ID 或名稱的應用程式", + "reposHaveMultipleApps": "倉庫可能包含多個應用程式", + "fdroidThirdPartyRepo": "F-Droid 第三方倉庫", + "install": "安裝", + "markInstalled": "標記為已安裝", + "update": "更新", + "markUpdated": "標記為已更新", + "additionalOptions": "額外選項", + "disableVersionDetection": "停用版本偵測", + "noVersionDetectionExplanation": "此選項僅應用於版本偵測無法正確工作的應用程式。", + "downloadingX": "正在下載 {}", + "downloadX": "下載 {}", + "downloadedX": "已下載 {}", + "releaseAsset": "發佈資源", + "downloadNotifDescription": "通知使用者應用程式下載進度", + "noAPKFound": "沒有找到 APK", + "noVersionDetection": "無版本偵測", + "categorize": "分類", + "categories": "類別", + "category": "類別", + "noCategory": "無類別", + "noCategories": "無類別", + "deleteCategoriesQuestion": "刪除類別?", + "categoryDeleteWarning": "所有在已刪除類別中的應用程式將被設定為未分類。", + "addCategory": "新增類別", + "label": "標籤", + "language": "語言", + "copiedToClipboard": "已複製到剪貼簿", + "storagePermissionDenied": "存取權限被拒絕", + "selectedCategorizeWarning": "這將替換選取應用程式的任何現有類別設定。", + "filterAPKsByRegEx": "用正則表達式過濾 APK", + "removeFromObtainium": "從 Obtainium 移除", + "uninstallFromDevice": "從裝置解除安裝", + "onlyWorksWithNonVersionDetectApps": "僅適用於停用版本偵測的應用程式。", + "releaseDateAsVersion": "使用發佈日期作為版本字串", + "releaseTitleAsVersion": "使用發佈標題作為版本字串", + "releaseDateAsVersionExplanation": "此選項僅應用於版本偵測無法正確工作但有發佈日期的應用程式。", + "changes": "變更", + "releaseDate": "發佈日期", + "importFromURLsInFile": "從檔案中的 URL 匯入(如 OPML)", + "versionDetectionExplanation": "將版本字串與作業系統偵測到的版本對比", + "versionDetection": "版本偵測", + "standardVersionDetection": "標準版本偵測", + "groupByCategory": "按類別分組", + "autoApkFilterByArch": "如果可能,嘗試按 CPU 架構過濾 APK", + "autoLinkFilterByArch": "若可能,自動根據 CPU 架構篩選連結", + "overrideSource": "覆蓋來源", + "dontShowAgain": "不要再顯示", + "dontShowTrackOnlyWarnings": "不要顯示「僅追蹤」警告", + "dontShowAPKOriginWarnings": "不要顯示 APK 來源警告", + "moveNonInstalledAppsToBottom": "將未安裝的應用程式移到應用程式檢視的末端", + "gitlabPATLabel": "GitLab 個人存取權杖", + "about": "關於", + "requiresCredentialsInSettings": "{} 需要額外的憑證(在設定中)", + "checkOnStart": "啟動時檢查更新", + "tryInferAppIdFromCode": "嘗試從原始碼推斷應用程式 ID", + "removeOnExternalUninstall": "自動移除外部解除安裝的應用程式", + "pickHighestVersionCode": "自動選取最高版本號的 APK", + "checkUpdateOnDetailPage": "在開啟應用程式詳細頁面時檢查更新", + "disablePageTransitions": "停用頁面過渡動畫", + "reversePageTransitions": "反轉頁面過渡動畫", + "minStarCount": "最少星星數", + "addInfoBelow": "在下方新增此資訊。", + "addInfoInSettings": "在設定中增加此資訊。", + "githubSourceNote": "使用 API 金鑰可以避免 GitHub 的速率限制。", + "sortByLastLinkSegment": "僅按連結的最後一段排序", + "filterReleaseNotesByRegEx": "用正則表達式過濾發佈說明", + "customLinkFilterRegex": "自定 APK 連結過濾正則表達式(預設為 '.apk$')", + "appsPossiblyUpdated": "嘗試更新應用程式", + "appsPossiblyUpdatedNotifDescription": "通知使用者一個或多個應用程式的更新可能已在背景中套用", + "xWasPossiblyUpdatedToY": "{} 可能已更新到 {}。", + "enableBackgroundUpdates": "啟用背景更新", + "backgroundUpdateReqsExplanation": "並非所有應用程式都能進行背景更新。", + "backgroundUpdateLimitsExplanation": "背景安裝的成功與否只能在開啟 Obtainium 時確定。", + "verifyLatestTag": "驗證「最新」標籤", + "intermediateLinkRegex": "過濾要存取的「中間」連結", + "filterByLinkText": "按連結文字過濾連結", + "matchLinksOutsideATags": "匹配 標籤外的連結", + "intermediateLinkNotFound": "沒有找到中間連結", + "intermediateLink": "中間連結", + "exemptFromBackgroundUpdates": "免除背景更新(若已啟用)", + "bgUpdatesOnWiFiOnly": "停用非 Wi-Fi 的背景更新", + "bgUpdatesWhileChargingOnly": "未充電時停用背景更新", + "autoSelectHighestVersionCode": "自動選擇最高 versionCode 的 APK", + "versionExtractionRegEx": "版本字串提取正則表達式", + "trimVersionString": "用正則表達式修剪版本字串", + "matchGroupToUseForX": "用於「{}」的對應群組", + "matchGroupToUse": "要用於版本字串提取的對應群組", + "highlightTouchTargets": "突出顯示不明顯的觸控目標", + "pickExportDir": "選擇匯出目錄", + "autoExportOnChanges": "更改時自動匯出", + "includeSettings": "包含設定", + "filterVersionsByRegEx": "用正則表達式過濾版本", + "trySelectingSuggestedVersionCode": "嘗試選擇建議的 versionCode APK", + "dontSortReleasesList": "保留 API 的發佈順序", + "reverseSort": "反向排序", + "takeFirstLink": "使用第一個連結", + "skipSort": "跳過排序", + "debugMenu": "除錯選單", + "bgTaskStarted": "背景任務已啟動 - 檢查日誌。", + "runBgCheckNow": "立即執行背景更新檢查", + "versionExtractWholePage": "將版本字串提取正則表達式套用於整個頁面", + "installing": "正在安裝", + "skipUpdateNotifications": "跳過更新通知", + "updatesAvailableNotifChannel": "有可用的更新", + "appsUpdatedNotifChannel": "應用程式已更新", + "appsPossiblyUpdatedNotifChannel": "嘗試更新應用程式", + "errorCheckingUpdatesNotifChannel": "檢查更新錯誤", + "appsRemovedNotifChannel": "應用程式已移除", + "downloadingXNotifChannel": "正在下載 {}", + "completeAppInstallationNotifChannel": "完成應用程式安裝", + "checkingForUpdatesNotifChannel": "正在檢查更新", + "onlyCheckInstalledOrTrackOnlyApps": "僅檢查已安裝和僅追蹤的應用程式更新", + "supportFixedAPKURL": "支援固定的 APK 網址", + "selectX": "選擇 {}", + "parallelDownloads": "允許平行下載", + "useShizuku": "使用 Shizuku 或 Sui 來安裝", + "shizukuBinderNotFound": "Shizuku 服務未運作", + "shizukuOld": "舊版 Shizuku (<11) - 請更新", + "shizukuOldAndroidWithADB": "Shizuku 在 Android 8.1 以下版本使用 ADB 執行 - 請更新 Android 或改用 Sui", + "shizukuPretendToBeGooglePlay": "設定 Google Play 為安裝來源(如果使用 Shizuku)", + "useSystemFont": "使用系統字型", + "useVersionCodeAsOSVersion": "使用應用程式 versionCode 作為作業系統偵測的版本", + "requestHeader": "請求標頭", + "useLatestAssetDateAsReleaseDate": "使用最新資源上傳日期作為發佈日期", + "defaultPseudoVersioningMethod": "預設偽版本管理方法", + "partialAPKHash": "部分 APK Hash", + "APKLinkHash": "APK 連結 Hash", + "directAPKLink": "直接 APK 連結", + "pseudoVersionInUse": "正在使用偽版本", + "installed": "已安裝", + "latest": "最新", + "invertRegEx": "反轉正則表達式", + "note": "備註", + "selfHostedNote": "可使用「{}」下拉選單來存取任何來源的自行託管/自訂執行個體。", + "badDownload": "無法解析 APK(不相容或下載不完整)", + "beforeNewInstallsShareToAppVerifier": "將新應用程式分享到 AppVerifier(如果可用)", + "appVerifierInstructionToast": "分享至 AppVerifier,然後準備好時回到此處。", + "wiki": "幫助/維基", + "crowdsourcedConfigsLabel": "群眾外包的應用程式設定(使用風險自負)", + "crowdsourcedConfigsShort": "群眾外包的應用程式設定", + "allowInsecure": "允許不安全的 HTTP 請求", + "stayOneVersionBehind": "保持比最新版本落後一個版本", + "useFirstApkOfVersion": "Auto-select first of multiple APKs", + "refreshBeforeDownload": "下載前刷新應用程式詳細資訊", + "tencentAppStore": "騰訊應用寶", + "coolApk": "CoolApk", + "vivoAppStore": "vivo App Store (CN)", + "name": "名稱", + "smartname": "名稱(智慧)", + "sortMethod": "排序方式", + "welcome": "歡迎", + "documentationLinksNote": "下方連結的 Obtainium GitHub 頁面包含影片、文章、討論及其他資源,能幫助你瞭解如何使用這款應用程式。", + "batteryOptimizationNote": "Note that background downloads may work more reliably if you disable OS battery optimizations for Obtainium.", + "fileDeletionError": "Failed to delete file (try deleting it manually then try again): \"{}\"", + "foregroundService": "Obtainium foreground service", + "foregroundServiceExplanation": "Use a foreground service for update checking (more reliable, consumes more power)", + "fgServiceNotice": "This notification is required for background update checking (it can be hidden in the OS settings)", + "excludeSecrets": "Exclude secrets", + "GHReqPrefix": "'sky22333/hubproxy' instance for GitHub requests", + "includeZips": "Include ZIP files", + "zippedApkFilterRegEx": "Filter APKs inside ZIP", + "removeAppQuestion": { + "one": "移除應用程式?", + "other": "移除應用程式?" + }, + "tooManyRequestsTryAgainInMinutes": { + "one": "請求過多(速率限制)- {} 分鐘後重試", + "other": "請求過多(速率限制)- {} 分鐘後重試" + }, + "bgUpdateGotErrorRetryInMinutes": { + "one": "背景更新檢查遇到 {},將在 {} 分鐘後重新檢查", + "other": "背景更新檢查遇到 {},將在 {} 分鐘後重新檢查" + }, + "bgCheckFoundUpdatesWillNotifyIfNeeded": { + "one": "背景更新檢查發現 {} 個更新 - 如果需要將通知使用者", + "other": "背景更新檢查發現 {} 個更新 - 如果需要將通知使用者" + }, + "apps": { + "one": "{} 個應用程式", + "other": "{} 個應用程式" + }, + "url": { + "one": "{} 個 URL", + "other": "{} 個 URL" + }, + "minute": { + "one": "{} 分鐘", + "other": "{} 分鐘" + }, + "hour": { + "one": "{} 小時", + "other": "{} 小時" + }, + "day": { + "one": "{} 天", + "other": "{} 天" + }, + "clearedNLogsBeforeXAfterY": { + "one": "清除 {n} 個日誌(之前 = {before},之後 = {after})", + "other": "清除 {n} 個日誌(之前 = {before},之後 = {after})" + }, + "xAndNMoreUpdatesAvailable": { + "one": "{} 和另外 1 個應用程式有更新。", + "other": "{} 和另外 {} 個應用程式有更新。" + }, + "xAndNMoreUpdatesInstalled": { + "one": "{} 和另外 1 個應用程式已更新。", + "other": "{} 和另外 {} 個應用程式已更新。" + }, + "xAndNMoreUpdatesFailed": { + "one": "更新 {} 和另外 1 個應用程式失敗。", + "other": "更新 {} 和另外 {} 個應用程式失敗。" + }, + "xAndNMoreUpdatesPossiblyInstalled": { + "one": "{} 和另外 1 個應用程式可能已更新。", + "other": "{} 和另外 {} 個應用程式可能已更新。" + }, + "apk": { + "one": "{} 個 APK", + "other": "{} 個 APK" + } +} diff --git a/assets/translations/zh.json b/assets/translations/zh.json new file mode 100644 index 0000000..9c9f14e --- /dev/null +++ b/assets/translations/zh.json @@ -0,0 +1,402 @@ +{ + "invalidURLForSource": "无效的 {} URL", + "noReleaseFound": "找不到合适的发行版", + "noVersionFound": "无法确定发行版本号", + "urlMatchesNoSource": "URL 与已知的来源不符", + "cantInstallOlderVersion": "无法安装旧版本的应用", + "appIdMismatch": "所下载 APK 的应用 ID 与现有应用不一致", + "functionNotImplemented": "该类未实现此功能", + "placeholder": "占位符", + "someErrors": "出现了一些错误", + "unexpectedError": "意外错误", + "ok": "好的", + "and": "和", + "githubPATLabel": "GitHub 个人访问令牌(提升 API 请求限额)", + "includePrereleases": "包含预发行版", + "fallbackToOlderReleases": "将过往的发行版作为备选", + "filterReleaseTitlesByRegEx": "筛选发行标题的正则表达式", + "invalidRegEx": "无效的正则表达式", + "noDescription": "无描述", + "cancel": "取消", + "continue": "继续", + "requiredInBrackets": "(必填)", + "dropdownNoOptsError": "错误:下拉菜单必须包含至少一个选项", + "colour": "配色", + "standard": "标准", + "custom": "自定义", + "useMaterialYou": "使用 Material You", + "githubStarredRepos": "已星标的 GitHub 仓库", + "uname": "用户名", + "wrongArgNum": "参数数量错误", + "xIsTrackOnly": "“{}”为“仅追踪”模式", + "source": "来源", + "app": "应用", + "appsFromSourceAreTrackOnly": "此来源的应用为“仅追踪”模式。", + "youPickedTrackOnly": "您选择了“仅追踪”。", + "trackOnlyAppDescription": "该应用的更新会被追踪,但 Obtainium 无法下载或安装它。", + "cancelled": "已取消", + "appAlreadyAdded": "此应用已经添加", + "alreadyUpToDateQuestion": "应用是否已经为最新版本?", + "addApp": "添加应用", + "appSourceURL": "来源 URL", + "error": "错误", + "add": "添加", + "searchSomeSourcesLabel": "搜索(仅支持部分来源)", + "search": "搜索", + "additionalOptsFor": "{} 的更多选项", + "supportedSources": "支持的来源", + "trackOnlyInBrackets": "(仅追踪)", + "searchableInBrackets": "(可搜索)", + "appsString": "应用列表", + "noApps": "无应用", + "noAppsForFilter": "没有符合条件的应用", + "byX": "开发者:{}", + "percentProgress": "进度:{}%", + "pleaseWait": "请稍候", + "updateAvailable": "更新可用", + "notInstalled": "未安装", + "pseudoVersion": "虚拟版本号", + "selectAll": "全选", + "deselectX": "取消选择 {}", + "xWillBeRemovedButRemainInstalled": "“{}”将从 Obtainium 中删除,但仍安装在您的设备中。", + "removeSelectedAppsQuestion": "是否删除选中的应用?", + "removeSelectedApps": "删除选中的应用", + "updateX": "更新 {}", + "installX": "安装 {}", + "markXTrackOnlyAsUpdated": "将“{}”\n(仅追踪)\n标记为已更新", + "changeX": "更改 {}", + "installUpdateApps": "安装/更新应用", + "installUpdateSelectedApps": "安装/更新选中的应用", + "markXSelectedAppsAsUpdated": "是否将选中的 {} 个应用标记为已更新?", + "no": "否", + "yes": "是", + "markSelectedAppsUpdated": "将选中的应用标记为已更新", + "pinToTop": "置顶", + "unpinFromTop": "取消置顶", + "resetInstallStatusForSelectedAppsQuestion": "是否重置选中应用的安装状态?", + "installStatusOfXWillBeResetExplanation": "选中应用的安装状态将会被重置。\n\n当更新安装失败或其他问题导致 Obtainium 中的应用版本显示错误时,可以尝试通过此方法解决。", + "customLinkMessage": "分享链接仅适用于已安装 Obtainium 的设备", + "shareAppConfigLinks": "通过链接分享应用配置", + "shareSelectedAppURLs": "分享选中应用的 URL", + "resetInstallStatus": "重置安装状态", + "more": "更多", + "removeOutdatedFilter": "删除失效的应用筛选", + "showOutdatedOnly": "只显示待更新应用", + "filter": "筛选", + "filterApps": "筛选应用", + "appName": "应用名称", + "author": "作者", + "upToDateApps": "无需更新的应用", + "nonInstalledApps": "未安装的应用", + "importExport": "导入/导出", + "settings": "设置", + "exportedTo": "已导出至 {}", + "obtainiumExport": "导出 Obtainium", + "invalidInput": "无效的输入", + "importedX": "已导入 {}", + "obtainiumImport": "导入 Obtainium", + "importFromURLList": "从 URL 列表导入", + "searchQuery": "搜索查询", + "appURLList": "应用 URL 列表", + "line": "行", + "searchX": "搜索{}", + "noResults": "无结果", + "importX": "导入{}", + "importedAppsIdDisclaimer": "导入的应用可能会错误地显示为“未安装”状态。\n请通过 Obtainium 重新安装这些应用来解决此问题。", + "importErrors": "导入错误", + "importedXOfYApps": "已导入 {} 中的 {} 个应用。", + "followingURLsHadErrors": "下列 URL 存在错误:", + "selectURL": "选择 URL", + "selectURLs": "选择 URL", + "pick": "选择", + "theme": "主题", + "dark": "深色", + "light": "浅色", + "followSystem": "跟随系统", + "followSystemThemeExplanation": "跟随系统主题仅在使用第三方应用时有效", + "useBlackTheme": "使用纯黑深色主题", + "appSortBy": "排序依据", + "authorName": "作者 / 应用名称", + "nameAuthor": "应用名称 / 作者", + "asAdded": "添加次序", + "appSortOrder": "顺序", + "ascending": "升序", + "descending": "降序", + "bgUpdateCheckInterval": "后台更新检查间隔", + "neverManualOnly": "手动", + "appearance": "外观", + "showWebInAppView": "应用详情页显示来源网站内容", + "pinUpdates": "将待更新应用置顶", + "updates": "更新", + "sourceSpecific": "来源", + "appSource": "源代码", + "noLogs": "无日志", + "appLogs": "日志", + "close": "关闭", + "share": "分享", + "appNotFound": "未找到应用", + "obtainiumExportHyphenatedLowercase": "obtainium-export", + "pickAnAPK": "选择一个 APK 文件", + "appHasMoreThanOnePackage": "“{}”有多个架构可用:", + "deviceSupportsXArch": "您的设备支持 {} 架构。", + "deviceSupportsFollowingArchs": "您的设备支持下列架构:", + "warning": "警告", + "sourceIsXButPackageFromYPrompt": "此应用的来源是“{}”,但 APK 文件来自“{}”。是否继续?", + "updatesAvailable": "更新可用", + "updatesAvailableNotifDescription": "Obtainium 追踪的应用有更新时发送通知", + "noNewUpdates": "全部应用已是最新。", + "xHasAnUpdate": "“{}”可以更新了。", + "appsUpdated": "应用已更新", + "appsNotUpdated": "更新应用失败", + "appsUpdatedNotifDescription": "当应用在后台安装更新时发送通知", + "xWasUpdatedToY": "“{}”已更新至 {}。", + "xWasNotUpdatedToY": "未能将 {} 更新为 {}。", + "errorCheckingUpdates": "检查更新出错", + "errorCheckingUpdatesNotifDescription": "当后台检查更新失败时显示的通知", + "appsRemoved": "应用已删除", + "appsRemovedNotifDescription": "当应用因加载出错而被删除时发送通知", + "xWasRemovedDueToErrorY": "“{}”由于以下错误被删除:{}", + "completeAppInstallation": "完成应用安装", + "obtainiumMustBeOpenToInstallApps": "必须开启 Obtainium 才能安装应用", + "completeAppInstallationNotifDescription": "提示返回 Obtainium 以完成应用安装", + "checkingForUpdates": "正在检查更新", + "checkingForUpdatesNotifDescription": "检查更新时短暂显示的通知", + "pleaseAllowInstallPerm": "请授予 Obtainium 安装应用的权限", + "trackOnly": "仅追踪", + "errorWithHttpStatusCode": "{} 错误", + "versionCorrectionDisabled": "禁用版本号更正(插件似乎未起作用)", + "unknown": "未知", + "none": "无", + "all": "全部", + "never": "从未", + "latestVersionX": "最新版本:{}", + "installedVersionX": "当前版本:{}", + "lastUpdateCheckX": "上次更新检查:{}", + "remove": "删除", + "yesMarkUpdated": "是,标记为已更新", + "fdroid": "F-Droid 官方存储库", + "appIdOrName": "应用 ID 或名称", + "appId": "应用 ID", + "appWithIdOrNameNotFound": "未找到符合此 ID 或名称的应用", + "reposHaveMultipleApps": "存储库中可能包含多个应用", + "fdroidThirdPartyRepo": "F-Droid 第三方存储库", + "install": "安装", + "markInstalled": "标记为已安装", + "update": "更新", + "markUpdated": "标记为已更新", + "additionalOptions": "附加选项", + "disableVersionDetection": "禁用版本检测", + "noVersionDetectionExplanation": "此选项应该仅用于无法进行版本检测的应用。", + "downloadingX": "正在下载 {}", + "downloadX": "下载 {}", + "downloadedX": "已下载 {}", + "releaseAsset": "发行文件", + "downloadNotifDescription": "提示应用的下载进度", + "noAPKFound": "未找到 APK 文件", + "noVersionDetection": "禁用版本检测", + "categorize": "归类", + "categories": "类别", + "category": "类别", + "noCategory": "无类别", + "noCategories": "无类别", + "deleteCategoriesQuestion": "是否删除选中的类别?", + "categoryDeleteWarning": "被删除类别下的应用将恢复为未分类状态。", + "addCategory": "添加类别", + "label": "标签", + "language": "语言", + "copiedToClipboard": "已复制至剪贴板", + "storagePermissionDenied": "已拒绝授予存储权限", + "selectedCategorizeWarning": "这将覆盖选中应用当前的类别设置。", + "filterAPKsByRegEx": "筛选 APK 文件的正则表达式", + "removeFromObtainium": "从 Obtainium 中删除", + "uninstallFromDevice": "从设备中卸载", + "onlyWorksWithNonVersionDetectApps": "仅适用于禁用版本检测的应用。", + "releaseDateAsVersion": "将发行日期作为版本号", + "releaseTitleAsVersion": "将发行标题作为版本字符串", + "releaseDateAsVersionExplanation": "此选项应该仅用于无法进行版本检测但能够获取发行日期的应用。", + "changes": "更新日志", + "releaseDate": "发行日期", + "importFromURLsInFile": "从文件中的 URL 导入(如 OPML)", + "versionDetectionExplanation": "使发行版本号与应用定义的版本号一致", + "versionDetection": "版本检测", + "standardVersionDetection": "常规版本检测", + "groupByCategory": "按类别分组显示", + "autoApkFilterByArch": "尽可能按设备支持的 CPU 架构筛选 APK 文件", + "autoLinkFilterByArch": "尽可能按设备支持的 CPU 架构筛选链接", + "overrideSource": "覆盖来源", + "dontShowAgain": "不再显示", + "dontShowTrackOnlyWarnings": "忽略“仅追踪”模式警告", + "dontShowAPKOriginWarnings": "忽略 APK 文件来源警告", + "moveNonInstalledAppsToBottom": "将未安装应用置底", + "gitlabPATLabel": "GitLab 个人访问令牌", + "about": "相关文档", + "requiresCredentialsInSettings": "{}:此功能需要额外的凭据(在“设置”中添加)", + "checkOnStart": "启动时进行一次检查", + "tryInferAppIdFromCode": "尝试从源代码推断应用 ID", + "removeOnExternalUninstall": "自动删除列表中已卸载的应用", + "pickHighestVersionCode": "自动选取内部版本号最高的 APK 文件", + "checkUpdateOnDetailPage": "打开应用详情页时进行检查", + "disablePageTransitions": "禁用页面过渡动画效果", + "reversePageTransitions": "反转页面过渡动画效果", + "minStarCount": "最小星标数", + "addInfoBelow": "在下方添加此凭据。", + "addInfoInSettings": "在“设置”中添加此凭据。", + "githubSourceNote": "使用访问令牌可避免触发 GitHub 的 API 请求限制。", + "sortByLastLinkSegment": "仅根据链接的末尾部分进行筛选", + "filterReleaseNotesByRegEx": "筛选发行说明的正则表达式", + "customLinkFilterRegex": "筛选自定义来源的 APK 文件链接\n(正则表达式,默认匹配模式为“.apk$”)", + "appsPossiblyUpdated": "已尝试更新应用", + "appsPossiblyUpdatedNotifDescription": "当应用已尝试在后台更新时发送通知", + "xWasPossiblyUpdatedToY": "已尝试将“{}”更新至 {}。", + "enableBackgroundUpdates": "启用全局后台更新", + "backgroundUpdateReqsExplanation": "后台更新未必适用于所有的应用。", + "backgroundUpdateLimitsExplanation": "只有在开启 Obtainium 时才能确认是否安装成功。", + "verifyLatestTag": "验证“Latest”标签", + "intermediateLinkRegex": "筛选中转链接的正则表达式", + "filterByLinkText": "根据链接文本进行筛选", + "matchLinksOutsideATags": "匹配 标签外的链接", + "intermediateLinkNotFound": "未找到中转链接", + "intermediateLink": "中转链接", + "exemptFromBackgroundUpdates": "禁用后台更新(仅此应用生效,即使已启用全局后台更新)", + "bgUpdatesOnWiFiOnly": "未连接 Wi-Fi 时禁用后台更新", + "bgUpdatesWhileChargingOnly": "未充电时禁用后台更新", + "autoSelectHighestVersionCode": "自动选择内部版本号最高的 APK 文件", + "versionExtractionRegEx": "提取版本号的正则表达式", + "trimVersionString": "修剪版本字符串的正则表达式", + "matchGroupToUseForX": "“{}”中引用的捕获组", + "matchGroupToUse": "“提取版本字符串的正则表达式”中引用的捕获组", + "highlightTouchTargets": "突出展示不明显的可交互区域", + "pickExportDir": "选择导出文件夹", + "autoExportOnChanges": "数据变更时自动导出", + "includeSettings": "同时导出应用设置", + "filterVersionsByRegEx": "筛选版本号的正则表达式", + "trySelectingSuggestedVersionCode": "尝试选择推荐版本的 APK 文件", + "dontSortReleasesList": "保持来自 API 的发行顺序", + "reverseSort": "反转排序", + "takeFirstLink": "选取第一个链接", + "skipSort": "不进行排序", + "debugMenu": "调试选项", + "bgTaskStarted": "后台任务已启动 - 详见日志", + "runBgCheckNow": "立即进行后台更新检查", + "versionExtractWholePage": "将版本号提取规则应用于完整页面", + "installing": "正在安装", + "skipUpdateNotifications": "忽略更新通知", + "updatesAvailableNotifChannel": "更新可用", + "appsUpdatedNotifChannel": "应用已更新", + "appsPossiblyUpdatedNotifChannel": "已尝试更新应用", + "errorCheckingUpdatesNotifChannel": "检查更新出错", + "appsRemovedNotifChannel": "应用已删除", + "downloadingXNotifChannel": "正在下载“{}”", + "completeAppInstallationNotifChannel": "完成应用安装", + "checkingForUpdatesNotifChannel": "正在检查更新", + "onlyCheckInstalledOrTrackOnlyApps": "只检查已安装和“仅追踪”的应用", + "supportFixedAPKURL": "支持固定的 APK 文件链接", + "selectX": "选择{}", + "parallelDownloads": "启用并行下载", + "useShizuku": "使用 Shizuku 或 Sui 安装", + "shizukuBinderNotFound": "未发现兼容的 Shizuku 服务", + "shizukuOld": "Shizuku 版本过低(<11)- 请更新", + "shizukuOldAndroidWithADB": "正在低版本 Android(<8.1)系统中以 ADB 模式运行 Shizuku - 请更新 Android 系统版本或使用 Sui 代替", + "shizukuPretendToBeGooglePlay": "将安装来源伪装为 Google Play(需要使用 Shizuku)", + "useSystemFont": "使用系统字体", + "useVersionCodeAsOSVersion": "使用内部版本号代替应用定义的版本号", + "requestHeader": "请求标头", + "useLatestAssetDateAsReleaseDate": "使用最新文件上传时间作为发行日期", + "defaultPseudoVersioningMethod": "默认虚拟版本方案", + "partialAPKHash": "APK 文件散列值片段", + "APKLinkHash": "APK 文件链接散列值", + "directAPKLink": "APK 文件直链", + "pseudoVersionInUse": "正在使用虚拟版本号", + "installed": "当前版本", + "latest": "最新版本", + "invertRegEx": "反转匹配", + "note": "备注", + "selfHostedNote": "可以通过“{}”下拉菜单来指向任意来源的自托管/自定义实例。", + "badDownload": "无法解析 APK 文件(不兼容或文件不完整)", + "beforeNewInstallsShareToAppVerifier": "通过 AppVerifier 校验新应用(如果可用)", + "appVerifierInstructionToast": "分享至 AppVerifier,完成后返回此处。", + "wiki": "帮助/Wiki", + "crowdsourcedConfigsLabel": "来自社区的应用配置(谨慎使用)", + "crowdsourcedConfigsShort": "来自社区的应用配置", + "allowInsecure": "允许不安全的 HTTP 请求", + "stayOneVersionBehind": "始终延后一个版本进行更新", + "useFirstApkOfVersion": "存在多个 APK 文件时自动选择第一个", + "refreshBeforeDownload": "下载前刷新应用详情", + "tencentAppStore": "腾讯应用宝", + "coolApk": "酷安", + "vivoAppStore": "(中国)vivo应用商店", + "name": "发行名称", + "smartname": "发行名称(智能)", + "sortMethod": "排序方法", + "welcome": "欢迎", + "documentationLinksNote": "下方链接的 GitHub 页面中包含关于 Obtainium 的视频、文章、讨论及其他资源,可帮助您了解本应用的使用方法。", + "batteryOptimizationNote": "请注意,在设置中切换为“前台服务”,并/或关闭操作系统对 Obtainium 的电池优化,可能会让后台下载更稳定。", + "fileDeletionError": "删除文件失败(请手动删除后再次尝试):\"{}\"", + "foregroundService": "Obtainium 前台服务", + "foregroundServiceExplanation": "使用前台服务检查更新(更稳定,但也更耗电)", + "fgServiceNotice": "后台检查更新时需要此通知(可在操作系统设置中隐藏)", + "excludeSecrets": "排除机密", + "GHReqPrefix": "用于 GitHub 请求的 \"sky22333/hubproxy \"实例", + "includeZips": "包含 ZIP 文件", + "zippedApkFilterRegEx": "过滤 ZIP 内的 APK", + "removeAppQuestion": { + "one": "是否删除应用?", + "other": "是否删除应用?" + }, + "tooManyRequestsTryAgainInMinutes": { + "one": "请求过于频繁(API 速率限制)- 请在 {} 分钟后重试", + "other": "请求过于频繁(API 速率限制)- 请在 {} 分钟后重试" + }, + "bgUpdateGotErrorRetryInMinutes": { + "one": "后台更新检查遇到了“{}”问题,将于 {} 分钟后重试", + "other": "后台更新检查遇到了“{}”问题,将于 {} 分钟后重试" + }, + "bgCheckFoundUpdatesWillNotifyIfNeeded": { + "one": "后台检查发现 {} 个应用更新 - 如有需要将发送通知", + "other": "后台检查发现 {} 个应用更新 - 如有需要将发送通知" + }, + "apps": { + "one": "{} 个应用", + "other": "{} 个应用" + }, + "url": { + "one": "{} 个 URL", + "other": "{} 个 URL" + }, + "minute": { + "one": "{} 分钟", + "other": "{} 分钟" + }, + "hour": { + "one": "{} 小时", + "other": "{} 小时" + }, + "day": { + "one": "{} 天", + "other": "{} 天" + }, + "clearedNLogsBeforeXAfterY": { + "one": "清除了 {n} 条日志(早于 {before},晚于 {after})", + "other": "清除了 {n} 条日志(早于 {before},晚于 {after})" + }, + "xAndNMoreUpdatesAvailable": { + "one": "“{}”和另外 1 个应用可以更新了。", + "other": "“{}”和另外 {} 个应用可以更新了。" + }, + "xAndNMoreUpdatesInstalled": { + "one": "“{}”和另外 1 个应用已更新。", + "other": "“{}”和另外 {} 个应用已更新。" + }, + "xAndNMoreUpdatesFailed": { + "one": "“{}”和另外 1 个应用更新失败。", + "other": "“{}”和另外 {} 个应用更新失败。" + }, + "xAndNMoreUpdatesPossiblyInstalled": { + "one": "已尝试更新“{}”和另外 1 个应用。", + "other": "已尝试更新“{}”和另外 {} 个应用。" + }, + "apk": { + "one": "{} 个 APK 文件", + "other": "{} 个 APK 文件" + } +} diff --git a/build.sh b/build.sh new file mode 100755 index 0000000..4257d2a --- /dev/null +++ b/build.sh @@ -0,0 +1,47 @@ +#!/bin/bash +# Convenience script + +CURR_DIR="$(pwd)" +SCRIPT_DIR="$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" &>/dev/null && pwd)" +trap "cd \"$CURR_DIR\"" EXIT +cd "$SCRIPT_DIR" + +if [ -z "$1" ]; then + git fetch && git merge origin/main && git push # Typically run after a PR to main, so bring dev up to date +fi + +# Update local Flutter +git submodule update --remote +cd .flutter +git fetch +git checkout stable +git pull +FLUTTER_GIT_URL="https://github.com/flutter/flutter/" ./bin/flutter upgrade +cd .. + +# Keep global Flutter, if any, in sync +if [ -f ~/flutter/bin/flutter ]; then + cd ~/flutter + ./bin/flutter channel stable + ./bin/flutter upgrade + cd "$SCRIPT_DIR" +fi + +if [ -z "$(which flutter)" ]; then + export PATH="$PATH:$SCRIPT_DIR/.flutter/bin" +fi + +rm ./build/app/outputs/flutter-apk/* 2>/dev/null # Get rid of older builds if any +flutter build apk --flavor normal && flutter build apk --split-per-abi --flavor normal # Build (both split and combined APKs) +for file in ./build/app/outputs/flutter-apk/app-*normal*.apk*; do mv "$file" "${file//-normal/}"; done +flutter build apk --flavor fdroid -t lib/main_fdroid.dart && # Do the same for the F-Droid flavour + flutter build apk --split-per-abi --flavor fdroid -t lib/main_fdroid.dart +for file in ./build/app/outputs/flutter-apk/*.sha1; do gpg --sign --detach-sig "$file"; done # Generate PGP signatures +rsync -r ./build/app/outputs/flutter-apk/ ~/Downloads/Obtainium-build/ # Dropoff in Downloads to allow for drag-drop into Flatpak Firefox +cd ~/Downloads/Obtainium-build/ # Make zips just in case (for in-comment uploads) +for apk in *.apk; do + PREFIX="$(echo "$apk" | head -c -5)" + zip "$PREFIX" "$PREFIX"* +done +mkdir -p zips +mv *.zip zips/ diff --git a/docker/Dockerfile b/docker/Dockerfile new file mode 100644 index 0000000..b92aa42 --- /dev/null +++ b/docker/Dockerfile @@ -0,0 +1,86 @@ +FROM ubuntu:22.04 + +ENV DEBIAN_FRONTEND noninteractive +ENV ANDROID_SDK_ROOT /opt/android-sdk-linux +ENV PATH "${PATH}:/opt/flutter/bin:/root/.pub-cache/bin:${ANDROID_SDK_ROOT}/cmdline-tools/latest/bin:/opt/android-sdk-linux/platform-tools" + +ENV HOME=/root + +# Prereqs +RUN \ + apt-get update &&\ + apt-get install -y --no-install-recommends \ + bash \ + curl \ + file \ + git 2.x \ + unzip \ + xz-utils \ + zip \ + libglu1-mesa \ + libxi-dev \ + libxmu-dev \ + libglu1-mesa-dev \ + git-lfs \ + openssl \ + wget + +# Build prereqs +RUN \ + apt-get install -y \ + cmake curl git wget unzip libgconf-2-4 gdb libstdc++6 libglu1-mesa fonts-droid-fallback lib32stdc++6 python3 sed \ + cmake ninja-build build-essential libgl1-mesa-dev libegl1-mesa-dev libgles2-mesa-dev clang pkg-config libgtk-3-dev \ + liblzma-dev libmount-dev libblkid-dev libgcrypt20-dev libgpg-error-dev libssl-dev libpng-dev libjpeg-dev \ + libtiff-dev libgif-dev libgtk-3-dev + +# Android SDK prequisites +# https://developer.android.com/studio#command-tools +RUN \ + apt-get install -y --no-install-recommends \ + git \ + git-lfs \ + openssl \ + wget \ + unzip + +# Android SDK +RUN \ + wget --quiet https://dl.google.com/android/repository/commandlinetools-linux-13114758_latest.zip -O /tmp/tools.zip && \ + mkdir -p ${ANDROID_SDK_ROOT}/cmdline-tools && \ + unzip -q /tmp/tools.zip -d ${ANDROID_SDK_ROOT}/cmdline-tools && \ + mv ${ANDROID_SDK_ROOT}/cmdline-tools/cmdline-tools ${ANDROID_SDK_ROOT}/cmdline-tools/latest && \ + rm -v /tmp/tools.zip && \ + mkdir -p /root/.android/ && touch /root/.android/repositories.cfg &&\ + apt-get install -y --no-install-recommends openjdk-21-jdk openjdk-21-jre &&\ + yes | sdkmanager --licenses &&\ + sdkmanager --update + + # Platform tools +# Get latest with sdkmanager --list +RUN sdkmanager --install "build-tools;33.0.1" +RUN sdkmanager --install "ndk;26.3.11579264" +RUN sdkmanager --install "cmake;4.0.2" +RUN sdkmanager --install platform-tools +RUN sdkmanager --install emulator +RUN sdkmanager --install tools +RUN sdkmanager --install "platforms;android-28" +RUN sdkmanager --install "platforms;android-31" +RUN sdkmanager --install "platforms;android-32" +RUN sdkmanager --install "platforms;android-33" +RUN sdkmanager --install "platforms;android-34" +RUN sdkmanager --install "platforms;android-35" + +# Flutter +ARG DEV_UID=0 +RUN \ + wget --quiet https://storage.googleapis.com/flutter_infra_release/releases/stable/linux/flutter_linux_3.29.3-stable.tar.xz -O /tmp/flutter.tar.xz &&\ + mkdir -p /opt &&\ + cd /opt &&\ + tar xf /tmp/flutter.tar.xz &&\ + rm /tmp/flutter.tar.xz &&\ + git config --global --add safe.directory /opt/flutter &&\ + dart pub global activate cider &&\ + chown -R ${DEV_UID} /opt/flutter +RUN flutter --disable-analytics +RUN flutter upgrade +RUN chmod a+w /opt/flutter/packages -R diff --git a/docker/builder.sh b/docker/builder.sh new file mode 100755 index 0000000..f5c1c16 --- /dev/null +++ b/docker/builder.sh @@ -0,0 +1,21 @@ +#!/usr/bin/env bash + +SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) + +cd ${SCRIPT_DIR}/.. +mkdir -p ./data/home +docker run \ + --rm \ + -ti \ + --net host \ + -v "${PWD}/../:${PWD}/../":z \ + -w "${PWD}" \ + --name flutter-dev-obtainium \ + --user $(id -u) \ + -v ./data/home:/home/${USER}:z \ + -e USER=${USER} \ + -e HOME=/home/${USER} \ + -e ANDROID_USER_HOME=${HOME}/.android \ + -e GRADLE_USER_HOME=${HOME}/.gradle \ + -e PS1="${debian_chroot:+($debian_chroot)}${USER}@\h:\w\$ " \ + flutter-builder-obtainium \ No newline at end of file diff --git a/docker/mkbuilder.sh b/docker/mkbuilder.sh new file mode 100755 index 0000000..77fd71c --- /dev/null +++ b/docker/mkbuilder.sh @@ -0,0 +1,14 @@ +#!/usr/bin/env bash + +SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) +D=$(date +'%Y%m%d.%H%M%S%3N') + +set -e + +cd "${SCRIPT_DIR}/.." +# Create the builder image +docker build \ + -t flutter-builder-obtainium \ + -f ./docker/Dockerfile \ + --build-arg="DEV_UID=$(id -u)" \ + . diff --git a/fastlane/metadata/android/de/full_description.txt b/fastlane/metadata/android/de/full_description.txt new file mode 100644 index 0000000..98127df --- /dev/null +++ b/fastlane/metadata/android/de/full_description.txt @@ -0,0 +1,58 @@ +

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 z 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 m`MO7iy5>jb@dtNvl(U7%bPj;d9X5nh~BamNC^g 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�$1={BOWePl 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

QIg$`u`)Z*I2m|0VjZbP*t441znHF|7NY)V30 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 literal 0 HcmV?d00001 diff --git a/assets/screenshots/1.apps.png b/assets/screenshots/1.apps.png new file mode 100644 index 0000000000000000000000000000000000000000..620e89cd07877b07e63f932dd5f348b982137d24 GIT binary patch literal 354202 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