Fix: Android 15: Fixed the set default launcher.
Signed-off-by: HeCodes2Much <wayne6324@gmail.com>
This commit is contained in:
@@ -13,19 +13,20 @@ plugins {
|
|||||||
|
|
||||||
android {
|
android {
|
||||||
namespace = "com.github.droidworksstudio.launcher"
|
namespace = "com.github.droidworksstudio.launcher"
|
||||||
compileSdk = 34
|
compileSdk = 35
|
||||||
|
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
applicationId = "app.easy.launcher"
|
applicationId = "app.easy.launcher"
|
||||||
minSdk = 24
|
minSdk = 24
|
||||||
targetSdk = 34
|
targetSdk = 35
|
||||||
versionCode = 21
|
versionCode = 21
|
||||||
versionName = "0.2.1"
|
versionName = "0.2.1"
|
||||||
|
|
||||||
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
|
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
|
||||||
manifestPlaceholders["internetPermission"] = "android.permission.INTERNET"
|
manifestPlaceholders["internetPermission"] = "android.permission.INTERNET"
|
||||||
manifestPlaceholders["fineLocationPermission"] = "android.permission.ACCESS_FINE_LOCATION"
|
manifestPlaceholders["fineLocationPermission"] = "android.permission.ACCESS_FINE_LOCATION"
|
||||||
manifestPlaceholders["coarseLocationPermission"] = "android.permission.ACCESS_COARSE_LOCATION"
|
manifestPlaceholders["coarseLocationPermission"] =
|
||||||
|
"android.permission.ACCESS_COARSE_LOCATION"
|
||||||
}
|
}
|
||||||
|
|
||||||
buildTypes {
|
buildTypes {
|
||||||
@@ -73,8 +74,10 @@ android {
|
|||||||
create("withInternet") {
|
create("withInternet") {
|
||||||
dimension = "internet"
|
dimension = "internet"
|
||||||
manifestPlaceholders["internetPermission"] = "android.permission.INTERNET"
|
manifestPlaceholders["internetPermission"] = "android.permission.INTERNET"
|
||||||
manifestPlaceholders["fineLocationPermission"] = "android.permission.ACCESS_FINE_LOCATION"
|
manifestPlaceholders["fineLocationPermission"] =
|
||||||
manifestPlaceholders["coarseLocationPermission"] = "android.permission.ACCESS_COARSE_LOCATION"
|
"android.permission.ACCESS_FINE_LOCATION"
|
||||||
|
manifestPlaceholders["coarseLocationPermission"] =
|
||||||
|
"android.permission.ACCESS_COARSE_LOCATION"
|
||||||
val weatherFile = project.rootProject.file("weather.properties")
|
val weatherFile = project.rootProject.file("weather.properties")
|
||||||
val properties = Properties()
|
val properties = Properties()
|
||||||
properties.load(weatherFile.inputStream())
|
properties.load(weatherFile.inputStream())
|
||||||
|
|||||||
@@ -69,20 +69,6 @@
|
|||||||
<category android:name="android.intent.category.LAUNCHER" />
|
<category android:name="android.intent.category.LAUNCHER" />
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
</activity>
|
</activity>
|
||||||
<activity
|
|
||||||
android:name=".ui.activities.FakeHomeActivity"
|
|
||||||
android:enabled="false"
|
|
||||||
android:launchMode="singleTask"
|
|
||||||
android:windowSoftInputMode="stateHidden"
|
|
||||||
android:exported="true">
|
|
||||||
<intent-filter>
|
|
||||||
<action android:name="android.intent.action.MAIN" />
|
|
||||||
|
|
||||||
<category android:name="android.intent.category.HOME" />
|
|
||||||
<category android:name="android.intent.category.DEFAULT" />
|
|
||||||
<category android:name="android.intent.category.LAUNCHER" />
|
|
||||||
</intent-filter>
|
|
||||||
</activity>
|
|
||||||
|
|
||||||
<receiver
|
<receiver
|
||||||
android:name=".listener.DeviceAdmin"
|
android:name=".listener.DeviceAdmin"
|
||||||
|
|||||||
@@ -3,7 +3,6 @@ package com.github.droidworksstudio.common
|
|||||||
import android.Manifest
|
import android.Manifest
|
||||||
import android.app.SearchManager
|
import android.app.SearchManager
|
||||||
import android.content.ActivityNotFoundException
|
import android.content.ActivityNotFoundException
|
||||||
import android.content.ComponentName
|
|
||||||
import android.content.Context
|
import android.content.Context
|
||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
import android.content.pm.LauncherApps
|
import android.content.pm.LauncherApps
|
||||||
@@ -37,7 +36,6 @@ import androidx.lifecycle.LifecycleOwner
|
|||||||
import com.github.droidworksstudio.launcher.utils.Constants
|
import com.github.droidworksstudio.launcher.utils.Constants
|
||||||
import com.github.droidworksstudio.launcher.data.entities.AppInfo
|
import com.github.droidworksstudio.launcher.data.entities.AppInfo
|
||||||
import com.github.droidworksstudio.launcher.helper.PreferenceHelper
|
import com.github.droidworksstudio.launcher.helper.PreferenceHelper
|
||||||
import com.github.droidworksstudio.launcher.ui.activities.FakeHomeActivity
|
|
||||||
import java.util.Calendar
|
import java.util.Calendar
|
||||||
import java.util.Date
|
import java.util.Date
|
||||||
import kotlin.math.pow
|
import kotlin.math.pow
|
||||||
@@ -153,39 +151,6 @@ fun Context.openUrl(url: String) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fun Context.resetDefaultLauncher() {
|
fun Context.resetDefaultLauncher() {
|
||||||
val manufacturer = Build.MANUFACTURER.lowercase()
|
|
||||||
when (manufacturer) {
|
|
||||||
"google", "essential" -> runningStockAndroid()
|
|
||||||
else -> notRunningStockAndroid()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
fun Context.runningStockAndroid() {
|
|
||||||
try {
|
|
||||||
val packageManager = this.packageManager
|
|
||||||
val componentName = ComponentName(this, FakeHomeActivity::class.java)
|
|
||||||
|
|
||||||
packageManager.setComponentEnabledSetting(
|
|
||||||
componentName,
|
|
||||||
PackageManager.COMPONENT_ENABLED_STATE_ENABLED,
|
|
||||||
PackageManager.DONT_KILL_APP
|
|
||||||
)
|
|
||||||
|
|
||||||
val selector = Intent(Intent.ACTION_MAIN)
|
|
||||||
selector.addCategory(Intent.CATEGORY_HOME)
|
|
||||||
this.startActivity(selector)
|
|
||||||
|
|
||||||
packageManager.setComponentEnabledSetting(
|
|
||||||
componentName,
|
|
||||||
PackageManager.COMPONENT_ENABLED_STATE_DISABLED,
|
|
||||||
PackageManager.DONT_KILL_APP
|
|
||||||
)
|
|
||||||
} catch (e: Exception) {
|
|
||||||
e.printStackTrace()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
fun Context.notRunningStockAndroid() {
|
|
||||||
try {
|
try {
|
||||||
val intent = Intent("android.settings.HOME_SETTINGS")
|
val intent = Intent("android.settings.HOME_SETTINGS")
|
||||||
this.startActivity(intent)
|
this.startActivity(intent)
|
||||||
|
|||||||
@@ -1,12 +0,0 @@
|
|||||||
package com.github.droidworksstudio.launcher.ui.activities
|
|
||||||
|
|
||||||
import android.os.Bundle
|
|
||||||
import androidx.appcompat.app.AppCompatActivity
|
|
||||||
import com.github.droidworksstudio.launcher.R
|
|
||||||
|
|
||||||
class FakeHomeActivity : AppCompatActivity() {
|
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
|
||||||
super.onCreate(savedInstanceState)
|
|
||||||
setContentView(R.layout.activity_fake_home)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
<merge xmlns:android="http://schemas.android.com/apk/res/android"
|
|
||||||
xmlns:tools="http://schemas.android.com/tools"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="match_parent"
|
|
||||||
tools:context=".ui.activities.FakeHomeActivity">
|
|
||||||
|
|
||||||
</merge>
|
|
||||||
Reference in New Issue
Block a user