parent
0413cb8ff6
commit
37db43405f
@ -43,6 +43,7 @@ class LauncherAppSerializer : SearchableSerializer {
|
|||||||
|
|
||||||
class LauncherAppDeserializer(val context: Context) : SearchableDeserializer {
|
class LauncherAppDeserializer(val context: Context) : SearchableDeserializer {
|
||||||
override suspend fun deserialize(serialized: String): SavableSearchable? {
|
override suspend fun deserialize(serialized: String): SavableSearchable? {
|
||||||
|
try {
|
||||||
val json = JSONObject(serialized)
|
val json = JSONObject(serialized)
|
||||||
val launcherApps = context.getSystemService<LauncherApps>()!!
|
val launcherApps = context.getSystemService<LauncherApps>()!!
|
||||||
val userManager = context.getSystemService<UserManager>()!!
|
val userManager = context.getSystemService<UserManager>()!!
|
||||||
@ -56,7 +57,10 @@ class LauncherAppDeserializer(val context: Context) : SearchableDeserializer {
|
|||||||
|
|
||||||
if (isAtLeastApiLevel(35)) {
|
if (isAtLeastApiLevel(35)) {
|
||||||
val launcherUser = launcherApps.getLauncherUserInfo(user) ?: return null
|
val launcherUser = launcherApps.getLauncherUserInfo(user) ?: return null
|
||||||
if (launcherUser.userType == UserManager.USER_TYPE_PROFILE_PRIVATE && userManager.isQuietModeEnabled(user)) {
|
if (launcherUser.userType == UserManager.USER_TYPE_PROFILE_PRIVATE && userManager.isQuietModeEnabled(
|
||||||
|
user
|
||||||
|
)
|
||||||
|
) {
|
||||||
return LockedPrivateProfileApp(
|
return LockedPrivateProfileApp(
|
||||||
label = context.getString(R.string.app_label_locked_profile),
|
label = context.getString(R.string.app_label_locked_profile),
|
||||||
componentName = componentName,
|
componentName = componentName,
|
||||||
@ -69,7 +73,6 @@ class LauncherAppDeserializer(val context: Context) : SearchableDeserializer {
|
|||||||
val intent = Intent().also {
|
val intent = Intent().also {
|
||||||
it.component = componentName
|
it.component = componentName
|
||||||
}
|
}
|
||||||
try {
|
|
||||||
val launcherActivityInfo = launcherApps.resolveActivity(intent, user) ?: return null
|
val launcherActivityInfo = launcherApps.resolveActivity(intent, user) ?: return null
|
||||||
return LauncherApp(context, launcherActivityInfo)
|
return LauncherApp(context, launcherActivityInfo)
|
||||||
} catch (e: SecurityException) {
|
} catch (e: SecurityException) {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user