]> gitweb.stoutner.com Git - PrivacyCell.git/commitdiff
Update target API to 36. https://redmine.stoutner.com/issues/1284
authorSoren Stoutner <soren@stoutner.com>
Sat, 13 Dec 2025 22:24:36 +0000 (15:24 -0700)
committerSoren Stoutner <soren@stoutner.com>
Sat, 13 Dec 2025 22:24:36 +0000 (15:24 -0700)
19 files changed:
app/build.gradle
app/src/main/assets/de/changelog.html
app/src/main/assets/en/changelog.html
app/src/main/assets/es/changelog.html
app/src/main/assets/fr/changelog.html
app/src/main/assets/fr/permissions.html
app/src/main/assets/it/changelog.html
app/src/main/assets/ru/changelog.html
app/src/main/java/com/stoutner/privacycell/dataclasses/Protocol.kt
app/src/main/java/com/stoutner/privacycell/fragments/SettingsFragment.kt
app/src/main/java/com/stoutner/privacycell/helpers/ProtocolHelper.kt
app/src/main/java/com/stoutner/privacycell/receivers/OnBootCompletedReceiver.kt
app/src/main/java/com/stoutner/privacycell/services/RealtimeMonitoringService.kt
app/src/main/java/com/stoutner/privacycell/workers/RegisterRealtimeListenerWorker.kt
app/src/main/java/com/stoutner/privacycell/workers/RestartServiceWorker.kt
app/src/main/res/values-fr/strings.xml
build.gradle
fastlane/metadata/android/fr-FR/changelogs/13.txt [new file with mode: 0644]
gradle/wrapper/gradle-wrapper.properties

