Remove keep alive foreground service because bound service won't need it (#262)

Co-authored-by: LoveSy <shana@zju.edu.cn>
This commit is contained in:
Js0n 2023-11-23 20:32:24 +08:00 committed by GitHub
parent ccc7a7ac7d
commit 3674a967ef
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
48 changed files with 2 additions and 174 deletions

View File

@ -6,8 +6,6 @@
android:name="android.permission.QUERY_ALL_PACKAGES"
tools:ignore="QueryAllPackagesPermission" />
<uses-permission android:name="android.permission.REQUEST_DELETE_PACKAGES" />
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_SPECIAL_USE" />
<application
android:name=".LSPApplication"
@ -28,7 +26,6 @@
</activity>
<service
android:foregroundServiceType="specialUse"
android:name=".manager.ModuleService"
android:exported="true" />

View File

@ -2,14 +2,12 @@ package org.lsposed.lspatch
import android.app.Application
import android.content.Context
import android.content.Intent
import android.content.SharedPreferences
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
import org.lsposed.hiddenapibypass.HiddenApiBypass
import org.lsposed.lspatch.manager.AppBroadcastReceiver
import org.lsposed.lspatch.manager.ModuleService
import org.lsposed.lspatch.util.LSPPackageManager
import org.lsposed.lspatch.util.ShizukuApi
import java.io.File
@ -32,7 +30,6 @@ class LSPApplication : Application() {
prefs = lspApp.getSharedPreferences("settings", Context.MODE_PRIVATE)
ShizukuApi.init()
AppBroadcastReceiver.register(this)
startService(Intent(this, ModuleService::class.java))
globalScope.launch { LSPPackageManager.fetchAppList() }
}
}

View File

