("clean") {
group = "build"
description = "Deletes the build directory and runs verification tasks."
@@ -72,7 +97,12 @@ allprojects {
tasks.whenTaskAdded {
if (name == "preBuild") {
dependsOn(":setupGitHooks")
+ dependsOn(":ensureLocalizedTitles")
dependsOn(":checkFastlaneMetadataLengths")
}
}
+}
+
+tasks.named("checkFastlaneMetadataLengths") {
+ dependsOn("ensureLocalizedTitles")
}
\ No newline at end of file
diff --git a/fastlane/metadata/android/en-US/changelogs/21.txt b/fastlane/metadata/android/en-US/changelogs/21.txt
index 951c9a4..4e5c97a 100644
--- a/fastlane/metadata/android/en-US/changelogs/21.txt
+++ b/fastlane/metadata/android/en-US/changelogs/21.txt
@@ -1,4 +1,4 @@
- UI fixes and better scrolling on Android TV
- Added What's New section to display latest changes
- Fixed display colors on older devices and TVs
-- Turkish translation WIP (thanks Kyo様)
\ No newline at end of file
+- Turkish translation (thanks Kyo様)
\ No newline at end of file
diff --git a/fastlane/metadata/android/en-US/changelogs/22.txt b/fastlane/metadata/android/en-US/changelogs/22.txt
new file mode 100644
index 0000000..e4d5a5a
--- /dev/null
+++ b/fastlane/metadata/android/en-US/changelogs/22.txt
@@ -0,0 +1,5 @@
+- Replaced SSID blacklist feature with Wi-Fi profiles
+- General UI and code cleanup
+- Fixed an issue that required extra taps for toggles
+- Fixed issue with scrolling on TVs
+- Added translations for Spanish (thanks Allyson Simón), Chinese Han (thanks XieyilinMain), and WIP Japanese (thanks Oさん)
\ No newline at end of file
diff --git a/fastlane/metadata/android/es-ES/changelogs/1.txt b/fastlane/metadata/android/es-ES/changelogs/1.txt
new file mode 100644
index 0000000..5cda521
--- /dev/null
+++ b/fastlane/metadata/android/es-ES/changelogs/1.txt
@@ -0,0 +1 @@
+Lanzamiento inicial
diff --git a/fastlane/metadata/android/es-ES/changelogs/10.txt b/fastlane/metadata/android/es-ES/changelogs/10.txt
new file mode 100644
index 0000000..0f3645f
--- /dev/null
+++ b/fastlane/metadata/android/es-ES/changelogs/10.txt
@@ -0,0 +1,3 @@
+- Se corrigió el flujo de la experiencia de usuario para la solicitud de permisos de root.
+- Se agregó un banner de requisitos de permisos.
+- Se agregó información contextual para la configuración de cambio de nombre de la etiqueta de la aplicación.
diff --git a/fastlane/metadata/android/es-ES/changelogs/11.txt b/fastlane/metadata/android/es-ES/changelogs/11.txt
new file mode 100644
index 0000000..af05901
--- /dev/null
+++ b/fastlane/metadata/android/es-ES/changelogs/11.txt
@@ -0,0 +1,6 @@
+- Se agregó el permiso INTERNET para realizar pruebas de ping y verificar la accesibilidad de DNS personalizadas.
+- Se agregó un botón de activación/desactivación para proveedores de DNS estrictos.
+- Se actualizaron los servicios en segundo plano para que sean compatibles con A14.
+- Se evitó perdida de ajustes de la lista de bloqueo al cambiar los ajustes del dispositivo.
+- Se corrigió el exceso de notificaciones al desconectarse y volver a conectarse con frecuencia a una red Wi-Fi.
+-Más...
diff --git a/fastlane/metadata/android/es-ES/changelogs/12.txt b/fastlane/metadata/android/es-ES/changelogs/12.txt
new file mode 100644
index 0000000..566d1d4
--- /dev/null
+++ b/fastlane/metadata/android/es-ES/changelogs/12.txt
@@ -0,0 +1,2 @@
+- Se movió la carpeta «fastlane» a la raíz del proyecto
+- Se actualizó la explicación sobre el acceso a la ubicación (opcional) «en todo momento».
diff --git a/fastlane/metadata/android/es-ES/changelogs/13.txt b/fastlane/metadata/android/es-ES/changelogs/13.txt
new file mode 100644
index 0000000..f29ea3f
--- /dev/null
+++ b/fastlane/metadata/android/es-ES/changelogs/13.txt
@@ -0,0 +1,2 @@
+- Se redujo el tamaño del APK mediante la minificación con R8 y la compresión DEX tradicional.
+- Se realizaron mejoras en el mantenimiento de la compilación y en la seguridad.
diff --git a/fastlane/metadata/android/es-ES/changelogs/14.txt b/fastlane/metadata/android/es-ES/changelogs/14.txt
new file mode 100644
index 0000000..0fea7e4
--- /dev/null
+++ b/fastlane/metadata/android/es-ES/changelogs/14.txt
@@ -0,0 +1,7 @@
+- Soporte para múltiples hostnames DNS con cambio rápido (manteniendo presionado el mosaico de Ajustes Rápidos).
+- El mosaico muestra la etiqueta del DNS activo.
+- Opción para usar DNS privado con VPN activa.
+- Interruptor para desactivar notificaciones emergentes.
+- Información de la app y enlaces en la pantalla principal.
+- Rediseño de la interfaz a Material 3.
+- Optimizaciones generales de código.
diff --git a/fastlane/metadata/android/es-ES/changelogs/15.txt b/fastlane/metadata/android/es-ES/changelogs/15.txt
new file mode 100644
index 0000000..bf723c3
--- /dev/null
+++ b/fastlane/metadata/android/es-ES/changelogs/15.txt
@@ -0,0 +1,4 @@
+- Se agregaron etiquetas opcionales a las entradas de nombres de host de DNS.
+- Ahora se pueden reordenar manualmente los nombres de host de DNS.
+- Se agregó un mosaico oculto de depuración USB.
+- Se realizaron algunas optimizaciones de rendimiento.
diff --git a/fastlane/metadata/android/es-ES/changelogs/16.txt b/fastlane/metadata/android/es-ES/changelogs/16.txt
new file mode 100644
index 0000000..26ed10e
--- /dev/null
+++ b/fastlane/metadata/android/es-ES/changelogs/16.txt
@@ -0,0 +1,2 @@
+- Se agregaron opciones de configuración para la copia de seguridad e importación con almacenamiento cifrado con contraseña.
+- Se incorporó compatibilidad con los archivos de copia de seguridad de .dnstoggle.
diff --git a/fastlane/metadata/android/es-ES/changelogs/17.txt b/fastlane/metadata/android/es-ES/changelogs/17.txt
new file mode 100644
index 0000000..a9cc54a
--- /dev/null
+++ b/fastlane/metadata/android/es-ES/changelogs/17.txt
@@ -0,0 +1,4 @@
+- Opción para bloquear automáticamente el SSID cuando la conexión de DNS privado falla repetidamente.
+- Compatibilidad con Shizuku para la concesión de permisos.
+- Se muestra el formulario de DNS privado en la configuración del sistema utilizando un marcador de posición visual para que se pueda guardar fácilmente.
+- Se corrigieron problemas con el interruptor de depuración USB, las copias de seguridad de dispositivos y las restauraciones de red.
diff --git a/fastlane/metadata/android/es-ES/changelogs/18.txt b/fastlane/metadata/android/es-ES/changelogs/18.txt
new file mode 100644
index 0000000..ecaea1b
--- /dev/null
+++ b/fastlane/metadata/android/es-ES/changelogs/18.txt
@@ -0,0 +1 @@
+- Se actualizó la descripción completa de Fastlane para utilizar HTML en lugar de Markdown
diff --git a/fastlane/metadata/android/es-ES/changelogs/19.txt b/fastlane/metadata/android/es-ES/changelogs/19.txt
new file mode 100644
index 0000000..70cb367
--- /dev/null
+++ b/fastlane/metadata/android/es-ES/changelogs/19.txt
@@ -0,0 +1,5 @@
+- Se simplificó el proceso de configuración inicial de permisos
+- Se agregó un indicador de carga al otorgar permisos a través de Root o Shizuku
+- Se hizo que la detección automática de Wi-Fi sea mucho más rápida y confiable en redes restrictivas
+- Se actualizó la información de la ficha de la tienda, las capturas de pantalla y el seguimiento de traducciones
+- Reestructuración interna del código y optimizaciones de rendimiento
diff --git a/fastlane/metadata/android/es-ES/changelogs/2.txt b/fastlane/metadata/android/es-ES/changelogs/2.txt
new file mode 100644
index 0000000..6adadc2
--- /dev/null
+++ b/fastlane/metadata/android/es-ES/changelogs/2.txt
@@ -0,0 +1 @@
+Se eliminó una dependencia que no se utilizaba
diff --git a/fastlane/metadata/android/es-ES/changelogs/20.txt b/fastlane/metadata/android/es-ES/changelogs/20.txt
new file mode 100644
index 0000000..6fcbd50
--- /dev/null
+++ b/fastlane/metadata/android/es-ES/changelogs/20.txt
@@ -0,0 +1,5 @@
+- Se agregó compatibilidad con Android TV
+- Se optimizó la interfaz para pantallas grandes
+- Se introdujeron accesos directos a aplicaciones para activarlas y seleccionarlas rápidamente desde la pantalla de inicio
+- Se mejoró la navegación con el D-Pad
+- Traducción al alemán en proceso (gracias, Menuel)
diff --git a/fastlane/metadata/android/es-ES/changelogs/21.txt b/fastlane/metadata/android/es-ES/changelogs/21.txt
new file mode 100644
index 0000000..fae9641
--- /dev/null
+++ b/fastlane/metadata/android/es-ES/changelogs/21.txt
@@ -0,0 +1,4 @@
+- Correcciones en la interfaz de usuario y mejora del desplazamiento en Android TV
+- Se agregó la sección «Novedades» para mostrar los cambios más recientes
+- Se corrigió la visualización de los colores en dispositivos y televisores más antiguos
+- Traducción al turco en proceso (gracias, Kyo-sama)
diff --git a/fastlane/metadata/android/es-ES/changelogs/3.txt b/fastlane/metadata/android/es-ES/changelogs/3.txt
new file mode 100644
index 0000000..eae5264
--- /dev/null
+++ b/fastlane/metadata/android/es-ES/changelogs/3.txt
@@ -0,0 +1 @@
+Se trasladaron los metadatos de Fastlane a la ubicación correcta
diff --git a/fastlane/metadata/android/es-ES/changelogs/4.txt b/fastlane/metadata/android/es-ES/changelogs/4.txt
new file mode 100644
index 0000000..f0e21e7
--- /dev/null
+++ b/fastlane/metadata/android/es-ES/changelogs/4.txt
@@ -0,0 +1 @@
+Se cambió a JDK 21 para las compilaciones automatizadas
diff --git a/fastlane/metadata/android/es-ES/changelogs/5.txt b/fastlane/metadata/android/es-ES/changelogs/5.txt
new file mode 100644
index 0000000..3701174
--- /dev/null
+++ b/fastlane/metadata/android/es-ES/changelogs/5.txt
@@ -0,0 +1 @@
+Me aseguré de que zipalign formara parte del proceso de compilación
diff --git a/fastlane/metadata/android/es-ES/changelogs/6.txt b/fastlane/metadata/android/es-ES/changelogs/6.txt
new file mode 100644
index 0000000..606bdb9
--- /dev/null
+++ b/fastlane/metadata/android/es-ES/changelogs/6.txt
@@ -0,0 +1 @@
+Metadatos de dependencia desactivados
diff --git a/fastlane/metadata/android/es-ES/changelogs/7.txt b/fastlane/metadata/android/es-ES/changelogs/7.txt
new file mode 100644
index 0000000..9f420ce
--- /dev/null
+++ b/fastlane/metadata/android/es-ES/changelogs/7.txt
@@ -0,0 +1,6 @@
+- Se agregó el estado actual a la descripción del mosaico de Ajustes rápidos.
+- Se agregó una lista de bloqueo de Wi-Fi para la activación automática del DNS privado.
+- Se agregó la opción de actualización automática de la lista de bloqueo a través de Ajustes rápidos.
+- Se agregaron notificaciones de estado para los ajustes automáticos de DNS.
+- Se agregó un monitoreo en segundo plano que ahorra batería.
+- Se habilitó la copia de seguridad automática de la configuración y las listas de bloqueo.
diff --git a/fastlane/metadata/android/es-ES/changelogs/8.txt b/fastlane/metadata/android/es-ES/changelogs/8.txt
new file mode 100644
index 0000000..2eaac90
--- /dev/null
+++ b/fastlane/metadata/android/es-ES/changelogs/8.txt
@@ -0,0 +1,4 @@
+- Se agregó un mensaje solicitando los permisos `WRITE_SECURE_SETTINGS` en dispositivos con acceso root.
+- Se agregó un botón para copiar el comando adb al portapapeles, lo que permite otorgar fácilmente el permiso `WRITE_SECURE_SETTINGS` sin necesidad de acceso root.
+- Se restauró el ícono de la aplicación en el lanzador.
+- Se agregó un interruptor para ocultar el ícono de la aplicación en el lanzador.
diff --git a/fastlane/metadata/android/es-ES/changelogs/9.txt b/fastlane/metadata/android/es-ES/changelogs/9.txt
new file mode 100644
index 0000000..204e4fc
--- /dev/null
+++ b/fastlane/metadata/android/es-ES/changelogs/9.txt
@@ -0,0 +1,3 @@
+- Ahora los SSID de Wi-Fi y la configuración de las aplicaciones se almacenan de forma encriptada.
+- Se han agregado advertencias claras para direcciones DNS vacías o inválidas.
+- Mejoras en el rendimiento.
diff --git a/fastlane/metadata/android/es-ES/full_description.txt b/fastlane/metadata/android/es-ES/full_description.txt
new file mode 100644
index 0000000..22b75a4
--- /dev/null
+++ b/fastlane/metadata/android/es-ES/full_description.txt
@@ -0,0 +1 @@
+DNS Toggle es una pequeña aplicación de Android que te permite activar y automatizar fácilmente el DNS privado de tu teléfono a través del panel de Ajustes rápidos.
IMPORTANTE:
Para modificar la configuración del sistema DNS privado, esta aplicación requiere el permiso WRITE_SECURE_SETTINGS. Debes tener un dispositivo rooteado, usar Shizuku o concederlo manualmente mediante ADB:
adb shell pm grant com.ericlowry.dnstoggle android.permission.WRITE_SECURE_SETTINGS
Características
- Mosaico de Ajustes Rápidos: Activa/desactiva el DNS privado directamente desde el panel de Ajustes Rápidos.
- Proveedores DNS Personalizados: Define uno o más nombres de host preferidos (por ejemplo, dns.nextdns.io) y cambia entre ellos sin problemas.
- Filtrado Wi-Fi: Desactiva automáticamente el DNS privado cuando te conectas a redes Wi-Fi específicas.
- Bloqueo Automático: Añade automáticamente a la lista negra el SSID Wi-Fi actual cuando el DNS privado causa problemas de conectividad. problemas.
- Anulación de VPN: Aplique automáticamente un nombre de host DNS específico o desactive completamente el DNS privado cuando una VPN esté activa en su dispositivo.
- Copia de seguridad y restauración: Exporte e importe su configuración mediante archivos cifrados con contraseña.
- Etiquetado dinámico de mosaicos: Cambie el nombre del mosaico de Configuración rápida.
- Ocultar icono de la aplicación: Mantenga su pantalla de inicio limpia mientras mantiene el acceso a través del mosaico de Configuración rápida.
Privacidad y permisos
- Sin seguimiento, sin anuncios y sin recopilación de datos.
- Los permisos de ubicación son opcionales y solo se utilizan para identificar los nombres de las redes Wi-Fi para la función de filtro SSID. Nunca se utilizan para rastrear su ubicación física.
diff --git a/fastlane/metadata/android/es-ES/short_description.txt b/fastlane/metadata/android/es-ES/short_description.txt
new file mode 100644
index 0000000..8557b5d
--- /dev/null
+++ b/fastlane/metadata/android/es-ES/short_description.txt
@@ -0,0 +1 @@
+Activa y desactiva fácilmente el DNS privado a través del panel de Ajustes.
diff --git a/fastlane/metadata/android/es-ES/title.txt b/fastlane/metadata/android/es-ES/title.txt
new file mode 100644
index 0000000..d9e325c
--- /dev/null
+++ b/fastlane/metadata/android/es-ES/title.txt
@@ -0,0 +1 @@
+DNS Toggle
\ No newline at end of file
diff --git a/fastlane/metadata/android/fr-FR/changelogs/21.txt b/fastlane/metadata/android/fr-FR/changelogs/21.txt
index fb2da0e..164cf1c 100644
--- a/fastlane/metadata/android/fr-FR/changelogs/21.txt
+++ b/fastlane/metadata/android/fr-FR/changelogs/21.txt
@@ -1,4 +1,4 @@
- Amélioration de l'interface et du défilement sur Android TV
- Ajout d'une section "Nouveautés" pour afficher les changements récents
- Meilleure gestion des couleurs sur les appareils plus anciens et Android TV
-- Traduction turque (merci Kyo様)
\ No newline at end of file
+- Traduction turque (merci Kyo様)
diff --git a/fastlane/metadata/android/fr-FR/changelogs/22.txt b/fastlane/metadata/android/fr-FR/changelogs/22.txt
new file mode 100644
index 0000000..53834e4
--- /dev/null
+++ b/fastlane/metadata/android/fr-FR/changelogs/22.txt
@@ -0,0 +1,5 @@
+- Le système de réseaux exclus a été remplacé par les profis Wi-Fi
+- Mise à jour et nettoyage de l'interface et du code
+- Réparation d'un problème d'activation tactile des options
+- Réparation du défilement sur Android TV
+- Ajout des traductions en espagnol (merci Allyson Simón), choinois Han (merci XieyilinMain), et japonais en cours (merci Oさん)
diff --git a/fastlane/metadata/android/fr-FR/title.txt b/fastlane/metadata/android/fr-FR/title.txt
index 24ea4a1..d9e325c 100644
--- a/fastlane/metadata/android/fr-FR/title.txt
+++ b/fastlane/metadata/android/fr-FR/title.txt
@@ -1 +1 @@
-DNS Toggle
+DNS Toggle
\ No newline at end of file
diff --git a/fastlane/metadata/android/zh-CN/changelogs/1.txt b/fastlane/metadata/android/zh-CN/changelogs/1.txt
new file mode 100644
index 0000000..33ea6b6
--- /dev/null
+++ b/fastlane/metadata/android/zh-CN/changelogs/1.txt
@@ -0,0 +1 @@
+初始发布版本
diff --git a/fastlane/metadata/android/zh-CN/changelogs/10.txt b/fastlane/metadata/android/zh-CN/changelogs/10.txt
new file mode 100644
index 0000000..e67921f
--- /dev/null
+++ b/fastlane/metadata/android/zh-CN/changelogs/10.txt
@@ -0,0 +1,3 @@
+- 修复root用户请求的用户体验流程。
+- 添加权限需求横幅。
+- 为应用标签重命名设置添加了上下文说明。
diff --git a/fastlane/metadata/android/zh-CN/changelogs/11.txt b/fastlane/metadata/android/zh-CN/changelogs/11.txt
new file mode 100644
index 0000000..bfbb89f
--- /dev/null
+++ b/fastlane/metadata/android/zh-CN/changelogs/11.txt
@@ -0,0 +1,6 @@
+- 新增 `INTERNET` 权限,用于 ping 并验证自定义 DNS 地址的可达性。
+- 新增“禁用 DNS 测试”开关,适用于严格的 DNS 提供商。
+- 更新后台服务,以兼容 Android 14。
+- 防止设备安全设置更改时可能丢失阻止列表设置。
+- 修复了频繁断开并重新连接 Wi-Fi 时的通知轰炸问题。
+- 性能改进。
diff --git a/fastlane/metadata/android/zh-CN/changelogs/12.txt b/fastlane/metadata/android/zh-CN/changelogs/12.txt
new file mode 100644
index 0000000..50064cb
--- /dev/null
+++ b/fastlane/metadata/android/zh-CN/changelogs/12.txt
@@ -0,0 +1,2 @@
+- 将 fastlane 文件夹移至项目根目录
+- 更新了关于(可选的)“始终”位置权限的说明。
diff --git a/fastlane/metadata/android/zh-CN/changelogs/13.txt b/fastlane/metadata/android/zh-CN/changelogs/13.txt
new file mode 100644
index 0000000..080c6e6
--- /dev/null
+++ b/fastlane/metadata/android/zh-CN/changelogs/13.txt
@@ -0,0 +1,2 @@
+- 使用R8混淆和 传统DEX压缩减小了apk大小。
+- 构建维护和安全性改进。
diff --git a/fastlane/metadata/android/zh-CN/full_description.txt b/fastlane/metadata/android/zh-CN/full_description.txt
new file mode 100644
index 0000000..b416aa0
--- /dev/null
+++ b/fastlane/metadata/android/zh-CN/full_description.txt
@@ -0,0 +1 @@
+DNS Toggles是一款小巧的应用,可让您通过磁贴面板,快速切换与自动化设置专用DNS。
重要信息:
本应用需要有WRITE_SECURE_SETTINGS权限,来修改专用DNS的系统设置。 您必须拥有已root设备, 或者使用Shizuku, 或者手动通过ADB授予权限:
adb shell pm grant com.ericlowry.dnstoggle android.permission.WRITE_SECURE_SETTINGS
功能
- 快速设置磁贴: 直接从快速设置面板开关专用DNS
- 自定义DNS提供商: 定义一个或多个偏好的主机名 (例如 dns.nextdns.io) 并无缝地切换这些主机名
- Wi-Fi过滤: 当连接到特定的Wi-Fi网络时自动禁用专用DNS
- 自动拦截: 当专用DNS导致连接问题时自动将当前Wi-Fi SSID列入黑名单
- VPN 超控: 当VPN启动时自动强制使用特定的DNS主机名或完全禁用专用DNS
- 备份与恢复: 通过密码加密文件导出和导入配置
- 动态磁贴命名: 重命名快速设置磁贴
- 隐藏应用图标: 保持主屏幕干净,同时通过快速设置磁贴访问应用
隐私与权限
- 无跟踪,无广告,无数据收集。
- 位置权限是可选的,仅用于识别Wi-Fi网络名称以进行SSID过滤功能。这些权限永远不会用于跟踪您的物理位置。
diff --git a/fastlane/metadata/android/zh-CN/short_description.txt b/fastlane/metadata/android/zh-CN/short_description.txt
new file mode 100644
index 0000000..66d4634
--- /dev/null
+++ b/fastlane/metadata/android/zh-CN/short_description.txt
@@ -0,0 +1 @@
+通过磁贴面板,快速切换与自动化设置专用DNS。
diff --git a/fastlane/metadata/android/zh-CN/title.txt b/fastlane/metadata/android/zh-CN/title.txt
new file mode 100644
index 0000000..d9e325c
--- /dev/null
+++ b/fastlane/metadata/android/zh-CN/title.txt
@@ -0,0 +1 @@
+DNS Toggle
\ No newline at end of file
diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml
index 254b50b..3779408 100644
--- a/gradle/libs.versions.toml
+++ b/gradle/libs.versions.toml
@@ -4,7 +4,7 @@ coreKtx = "1.19.0"
appcompat = "1.7.1"
material = "1.14.0"
activity = "1.13.0"
-constraintlayout = "2.2.1"
+constraintlayout = "2.2.2"
lifecycle = "2.11.0"
junit = "4.13.2"
robolectric = "4.16.1"
@@ -14,6 +14,7 @@ androidx-test-ext-junit = "1.3.0"
androidx-test-runner = "1.7.0"
shizuku = "13.1.5"
dynamicanimation = "1.1.0"
+kotlinx-serialization = "1.11.0"
[libraries]
androidx-core-ktx = { group = "androidx.core", name = "core-ktx", version.ref = "coreKtx" }
@@ -31,6 +32,8 @@ androidx-test-runner = { group = "androidx.test", name = "runner", version.ref =
shizuku-api = { group = "dev.rikka.shizuku", name = "api", version.ref = "shizuku" }
shizuku-provider = { group = "dev.rikka.shizuku", name = "provider", version.ref = "shizuku" }
androidx-dynamicanimation = { group = "androidx.dynamicanimation", name = "dynamicanimation", version.ref = "dynamicanimation" }
+kotlinx-serialization-json = { group = "org.jetbrains.kotlinx", name = "kotlinx-serialization-json", version.ref = "kotlinx-serialization" }
[plugins]
android-application = { id = "com.android.application", version.ref = "agp" }
+kotlinx-serialization-plugin = { id = "org.jetbrains.kotlin.plugin.serialization", version = "2.4.10" }
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index e01a4d6..28e75a0 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,8 +1,8 @@
#Sat Apr 18 17:05:56 CEST 2026
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionSha256Sum=9c0f7faeeb306cb14e4279a3e084ca6b596894089a0638e68a07c945a32c9e14
-distributionUrl=https\://services.gradle.org/distributions/gradle-9.6.1-bin.zip
+distributionSha256Sum=84fbba45c7f4c64abc77460e1c00f541e9f960e3c7ed2538f1ede19eacd873ae
+distributionUrl=https\://services.gradle.org/distributions/gradle-9.7.0-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME