App grouping (#195)

This commit is contained in:
BinTianqi
2025-11-19 18:30:12 +08:00
parent 97721892f3
commit 1dab0a08d2
13 changed files with 325 additions and 43 deletions

View File

@@ -59,6 +59,7 @@ import com.bintianqi.owndroid.dpm.ApnAuthType
import com.bintianqi.owndroid.dpm.ApnConfig
import com.bintianqi.owndroid.dpm.ApnMvnoType
import com.bintianqi.owndroid.dpm.ApnProtocol
import com.bintianqi.owndroid.dpm.AppGroup
import com.bintianqi.owndroid.dpm.AppStatus
import com.bintianqi.owndroid.dpm.CaCertInfo
import com.bintianqi.owndroid.dpm.CreateUserResult
@@ -509,6 +510,24 @@ class MyViewModel(application: Application): AndroidViewModel(application) {
}
}
val appGroups = MutableStateFlow(emptyList<AppGroup>())
init {
getAppGroups()
}
fun getAppGroups() {
appGroups.value = myRepo.getAppGroups()
}
fun setAppGroup(id: Int?, name: String, apps: List<String>) {
myRepo.setAppGroup(id, name, apps)
getAppGroups()
}
fun deleteAppGroup(id: Int) {
myRepo.deleteAppGroup(id)
appGroups.update { group ->
group.filter { it.id != id }
}
}
@RequiresApi(24)
fun reboot() {
DPM.reboot(DAR)