@ -1,8 +1,6 @@
package org.lsposed.lspatch.config
import android.content.Intent
import org.lsposed.lspatch.lspApp
import org.lsposed.lspatch.manager.ModuleService
import org.lsposed.lspatch.ui.util.delegateStateOf
import org.lsposed.lspatch.ui.util.getValue
import org.lsposed.lspatch.ui.util.setValue
@ -14,11 +12,6 @@ object Configs {
private const val PREFS_KEYSTORE_ALIAS_PASSWORD = "keystore_alias_password"
private const val PREFS_STORAGE_DIRECTORY = "storage_directory"
private const val PREFS_DETAIL_PATCH_LOGS = "detail_patch_logs"
private const val PREFS_KEEP_ALIVE = "keep_alive"
enum class KeepAlive {
OFF, FOREGROUND
}
var keyStorePassword by delegateStateOf(lspApp.prefs.getString(PREFS_KEYSTORE_PASSWORD, "123456")!!) {
lspApp.prefs.edit().putString(PREFS_KEYSTORE_PASSWORD, it).apply()
@ -39,9 +32,4 @@ object Configs {
var detailPatchLogs by delegateStateOf(lspApp.prefs.getBoolean(PREFS_DETAIL_PATCH_LOGS, true)) {
lspApp.prefs.edit().putBoolean(PREFS_DETAIL_PATCH_LOGS, it).apply()
}
var keepAlive by delegateStateOf(KeepAlive.values()[lspApp.prefs.getInt(PREFS_KEEP_ALIVE, KeepAlive.OFF.ordinal)]) {
lspApp.prefs.edit().putInt(PREFS_KEEP_ALIVE, it.ordinal).apply()
lspApp.startService(Intent(lspApp, ModuleService::class.java))
}
}

View File

@ -1,16 +1,9 @@
package org.lsposed.lspatch.manager
import android.app.NotificationChannel
import android.app.NotificationManager
import android.app.Service
import android.content.Intent
import android.content.pm.ServiceInfo
import android.os.Build
import android.os.IBinder
import android.util.Log
import androidx.core.app.NotificationCompat
import org.lsposed.lspatch.config.Configs
import org.lsposed.lspatch.share.Constants
class ModuleService : Service() {
@ -19,31 +12,6 @@ class ModuleService : Service() {
private const val TAG = "ModuleService"
}
override fun onStartCommand(intent: Intent?, flags: Int, startId: Int): Int {
intent ?: return START_NOT_STICKY
if (Configs.keepAlive == Configs.KeepAlive.FOREGROUND) {
val channel = NotificationChannel(Constants.MANAGER_PACKAGE_NAME, TAG, NotificationManager.IMPORTANCE_DEFAULT)
val manager = getSystemService(NOTIFICATION_SERVICE) as NotificationManager
manager.createNotificationChannel(channel)
// TODO: https://developer.android.com/guide/components/bound-services
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.UPSIDE_DOWN_CAKE) {
startForeground(
1,
NotificationCompat.Builder(this, Constants.MANAGER_PACKAGE_NAME).build(),
ServiceInfo.FOREGROUND_SERVICE_TYPE_SPECIAL_USE
)
} else {
startForeground(
1,
NotificationCompat.Builder(this, Constants.MANAGER_PACKAGE_NAME).build()
)
}
} else {
stopForeground(STOP_FOREGROUND_REMOVE)
}
return super.onStartCommand(intent, flags, startId)
}
override fun onBind(intent: Intent): IBinder? {
val packageName = intent.getStringExtra("packageName") ?: return null
// TODO: Authentication

View File

@ -13,7 +13,6 @@ import androidx.compose.foundation.verticalScroll
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.outlined.Ballot
import androidx.compose.material.icons.outlined.BugReport
import androidx.compose.material.icons.outlined.HourglassEmpty
import androidx.compose.material3.*
import androidx.compose.runtime.*
import androidx.compose.runtime.saveable.rememberSaveable
@ -51,7 +50,6 @@ fun SettingsScreen() {
) {
KeyStore()
DetailPatchLogs()
KeepAlive()
}
}
}
@ -242,39 +240,3 @@ private fun DetailPatchLogs() {
title = stringResource(R.string.settings_detail_patch_logs)
)
}
@Composable
private fun KeepAlive() {
var expanded by remember { mutableStateOf(false) }
AnywhereDropdown(
expanded = expanded,
onDismissRequest = { expanded = false },
onClick = { expanded = true },
surface = {
val desc = when (Configs.keepAlive) {
Configs.KeepAlive.OFF -> R.string.off
Configs.KeepAlive.FOREGROUND -> R.string.settings_keep_alive_foreground
}
SettingsItem(
icon = Icons.Outlined.HourglassEmpty,
title = stringResource(R.string.settings_keep_alive),
desc = stringResource(desc)
)
}
) {
DropdownMenuItem(
text = { Text(stringResource(R.string.off)) },
onClick = {
Configs.keepAlive = Configs.KeepAlive.OFF
expanded = false
}
)
DropdownMenuItem(
text = { Text(stringResource(R.string.settings_keep_alive_foreground)) },
onClick = {
Configs.keepAlive = Configs.KeepAlive.FOREGROUND
expanded = false
}
)
}
}

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">Verkeerde alias naam</string>
<string name="settings_keystore_wrong_alias_password">Verkeerde alias wagwoord</string>
<string name="settings_detail_patch_logs">Detail pleister logs</string>
<string name="settings_keep_alive">Hou aan die lewe</string>
<string name="settings_keep_alive_foreground">Voorgrond</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">اسم مستعار خاطئ</string>
<string name="settings_keystore_wrong_alias_password">كلمة مرور الاسم المستعار خاطئة</string>
<string name="settings_detail_patch_logs">تفاصيل سجلات التعديل</string>
<string name="settings_keep_alive">إبقاء التطبيق يعمل بالخلفية</string>
<string name="settings_keep_alive_foreground">التطبيق يعمل بالخلفية</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">Неправилно име на псевдоним</string>
<string name="settings_keystore_wrong_alias_password">Грешна парола за псевдоним</string>
<string name="settings_detail_patch_logs">Подробни дневници на кръпките</string>
<string name="settings_keep_alive">Запазете живота си</string>
<string name="settings_keep_alive_foreground">На преден план</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">ভুল উপনাম নাম</string>
<string name="settings_keystore_wrong_alias_password">ভুল ওরফে পাসওয়ার্ড</string>
<string name="settings_detail_patch_logs">বিস্তারিত প্যাচ লগ</string>
<string name="settings_keep_alive">জিবন্ত রাখ</string>
<string name="settings_keep_alive_foreground">ফোরগ্রাউন্ড</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">Nom d\'àlies incorrecte</string>
<string name="settings_keystore_wrong_alias_password">Contrasenya d\'àlies incorrecta</string>
<string name="settings_detail_patch_logs">Registres de pedaços detallats</string>
<string name="settings_keep_alive">Mantenir amb vida</string>
<string name="settings_keep_alive_foreground">Primer pla</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">Špatný název aliasu</string>
<string name="settings_keystore_wrong_alias_password">Špatné heslo aliasu</string>
<string name="settings_detail_patch_logs">Podrobné protokoly oprav</string>
<string name="settings_keep_alive">Udržovat při životě</string>
<string name="settings_keep_alive_foreground">Přední stránka</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">Forkert aliasnavn</string>
<string name="settings_keystore_wrong_alias_password">Forkert adgangskode til alias</string>
<string name="settings_detail_patch_logs">Detaljerede patch-logfiler</string>
<string name="settings_keep_alive">Hold i live</string>
<string name="settings_keep_alive_foreground">Forgrund</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">Falscher Alias-Name</string>
<string name="settings_keystore_wrong_alias_password">Falsches Alias-Passwort</string>
<string name="settings_detail_patch_logs">Detaillierte Patch-Protokolle</string>
<string name="settings_keep_alive">Am Leben erhalten</string>
<string name="settings_keep_alive_foreground">Vordergrund</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">Λάθος όνομα ψευδώνυμου</string>
<string name="settings_keystore_wrong_alias_password">Λάθος κωδικός πρόσβασης ψευδώνυμου</string>
<string name="settings_detail_patch_logs">Λεπτομερή αρχεία καταγραφής επιδιορθώσεων</string>
<string name="settings_keep_alive">Κρατηθείτε ζωντανοί</string>
<string name="settings_keep_alive_foreground">Πρόσφατα στοιχεία</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">Nombre de alias incorrecto</string>
<string name="settings_keystore_wrong_alias_password">Contraseña de alias incorrecta</string>
<string name="settings_detail_patch_logs">Registros de parches detallados</string>
<string name="settings_keep_alive">Mantener la vida</string>
<string name="settings_keep_alive_foreground">Primer plano</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">Vale pseudonüümi nimi</string>
<string name="settings_keystore_wrong_alias_password">Vale aliase parool</string>
<string name="settings_detail_patch_logs">Üksikasjade paikade logid</string>
<string name="settings_keep_alive">Elus hoidma</string>
<string name="settings_keep_alive_foreground">Esiplaan</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">نام مستعار اشتباه است</string>
<string name="settings_keystore_wrong_alias_password">رمز یا نام مستعار اشتباه است</string>
<string name="settings_detail_patch_logs">گزارش های اطلاعات پچ</string>
<string name="settings_keep_alive">زنده بمان</string>
<string name="settings_keep_alive_foreground">پیش زمینه</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">Väärä alias-nimi</string>
<string name="settings_keystore_wrong_alias_password">Väärä alias-salasana</string>
<string name="settings_detail_patch_logs">Yksityiskohtaiset korjauslokit</string>
<string name="settings_keep_alive">Pidä hengissä</string>
<string name="settings_keep_alive_foreground">Tulosaineisto</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">Nom d\'alias erroné</string>
<string name="settings_keystore_wrong_alias_password">Mot de passe d\'alias erroné</string>
<string name="settings_detail_patch_logs">Détails des journaux du patch</string>
<string name="settings_keep_alive">Garder la vie sauve</string>
<string name="settings_keep_alive_foreground">Premier plan</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">गलत उपनाम</string>
<string name="settings_keystore_wrong_alias_password">गलत उपनाम पासवर्ड</string>
<string name="settings_detail_patch_logs">विस्तार पैच लॉग</string>
<string name="settings_keep_alive">जिंदा रहो</string>
<string name="settings_keep_alive_foreground">अग्रभूमि</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">Pogrešno pseudonim</string>
<string name="settings_keystore_wrong_alias_password">Pogrešna lozinka za alias</string>
<string name="settings_detail_patch_logs">Dnevnici zakrpa detalja</string>
<string name="settings_keep_alive">Držati na životu</string>
<string name="settings_keep_alive_foreground">Prednji plan</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">Rossz alias név</string>
<string name="settings_keystore_wrong_alias_password">Rossz alias jelszó</string>
<string name="settings_detail_patch_logs">Részletes patch naplók</string>
<string name="settings_keep_alive">Tartsd életben</string>
<string name="settings_keep_alive_foreground">Új információk és jogok</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">Nama alias salah</string>
<string name="settings_keystore_wrong_alias_password">Kata sandi alias salah</string>
<string name="settings_detail_patch_logs">Detail log tambalan</string>
<string name="settings_keep_alive">Tetap hidup</string>
<string name="settings_keep_alive_foreground">Latar Depan</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">Nome alias errato</string>
<string name="settings_keystore_wrong_alias_password">Password alias errata</string>
<string name="settings_detail_patch_logs">Registri dettagliati delle patch</string>
<string name="settings_keep_alive">Mantieni attivo</string>
<string name="settings_keep_alive_foreground">Primo piano</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">שם כינוי שגוי</string>
<string name="settings_keystore_wrong_alias_password">סיסמת כינוי שגויה</string>
<string name="settings_detail_patch_logs">פירוט יומני תיקון</string>
<string name="settings_keep_alive">להשאיר בחיים</string>
<string name="settings_keep_alive_foreground">חֲזִית</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">エイリアス名が間違っています</string>
<string name="settings_keystore_wrong_alias_password">エイリアスのパスワードが違います</string>
<string name="settings_detail_patch_logs">詳細なパッチログ</string>
<string name="settings_keep_alive">Keep Alive</string>
<string name="settings_keep_alive_foreground">フォアグラウンド</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">잘못된 별칭 이름</string>
<string name="settings_keystore_wrong_alias_password">잘못된 별칭 암호</string>
<string name="settings_detail_patch_logs">세부 패치 로그</string>
<string name="settings_keep_alive">살아 유지</string>
<string name="settings_keep_alive_foreground">전경</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">Navê nasnavê xelet</string>
<string name="settings_keystore_wrong_alias_password">Şîfreya nasnavê çewt</string>
<string name="settings_detail_patch_logs">Detail patch têketin</string>
<string name="settings_keep_alive">Bijî</string>
<string name="settings_keep_alive_foreground">Pêşî</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">Neteisingas pseudonimas</string>
<string name="settings_keystore_wrong_alias_password">Neteisingas slapyvardžio slaptažodis</string>
<string name="settings_detail_patch_logs">Išsamūs pataisų žurnalai</string>
<string name="settings_keep_alive">Išlaikykite gyvybę</string>
<string name="settings_keep_alive_foreground">Naujos žinios</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">Verkeerde aliasnaam</string>
<string name="settings_keystore_wrong_alias_password">Verkeerd alias wachtwoord</string>
<string name="settings_detail_patch_logs">Detail patch logs</string>
<string name="settings_keep_alive">In leven houden</string>
<string name="settings_keep_alive_foreground">Voorgrond</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">Feil aliasnavn</string>
<string name="settings_keystore_wrong_alias_password">Feil alias passord</string>
<string name="settings_detail_patch_logs">Detalj patchlogger</string>
<string name="settings_keep_alive">Holde i live</string>
<string name="settings_keep_alive_foreground">Forgrunn</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">Nieprawidłowa nazwa aliasu</string>
<string name="settings_keystore_wrong_alias_password">Nieprawidłowe hasło aliasu</string>
<string name="settings_detail_patch_logs">Szczegóły logów poprawek</string>
<string name="settings_keep_alive">Utrzymać się przy życiu</string>
<string name="settings_keep_alive_foreground">Pierwsza plansza</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">Nome do apelido incorreto</string>
<string name="settings_keystore_wrong_alias_password">Senha do apelido incorreta</string>
<string name="settings_detail_patch_logs">Registros de patch detalhados</string>
<string name="settings_keep_alive">Mantenha vivo</string>
<string name="settings_keep_alive_foreground">Primeiro plano</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">Nome falso</string>
<string name="settings_keystore_wrong_alias_password">Palavra-passe de outrora incorrecta</string>
<string name="settings_detail_patch_logs">Registos de remendos detalhados</string>
<string name="settings_keep_alive">Mantenha-se vivo</string>
<string name="settings_keep_alive_foreground">Primeiro plano</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">Nume alias greșit</string>
<string name="settings_keystore_wrong_alias_password">Parolă alias greșită</string>
<string name="settings_detail_patch_logs">Detaliile jurnalelor de patch-uri</string>
<string name="settings_keep_alive">Păstrați în viață</string>
<string name="settings_keep_alive_foreground">Prim-plan</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">Неправильное имя псевдонима</string>
<string name="settings_keystore_wrong_alias_password">Неправильный пароль псевдонима</string>
<string name="settings_detail_patch_logs">Подробные логи патчей</string>
<string name="settings_keep_alive">Всегда активен</string>
<string name="settings_keep_alive_foreground">В фоне</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">වැරදි අන්වර්ථ නාමයක්</string>
<string name="settings_keystore_wrong_alias_password">වැරදි අන්වර්ථ මුරපදය</string>
<string name="settings_detail_patch_logs">විස්තර පැච් ලොග</string>
<string name="settings_keep_alive">ජීවත් කරවන්න</string>
<string name="settings_keep_alive_foreground">පෙරබිම</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">Nesprávny alias</string>
<string name="settings_keystore_wrong_alias_password">Nesprávne heslo aliasu</string>
<string name="settings_detail_patch_logs">Podrobné protokoly o opravách</string>
<string name="settings_keep_alive">Udržať nažive</string>
<string name="settings_keep_alive_foreground">Popredie</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">Fel aliasnamn</string>
<string name="settings_keystore_wrong_alias_password">Fel lösenord för alias</string>
<string name="settings_detail_patch_logs">Detaljerade patchloggar</string>
<string name="settings_keep_alive">Håll vid liv</string>
<string name="settings_keep_alive_foreground">Förgrund</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">ชื่อนามแฝงไม่ถูกต้อง</string>
<string name="settings_keystore_wrong_alias_password">รหัสผ่านนามแฝงไม่ถูกต้อง</string>
<string name="settings_detail_patch_logs">บันทึกการแก้ไขรายละเอียด</string>
<string name="settings_keep_alive">ให้มีชีวิตอยู่</string>
<string name="settings_keep_alive_foreground">เบื้องหน้า</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">Yanlış takma ad</string>
<string name="settings_keystore_wrong_alias_password">Yanlış takma ad şifresi</string>
<string name="settings_detail_patch_logs">Ayrıntılı yama günlükleri</string>
<string name="settings_keep_alive">Canlı tutun</string>
<string name="settings_keep_alive_foreground">Ön Plan</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">Неправильний псевдонім</string>
<string name="settings_keystore_wrong_alias_password">Неправильний пароль псевдоніма</string>
<string name="settings_detail_patch_logs">Детальні журнали патчів</string>
<string name="settings_keep_alive">Підтримувати</string>
<string name="settings_keep_alive_foreground">Передній план</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">غلط عرفی نام</string>
<string name="settings_keystore_wrong_alias_password">غلط عرفی پاس ورڈ</string>
<string name="settings_detail_patch_logs">تفصیلی پیچ لاگز</string>
<string name="settings_keep_alive">زندہ رہو</string>
<string name="settings_keep_alive_foreground">پیش منظر</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">Tên bí danh sai</string>
<string name="settings_keystore_wrong_alias_password">Mật khẩu bí danh sai</string>
<string name="settings_detail_patch_logs">Nhật ký vá chi tiết</string>
<string name="settings_keep_alive">Cố sống đi</string>
<string name="settings_keep_alive_foreground">Vấn đề xung quanh</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">别名错误</string>
<string name="settings_keystore_wrong_alias_password">别名密码错误</string>
<string name="settings_detail_patch_logs">详细修补日志</string>
<string name="settings_keep_alive">保活</string>
<string name="settings_keep_alive_foreground">前台</string>
</resources>

