Skip to content

Commit

Permalink
Merge branch 'main' into main
Browse files Browse the repository at this point in the history
  • Loading branch information
bakad3v authored Oct 4, 2024
2 parents c80b4a7 + d4cd734 commit 3902738
Show file tree
Hide file tree
Showing 9 changed files with 40 additions and 20 deletions.
6 changes: 1 addition & 5 deletions app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -69,11 +69,7 @@
android:directBootAware="true"
android:exported="false"
android:foregroundServiceType="remoteMessaging"
tools:ignore="UnusedAttribute">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</service>
tools:ignore="UnusedAttribute" />

<receiver
android:name=".server.DhizukuDAReceiver"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,8 @@ fun PackageManager.getPackageNameForUid(uid: Int): String? =

fun PackageManager.getPackageInfoForUid(
uid: Int,
flags: Int = (if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) PackageManager.MATCH_UNINSTALLED_PACKAGES
else 0) or (if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) PackageManager.GET_SIGNING_CERTIFICATES
else PackageManager.GET_SIGNATURES)
flags: Int = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) PackageManager.GET_SIGNING_CERTIFICATES
else PackageManager.GET_SIGNATURES
): PackageInfo? = kotlin.runCatching {
getPackageInfo(getPackageNameForUid(uid) ?: return null, flags)
}.getOrNull()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,11 @@ import org.koin.core.component.get
abstract class DhizukuRoom : RoomDatabase() {
companion object : KoinComponent {
fun createInstance(): DhizukuRoom {
val context = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
get<Context>().createDeviceProtectedStorageContext()
} else {
get()
var context: Context = get()
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N
&& context.isDeviceProtectedStorage
) {
context = context.createDeviceProtectedStorageContext()
}
return Room.databaseBuilder(
context,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,13 @@ class AppRepoImpl(
val packageNames = packageManager.getPackagesForUid(entity.uid) ?: emptyArray()
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.O) return
packageNames.forEach {
devicePolicyManager.setDelegatedScopes(DhizukuState.component, it, emptyList())
kotlin.runCatching {
devicePolicyManager.setDelegatedScopes(
DhizukuState.component,
it,
emptyList()
)
}
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ import kotlinx.coroutines.launch
import org.koin.core.component.KoinComponent
import org.koin.core.component.inject


class RunningService : Service(), KoinComponent {
companion object {
fun start(context: Context) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -65,9 +65,7 @@ class ActivateViewModel : ViewModel(), KoinComponent {
collectDataJob = viewModelScope.launch(Dispatchers.IO) {
// http://aospxref.com/android-14.0.0_r2/xref/packages/apps/Settings/src/com/android/settings/applications/specialaccess/deviceadmin/DeviceAdminListPreferenceController.java#271

val flags =
(if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) PackageManager.MATCH_UNINSTALLED_PACKAGES
else 0) or PackageManager.GET_META_DATA
val flags = PackageManager.GET_META_DATA

val data = packageManager.queryBroadcastReceivers(
Intent(DeviceAdminReceiver.ACTION_DEVICE_ADMIN_ENABLED),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ package com.rosan.dhizuku.ui.page.settings.app_management

import android.content.Context
import android.content.pm.PackageManager
import android.os.Build
import androidx.compose.runtime.getValue
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.setValue
Expand Down Expand Up @@ -45,9 +44,7 @@ class AppManagementViewModel : ViewModel(), KoinComponent {
collectRepoJob?.cancel()
collectRepoJob = viewModelScope.launch(Dispatchers.IO) {
repo.flowAll().collect {
val flags =
(if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) PackageManager.MATCH_UNINSTALLED_PACKAGES
else 0) or PackageManager.GET_META_DATA or PackageManager.GET_PERMISSIONS
val flags = PackageManager.GET_META_DATA or PackageManager.GET_PERMISSIONS
val data = packageManager
.getInstalledPackages(flags)
.mapNotNull { packageInfo ->
Expand Down
8 changes: 8 additions & 0 deletions app/src/main/res/values-night/themes.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:tools="http://schemas.android.com/tools">

<style name="Theme.Dhizuku" parent="android:Theme.Material.NoActionBar">
<item name="android:enforceStatusBarContrast" tools:targetApi="q">false</item>
<item name="android:enforceNavigationBarContrast" tools:targetApi="q">false</item>
</style>
</resources>
14 changes: 14 additions & 0 deletions app/src/main/res/values-sk/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -15,4 +15,18 @@
<string name="donate">Darovať</string>
<string name="request_permission_text">Súhlasíte so žiadosťou o povolenie Dhizuku <b>%1$s</b>\?</string>
<string name="home_deactivate_title">Deaktivácia</string>
<string name="retry">Znovu</string>
<string name="home_dhizuku_dsp">Ak máte nainštalované iné implementácie Dhizuku, môžete medzi nimi ľubovoľne prepínať. Prosím, &lt;a href=%1$s&gt;prečítajte si nápovedu&lt;/a&gt;.</string>
<string name="home_status_owner_granted">Ste vlastníkom!!!</string>
<string name="home_status_owner_denied">Čaká na aktiváciu</string>
<string name="home_app_management_title">Správa aplikácií</string>
<string name="home_app_management_dsp">Zobrazia sa tu aplikácie, ktoré požaduje alebo oznámil Dhizuku.</string>
<string name="home_dhizuku_title">Aktivácia programom Dhizuku</string>
<string name="home_shizuku_title">Aktivácia pomocou Shizuku</string>
<string name="home_shizuku_dsp">Pomocou aplikácie Shizuku môžete spúšťať príkazy ADB bez potreby počítača. Prečítajte si &lt;a href=%1$s&gt;nápovedu&lt;/a&gt;.</string>
<string name="home_adb_title">Aktivácia prostredníctvom ADB</string>
<string name="home_adb_dsp">Prostredníctvom pripojenia ADB (Android Debug Bridge) môžete vykonávať niektoré privilegované príkazy. Prečítajte si &lt;a href=%1$s&gt;nápovedu&lt;/a&gt;.</string>
<string name="home_adb_btn_view_command">Zobraziť príkaz</string>
<string name="home_shutdown_title">Vypnutie</string>
<string name="home_shutdown_dsp">Systém nebude môcť vypnúť Dhizuku, pokiaľ tak Dhizuku neurobí dobrovoľne.</string>
</resources>

0 comments on commit 3902738

Please sign in to comment.