>()
67 | val db = dbHelper.readableDatabase
68 | val cursor = db.query(
69 | TABLE_NAME,
70 | arrayOf(COLUMN_FILE_PATH, COLUMN_ITEM_NAME),
71 | "$COLUMN_JOB_ID = ?",
72 | arrayOf(jobId),
73 | null,
74 | null,
75 | null
76 | )
77 | with(cursor) {
78 | while (moveToNext()) {
79 | val filePath = getString(getColumnIndexOrThrow(COLUMN_FILE_PATH))
80 | val itemName = getString(getColumnIndexOrThrow(COLUMN_ITEM_NAME))
81 | files.add(filePath to itemName)
82 | }
83 | }
84 | cursor.close()
85 | return files
86 | }
87 |
88 |
89 |
90 | fun deleteFilesForJob(jobId: String) {
91 | val db = dbHelper.writableDatabase
92 | db.delete(TABLE_NAME, "$COLUMN_JOB_ID = ?", arrayOf(jobId))
93 | }
94 | }
--------------------------------------------------------------------------------
/docs/README.tr-TR.md:
--------------------------------------------------------------------------------
1 | # ZipXtract
2 |
3 | [](https://github.com/WirelessAlien/ZipXtract/releases/latest)
4 | [](https://github.com/WirelessAlien/ZipXtract/blob/master/License)
5 | [](https://img.shields.io/github/stars/WirelessAlien/ZipXtract)
6 | [](https://img.shields.io/github/downloads/WirelessAlien/ZipXtract/total)
7 | 
8 | [](https://f-droid.org/packages/com.wirelessalien.zipxtract)
9 |
10 | ZipXtract, çok çeşitli arşiv formatlarını işleyebilen tamamen açık kaynaklı bir Android uygulamasıdır. Desteklenen formatlar şunlardır:
11 |
12 | - RAR (RAR5 ve çok ciltli destek ile)
13 | - ZIP (şifre korumalı ve bölünmüş arşivler dahil)
14 | - TAR
15 | - BZ2
16 | - GZ
17 | - 7z (şifre koruması ve çok ciltli destek ile)
- XZ
18 | - JAR
19 | - ...
20 |
21 |
22 | Özellikler
23 |
24 | Çıkarma:
25 |
26 | - RAR, ZIP, TAR, BZ2, GZ, 7z, XZ, JAR vb. formatları destekler.
27 | - Şifreli ZIP ve 7z dosyalarını işler.
28 | - Çok ciltli RAR arşivlerini çıkarır.
29 | - Çok ciltli arşivleri çıkarır.
30 | - Bölünmüş ZIP dosyalarını çıkarır.
31 |
32 |
33 | Oluşturma:
34 |
35 |
36 | - Şifreleme seçenekleriyle ZIP ve 7z arşivleri oluşturur.
37 | - Bölünmüş ZIP arşivleri oluşturur.
38 |
39 |
40 |
41 | NOT:
42 | F-Droid sürümünde lisans kısıtlamaları nedeniyle RAR çıkarma ve 7z sıkıştırma özellikleri bulunmamaktadır. Tüm özelliklere sahip sürüm için GitHub veya IzzyOnDroid dağıtımlarını kullanın.
43 |
44 |
45 | Kullanım İpucu
46 | Arşiv çıkarma ve oluşturma için genel ipuçları:
47 |
48 | - Dosya ve klasörleri arşivlemek için üzerine uzun basın veya simgelerine tıklayarak seçin.
49 | - Bir dosyaya tıklayarak çıkarma seçeneklerini içeren menüyü görüntüleyin.
50 | - İşletim sisteminin “Birlikte Aç” menüsüyle çıkarılan dosyalar varsayılan olarak Dahili Depolama/ZipXtract klasörüne kaydedilir. Bunu uygulama ayarlarından değiştirebilirsiniz.
51 | - Uygulama içinden yapılan arşivleme ve çıkarma işlemlerinin varsayılan konumu, dosyanın bulunduğu üst dizindir. Bu ayar da değiştirilebilir.
52 |
53 |
54 | Uygulama İzinleri
55 | Depolama Okuma/Yazma İzni (Android 10 ve öncesi) ve Harici Depolamayı Yönetme İzni (Android 11 ve sonrası) gerektirir. Uygulamanın internet izni yoktur. Daha fazla bilgi için: Gizlilik politikası
56 |
57 | Çeviri
58 | Uygulamayı yerelleştirmeye yardımcı olmak için Weblate'e katılın.
59 |
60 | Lisans
61 | Bu proje GNU Genel Kamu Lisansı v3.0 ile lisanslanmıştır. Detaylar için LİSANS dosyasına bakın.
62 |
63 | İletişim
64 | Herhangi bir soru veya geri bildirim için lütfen GitHub deposunda bir konu (issue) açın.
--------------------------------------------------------------------------------
/docs/README.uk.md:
--------------------------------------------------------------------------------
1 | # ZipXtract
2 |
3 | [](https://github.com/WirelessAlien/ZipXtract/releases/latest)
4 | [](https://github.com/WirelessAlien/ZipXtract/blob/master/License)
5 | [](https://img.shields.io/github/stars/WirelessAlien/ZipXtract)
6 | [](https://img.shields.io/github/downloads/WirelessAlien/ZipXtract/total)
7 | 
8 | [](https://f-droid.org/packages/com.wirelessalien.zipxtract)
9 |
10 |
11 | ZipXtract — це програма Android із повністю відкритим вихідним кодом, призначена для обробки широкого діапазону форматів архівів, зокрема:
12 |
13 | - RAR (з підтримкою RAR5 і багатотомного зберігання)
14 | - ZIP (включаючи захищені паролем і розділені архіви)
15 | - TAR
16 | - BZ2
17 | - GZ
18 | - 7z (із захистом паролем і підтримкою кількох томів)
19 | - XZ
20 | - JAR
21 | - ...
22 |
23 |
24 | Функції
25 |
26 | Вилучення:
27 |
28 | - Підтримує різні формати: RAR, ZIP, TAR, BZ2, GZ, 7z, XZ, JAR тощо.
29 | - Обробляє зашифровані файли ZIP і 7z.
30 | - Витягує багатотомні архіви RAR.
31 | - Витягує багатотомні архіви.
32 | - Витягує розділені файли ZIP.
33 |
34 |
35 | Створення:
36 |
37 | - Створюйте архіви ZIP і 7z із параметрами шифрування.
38 | - Створення розділених ZIP-архівів.
39 |
40 |
41 |
42 | ПРИМІТКА:
43 | Версія F-Droid не включає функції видобування RAR і стиснення 7z через ліцензійні обмеження. Щоб отримати повну версію, використовуйте випуски GitHub або IzzyOnDroid.
44 |
45 |
46 | Порада щодо використання
47 | Загальні поради щодо розпакування та створення архіву:
48 |
49 | - Утримуйте файли та папки або клацайте піктограми файлів/папок, щоб вибрати їх для архівування.
50 | - Натисніть файл, щоб відобразити меню видобування для вибору параметрів видобування.
51 | - Файли, видобуті за допомогою меню «Відкрити за допомогою» ОС, за умовчанням зберігаються у Internal Storage/ZipXtract. Змініть це в налаштуваннях програми.
52 | - Розташуванням за замовчуванням для архівування або витягування архівів (у програмі) є батьківський каталог відповідних файлів. Це можна змінити в налаштуваннях програми.
53 |
54 |
55 | Дозвіл програми
56 | Дозвіл на читання та запис пам’яті (Android 10 і старіші версії) і дозвіл на керування зовнішньою пам’яттю (Android 11 і новіші версії). Програма не має доступу до Інтернету. Докладніше - Політика конфіденційності
57 |
58 | Перекласти
59 |
60 | Допоможіть локалізувати програму через Weblate
61 |
62 |
63 |
64 | Ліцензія
65 | Цей проект ліцензовано згідно з GNU General Public License v3.0. Докладніше див. у файлі LICENSE.
66 |
67 | Контакт
68 | Щоб отримати будь-які запитання чи відгуки, будь ласка, відкрийте проблему в репозиторії GitHub.
69 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/shimmer_placeholder_item.xml:
--------------------------------------------------------------------------------
1 |
17 |
18 |
24 |
25 |
30 |
31 |
40 |
41 |
50 |
51 |
62 |
63 |
67 |
68 |
69 |
80 |
81 |
82 |
--------------------------------------------------------------------------------
/docs/README.bg.md:
--------------------------------------------------------------------------------
1 | # ZipXtract
2 |
3 | [](https://github.com/WirelessAlien/ZipXtract/releases/latest)
4 | [](https://github.com/WirelessAlien/ZipXtract/blob/master/License)
5 | [](https://img.shields.io/github/stars/WirelessAlien/ZipXtract)
6 | [](https://img.shields.io/github/downloads/WirelessAlien/ZipXtract/total)
7 | 
8 | [](https://f-droid.org/packages/com.wirelessalien.zipxtract)
9 |
10 | ZipXtract е приложение за Android с напълно отворен код, предназначено да обработва широк набор от архивни формати, включително:
11 |
12 | - RAR (с RAR5 и многотомна поддръжка)
13 | - ZIP (включително защитени с парола и разделени архиви)
14 | - TAR
15 | - BZ2
16 | - GZ
17 | - 7z (със защита с парола и многотомна поддръжка)
18 | - XZ
19 | - JAR
20 | - ...
21 |
22 |
23 | Характеристики
24 |
25 | Извличане на:
26 |
27 | - Поддържа различни формати: RAR, ZIP, TAR, BZ2, GZ, 7z, XZ, JAR etc.
28 | - Обработва криптирани ZIP и 7z файлове.
29 | - Извлича многотомни RAR архиви.
30 | - Извлича многотомни архиви.
31 | - Извлича разделени ZIP файлове.
32 |
33 |
34 | Създаване:
35 |
36 | - Създавайте ZIP и 7z архиви с опции за криптиране.
37 | - Създавайте разделени ZIP архиви.
38 |
39 |
40 |
41 | ЗАБЕЛЕЖКА:
42 | Версията на F-Droid не включва функции за извличане на RAR и 7z компресия поради лицензионни ограничения. За пълната версия, моля, използвайте версиите GitHub или IzzyOnDroid.
43 |
44 |
45 | Съвет за използване
46 | Общи съвети за извличане на архиви и създаване на архиви:
47 |
48 | - Дълго натискане на файлове и папки или щракване върху икони на файлове/папки, за да ги изберете за архивиране.
49 | - Щракнете върху файл, за да се покаже менюто за извличане за избор на опции за извличане.
50 | - Файловете, извлечени от менюто “Отвори с“ на операционната система, се съхраняват в Вътрешно хранилище/ZipXtract по подразбиране. Променете това в настройките на приложението.
51 | - Местоположението по подразбиране за архивиране или извличане на архиви (в рамките на приложението) е основната директория на съответния(те) файл(ве). Това може да бъде променено в настройките на приложението.
52 |
53 |
54 | Разрешение за приложение
55 | Разрешение за четене и запис в хранилището (Android 10 и по-ниски) и Управление на разрешението за външно хранилище (Android 11 и по-високи). Приложението няма разрешение за достъп до интернет. Прочетете повече- Политика за поверителност
56 |
57 | Превод
58 |
59 | Помогнете за локализирането на приложението чрез Weblate
60 |
61 |
62 |
63 | Лиценз
64 | Този проект е лицензиран под GNU General Public License v3.0. Вижте LICENSE файл за подробности.
65 |
66 | Контакт
67 | За всякакви запитвания или обратна връзка, моля, отворете проблем на GitHub хранилище.
68 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_github.xml:
--------------------------------------------------------------------------------
1 |
17 |
18 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/app/src/main/res/values-night/colors.xml:
--------------------------------------------------------------------------------
1 |
20 |
21 |
22 | #1A37618E
23 | #A1CAFD
24 | #003259
25 | #1A4975
26 | #D2E4FF
27 | #A0CAFD
28 | #003258
29 | #194975
30 | #D1E4FF
31 | #97CCF8
32 | #00344F
33 | #004B71
34 | #CBE6FF
35 | #FFB4AB
36 | #690005
37 | #93000A
38 | #FFDAD6
39 | #111418
40 | #E1E2E8
41 | #111418
42 | #E1E2E8
43 | #43474E
44 | #C3C6CF
45 | #8D9199
46 | #43474E
47 | #E1E2E8
48 | #2E3135
49 | #37618E
50 | #D2E4FF
51 | #001D36
52 | #A1CAFD
53 | #1A4975
54 | #D1E4FF
55 | #001D36
56 | #A0CAFD
57 | #194975
58 | #CBE6FF
59 | #001E30
60 | #97CCF8
61 | #004B71
62 | #111418
63 | #36393E
64 | #0B0E13
65 | #191C20
66 | #1D2024
67 | #272A2F
68 | #32353A
69 |
70 |
--------------------------------------------------------------------------------
/app/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
20 |
21 |
22 |
23 | #1A37618E
24 | #37618E
25 | #FFFFFF
26 | #D2E4FF
27 | #001D36
28 | #35618E
29 | #FFFFFF
30 | #D1E4FF
31 | #001D36
32 | #29638A
33 | #FFFFFF
34 | #CBE6FF
35 | #001E30
36 | #BA1A1A
37 | #FFFFFF
38 | #FFDAD6
39 | #410002
40 | #F8F9FF
41 | #191C20
42 | #F8F9FF
43 | #191C20
44 | #DFE2EB
45 | #43474E
46 | #73777F
47 | #C3C6CF
48 | #2E3135
49 | #EFF0F7
50 | #A1CAFD
51 | #D2E4FF
52 | #001D36
53 | #A1CAFD
54 | #1A4975
55 | #D1E4FF
56 | #001D36
57 | #A0CAFD
58 | #194975
59 | #CBE6FF
60 | #001E30
61 | #97CCF8
62 | #004B71
63 | #D8DAE0
64 | #F8F9FF
65 | #FFFFFF
66 | #F2F3FA
67 | #ECEEF4
68 | #E6E8EE
69 | #E1E2E8
70 |
71 |
--------------------------------------------------------------------------------
/app/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'com.android.application'
3 | id 'org.jetbrains.kotlin.android'
4 | }
5 |
6 | android {
7 | namespace 'com.wirelessalien.zipxtract'
8 | compileSdk = 35
9 |
10 | flavorDimensions "version"
11 | productFlavors {
12 | foss {
13 | dimension "version"
14 | applicationId "com.wirelessalien.zipxtract"
15 | }
16 | ps {
17 | dimension "version"
18 | applicationId "com.wirelessalien.zipxtract.ps"
19 | versionNameSuffix "-ps"
20 | }
21 | }
22 |
23 | defaultConfig {
24 | applicationId "com.wirelessalien.zipxtract"
25 | minSdk 24
26 | targetSdk 35
27 | versionCode 23
28 | versionName "6.0.1.1"
29 |
30 | testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
31 | }
32 |
33 | buildTypes {
34 | release {
35 | minifyEnabled true
36 | shrinkResources true
37 | proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
38 | debuggable = false
39 | }
40 | debug {
41 | debuggable = true
42 | applicationIdSuffix '.debug'
43 | versionNameSuffix '-debug'
44 | }
45 | }
46 | compileOptions {
47 | sourceCompatibility JavaVersion.VERSION_21
48 | targetCompatibility JavaVersion.VERSION_21
49 | }
50 | kotlinOptions {
51 | jvmTarget = '21'
52 | }
53 | buildFeatures {
54 | viewBinding true
55 | buildConfig true
56 | }
57 | dependenciesInfo {
58 | includeInApk false
59 | }
60 |
61 | packagingOptions {
62 | resources {
63 | excludes += [
64 | 'META-INF/**',
65 | '**.txt'
66 | ]
67 | }
68 | jniLibs {
69 | useLegacyPackaging = true
70 | keepDebugSymbols += [
71 | 'lib7-Zip-JBinding.so',
72 | 'libarchive-jni.so',
73 | 'libzstd-jni-1.5.7-2.so'
74 | ]
75 | }
76 | }
77 | }
78 |
79 | dependencies {
80 |
81 | implementation 'androidx.core:core-ktx:1.16.0'
82 | implementation 'androidx.appcompat:appcompat:1.7.0'
83 | implementation 'com.google.android.material:material:1.14.0-alpha06'
84 | implementation 'androidx.constraintlayout:constraintlayout:2.2.1'
85 | implementation 'androidx.preference:preference-ktx:1.2.1'
86 | implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.2.0-beta01'
87 |
88 | //glide
89 | implementation("com.github.bumptech.glide:glide:5.0.5")
90 |
91 | //Kotlin Coroutines
92 | implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.10.2'
93 | implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.10.2'
94 |
95 | //fragment
96 | implementation 'androidx.fragment:fragment-ktx:1.8.7'
97 |
98 | // local broadcast manager
99 | implementation 'androidx.localbroadcastmanager:localbroadcastmanager:1.1.0'
100 |
101 | //apache commons compress
102 | implementation 'org.apache.commons:commons-compress:1.28.0'
103 | implementation 'org.tukaani:xz:1.10'
104 |
105 | //zip4j
106 | implementation 'net.lingala.zip4j:zip4j:2.11.5'
107 |
108 | //7-Zip-Jbinding-4Android
109 | implementation 'com.github.omicronapps:7-Zip-JBinding-4Android:Release-16.02-2.03'
110 |
111 | //libarchive
112 | implementation 'me.zhanghai.android.libarchive:library:1.1.6'
113 |
114 | implementation "com.github.luben:zstd-jni:1.5.7-6@aar"
115 | implementation 'androidx.coordinatorlayout:coordinatorlayout:1.3.0'
116 |
117 | testImplementation 'junit:junit:4.13.2'
118 | androidTestImplementation 'androidx.test.ext:junit:1.3.0'
119 | androidTestImplementation 'androidx.test.espresso:espresso-core:3.7.0'
120 |
121 | //shimmer
122 | implementation 'com.facebook.shimmer:shimmer:0.5.0'
123 | }
124 |
--------------------------------------------------------------------------------
/docs/README.ta-IN.md:
--------------------------------------------------------------------------------
1 | # ZipXtract
2 |
3 | [](https://github.com/WirelessAlien/ZipXtract/releases/latest)
4 | [](https://github.com/WirelessAlien/ZipXtract/blob/master/License)
5 | [](https://img.shields.io/github/stars/WirelessAlien/ZipXtract)
6 | [](https://img.shields.io/github/downloads/WirelessAlien/ZipXtract/total)
7 | 
8 | [](https://f-droid.org/packages/com.wirelessalien.zipxtract)
9 |
10 | ZipXtract என்பது பரந்த அளவிலான காப்பக வடிவங்களைக் கையாள வடிவமைக்கப்பட்ட முழுமையான திறந்த மூல Android பயன்பாடாகும், இதில் அடங்கும்:
11 |
12 | - ரார் (ரார்5 மற்றும் பல-தொகுதி ஆதரவுடன்)
13 | - சுருக்கு (கடவுச்சொல் பாதுகாக்கப்பட்ட மற்றும் பிரிக்கப்பட்ட காப்பகங்கள் உட்பட)
14 | - தார்
15 | - பிஇசட்2
16 | - சிஇசட்
17 | - 7ஃ (கடவுச்சொல் பாதுகாப்பு மற்றும் பல-தொகுதி ஆதரவுடன்)
18 | - எக்ச்இசட்
19 | - சாடி
20 | - ...
21 |
22 |
23 | நற்பண்புகள்
24 |
25 | பிரித்தெடுத்தல்:
26 |
27 | - பல்வேறு வடிவங்களை ஆதரிக்கிறது: RAR, ZIP, TAR, BZ2, GZ, 7z, XZ, JAR போன்றவை.
28 | - மறைகுறியாக்கப்பட்ட ZIP மற்றும் 7z கோப்புகளைக் கையாளுகிறது.
29 | - பல தொகுதி RAR காப்பகங்களைப் பிரித்தெடுக்கிறது.
30 | - பல தொகுதி காப்பகங்களைப் பிரித்தெடுக்கிறது.
31 | - பிரிக்கப்பட்ட ZIP கோப்புகளைப் பிரித்தெடுக்கிறது.
32 |
33 |
34 | படைப்பு:
35 |
36 | - குறியாக்க விருப்பங்களுடன் ZIP மற்றும் 7z காப்பகங்களை உருவாக்கவும்.
37 | - பிரிக்கப்பட்ட ZIP காப்பகங்களை உருவாக்கவும்.
38 |
39 |
40 |
41 | குறிப்பு:
42 | உரிமக் கட்டுப்பாடுகள் காரணமாக F-Droid பதிப்பில் RAR பிரித்தெடுத்தல் மற்றும் 7z சுருக்க அம்சங்கள் இல்லை. முழுமையான பதிப்பிற்கு, தயவுசெய்து GitHub அல்லது IzzyOnDroid வெளியீடுகளைப் பயன்படுத்தவும்.
43 |
44 |
45 | பயன்பாட்டு உதவிக்குறிப்பு
46 | காப்பகப் பிரித்தெடுத்தல் மற்றும் காப்பக உருவாக்கத்திற்கான பொதுவான குறிப்புகள்:
47 |
48 | - காப்பகப்படுத்துவதற்காகக் கோப்புகள் மற்றும் கோப்புறைகளைத் தேர்ந்தெடுக்க அவற்றை நீண்ட நேரம் அழுத்தவும் அல்லது கோப்பு/கோப்புறை ஐகான்களைக் கிளிக் செய்யவும்.
49 | - பிரித்தெடுக்கும் விருப்பங்களைத் தேர்ந்தெடுப்பதற்கான பிரித்தெடுக்கும் மெனுவைக் காட்ட ஒரு கோப்பைக் கிளிக் செய்யவும்.
50 | - OS இன் "உடன் திற" மெனுவைப் பயன்படுத்தி பிரித்தெடுக்கப்பட்ட கோப்புகள் இயல்புநிலையாக உள் சேமிப்பிடம்/சுருக்குபிரி இல் சேமிக்கப்படும். இதைப் பயன்பாட்டு அமைப்புகளில் மாற்றவும்.
51 | - பயன்பாட்டிற்குள் காப்பகப்படுத்த அல்லது காப்பகங்களைப் பிரித்தெடுப்பதற்கான இயல்புநிலை இடம் அந்தந்த கோப்புகளின் பெற்றோர் கோப்பகமாகும். இதைப் பயன்பாட்டு அமைப்புகளில் மாற்றலாம்.
52 |
53 |
54 | பயன்பாட்டு அனுமதி
55 | படிக்க மற்றும் எழுதச் சேமிப்பக அனுமதி (Android 10 மற்றும் அதற்குக் கீழே) மற்றும் வெளிப்புற சேமிப்பக அனுமதியை நிர்வகித்தல் (Android 11 மற்றும் அதற்கு மேல்). பயன்பாட்டிற்கு இணைய அனுமதி இல்லை. மேலும் படிக்க - தனியுரிமைக் கொள்கை
56 |
57 | மொழிபெயர்
58 |
59 | Weblate மூலம் பயன்பாட்டை உள்ளூர்மயமாக்க உதவுங்கள்.
60 |
61 |
62 |
63 | உரிமம்
64 | இந்தத் திட்டம் GNU பொது பொதுமக்கள் உரிமம் v3.0 இன் கீழ் உரிமம் பெற்றது. விவரங்களுக்கு LICENSE கோப்பைப் பார்க்கவும்.
65 |
66 | தொடர்பு
67 | ஏதேனும் விசாரணைகள் அல்லது கருத்துகளுக்கு, தயவுசெய்து GitHub களஞ்சியத்தில் ஒரு சிக்கலைத் திறக்கவும்.
--------------------------------------------------------------------------------
/app/src/main/res/layout/fragment_about.xml:
--------------------------------------------------------------------------------
1 |
17 |
18 |
27 |
28 |
34 |
35 |
44 |
45 |
52 |
53 |
60 |
61 |
68 |
69 |
75 |
76 |
83 |
84 |
92 |
93 |
101 |
102 |
109 |
110 |
111 |
--------------------------------------------------------------------------------