View File

@ -86,6 +86,4 @@
<string name="settings_keystore_wrong_alias">別名錯誤</string>
<string name="settings_keystore_wrong_alias_password">別名密碼錯誤</string>
<string name="settings_detail_patch_logs">詳細打包日誌</string>
<string name="settings_keep_alive">保活</string>
<string name="settings_keep_alive_foreground">前臺</string>
</resources>

View File

@ -53,7 +53,7 @@
<string name="patch_from_applist">Select an installed app</string>
<string name="patch_mode">Patch Mode</string>
<string name="patch_local">Local</string>
<string name="patch_local_desc">Patch an app without modules embedded.\nThe patched app need the manager running in background, and Xposed scope can be changed dynamically without re-patch.\nLocal patched apps can only run on the local device.</string>
<string name="patch_local_desc">Patch an app without modules embedded.\nXposed scope can be changed dynamically without re-patch.\nLocal patched apps can only run on the local device.</string>
<string name="patch_integrated">Integrated</string>
<string name="patch_integrated_desc">Patch an app with modules embedded.\nThe patched app can run without the manager, but cannot be managed dynamically.\nIntegrated patched apps can be used on devices that do not have LSPatch Manager installed.</string>
<string name="patch_embed_modules">Embed modules</string>
@ -90,6 +90,4 @@
<string name="settings_keystore_wrong_alias">Wrong alias name</string>
<string name="settings_keystore_wrong_alias_password">Wrong alias password</string>
<string name="settings_detail_patch_logs">Detail patch logs</string>
<string name="settings_keep_alive">Keep alive</string>
<string name="settings_keep_alive_foreground">Foreground</string>
</resources>

View File

@ -76,7 +76,7 @@ public class RemoteApplicationService implements ILSPApplicationService {
if (!success) throw new TimeoutException("Bind service timeout");
} catch (NoSuchMethodException | IllegalAccessException | InvocationTargetException |
InterruptedException | TimeoutException e) {
Toast.makeText(context, "Manager died", Toast.LENGTH_SHORT).show();
Toast.makeText(context, "Unable to connect to Manager", Toast.LENGTH_SHORT).show();
var r = new RemoteException("Failed to get manager binder");
r.initCause(e);
throw r;