Refactor the namespace to com.sukisu.ultra, add IKsuInterface and LatestVersionInfo data classes, and remove obsolete classes and methods.

This commit is contained in:
ShirkNeko
2025-04-23 02:24:55 +08:00
parent be37f8a2a3
commit 9ea6de340d
56 changed files with 215 additions and 215 deletions

View File

@@ -25,7 +25,7 @@ apksign {
}
android {
namespace = "zako.zako.zako"
namespace = "com.sukisu.ultra"
buildTypes {
release {

View File

@@ -1,4 +1,4 @@
package zako.zako.zako;
package com.sukisu.zako;
import android.content.pm.PackageInfo;
import rikka.parcelablelist.ParcelableListSlice;

View File

@@ -12,7 +12,7 @@
extern "C"
JNIEXPORT jboolean JNICALL
Java_zako_zako_zako_Natives_becomeManager(JNIEnv *env, jobject, jstring pkg) {
Java_com_sukisu_ultra_Natives_becomeManager(JNIEnv *env, jobject, jstring pkg) {
auto cpkg = env->GetStringUTFChars(pkg, nullptr);
auto result = become_manager(cpkg);
env->ReleaseStringUTFChars(pkg, cpkg);
@@ -21,13 +21,13 @@ Java_zako_zako_zako_Natives_becomeManager(JNIEnv *env, jobject, jstring pkg) {
extern "C"
JNIEXPORT jint JNICALL
Java_zako_zako_zako_Natives_getVersion(JNIEnv *env, jobject) {
Java_com_sukisu_ultra_Natives_getVersion(JNIEnv *env, jobject) {
return get_version();
}
extern "C"
JNIEXPORT jintArray JNICALL
Java_zako_zako_zako_Natives_getAllowList(JNIEnv *env, jobject) {
Java_com_sukisu_ultra_Natives_getAllowList(JNIEnv *env, jobject) {
int uids[1024];
int size = 0;
bool result = get_allow_list(uids, &size);
@@ -42,13 +42,13 @@ Java_zako_zako_zako_Natives_getAllowList(JNIEnv *env, jobject) {
extern "C"
JNIEXPORT jboolean JNICALL
Java_zako_zako_zako_Natives_isSafeMode(JNIEnv *env, jclass clazz) {
Java_com_sukisu_ultra_Natives_isSafeMode(JNIEnv *env, jclass clazz) {
return is_safe_mode();
}
extern "C"
JNIEXPORT jboolean JNICALL
Java_zako_zako_zako_Natives_isLkmMode(JNIEnv *env, jclass clazz) {
Java_com_sukisu_ultra_Natives_isLkmMode(JNIEnv *env, jclass clazz) {
return is_lkm_mode();
}
@@ -111,7 +111,7 @@ static void fillArrayWithList(JNIEnv *env, jobject list, int *data, int count) {
extern "C"
JNIEXPORT jobject JNICALL
Java_zako_zako_zako_Natives_getAppProfile(JNIEnv *env, jobject, jstring pkg, jint uid) {
Java_com_sukisu_ultra_Natives_getAppProfile(JNIEnv *env, jobject, jstring pkg, jint uid) {
if (env->GetStringLength(pkg) > KSU_MAX_PACKAGE_NAME) {
return nullptr;
}
@@ -129,7 +129,7 @@ Java_zako_zako_zako_Natives_getAppProfile(JNIEnv *env, jobject, jstring pkg, jin
bool useDefaultProfile = !get_app_profile(key, &profile);
auto cls = env->FindClass("zako/zako/zako/Natives$Profile");
auto cls = env->FindClass("com/sukisu/ultra/Natives$Profile");
auto constructor = env->GetMethodID(cls, "<init>", "()V");
auto obj = env->NewObject(cls, constructor);
auto keyField = env->GetFieldID(cls, "name", "Ljava/lang/String;");
@@ -207,8 +207,8 @@ Java_zako_zako_zako_Natives_getAppProfile(JNIEnv *env, jobject, jstring pkg, jin
extern "C"
JNIEXPORT jboolean JNICALL
Java_zako_zako_zako_Natives_setAppProfile(JNIEnv *env, jobject clazz, jobject profile) {
auto cls = env->FindClass("zako/zako/zako/Natives$Profile");
Java_com_sukisu_ultra_Natives_setAppProfile(JNIEnv *env, jobject clazz, jobject profile) {
auto cls = env->FindClass("com/sukisu/ultra/Natives$Profile");
auto keyField = env->GetFieldID(cls, "name", "Ljava/lang/String;");
auto currentUidField = env->GetFieldID(cls, "currentUid", "I");
@@ -293,16 +293,16 @@ Java_zako_zako_zako_Natives_setAppProfile(JNIEnv *env, jobject clazz, jobject pr
}
extern "C"
JNIEXPORT jboolean JNICALL
Java_zako_zako_zako_Natives_uidShouldUmount(JNIEnv *env, jobject thiz, jint uid) {
Java_com_sukisu_ultra_Natives_uidShouldUmount(JNIEnv *env, jobject thiz, jint uid) {
return uid_should_umount(uid);
}
extern "C"
JNIEXPORT jboolean JNICALL
Java_zako_zako_zako_Natives_isSuEnabled(JNIEnv *env, jobject thiz) {
Java_com_sukisu_ultra_Natives_isSuEnabled(JNIEnv *env, jobject thiz) {
return is_su_enabled();
}
extern "C"
JNIEXPORT jboolean JNICALL
Java_zako_zako_zako_Natives_setSuEnabled(JNIEnv *env, jobject thiz, jboolean enabled) {
Java_com_sukisu_ultra_Natives_setSuEnabled(JNIEnv *env, jobject thiz, jboolean enabled) {
return set_su_enabled(enabled);
}

View File

@@ -1,4 +1,4 @@
package zako.zako.zako
package com.sukisu.ultra
import android.app.Application
import coil.Coil

View File

@@ -1,4 +1,4 @@
package zako.zako.zako
package com.sukisu.ultra
import android.system.Os

View File

@@ -1,4 +1,4 @@
package zako.zako.zako
package com.sukisu.ultra
import android.os.Parcelable
import androidx.annotation.Keep

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.profile
package com.sukisu.ultra.profile
/**
* @author weishu

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.profile
package com.sukisu.ultra.profile
/**
* https://cs.android.com/android/platform/superproject/main/+/main:system/core/libcutils/include/private/android_filesystem_config.h

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui;
package com.sukisu.ultra.ui;
import android.content.Context;
import android.content.Intent;
@@ -17,7 +17,7 @@ import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.List;
import zako.zako.zako.IKsuInterface;
import com.sukisu.zako.IKsuInterface;
import rikka.parcelablelist.ParcelableListSlice;
/**

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui
package com.sukisu.ultra.ui
import android.os.Build
import android.os.Bundle
@@ -24,12 +24,12 @@ import com.ramcosta.composedestinations.spec.NavHostGraphSpec
import com.ramcosta.composedestinations.spec.RouteOrDirection
import com.ramcosta.composedestinations.utils.isRouteOnBackStackAsState
import com.ramcosta.composedestinations.utils.rememberDestinationsNavigator
import io.zako.zako.UltraToolInstall
import zako.zako.zako.Natives
import zako.zako.zako.ksuApp
import zako.zako.zako.ui.screen.BottomBarDestination
import zako.zako.zako.ui.theme.*
import zako.zako.zako.ui.util.*
import io.sukisu.ultra.UltraToolInstall
import com.sukisu.ultra.Natives
import com.sukisu.ultra.ksuApp
import com.sukisu.ultra.ui.screen.BottomBarDestination
import com.sukisu.ultra.ui.theme.*
import com.sukisu.ultra.ui.util.*
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.component
package com.sukisu.ultra.ui.component
import androidx.compose.foundation.Image
import androidx.compose.foundation.layout.Column
@@ -31,8 +31,8 @@ import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
import androidx.compose.ui.window.Dialog
import zako.zako.zako.BuildConfig
import zako.zako.zako.R
import com.sukisu.ultra.BuildConfig
import com.sukisu.ultra.R
@Preview
@Composable

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.component
package com.sukisu.ultra.ui.component
import android.graphics.text.LineBreaker
import android.os.Build

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.component
package com.sukisu.ultra.ui.component
import androidx.compose.foundation.focusable
import androidx.compose.foundation.layout.Box

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.component
package com.sukisu.ultra.ui.component
import android.util.Log
import androidx.compose.animation.AnimatedVisibility
@@ -42,7 +42,7 @@ import androidx.compose.ui.platform.LocalSoftwareKeyboardController
import androidx.compose.ui.text.input.ImeAction
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
import zako.zako.zako.ui.theme.CardConfig
import com.sukisu.ultra.ui.theme.CardConfig
private const val TAG = "SearchBar"

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.component
package com.sukisu.ultra.ui.component
import androidx.compose.foundation.LocalIndication
import androidx.compose.foundation.interaction.MutableInteractionSource

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.component
package com.sukisu.ultra.ui.component
import androidx.compose.material3.Icon
import androidx.compose.material3.ListItem

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.component.profile
package com.sukisu.ultra.ui.component.profile
import androidx.compose.foundation.layout.Column
import androidx.compose.material3.OutlinedTextField
@@ -11,9 +11,9 @@ import androidx.compose.runtime.setValue
import androidx.compose.ui.Modifier
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.tooling.preview.Preview
import zako.zako.zako.Natives
import zako.zako.zako.R
import zako.zako.zako.ui.component.SwitchItem
import com.sukisu.ultra.Natives
import com.sukisu.ultra.R
import com.sukisu.ultra.ui.component.SwitchItem
@Composable
fun AppProfileConfig(

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.component.profile
package com.sukisu.ultra.ui.component.profile
import androidx.compose.foundation.clickable
import androidx.compose.foundation.layout.Column
@@ -42,12 +42,12 @@ import com.maxkeppeler.sheets.input.models.ValidationResult
import com.maxkeppeler.sheets.list.ListDialog
import com.maxkeppeler.sheets.list.models.ListOption
import com.maxkeppeler.sheets.list.models.ListSelection
import zako.zako.zako.Natives
import zako.zako.zako.R
import zako.zako.zako.profile.Capabilities
import zako.zako.zako.profile.Groups
import zako.zako.zako.ui.component.rememberCustomDialog
import zako.zako.zako.ui.util.isSepolicyValid
import com.sukisu.ultra.Natives
import com.sukisu.ultra.R
import com.sukisu.ultra.profile.Capabilities
import com.sukisu.ultra.profile.Groups
import com.sukisu.ultra.ui.component.rememberCustomDialog
import com.sukisu.ultra.ui.util.isSepolicyValid
@OptIn(ExperimentalMaterial3Api::class)
@Composable

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.component.profile
package com.sukisu.ultra.ui.component.profile
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.material.icons.Icons
@@ -23,11 +23,11 @@ import androidx.compose.runtime.saveable.rememberSaveable
import androidx.compose.runtime.setValue
import androidx.compose.ui.Modifier
import androidx.compose.ui.res.stringResource
import zako.zako.zako.Natives
import zako.zako.zako.R
import zako.zako.zako.ui.util.listAppProfileTemplates
import zako.zako.zako.ui.util.setSepolicy
import zako.zako.zako.ui.viewmodel.getTemplateInfoById
import com.sukisu.ultra.Natives
import com.sukisu.ultra.R
import com.sukisu.ultra.ui.util.listAppProfileTemplates
import com.sukisu.ultra.ui.util.setSepolicy
import com.sukisu.ultra.ui.viewmodel.getTemplateInfoById
/**
* @author weishu

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.screen
package com.sukisu.ultra.ui.screen
import androidx.annotation.StringRes
import androidx.compose.animation.Crossfade
@@ -64,20 +64,20 @@ import com.ramcosta.composedestinations.generated.destinations.AppProfileTemplat
import com.ramcosta.composedestinations.generated.destinations.TemplateEditorScreenDestination
import com.ramcosta.composedestinations.navigation.DestinationsNavigator
import kotlinx.coroutines.launch
import zako.zako.zako.Natives
import zako.zako.zako.R
import zako.zako.zako.ui.component.SwitchItem
import zako.zako.zako.ui.component.profile.AppProfileConfig
import zako.zako.zako.ui.component.profile.RootProfileConfig
import zako.zako.zako.ui.component.profile.TemplateConfig
import zako.zako.zako.ui.util.LocalSnackbarHost
import zako.zako.zako.ui.util.forceStopApp
import zako.zako.zako.ui.util.getSepolicy
import zako.zako.zako.ui.util.launchApp
import zako.zako.zako.ui.util.restartApp
import zako.zako.zako.ui.util.setSepolicy
import zako.zako.zako.ui.viewmodel.SuperUserViewModel
import zako.zako.zako.ui.viewmodel.getTemplateInfoById
import com.sukisu.ultra.Natives
import com.sukisu.ultra.R
import com.sukisu.ultra.ui.component.SwitchItem
import com.sukisu.ultra.ui.component.profile.AppProfileConfig
import com.sukisu.ultra.ui.component.profile.RootProfileConfig
import com.sukisu.ultra.ui.component.profile.TemplateConfig
import com.sukisu.ultra.ui.util.LocalSnackbarHost
import com.sukisu.ultra.ui.util.forceStopApp
import com.sukisu.ultra.ui.util.getSepolicy
import com.sukisu.ultra.ui.util.launchApp
import com.sukisu.ultra.ui.util.restartApp
import com.sukisu.ultra.ui.util.setSepolicy
import com.sukisu.ultra.ui.viewmodel.SuperUserViewModel
import com.sukisu.ultra.ui.viewmodel.getTemplateInfoById
/**
* @author weishu

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.screen
package com.sukisu.ultra.ui.screen
import androidx.annotation.StringRes
import androidx.compose.material.icons.Icons
@@ -11,7 +11,7 @@ import com.ramcosta.composedestinations.generated.destinations.SuperUserScreenDe
import com.ramcosta.composedestinations.generated.destinations.SettingScreenDestination
import com.ramcosta.composedestinations.generated.destinations.KpmScreenDestination
import com.ramcosta.composedestinations.spec.DirectionDestinationSpec
import zako.zako.zako.R
import com.sukisu.ultra.R
enum class BottomBarDestination(
val direction: DirectionDestinationSpec,

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.screen
package com.sukisu.ultra.ui.screen
import android.os.Environment
import androidx.compose.foundation.layout.Column
@@ -37,10 +37,10 @@ import com.ramcosta.composedestinations.navigation.DestinationsNavigator
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
import kotlinx.coroutines.withContext
import zako.zako.zako.R
import zako.zako.zako.ui.component.KeyEventBlocker
import zako.zako.zako.ui.util.LocalSnackbarHost
import zako.zako.zako.ui.util.runModuleAction
import com.sukisu.ultra.R
import com.sukisu.ultra.ui.component.KeyEventBlocker
import com.sukisu.ultra.ui.util.LocalSnackbarHost
import com.sukisu.ultra.ui.util.runModuleAction
import java.io.File
import java.text.SimpleDateFormat
import java.util.Date

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.screen
package com.sukisu.ultra.ui.screen
import android.net.Uri
import android.os.Environment
@@ -30,9 +30,9 @@ import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
import kotlinx.coroutines.withContext
import kotlinx.parcelize.Parcelize
import zako.zako.zako.ui.component.KeyEventBlocker
import zako.zako.zako.ui.util.*
import zako.zako.zako.R
import com.sukisu.ultra.ui.component.KeyEventBlocker
import com.sukisu.ultra.ui.util.*
import com.sukisu.ultra.R
import java.io.File
import java.text.SimpleDateFormat
import java.util.*

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.screen
package com.sukisu.ultra.ui.screen
import android.annotation.SuppressLint
import android.content.Context
@@ -33,15 +33,15 @@ import com.ramcosta.composedestinations.generated.destinations.SettingScreenDest
import com.ramcosta.composedestinations.navigation.DestinationsNavigator
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.withContext
import zako.zako.zako.*
import zako.zako.zako.R
import zako.zako.zako.ui.component.rememberConfirmDialog
import zako.zako.zako.ui.util.*
import zako.zako.zako.ui.util.module.LatestVersionInfo
import com.sukisu.ultra.*
import com.sukisu.ultra.R
import com.sukisu.ultra.ui.component.rememberConfirmDialog
import com.sukisu.ultra.ui.util.*
import com.sukisu.ultra.ui.util.module.LatestVersionInfo
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Text
import zako.zako.zako.ui.theme.getCardColors
import zako.zako.zako.ui.theme.getCardElevation
import com.sukisu.ultra.ui.theme.getCardColors
import com.sukisu.ultra.ui.theme.getCardElevation
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.getValue
import androidx.compose.runtime.setValue
@@ -49,7 +49,7 @@ import androidx.compose.animation.AnimatedVisibility
import androidx.compose.animation.fadeOut
import androidx.compose.animation.shrinkVertically
import androidx.compose.runtime.saveable.rememberSaveable
import zako.zako.zako.ui.theme.CardConfig
import com.sukisu.ultra.ui.theme.CardConfig
import androidx.core.content.edit
import java.io.BufferedReader
import java.io.InputStreamReader

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.screen
package com.sukisu.ultra.ui.screen
import android.app.Activity
import android.content.Context
@@ -35,15 +35,15 @@ import com.ramcosta.composedestinations.annotation.RootGraph
import com.ramcosta.composedestinations.generated.destinations.FlashScreenDestination
import com.ramcosta.composedestinations.navigation.DestinationsNavigator
import com.ramcosta.composedestinations.navigation.EmptyDestinationsNavigator
import zako.zako.zako.ui.component.DialogHandle
import zako.zako.zako.ui.component.rememberConfirmDialog
import zako.zako.zako.ui.component.rememberCustomDialog
import zako.zako.zako.ui.theme.ThemeConfig
import zako.zako.zako.ui.theme.getCardColors
import zako.zako.zako.ui.theme.getCardElevation
import zako.zako.zako.ui.util.*
import zako.zako.zako.R
import zako.zako.zako.utils.AssetsUtil
import com.sukisu.ultra.ui.component.DialogHandle
import com.sukisu.ultra.ui.component.rememberConfirmDialog
import com.sukisu.ultra.ui.component.rememberCustomDialog
import com.sukisu.ultra.ui.theme.ThemeConfig
import com.sukisu.ultra.ui.theme.getCardColors
import com.sukisu.ultra.ui.theme.getCardElevation
import com.sukisu.ultra.ui.util.*
import com.sukisu.ultra.R
import com.sukisu.ultra.utils.AssetsUtil
import java.io.File
import java.io.FileOutputStream
import java.io.IOException

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.screen
package com.sukisu.ultra.ui.screen
import android.app.Activity.*
import android.content.Context
@@ -88,32 +88,32 @@ import com.ramcosta.composedestinations.navigation.EmptyDestinationsNavigator
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
import kotlinx.coroutines.withContext
import zako.zako.zako.Natives
import zako.zako.zako.ui.component.ConfirmResult
import zako.zako.zako.ui.component.SearchAppBar
import zako.zako.zako.ui.component.rememberConfirmDialog
import zako.zako.zako.ui.component.rememberLoadingDialog
import zako.zako.zako.ui.util.DownloadListener
import zako.zako.zako.ui.util.*
import zako.zako.zako.ui.util.download
import zako.zako.zako.ui.util.hasMagisk
import zako.zako.zako.ui.util.reboot
import zako.zako.zako.ui.util.restoreModule
import zako.zako.zako.ui.util.toggleModule
import zako.zako.zako.ui.util.uninstallModule
import zako.zako.zako.ui.webui.WebUIActivity
import com.sukisu.ultra.Natives
import com.sukisu.ultra.ui.component.ConfirmResult
import com.sukisu.ultra.ui.component.SearchAppBar
import com.sukisu.ultra.ui.component.rememberConfirmDialog
import com.sukisu.ultra.ui.component.rememberLoadingDialog
import com.sukisu.ultra.ui.util.DownloadListener
import com.sukisu.ultra.ui.util.*
import com.sukisu.ultra.ui.util.download
import com.sukisu.ultra.ui.util.hasMagisk
import com.sukisu.ultra.ui.util.reboot
import com.sukisu.ultra.ui.util.restoreModule
import com.sukisu.ultra.ui.util.toggleModule
import com.sukisu.ultra.ui.util.uninstallModule
import com.sukisu.ultra.ui.webui.WebUIActivity
import okhttp3.OkHttpClient
import zako.zako.zako.ui.util.ModuleModify
import zako.zako.zako.ui.theme.getCardColors
import zako.zako.zako.ui.theme.getCardElevation
import zako.zako.zako.ui.viewmodel.ModuleViewModel
import com.sukisu.ultra.ui.util.ModuleModify
import com.sukisu.ultra.ui.theme.getCardColors
import com.sukisu.ultra.ui.theme.getCardElevation
import com.sukisu.ultra.ui.viewmodel.ModuleViewModel
import java.io.BufferedReader
import java.io.InputStreamReader
import java.util.zip.ZipInputStream
import androidx.core.content.edit
import androidx.core.net.toUri
import zako.zako.zako.ui.theme.ThemeConfig
import zako.zako.zako.R
import com.sukisu.ultra.ui.theme.ThemeConfig
import com.sukisu.ultra.R
@OptIn(ExperimentalMaterial3Api::class)

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.screen
package com.sukisu.ultra.ui.screen
import androidx.compose.animation.AnimatedVisibility
import android.content.Context
@@ -35,12 +35,12 @@ import com.topjohnwu.superuser.Shell
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
import zako.zako.zako.ui.component.SwitchItem
import zako.zako.zako.ui.theme.*
import zako.zako.zako.ui.util.*
import com.sukisu.ultra.ui.component.SwitchItem
import com.sukisu.ultra.ui.theme.*
import com.sukisu.ultra.ui.util.*
import androidx.core.content.edit
import zako.zako.zako.R
import zako.zako.zako.*
import com.sukisu.ultra.R
import com.sukisu.ultra.*
fun saveCardConfig(context: Context) {

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.screen
package com.sukisu.ultra.ui.screen
import android.content.Context
import android.content.Intent
@@ -46,14 +46,14 @@ import com.ramcosta.composedestinations.navigation.EmptyDestinationsNavigator
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
import kotlinx.coroutines.withContext
import zako.zako.zako.BuildConfig
import zako.zako.zako.Natives
import zako.zako.zako.R
import zako.zako.zako.*
import zako.zako.zako.ui.component.*
import zako.zako.zako.ui.theme.*
import zako.zako.zako.ui.util.LocalSnackbarHost
import zako.zako.zako.ui.util.getBugreportFile
import com.sukisu.ultra.BuildConfig
import com.sukisu.ultra.Natives
import com.sukisu.ultra.R
import com.sukisu.ultra.*
import com.sukisu.ultra.ui.component.*
import com.sukisu.ultra.ui.theme.*
import com.sukisu.ultra.ui.util.LocalSnackbarHost
import com.sukisu.ultra.ui.util.getBugreportFile
import java.time.LocalDateTime
import java.time.format.DateTimeFormatter

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.screen
package com.sukisu.ultra.ui.screen
import androidx.compose.foundation.background
import androidx.compose.foundation.gestures.detectTapGestures
@@ -24,7 +24,7 @@ import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
import androidx.lifecycle.viewmodel.compose.viewModel
import zako.zako.zako.R
import com.sukisu.ultra.R
import coil.compose.AsyncImage
import coil.request.ImageRequest
import com.ramcosta.composedestinations.annotation.Destination
@@ -32,10 +32,10 @@ import com.ramcosta.composedestinations.annotation.RootGraph
import com.ramcosta.composedestinations.generated.destinations.AppProfileScreenDestination
import com.ramcosta.composedestinations.navigation.DestinationsNavigator
import kotlinx.coroutines.launch
import zako.zako.zako.Natives
import zako.zako.zako.ui.component.SearchAppBar
import zako.zako.zako.ui.util.ModuleModify
import zako.zako.zako.ui.viewmodel.SuperUserViewModel
import com.sukisu.ultra.Natives
import com.sukisu.ultra.ui.component.SearchAppBar
import com.sukisu.ultra.ui.util.ModuleModify
import com.sukisu.ultra.ui.viewmodel.SuperUserViewModel
@OptIn(ExperimentalMaterialApi::class, ExperimentalMaterial3Api::class)
@Destination<RootGraph>

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.screen
package com.sukisu.ultra.ui.screen
import android.widget.Toast
import androidx.compose.foundation.clickable
@@ -59,9 +59,9 @@ import com.ramcosta.composedestinations.result.ResultRecipient
import com.ramcosta.composedestinations.result.getOr
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
import zako.zako.zako.R
import zako.zako.zako.ui.theme.ThemeConfig
import zako.zako.zako.ui.viewmodel.TemplateViewModel
import com.sukisu.ultra.R
import com.sukisu.ultra.ui.theme.ThemeConfig
import com.sukisu.ultra.ui.viewmodel.TemplateViewModel
/**
* @author weishu

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.screen
package com.sukisu.ultra.ui.screen
import android.widget.Toast
import androidx.activity.compose.BackHandler
@@ -47,14 +47,14 @@ import androidx.compose.ui.text.input.KeyboardType
import com.ramcosta.composedestinations.annotation.Destination
import com.ramcosta.composedestinations.annotation.RootGraph
import com.ramcosta.composedestinations.result.ResultBackNavigator
import zako.zako.zako.Natives
import zako.zako.zako.R
import zako.zako.zako.ui.component.profile.RootProfileConfig
import zako.zako.zako.ui.util.deleteAppProfileTemplate
import zako.zako.zako.ui.util.getAppProfileTemplate
import zako.zako.zako.ui.util.setAppProfileTemplate
import zako.zako.zako.ui.viewmodel.TemplateViewModel
import zako.zako.zako.ui.viewmodel.toJSON
import com.sukisu.ultra.Natives
import com.sukisu.ultra.R
import com.sukisu.ultra.ui.component.profile.RootProfileConfig
import com.sukisu.ultra.ui.util.deleteAppProfileTemplate
import com.sukisu.ultra.ui.util.getAppProfileTemplate
import com.sukisu.ultra.ui.util.setAppProfileTemplate
import com.sukisu.ultra.ui.viewmodel.TemplateViewModel
import com.sukisu.ultra.ui.viewmodel.toJSON
import androidx.lifecycle.compose.dropUnlessResumed
/**

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.screen
package com.sukisu.ultra.ui.screen
import android.app.Activity.RESULT_OK
import android.content.Context
@@ -25,13 +25,13 @@ import com.ramcosta.composedestinations.annotation.RootGraph
import com.ramcosta.composedestinations.navigation.DestinationsNavigator
import kotlinx.coroutines.delay
import kotlinx.coroutines.launch
import zako.zako.zako.ui.component.*
import zako.zako.zako.ui.theme.*
import zako.zako.zako.ui.viewmodel.KpmViewModel
import zako.zako.zako.ui.util.*
import com.sukisu.ultra.ui.component.*
import com.sukisu.ultra.ui.theme.*
import com.sukisu.ultra.ui.viewmodel.KpmViewModel
import com.sukisu.ultra.ui.util.*
import java.io.File
import androidx.core.content.edit
import zako.zako.zako.R
import com.sukisu.ultra.R
import java.net.*
/**

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.theme
package com.sukisu.ultra.ui.theme
import android.content.Context
import androidx.compose.foundation.isSystemInDarkTheme

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.theme
package com.sukisu.ultra.ui.theme
import androidx.compose.ui.graphics.Color

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.theme
package com.sukisu.ultra.ui.theme
import android.content.ContentResolver
import android.content.Context

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.theme
package com.sukisu.ultra.ui.theme
import androidx.compose.ui.text.TextStyle
import androidx.compose.ui.text.font.FontFamily

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.util
package com.sukisu.ultra.ui.util
import androidx.compose.material3.SnackbarHostState
import androidx.compose.runtime.compositionLocalOf

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.util
package com.sukisu.ultra.ui.util
import android.annotation.SuppressLint
import android.app.DownloadManager
@@ -12,7 +12,7 @@ import android.util.Log
import androidx.compose.runtime.Composable
import androidx.compose.runtime.DisposableEffect
import androidx.core.content.ContextCompat
import zako.zako.zako.ui.util.module.LatestVersionInfo
import com.sukisu.ultra.ui.util.module.LatestVersionInfo
/**
* @author weishu

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.util;
package com.sukisu.ultra.ui.util;
/*
* Copyright (C) 2009 The Android Open Source Project
*

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.util
package com.sukisu.ultra.ui.util
import androidx.compose.foundation.gestures.detectTapGestures
import androidx.compose.material3.MaterialTheme

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.util
package com.sukisu.ultra.ui.util
import android.content.ContentResolver
import android.content.Context
@@ -16,9 +16,9 @@ import com.topjohnwu.superuser.ShellUtils
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.withContext
import kotlinx.parcelize.Parcelize
import zako.zako.zako.BuildConfig
import zako.zako.zako.Natives
import zako.zako.zako.ksuApp
import com.sukisu.ultra.BuildConfig
import com.sukisu.ultra.Natives
import com.sukisu.ultra.ksuApp
import org.json.JSONArray
import java.io.File

View File

@@ -1,11 +1,11 @@
package zako.zako.zako.ui.util
package com.sukisu.ultra.ui.util
import android.content.Context
import android.os.Build
import android.system.Os
import com.topjohnwu.superuser.ShellUtils
import zako.zako.zako.Natives
import zako.zako.zako.ui.screen.getManagerVersion
import com.sukisu.ultra.Natives
import com.sukisu.ultra.ui.screen.getManagerVersion
import java.io.File
import java.io.FileWriter
import java.io.PrintWriter

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.util
package com.sukisu.ultra.ui.util
import android.app.AlertDialog
import android.content.Context
@@ -16,7 +16,7 @@ import kotlinx.coroutines.CompletableDeferred
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
import kotlinx.coroutines.withContext
import zako.zako.zako.R
import com.sukisu.ultra.R
import java.io.BufferedReader
import java.io.IOException
import java.io.InputStreamReader

View File

@@ -1,9 +1,9 @@
package zako.zako.zako.ui.util
package com.sukisu.ultra.ui.util
import androidx.compose.runtime.Composable
import androidx.compose.ui.res.stringResource
import com.topjohnwu.superuser.Shell
import zako.zako.zako.R
import com.sukisu.ultra.R
@Composable
fun getSELinuxStatus(): String {

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.util.module
package com.sukisu.ultra.ui.util.module
data class LatestVersionInfo(
val versionCode : Int = 0,

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.viewmodel
package com.sukisu.ultra.ui.viewmodel
import android.util.Log
import androidx.compose.runtime.getValue
@@ -9,7 +9,7 @@ import androidx.lifecycle.viewModelScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
import kotlinx.coroutines.withContext
import zako.zako.zako.ui.util.*
import com.sukisu.ultra.ui.util.*
class KpmViewModel : ViewModel() {
var moduleList by mutableStateOf(emptyList<ModuleInfo>())

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.viewmodel
package com.sukisu.ultra.ui.viewmodel
import android.os.SystemClock
import android.util.Log
@@ -10,8 +10,8 @@ import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
import zako.zako.zako.ui.util.HanziToPinyin
import zako.zako.zako.ui.util.listModules
import com.sukisu.ultra.ui.util.HanziToPinyin
import com.sukisu.ultra.ui.util.listModules
import org.json.JSONArray
import org.json.JSONObject
import java.text.Collator

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.viewmodel
package com.sukisu.ultra.ui.viewmodel
import android.content.ComponentName
import android.content.Intent
@@ -18,12 +18,12 @@ import com.topjohnwu.superuser.Shell
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.withContext
import kotlinx.parcelize.Parcelize
import zako.zako.zako.IKsuInterface
import zako.zako.zako.Natives
import zako.zako.zako.ksuApp
import zako.zako.zako.ui.KsuService
import zako.zako.zako.ui.util.HanziToPinyin
import zako.zako.zako.ui.util.KsuCli
import com.sukisu.zako.IKsuInterface
import com.sukisu.ultra.Natives
import com.sukisu.ultra.ksuApp
import com.sukisu.ultra.ui.KsuService
import com.sukisu.ultra.ui.util.HanziToPinyin
import com.sukisu.ultra.ui.util.KsuCli
import java.text.Collator
import java.util.*
import kotlin.coroutines.resume

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.viewmodel
package com.sukisu.ultra.ui.viewmodel
import android.os.Parcelable
import android.util.Log
@@ -10,12 +10,12 @@ import androidx.lifecycle.ViewModel
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.withContext
import kotlinx.parcelize.Parcelize
import zako.zako.zako.Natives
import zako.zako.zako.profile.Capabilities
import zako.zako.zako.profile.Groups
import zako.zako.zako.ui.util.getAppProfileTemplate
import zako.zako.zako.ui.util.listAppProfileTemplates
import zako.zako.zako.ui.util.setAppProfileTemplate
import com.sukisu.ultra.Natives
import com.sukisu.ultra.profile.Capabilities
import com.sukisu.ultra.profile.Groups
import com.sukisu.ultra.ui.util.getAppProfileTemplate
import com.sukisu.ultra.ui.util.listAppProfileTemplates
import com.sukisu.ultra.ui.util.setAppProfileTemplate
import okhttp3.OkHttpClient
import okhttp3.Request
import org.json.JSONArray

View File

@@ -14,7 +14,7 @@
* limitations under the License.
*/
package zako.zako.zako.ui.webui;
package com.sukisu.ultra.ui.webui;
import java.net.URLConnection;

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.webui;
package com.sukisu.ultra.ui.webui;
import android.content.Context;
import android.util.Log;

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.webui
package com.sukisu.ultra.ui.webui
import android.annotation.SuppressLint
import android.app.ActivityManager
@@ -16,7 +16,7 @@ import androidx.core.view.WindowInsetsCompat
import androidx.core.view.updateLayoutParams
import androidx.webkit.WebViewAssetLoader
import com.topjohnwu.superuser.Shell
import zako.zako.zako.ui.util.createRootShell
import com.sukisu.ultra.ui.util.createRootShell
import java.io.File
@SuppressLint("SetJavaScriptEnabled")

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.ui.webui
package com.sukisu.ultra.ui.webui
import android.app.Activity
import android.content.Context
@@ -14,13 +14,13 @@ import androidx.core.view.WindowInsetsControllerCompat
import com.topjohnwu.superuser.CallbackList
import com.topjohnwu.superuser.ShellUtils
import com.topjohnwu.superuser.internal.UiThreadHandler
import zako.zako.zako.ui.util.createRootShell
import zako.zako.zako.ui.util.listModules
import zako.zako.zako.ui.util.withNewRootShell
import com.sukisu.ultra.ui.util.createRootShell
import com.sukisu.ultra.ui.util.listModules
import com.sukisu.ultra.ui.util.withNewRootShell
import org.json.JSONArray
import org.json.JSONObject
import zako.zako.zako.ui.util.controlKpmModule
import zako.zako.zako.ui.util.listKpmModules
import com.sukisu.ultra.ui.util.controlKpmModule
import com.sukisu.ultra.ui.util.listKpmModules
import java.io.File
import java.util.concurrent.CompletableFuture

View File

@@ -1,4 +1,4 @@
package zako.zako.zako.utils
package com.sukisu.ultra.utils
import android.content.Context
import java.io.File

View File

@@ -1,8 +1,8 @@
package io.zako.zako;
package io.sukisu.ultra;
import java.util.ArrayList;
import zako.zako.zako.ui.util.KsuCli;
import com.sukisu.ultra.ui.util.KsuCli;
public class UltraShellHelper {
public static String runCmd(String cmds) {

View File

@@ -1,6 +1,6 @@
package io.zako.zako;
package io.sukisu.ultra;
import static zako.zako.zako.ui.util.KsuCliKt.getKpmmgrPath;
import static com.sukisu.ultra.ui.util.KsuCliKt.getKpmmgrPath;
public class UltraToolInstall {
private static final String OUTSIDE_KPMMGR_PATH = "/data/adb/ksu/bin/kpmmgr";