index 25f3e64c7119bd901b38a5ef8e36f5c3bb10f862..9723d48f4562aa9671dd635964df0209c07dd593 100644 (file)
@@ -23,12 +23,12 @@ plugins {
 }
 
 android {
-    compileSdk 35
+    compileSdk = 36
 
     defaultConfig {
         applicationId "com.stoutner.privacycell"
         minSdk 30
-        targetSdk 35
+        targetSdk 36
         versionCode 13
         versionName "1.11"
         resourceConfigurations += ['en', 'de', 'es', 'fr', 'it', 'ru']
@@ -41,8 +41,8 @@ android {
     }
 
     // Specify the Kotlin JVM target.  This must match the compile Java version.  For some reason the system was not setting this correctly.  These can probably be removed in the future.
-    kotlinOptions {
-        jvmTarget = 17
+    kotlin {
+        jvmToolchain(17)
     }
 
     buildTypes {
@@ -63,17 +63,17 @@ android {
 
 dependencies {
     // Include the following AndroidX libraries.
-    implementation 'androidx.appcompat:appcompat:1.7.0'
-    implementation 'androidx.core:core-ktx:1.16.0'
-    implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.8.7'
+    implementation 'androidx.appcompat:appcompat:1.7.1'
+    implementation 'androidx.core:core-ktx:1.17.0'
+    implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.10.0'
     implementation 'androidx.preference:preference-ktx:1.2.1'
-    implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0'
-    implementation 'androidx.webkit:webkit:1.13.0'
-    implementation 'androidx.work:work-runtime-ktx:2.10.1'
+    implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.2.0'
+    implementation 'androidx.webkit:webkit:1.14.0'
+    implementation 'androidx.work:work-runtime-ktx:2.11.0'
 
     // Include the Kotlin standard library.  This should be the same version number listed in the project build.gradle.
-    implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.1.0'
+    implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.2.0'
 
     // Include the Google material library.
-    implementation 'com.google.android.material:material:1.12.0'
+    implementation 'com.google.android.material:material:1.13.0'
 }
index 9519db3a7db58b96df90e8a0c650c192665d46eb..c6fb918d216cbf683018dd96d60275f750347a8e 100644 (file)
@@ -32,8 +32,8 @@
     </head>
 
     <body>
-        <h3>1.11 (Version Code 13)</h3>
-        <p>29. April 2025 - Mindest-API 30, Ziel-API 35</p>
+        <h3><a href="https://www.stoutner.com/privacy-cell-1-11/">1.11</a> (Version Code 13)</h3>
+        <p><a href="https://gitweb.stoutner.com/?p=PrivacyCell.git;a=commitdiff;h=ed1f9b6ff405925f357fb0ddd67cb183e3f50152;ds=sidebyside">29. April 2025</a> - Mindest-API 30, Ziel-API 35</p>
         <ul>
             <li>Anzeige der für jede Verbindung genutzen <a href="https://redmine.stoutner.com/issues/1117">SIM-Karte</a>.</li>
             <li>Suche in <a href="https://redmine.stoutner.com/issues/1192">logcat</a> nun möglich.</li>
index 57c3ef0dce08a431e7ea9fb10dd16a60cbe1570c..c64869ac247d1d1f5e4009726220b34a8835e242 100644 (file)
@@ -30,8 +30,8 @@
     </head>
 
     <body>
-        <h3>1.11 (version code 13)</h3>
-        <p>29 April 2025 - minimum API 30, target API 35</p>
+        <h3><a href="https://www.stoutner.com/privacy-cell-1-11/">1.11</a> (version code 13)</h3>
+        <p><a href="https://gitweb.stoutner.com/?p=PrivacyCell.git;a=commitdiff;h=ed1f9b6ff405925f357fb0ddd67cb183e3f50152;ds=sidebyside">29 April 2025</a> - minimum API 30, target API 35</p>
         <ul>
             <li>Indicate <a href="https://redmine.stoutner.com/issues/1117">which SIM card</a> is used for each connection.</li>
             <li>Add support for <a href="https://redmine.stoutner.com/issues/1192">searching the logcat</a>.</li>
index 71df8c598f65ecc56b374df09448a879baf5d673..86a14d4922cc58d393296e9b13dfb297954ae435 100644 (file)
@@ -32,8 +32,8 @@
     </head>
 
     <body>
-        <h3>1.11 (versión del código 13)</h3>
-        <p>29 de abril de 2025 - API mínimo 30, API objetivo 35</p>
+        <h3><a href="https://www.stoutner.com/privacy-cell-1-11/">1.11</a> (versión del código 13)</h3>
+        <p><a href="https://gitweb.stoutner.com/?p=PrivacyCell.git;a=commitdiff;h=ed1f9b6ff405925f357fb0ddd67cb183e3f50152;ds=sidebyside">29 de abril de 2025</a> - API mínimo 30, API objetivo 35</p>
         <ul>
             <li>Indicar <a href="https://redmine.stoutner.com/issues/1117">qué tarjeta SIM</a> es usada por cada conexión.</li>
             <li>Añadir soporte para <a href="https://redmine.stoutner.com/issues/1192">buscar el logcat</a>.</li>
index 08e537717a6e7f03ff9cf6a290c516cccb1f7c43..5db3a41eb983b0efd7c2ed01759be998129effd1 100644 (file)
     </head>
 
     <body>
-        <h3>1.11 (version du code 13)</h3>
-        <p>29 Avril 2025 - API minimale : 30, API optimale : 35</p>
+        <h3><a href="https://www.stoutner.com/privacy-cell-1-11/">1.11</a> (version du code 13)</h3>
+        <p><a href="https://gitweb.stoutner.com/?p=PrivacyCell.git;a=commitdiff;h=ed1f9b6ff405925f357fb0ddd67cb183e3f50152;ds=sidebyside">29 Avril 2025</a> - API minimale : 30, API optimale : 35</p>
         <ul>
-            <li>Indicate <a href="https://redmine.stoutner.com/issues/1117">which SIM card</a> is used for each connection.</li>
-            <li>Add support for <a href="https://redmine.stoutner.com/issues/1192">searching the logcat</a>.</li>
-            <li>Bump the <a href="https://redmine.stoutner.com/issues/1272">target API to 35</a> (Android 15).</li>
+            <li>Indiquer <a href="https://redmine.stoutner.com/issues/1117">quelle carte SIM</a> est utilisée pour chaque connexion.</li>
+            <li>Ajout de la prise en charge de <a href="https://redmine.stoutner.com/issues/1192">la recherche dans le logcat</a>.</li>
+            <li>Augmentation de l'<a href="https://redmine.stoutner.com/issues/1272">API cible à 35</a> (Android 15)</li>
+            <li>Mise à jour de la traduction française par <a href="mailto:kevinliste@framalistes.org">Kévin L</a>.</li>
         </ul>
 
         <h3><a href="https://www.stoutner.com/privacy-cell-1-10/">1.10</a> (version du code 12)</h3>
index b3151aa78bc45547a50222c97911451cddfd9999..db7725fc5f1564218c435eff9ff1228366ae79e3 100644 (file)
@@ -38,9 +38,9 @@
         <p><a href="https://developer.android.com/reference/android/Manifest.permission.html#READ_PHONE_STATE">android.permission.<wbr>READ_<wbr>PHONE_<wbr>STATE</a></p>
         <p>Nécessaire pour déterminer quels protocoles sont utilisés par le réseau de téléphonie mobile.</p>
 
-        <h3>Read phone numbers</h3>
+        <h3>Lire les numéros de téléphone</h3>
         <p><a href="https://developer.android.com/reference/android/Manifest.permission.html#READ_PHONE_NUMBERS">android.permission.<wbr>READ_<wbr>PHONE_<wbr>NUMBERS</a></p>
-        <p>Required to display the cell network name and phone number of the SIM card.</p>
+        <p>Requis pour afficher le nom du réseau cellulaire et le numéro de téléphone de la carte SIM.</p>
 
         <h3>Afficher les Notifications</h3>
         <p><a href="https://developer.android.com/reference/android/Manifest.permission.html#POST_NOTIFICATIONS">android.permission.<wbr>POST_<wbr>NOTIFICATIONS</a></p>
@@ -50,7 +50,7 @@
         <p><a href="https://developer.android.com/reference/android/Manifest.permission#FOREGROUND_SERVICE">android.permission.<wbr>FOREGROUND_<wbr>SERVICE</a></p>
         <p>Permet à Privacy Cell de mettre à jour l'icône de notification de surveillance en temps réel lorsque l'application n'est pas au premier plan.</p>
 
-        <h3>Foreground service special use</h3>
+        <h3>Utilisation spéciale du service en avant-planc</h3>
         <p><a href="https://developer.android.com/reference/android/Manifest.permission#FOREGROUND_SERVICE_SPECIAL_USE">android.permission.<wbr>FOREGROUND_<wbr>SERVICE_<wbr>SPECIAL_<wbr>USE</a></p>
         <p>Spécifie le type de service de premier plan.
             L'utilisation spécifique concerne les services qui n'entrent dans <a href="https://developer.android.com/about/versions/14/changes/fgs-types-required">aucune des catégories standard</a>.</p>
@@ -59,8 +59,8 @@
         <p><a href="https://developer.android.com/reference/android/Manifest.permission#RECEIVE_BOOT_COMPLETED">android.permission.<wbr>RECEIVE_<wbr>BOOT_<wbr>COMPLETED</a></p>
         <p>Permet à Privacy Cell d'activer le service de surveillance en temps réel lorsque le téléphone démarre.</p>
 
-        <h3>Dynamic receiver not exported</h3>
+        <h3>Récepteur dynamique non exporté</h3>
         <p><a href="https://developer.android.com/about/versions/13/features#runtime-receivers">com.stoutner.privacycell.<wbr>DYNAMIC_<wbr>RECEIVER_<wbr>NOT_<wbr>EXPORTED_<wbr>PERMISSION</a></p>
-        <p>Ajout automatique à toutes les applications ciblant l'API >= 33 (Android >= 13) pour empêcher les autres applications de se connecter aux destinataires dynamiques sans autorisation explicite.</p>
+        <p>Ajout automatique à toutes les applications ciblant l'API >= 33 (Android >= 13) pour empêcher les autres applications de se connecter aux récepteurs dynamiques sans autorisation explicite.</p>
     </body>
 </html>
index 195ce3cbda86529bcc37c5662c76025f3a4e8fcc..de121fed6baf4f21a9b7853e1f9683b2d2210b4c 100644 (file)
@@ -32,8 +32,8 @@
     </head>
 
     <body>
-        <h3>1.11 (versione codice 13)</h3>
-        <p>29 Aprile 2025 - minima API 30, target API 35</p>
+        <h3><a href="https://www.stoutner.com/privacy-cell-1-11/">1.11</a> (versione codice 13)</h3>
+        <p><a href="https://gitweb.stoutner.com/?p=PrivacyCell.git;a=commitdiff;h=ed1f9b6ff405925f357fb0ddd67cb183e3f50152;ds=sidebyside">29 Aprile 2025</a> - minima API 30, target API 35</p>
         <ul>
             <li>Indicazione <a href="https://redmine.stoutner.com/issues/1117">di quale SIM card</a> è utilizzata per ogni connessione.</li>
             <li>Aggiunto il supporto per la <a href="https://redmine.stoutner.com/issues/1192">ricerca nel logcat</a>.</li>
index c51ed359d679fc2b022abb6dd8b221c9bbfa6603..b870f2a63f51f96c8dabfdc40080ee308f5c7cda 100644 (file)
@@ -30,8 +30,8 @@
     </head>
 
     <body>
-        <h3>1.11 (код версии 13)</h3>
-        <p>29 апреля 2025 года - минимальный API 30, целевой API 35</p>
+        <h3><a href="https://www.stoutner.com/privacy-cell-1-11/">1.11</a> (код версии 13)</h3>
+        <p><a href="https://gitweb.stoutner.com/?p=PrivacyCell.git;a=commitdiff;h=ed1f9b6ff405925f357fb0ddd67cb183e3f50152;ds=sidebyside">29 апреля 2025 года</a> - минимальный API 30, целевой API 35</p>
         <ul>
             <li>Теперь для каждого соединения можно указывать <a href="https://redmine.stoutner.com/issues/1117">какая используется SIM-карта</a>.</li>
             <li>Добавлена поддержка <a href="https://redmine.stoutner.com/issues/1192">поиска в logcat</a>.</li>
index 711847313561f621684a02191df098f057fef728..792e103093d41c706caad5d39eb9e59af2801664 100644 (file)
@@ -1,20 +1,20 @@
-/*
- * Copyright © 2022 Soren Stoutner <soren@stoutner.com>.
+/* SPDX-License-Identifier: GPL-3.0-or-later
+ * SPDX-FileCopyrightText: 2022 Soren Stoutner <soren@stoutner.com>
  *
- * This file is part of Privacy Cell <https://www.stoutner.com/privacy-cell>.
+ * This file is part of Privacy Cell <https://www.stoutner.com/privacy-cell/>.
  *
- * Privacy Cell 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 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.
  *
- * Privacy Cell 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.
+ * 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 Privacy Cell.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License along with
+ * this program.  If not, see <https://www.gnu.org/licenses/>.
  */
 
 package com.stoutner.privacycell.dataclasses
index 911ab08e856c55040304edde0bdeb70a3ee515ee..81993ba54158fef9bfc2c747a582e76cb8210e22 100644 (file)
@@ -1,20 +1,20 @@
-/*
- * Copyright 2021-2023 Soren Stoutner <soren@stoutner.com>.
+/* SPDX-License-Identifier: GPL-3.0-or-later
+ * SPDX-FileCopyrightText: 2021-2023 Soren Stoutner <soren@stoutner.com>
  *
- * This file is part of Privacy Cell <https://www.stoutner.com/privacy-cell>.
+ * This file is part of Privacy Cell <https://www.stoutner.com/privacy-cell/>.
  *
- * Privacy Cell 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 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.
  *
- * Privacy Cell 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.
+ * 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 Privacy Cell.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License along with
+ * this program.  If not, see <https://www.gnu.org/licenses/>.
  */
 
 package com.stoutner.privacycell.fragments
index cb6ca1db880210aa4f7712b5bea247ac653009ca..8cc1bc966c759e7a8d8d59d8337ec983d24dca3d 100644 (file)
@@ -1,20 +1,20 @@
-/*
- * Copyright 2022-2023 Soren Stoutner <soren@stoutner.com>.
+/* SPDX-License-Identifier: GPL-3.0-or-later
+ * SPDX-FileCopyrightText: 2022-2023 Soren Stoutner <soren@stoutner.com>
  *
- * This file is part of Privacy Cell <https://www.stoutner.com/privacy-cell>.
+ * This file is part of Privacy Cell <https://www.stoutner.com/privacy-cell/>.
  *
- * Privacy Cell 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 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.
  *
- * Privacy Cell 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.
+ * 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 Privacy Cell.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License along with
+ * this program.  If not, see <https://www.gnu.org/licenses/>.
  */
 
 package com.stoutner.privacycell.helpers
@@ -35,6 +35,8 @@ class ProtocolHelper {
     }
 
     fun checkNetwork(networkType: Int, consider3gAntiquated: Boolean): Int {
+        // The deprecation suppression and the older network types can be removed once the minimum API >= 36.  The older network types should also be removed from the strings and the asset explanations.
+        @Suppress("DEPRECATION")
         if ((networkType == TelephonyManager.NETWORK_TYPE_NR) ||
             (networkType == TelephonyManager.NETWORK_TYPE_IWLAN) ||
             (networkType == TelephonyManager.NETWORK_TYPE_UNKNOWN)) {
index 72cc4532f52596b767f9d3eed6e912a9e00a157a..53cb415ccf06eab1093ba0d4c0339d092471033b 100644 (file)
@@ -1,20 +1,20 @@
-/*
- * Copyright 2021,2023 Soren Stoutner <soren@stoutner.com>.
+/* SPDX-License-Identifier: GPL-3.0-or-later
+ * SPDX-FileCopyrightText: 2021, 2023 Soren Stoutner <soren@stoutner.com>
  *
- * This file is part of Privacy Cell <https://www.stoutner.com/privacy-cell>.
+ * This file is part of Privacy Cell <https://www.stoutner.com/privacy-cell/>.
  *
- * Privacy Cell 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 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.
  *
- * Privacy Cell 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.
+ * 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 Privacy Cell.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License along with
+ * this program.  If not, see <https://www.gnu.org/licenses/>.
  */
 
 package com.stoutner.privacycell.receivers
index 72ace814d742aac8de7f08c6e4540ba2205b302e..0e5c2fc8497c8f343921473e4fdd6e21872ee537 100644 (file)
@@ -1,20 +1,20 @@
-/*
- * Copyright 2021-2023 Soren Stoutner <soren@stoutner.com>.
+/* SPDX-License-Identifier: GPL-3.0-or-later
+ * SPDX-FileCopyrightText: 2021-2023, 2025 Soren Stoutner <soren@stoutner.com>
  *
- * This file is part of Privacy Cell <https://www.stoutner.com/privacy-cell>.
+ * This file is part of Privacy Cell <https://www.stoutner.com/privacy-cell/>.
  *
- * Privacy Cell 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 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.
  *
- * Privacy Cell 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.
+ * 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 Privacy Cell.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License along with
+ * this program.  If not, see <https://www.gnu.org/licenses/>.
  */
 
 // The suppression of deprecation lint can be removed once the minimum API >= 31.
@@ -29,9 +29,9 @@ import android.app.NotificationChannelGroup
 import android.app.NotificationManager
 import android.app.PendingIntent
 import android.app.Service
-import android.content.Context
 import android.content.Intent
 import android.content.pm.PackageManager
+import android.graphics.drawable.Icon
 import android.os.Binder
 import android.os.IBinder
 import android.telephony.PhoneStateListener  // This can be replaced by `TelephonyCallback` once the minimum API >= 31.
@@ -93,7 +93,7 @@ class RealtimeMonitoringService : Service() {
         // So, the default value is set to true, which is the safest value if the shared preferences can't be queried.
         if (sharedPreferences.getBoolean(applicationContext.getString(R.string.realtime_monitoring_key), true)) {  // Realtime monitoring is enabled.
             // Get a handle for the notification manager.
-            notificationManager = getSystemService(Context.NOTIFICATION_SERVICE) as NotificationManager
+            notificationManager = getSystemService(NOTIFICATION_SERVICE) as NotificationManager
 
             // Create a notification channel group.
             notificationManager.createNotificationChannelGroup(NotificationChannelGroup(REALTIME_MONITORING, getString(R.string.realtime_monitoring)))
@@ -158,7 +158,7 @@ class RealtimeMonitoringService : Service() {
             val protocolHelper = ProtocolHelper()
 
             // Get a handle for the telephony manager.
-            val telephonyManager = getSystemService(Context.TELEPHONY_SERVICE) as TelephonyManager
+            val telephonyManager = getSystemService(TELEPHONY_SERVICE) as TelephonyManager
 
             // Define the phone state listener.  The `PhoneStateListener` can be replaced by `TelephonyCallback` once the minimum API >= 31.
             phoneStateListener = object : PhoneStateListener() {
@@ -224,7 +224,7 @@ class RealtimeMonitoringService : Service() {
         // Check to see if the read phone state permission has been granted.
         if (ActivityCompat.checkSelfPermission(this, Manifest.permission.READ_PHONE_STATE) == PackageManager.PERMISSION_GRANTED) {
             // Get a handle for the telephony manager.
-            val telephonyManager = getSystemService(Context.TELEPHONY_SERVICE) as TelephonyManager
+            val telephonyManager = getSystemService(TELEPHONY_SERVICE) as TelephonyManager
 
             // Cancel the current listener if it exists.  The `PhoneStateListener` can be replaced by `TelephonyCallback` once the minimum API >= 31.
             telephonyManager.listen(phoneStateListener, PhoneStateListener.LISTEN_NONE)
@@ -254,9 +254,12 @@ class RealtimeMonitoringService : Service() {
                 // Set the notification text.
                 antiquatedNetworkNotificationBuilder.setContentText(getString(R.string.antiquated_network))
 
-                // Set the notification icon.
+                // Set the small icon.
                 antiquatedNetworkNotificationBuilder.setSmallIcon(R.drawable.antiquated_notification_enabled)
 
+                // Set the large icon.
+                antiquatedNetworkNotificationBuilder.setLargeIcon(Icon.createWithResource(this, R.drawable.antiquated))
+
                 // Set the color.
                 antiquatedNetworkNotificationBuilder.setColor(getColor(R.color.red_notification_icon))
 
@@ -281,9 +284,12 @@ class RealtimeMonitoringService : Service() {
                 // Set the notification text.
                 insecureNetworkNotificationBuilder.setContentText(getString(R.string.insecure_network))
 
-                // Set the notification icon.
+                // Set the small icon.
                 insecureNetworkNotificationBuilder.setSmallIcon(R.drawable.insecure_notification_enabled)
 
+                // Set the large icon.
+                insecureNetworkNotificationBuilder.setLargeIcon(Icon.createWithResource(this, R.drawable.insecure))
+
                 // Set the color.
                 insecureNetworkNotificationBuilder.setColor(getColor(R.color.yellow_notification_icon))
 
@@ -308,9 +314,12 @@ class RealtimeMonitoringService : Service() {
                 // Set the notification text.
                 secureNetworkNotificationBuilder.setContentText(getString(R.string.secure_network))
 
-                // Set the notification icon.
+                // Set the small icon.
                 secureNetworkNotificationBuilder.setSmallIcon(R.drawable.secure_notification_enabled)
 
+                // Set the large icon.
+                secureNetworkNotificationBuilder.setLargeIcon(Icon.createWithResource(this, R.drawable.secure))
+
                 // Set the color.
                 secureNetworkNotificationBuilder.setColor(getColor(R.color.blue_icon))
 
index 7eeea89b2dfb22e54844605e361477a65995e682..622a76fdffdba8b4d6fe122580effc7ab7fcf0ab 100644 (file)
@@ -1,20 +1,20 @@
-/*
- * Copyright 2021-2023 Soren Stoutner <soren@stoutner.com>.
+/* SPDX-License-Identifier: GPL-3.0-or-later
+ * SPDX-FileCopyrightText: 2021-2023 Soren Stoutner <soren@stoutner.com>
  *
- * This file is part of Privacy Cell <https://www.stoutner.com/privacy-cell>.
+ * This file is part of Privacy Cell <https://www.stoutner.com/privacy-cell/>.
  *
- * Privacy Cell 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 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.
  *
- * Privacy Cell 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.
+ * 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 Privacy Cell.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License along with
+ * this program.  If not, see <https://www.gnu.org/licenses/>.
  */
 
 package com.stoutner.privacycell.workers
index ed1fddebd66a3024184aa0cde21adafef044350c..9c78ad74f9b4c5fe55c52c031314356f794a388f 100644 (file)
@@ -1,20 +1,20 @@
-/*
- * Copyright 2021-2023 Soren Stoutner <soren@stoutner.com>.
+/* SPDX-License-Identifier: GPL-3.0-or-later
+ * SPDX-FileCopyrightText: 2021-2023 Soren Stoutner <soren@stoutner.com>
  *
- * This file is part of Privacy Cell <https://www.stoutner.com/privacy-cell>.
+ * This file is part of Privacy Cell <https://www.stoutner.com/privacy-cell/>.
  *
- * Privacy Cell 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 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.
  *
- * Privacy Cell 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.
+ * 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 Privacy Cell.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License along with
+ * this program.  If not, see <https://www.gnu.org/licenses/>.
  */
 
 package com.stoutner.privacycell.workers
index 2b9e869b5eff13a113b2ad5c37998efa35b3430c..0bf82cccbfb326c2b84f19a40d89b050721ec67c 100644 (file)
 
     <!-- Permission dialogs. -->
     <string name="phone_permission">Autorisations</string>
+    <string name="phone_permission_text">Privacy Cell a besoin des autorisations "Lire l'état du téléphone" et "Lire les numéros de téléphone" pour déterminer le niveau de sécurité de votre connexion cellulaire
+        et afficher le numéro de téléphone de la carte SIM active.</string>
     <string name="notification_permission">Autorisation de notification</string>
     <string name="notification_permission_text">Privacy Cell a besoin de l\'autorisation Post Notification pour afficher les notifications de surveillance en temps réel.</string>
     <string name="ok">OK</string>
index 7bad56669298a06f19bcb907e41879f29efa780c..d5a62b2810cb8c596dd9189297a1bb833d77b748 100644 (file)
@@ -25,8 +25,8 @@ buildscript {
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:8.9.2'
-        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:2.1.0"
+        classpath 'com.android.tools.build:gradle:8.13.2'
+        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:2.2.0"
 
         // NOTE: Do not place your application dependencies here; they belong
         // in the individual module build.gradle files
diff --git a/fastlane/metadata/android/fr-FR/changelogs/13.txt b/fastlane/metadata/android/fr-FR/changelogs/13.txt
new file mode 100644 (file)
index 0000000..022a116
--- /dev/null
@@ -0,0 +1,4 @@
+• Indiquer quelle carte SIM est utilisée pour chaque connexion.
+• Ajout de la prise en charge de la recherche dans le logcat.
+• Augmentation de l'API cible à 35 (Android 15)
+• Mise à jour de la traduction française par Kévin L.
\ No newline at end of file
index c2db36c64477f9231eb3c4be942bfef2873e32bb..558489c5388d8fb4377c751fdb06f49849137cfe 100644 (file)
@@ -17,7 +17,7 @@
 # this program.  If not, see <https://www.gnu.org/licenses/>.
 
 distributionBase=GRADLE_USER_HOME
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.3-bin.zip
 distributionPath=wrapper/dists
 zipStorePath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME