From ae8230362d5971b6ac0e27d105d2b4889b990ee4 Mon Sep 17 00:00:00 2001 From: ptraced <132447890+ptraced@users.noreply.github.com> Date: Mon, 25 Aug 2025 10:16:06 -0500 Subject: [PATCH] Remove Prevent Forced Logout - Prevent Forced Logout As snapchat allows multiple logins now --- README.md | 1 - common/src/main/assets/lang/bn.json | 4 ---- common/src/main/assets/lang/da.json | 4 ---- common/src/main/assets/lang/de_DE.json | 4 ---- common/src/main/assets/lang/en_UK.json | 4 ---- common/src/main/assets/lang/en_US.json | 4 ---- common/src/main/assets/lang/es_ES.json | 4 ---- common/src/main/assets/lang/fr_FR.json | 4 ---- common/src/main/assets/lang/gwi.json | 4 ---- common/src/main/assets/lang/hu_HU.json | 4 ---- common/src/main/assets/lang/ml_IN.json | 4 ---- common/src/main/assets/lang/ro.json | 4 ---- common/src/main/assets/lang/ru.json | 4 ---- common/src/main/assets/lang/sv.json | 4 ---- common/src/main/assets/lang/ta_IN.json | 4 ---- common/src/main/assets/lang/tr_TR.json | 4 ---- common/src/main/assets/lang/uk_UA.json | 4 ---- common/src/main/assets/lang/wep.json | 4 ---- .../common/config/impl/Experimental.kt | 1 - .../core/features/FeatureManager.kt | 1 - .../impl/experiments/AccountSwitcher.kt | 2 +- .../impl/experiments/PreventForcedLogout.kt | 18 ------------------ 22 files changed, 1 insertion(+), 90 deletions(-) delete mode 100644 core/src/main/kotlin/me/rhunk/snapenhance/core/features/impl/experiments/PreventForcedLogout.kt diff --git a/README.md b/README.md index c3464f9a0..0586f5354 100644 --- a/README.md +++ b/README.md @@ -156,7 +156,6 @@ We no longer offer official `LSPatch` binaries for obvious reasons. However, you - `Enable Hidden Snapchat Plus Features` - `Custom Streaks Expiration Format` - `Add Friend Source Spoof` - - `Prevent Forced Logout` ## FAQ diff --git a/common/src/main/assets/lang/bn.json b/common/src/main/assets/lang/bn.json index 4e77d6d0f..2422efe40 100644 --- a/common/src/main/assets/lang/bn.json +++ b/common/src/main/assets/lang/bn.json @@ -933,10 +933,6 @@ "description": "স্ট্রিকস মেয়াদ শেষের ফরম্যাট কাস্টমাইজ করে\n\nউপলব্ধ ভেরিয়েবল:\n - %c: স্ট্রিকস গণনা\n - %e: আওয়ারগ্লাস ইমোজি\n - %d: দিন\n - %h: ঘন্টা\n - %m: মিনিট\n - %s: সেকেন্ড\n - %w: অবশিষ্ট সময়", "name": "কাস্টম স্ট্রিকস মেয়াদ শেষের ফরম্যাট" }, - "prevent_forced_logout": { - "name": "জোর করে লগআউট প্রতিরোধ করে", - "description": "অন্য ডিভাইসে লগইন করলে স্ন্যাপচ্যাট আপনাকে লগআউট করা থেকে বিরত রাখে" - }, "story_logger": { "description": "বন্ধুদের গল্পের ইতিহাস প্রদান করে", "name": "গল্প লগার" diff --git a/common/src/main/assets/lang/da.json b/common/src/main/assets/lang/da.json index 7871451a8..fd5831a11 100644 --- a/common/src/main/assets/lang/da.json +++ b/common/src/main/assets/lang/da.json @@ -888,10 +888,6 @@ "name": "Mediefilvælger", "description": "Giver dig mulighed for at vælge en hvilken som helst video-/lydfil fra galleriet" }, - "prevent_forced_logout": { - "description": "Forhindrer Snapchat i at logge dig ud, når du logger på en anden enhed", - "name": "Undgå tvungen log ud" - }, "edit_message": { "name": "Rediger beskeder", "description": "Giver dig mulighed for at redigere beskeder i samtaler" diff --git a/common/src/main/assets/lang/de_DE.json b/common/src/main/assets/lang/de_DE.json index 9add98f24..0ec11555e 100644 --- a/common/src/main/assets/lang/de_DE.json +++ b/common/src/main/assets/lang/de_DE.json @@ -969,10 +969,6 @@ "name": "Verborgene Snapchat Plus-Funktionen", "description": "Aktiviert unveröffentlichte/beta Snapchat Plus Funktionen\nKönnte auf älteren Snapchat-Versionen nicht funktionieren" }, - "prevent_forced_logout": { - "name": "Erzwungenen Logout verhindern", - "description": "Verhindert, dass Snapchat dich abmeldet, wenn du dich auf einem anderen Gerät anmeldest" - }, "convert_message_locally": { "description": "Konvertiert Snaps lokal in externe Chat-Medien. Dies erscheint im Kontextmenü für den Chat-Download", "name": "Nachricht lokal umwandeln" diff --git a/common/src/main/assets/lang/en_UK.json b/common/src/main/assets/lang/en_UK.json index 16c2ef98b..9679ec410 100644 --- a/common/src/main/assets/lang/en_UK.json +++ b/common/src/main/assets/lang/en_UK.json @@ -999,10 +999,6 @@ "description": "Enables unreleased/beta Snapchat Plus features\nMight not work on older Snapchat versions", "name": "Hidden Snapchat Plus Features" }, - "prevent_forced_logout": { - "name": "Prevent Forced Logout", - "description": "Prevents Snapchat from logging you out when you login on another device" - }, "app_lock": { "name": "App Lock", "description": "Prevents access to Snapchat without a passcode", diff --git a/common/src/main/assets/lang/en_US.json b/common/src/main/assets/lang/en_US.json index 3d3315e0b..e066c41f6 100644 --- a/common/src/main/assets/lang/en_US.json +++ b/common/src/main/assets/lang/en_US.json @@ -1123,10 +1123,6 @@ "name": "Custom Streaks Expiration Format", "description": "Customizes the Streaks Expiration format\n\nAvailable variables:\n - %c: Streaks Count\n - %e: Hourglass Emoji\n - %d: Days\n - %h: Hours\n - %m: Minutes\n - %s: Seconds\n - %w: Remaining Time" }, - "prevent_forced_logout": { - "name": "Prevent Forced Logout", - "description": "Prevents Snapchat from logging you out when you login on another device" - }, "snapscore_changes": { "name": "Snapscore Changes", "description": "Tracks changes in friends Snapscore\nUse this feature in newer versions of Snapchat only" diff --git a/common/src/main/assets/lang/es_ES.json b/common/src/main/assets/lang/es_ES.json index b2203e67e..d1248cd2f 100644 --- a/common/src/main/assets/lang/es_ES.json +++ b/common/src/main/assets/lang/es_ES.json @@ -1062,10 +1062,6 @@ "name": "Funciones de Snapchat Plus ocultas", "description": "Habilita funciones inéditas/beta de Snapchat Plus\nPuede no funcionar en versiones antiguas de Snapchat" }, - "prevent_forced_logout": { - "name": "Impedir el cierre de sesión forzado", - "description": "Impide que Snapchat pueda cerrar la sesión cuando inicies sesión en otro dispositivo" - }, "cof_experiments": { "name": "Experimentos COF", "description": "Habilita funciones inéditas/beta de Snapchat" diff --git a/common/src/main/assets/lang/fr_FR.json b/common/src/main/assets/lang/fr_FR.json index ee2b2177f..7cbf848fa 100644 --- a/common/src/main/assets/lang/fr_FR.json +++ b/common/src/main/assets/lang/fr_FR.json @@ -999,10 +999,6 @@ "description": "Contourner le code d'accès My Eyes Only\nCela ne fonctionnera que si le code d'accès a été saisi correctement auparavant", "name": "Contournement du code d'accès de My Eyes Only" }, - "prevent_forced_logout": { - "name": "Empêcher la déconnexion forcée", - "description": "Empêche Snapchat de vous déconnecter lorsque vous vous connectez sur un autre appareil" - }, "convert_message_locally": { "description": "Convertit localement les Snaps en médias externes dans le chat. Ceci apparaît dans le menu contextuel de téléchargement du chat", "name": "Convertir le message localement" diff --git a/common/src/main/assets/lang/gwi.json b/common/src/main/assets/lang/gwi.json index 9af7d9b83..a6bcffc35 100644 --- a/common/src/main/assets/lang/gwi.json +++ b/common/src/main/assets/lang/gwi.json @@ -1008,10 +1008,6 @@ "custom_streaks_expiration_format": { "name": "Benutzerdefiniertes Ablaufdatum für Serien", "description": "Passt das Ablaufdatumformat für Serien an\n\nVerfügbare Variablen:\n- %c: Anzahl der Serien\n- %e: Sanduhr-Emoji\n- %d: Tage\n- %h: Stunden\n- %m: Minuten\n- %s: Sekunden\n- %w: Verbleibende Zeit" - }, - "prevent_forced_logout": { - "name": "Erzwungenen Logout verhindern", - "description": "Verhindert, dass Snapchat dich abmeldet, wenn du dich auf einem anderen Gerät anmeldest" } }, "name": "Experimentell", diff --git a/common/src/main/assets/lang/hu_HU.json b/common/src/main/assets/lang/hu_HU.json index dcdb33903..48e94f705 100644 --- a/common/src/main/assets/lang/hu_HU.json +++ b/common/src/main/assets/lang/hu_HU.json @@ -949,10 +949,6 @@ "name": "Barát forrás hozzáaadásának átírásának", "description": "Meghamisítja a Barátkérés forrását" }, - "prevent_forced_logout": { - "name": "Kényszerített kijelentkezés megakadályozása", - "description": "Megakadályozza, hogy a Snapchat kijelentkezzen, amikor egy másik eszközön jelentkezel be" - }, "app_lock": { "name": "App Zár", "description": "Megakadályozza a Snapchat hozzáférését jelszó nélkül", diff --git a/common/src/main/assets/lang/ml_IN.json b/common/src/main/assets/lang/ml_IN.json index 9d5a8eddb..15f3f376a 100644 --- a/common/src/main/assets/lang/ml_IN.json +++ b/common/src/main/assets/lang/ml_IN.json @@ -447,10 +447,6 @@ "name": "മറഞ്ഞിരിക്കുന്ന Snapchat പ്ലസ് ഫീച്ചറുകൾ", "description": "റിലീസ് ചെയ്യാത്ത/ബീറ്റ Snapchat പ്ലസ് ഫീച്ചറുകൾ പ്രവർത്തനക്ഷമമാക്കുന്നു\nപഴയ Snapchat പതിപ്പുകളിൽ പ്രവർത്തിച്ചേക്കില്ല" }, - "prevent_forced_logout": { - "name": "നിർബന്ധിത ലോഗ്ഔട്ട് തടയുക", - "description": "നിങ്ങൾ മറ്റൊരു ഉപകരണത്തിൽ ലോഗിൻ ചെയ്യുമ്പോൾ നിങ്ങളെ ലോഗ് ഔട്ട് ചെയ്യുന്നതിൽ നിന്ന് Snapchat തടയുന്നു" - }, "meo_passcode_bypass": { "name": "എന്റെ കണ്ണുകൾ മാത്രം പാസ്‌കോഡ് ബൈപാസ്", "description": "മൈ ഐസ് ഒൺലി പാസ്‌കോഡ് ബൈപാസ് ചെയ്യുക\nമുമ്പ് പാസ്‌കോഡ് ശരിയായി നൽകിയിട്ടുണ്ടെങ്കിൽ മാത്രമേ ഇത് പ്രവർത്തിക്കൂ" diff --git a/common/src/main/assets/lang/ro.json b/common/src/main/assets/lang/ro.json index d68241e3c..0fb3b16b2 100644 --- a/common/src/main/assets/lang/ro.json +++ b/common/src/main/assets/lang/ro.json @@ -919,10 +919,6 @@ } } }, - "prevent_forced_logout": { - "name": "Preveniți deconectarea forțată", - "description": "Împiedică Snapchat să vă deconecteze atunci când vă conectați pe alt dispozitiv" - }, "call_recorder": { "name": "Înregistrare Apeluri", "description": "Înregistrează automat apelurile audio" diff --git a/common/src/main/assets/lang/ru.json b/common/src/main/assets/lang/ru.json index fa7b03df1..ea0c01014 100644 --- a/common/src/main/assets/lang/ru.json +++ b/common/src/main/assets/lang/ru.json @@ -598,10 +598,6 @@ "name": "Подделка источника запроса на добавление в друзья", "description": "Маскировка источника запроса на добавление в друзья" }, - "prevent_forced_logout": { - "name": "Предотвращение принудительного выхода из системы", - "description": "Предотвращает выход из системы Snapchat при входе на другом устройстве" - }, "hidden_snapchat_plus_features": { "description": "Включает нереализованные/бета-версии функций Snapchat Plus\nМожет не работать в старых версиях Snapchat", "name": "Скрытые функции Snapchat Plus" diff --git a/common/src/main/assets/lang/sv.json b/common/src/main/assets/lang/sv.json index b4289a311..8e4a87641 100644 --- a/common/src/main/assets/lang/sv.json +++ b/common/src/main/assets/lang/sv.json @@ -649,10 +649,6 @@ "description": "Aktiverar outgivna/beta Snapchat Plus-funktioner\nKanske inte fungerar på äldre Snapchat-versioner", "name": "Dolda Snapchat Plus-funktioner" }, - "prevent_forced_logout": { - "description": "Förhindrar att Snapchat loggar ut dig när du loggar in på en annan enhet", - "name": "Förhindra påtvingad utloggning" - }, "media_file_picker": { "name": "Mediafilväljare", "description": "Låter dig välja valfri video-/ljudfil från galleriet" diff --git a/common/src/main/assets/lang/ta_IN.json b/common/src/main/assets/lang/ta_IN.json index 2b4ec00d9..79ca06779 100644 --- a/common/src/main/assets/lang/ta_IN.json +++ b/common/src/main/assets/lang/ta_IN.json @@ -574,10 +574,6 @@ "custom_streaks_expiration_format": { "name": "தனிப்பயன் கோடுகள் காலாவதி வடிவம்", "description": "ச்ட்ரீக்ச் காலாவதி வடிவமைப்பைத் தனிப்பயனாக்குகிறது\n\n கிடைக்கும் மாறிகள்:\n - %சி: ச்ட்ரீக்ச் எண்ணிக்கை\n - %E: மணிநேர கிளாச் ஈமோசி\n - %d: நாட்கள்\n - %s: மணிநேரம்\n - %மீ: நிமிடங்கள்\n - %s: விநாடிகள்\n - %W: மீதமுள்ள நேரம்" - }, - "prevent_forced_logout": { - "name": "கட்டாய வெளியேறுவதைத் தடுக்கவும்", - "description": "நீங்கள் வேறொரு சாதனத்தில் உள்நுழையும்போது ச்னாப்சாட் உங்களை உள்நுழைவதைத் தடுக்கிறது" } }, "name": "சோதனை", diff --git a/common/src/main/assets/lang/tr_TR.json b/common/src/main/assets/lang/tr_TR.json index 1f892b01e..d3b3aca46 100644 --- a/common/src/main/assets/lang/tr_TR.json +++ b/common/src/main/assets/lang/tr_TR.json @@ -966,10 +966,6 @@ "name": "Gizli Snapchat Plus Özellikleri", "description": "Yayınlanmamış/beta Snapchat Plus özelliklerini etkinleştirir\nEski Snapchat sürümlerinde çalışmayabilir" }, - "prevent_forced_logout": { - "name": "Zorla Oturum Kapatmayı Önleme", - "description": "Başka bir cihazdan giriş yaptığınızda Snapchat'in oturumunuzu kapatmasını engeller" - }, "convert_message_locally": { "description": "Snap'leri yerel olarak sohbet harici ortamına dönüştürür. Bu, sohbet indirme içerik menüsünde görünür", "name": "Mesajı Yerel Olarak Dönüştür" diff --git a/common/src/main/assets/lang/uk_UA.json b/common/src/main/assets/lang/uk_UA.json index 0d22c49d2..ba3d2fefb 100644 --- a/common/src/main/assets/lang/uk_UA.json +++ b/common/src/main/assets/lang/uk_UA.json @@ -1082,10 +1082,6 @@ "name": "Запис дзвінків", "description": "Автоматично записує аудіодзвінки" }, - "prevent_forced_logout": { - "description": "Запобігає виходу Snapchat під час входу на іншому пристрої", - "name": "Запобігання примусового виходу з системи" - }, "hidden_snapchat_plus_features": { "name": "Приховані функції Snapchat Plus", "description": "Вмикає невипущені/бета-функції Snapchat Plus\nМоже не працювати на старіших версіях Snapchat" diff --git a/common/src/main/assets/lang/wep.json b/common/src/main/assets/lang/wep.json index c49f6a3f3..059dfe6ad 100644 --- a/common/src/main/assets/lang/wep.json +++ b/common/src/main/assets/lang/wep.json @@ -827,10 +827,6 @@ "custom_streaks_expiration_format": { "name": "Benutzerdefiniertes Ablaufdatum für Serien", "description": "Passt das Ablaufdatumformat für Serien an\n\nVerfügbare Variablen:\n- %c: Anzahl der Serien\n- %e: Sanduhr-Emoji\n- %d: Tage\n- %h: Stunden\n- %m: Minuten\n- %s: Sekunden\n- %w: Verbleibende Zeit" - }, - "prevent_forced_logout": { - "name": "Erzwungenen Logout verhindern", - "description": "Verhindert, dass Snapchat dich abmeldet, wenn du dich auf einem anderen Gerät anmeldest" } } }, diff --git a/common/src/main/kotlin/me/rhunk/snapenhance/common/config/impl/Experimental.kt b/common/src/main/kotlin/me/rhunk/snapenhance/common/config/impl/Experimental.kt index 16aba133a..ae1cda49a 100644 --- a/common/src/main/kotlin/me/rhunk/snapenhance/common/config/impl/Experimental.kt +++ b/common/src/main/kotlin/me/rhunk/snapenhance/common/config/impl/Experimental.kt @@ -92,6 +92,5 @@ class Experimental : ConfigContainer() { "added_by_community", "added_by_quick_add", ) { addNotices(FeatureNotice.BAN_RISK) } - val preventForcedLogout = boolean("prevent_forced_logout") { requireRestart(); addNotices(FeatureNotice.BAN_RISK, FeatureNotice.INTERNAL_BEHAVIOR); } val snapScoreChanges = boolean("snapscore_changes") { requireRestart() } } \ No newline at end of file diff --git a/core/src/main/kotlin/me/rhunk/snapenhance/core/features/FeatureManager.kt b/core/src/main/kotlin/me/rhunk/snapenhance/core/features/FeatureManager.kt index 341cc95a3..1983fc1b5 100644 --- a/core/src/main/kotlin/me/rhunk/snapenhance/core/features/FeatureManager.kt +++ b/core/src/main/kotlin/me/rhunk/snapenhance/core/features/FeatureManager.kt @@ -114,7 +114,6 @@ class FeatureManager( MixerStories(), MessageIndicators(), EditTextOverride(), - PreventForcedLogout(), ConversationToolbox(), SpotlightCommentsUsername(), OperaViewerParamsOverride(), diff --git a/core/src/main/kotlin/me/rhunk/snapenhance/core/features/impl/experiments/AccountSwitcher.kt b/core/src/main/kotlin/me/rhunk/snapenhance/core/features/impl/experiments/AccountSwitcher.kt index 9bc3a7b00..f5712d8b6 100644 --- a/core/src/main/kotlin/me/rhunk/snapenhance/core/features/impl/experiments/AccountSwitcher.kt +++ b/core/src/main/kotlin/me/rhunk/snapenhance/core/features/impl/experiments/AccountSwitcher.kt @@ -489,7 +489,7 @@ class AccountSwitcher: Feature("Account Switcher") { findClass("com.snap.identity.service.ForcedLogoutBroadcastReceiver").hook("onReceive", HookStage.BEFORE) { param -> val intent = param.arg(1) if (isLoginActivity) return@hook - if (intent.getBooleanExtra("forced", false) && !context.config.experimental.preventForcedLogout.get()) { + if (intent.getBooleanExtra("forced", false)) { runCatching { val accountStorage = context.bridgeClient.getAccountStorage() diff --git a/core/src/main/kotlin/me/rhunk/snapenhance/core/features/impl/experiments/PreventForcedLogout.kt b/core/src/main/kotlin/me/rhunk/snapenhance/core/features/impl/experiments/PreventForcedLogout.kt deleted file mode 100644 index 213b97863..000000000 --- a/core/src/main/kotlin/me/rhunk/snapenhance/core/features/impl/experiments/PreventForcedLogout.kt +++ /dev/null @@ -1,18 +0,0 @@ -package me.rhunk.snapenhance.core.features.impl.experiments - -import android.content.Intent -import me.rhunk.snapenhance.core.features.Feature -import me.rhunk.snapenhance.core.util.hook.HookStage -import me.rhunk.snapenhance.core.util.hook.hook - -class PreventForcedLogout : Feature("Prevent Forced Logout") { - override fun init() { - if (!context.config.experimental.preventForcedLogout.get()) return - findClass("com.snap.identity.service.ForcedLogoutBroadcastReceiver").hook("onReceive", HookStage.BEFORE) { param -> - val intent = param.arg(1) - if (!intent.getBooleanExtra("forced", false)) return@hook - context.log.verbose("Prevent forced logout, reason=${intent.getStringExtra("reason")}") - param.setResult(null) - } - } -} \ No newline at end of file