Ich versuche, auf das UserHandle des Arbeitsprofils auf Android für meine Launcher-App zuzugreifen, damit ich Arbeits-Apps anzeigen kann. Ich kann vor Android 15 (SDK 30) keine Möglichkeit finden, dies zu tun, aber ich brauche es, um unter Android 8 (SDK 26) zu funktionieren. Arbeitsprofile wurden in Android 5 (SDK 21) hinzugefügt. Hier ist der Code, den ich geschrieben habe und der für SDK 30 und höher funktioniert:
@RequiresApi(Build.VERSION_CODES.VANILLA_ICE_CREAM)
fun doesWorkProfileExist(context: Context): Boolean {
val launcherApps =
context.getSystemService(Context.LAUNCHER_APPS_SERVICE) as LauncherApps
val userManager =
context.getSystemService(Context.USER_SERVICE) as UserManager
for (userInfo in userManager.userProfiles) {
if (launcherApps.getLauncherUserInfo(userInfo)?.userType == USER_TYPE_PROFILE_MANAGED) {
return true
}
}
return false
}
@RequiresApi(Build.VERSION_CODES.VANILLA_ICE_CREAM)
fun getWorkProfile(context: Context): UserHandle? {
if (doesWorkProfileExist(context)) {
val userManager = context.getSystemService(Context.USER_SERVICE) as UserManager
val profiles = userManager.userProfiles
val launcherApps =
context.getSystemService(Context.LAUNCHER_APPS_SERVICE) as LauncherApps
for (userInfo in profiles) {
if (launcherApps.getLauncherUserInfo(userInfo)?.userType == UserManager.USER_TYPE_PROFILE_MANAGED) {
return userInfo
}
}
}
return null
}
Ich versuche, auf das UserHandle des Arbeitsprofils auf Android für meine Launcher-App zuzugreifen, damit ich Arbeits-Apps anzeigen kann. Ich kann vor Android 15 (SDK 30) keine Möglichkeit finden, dies zu tun, aber ich brauche es, um unter Android 8 (SDK 26) zu funktionieren. Arbeitsprofile wurden in Android 5 (SDK 21) hinzugefügt. Hier ist der Code, den ich geschrieben habe und der für SDK 30 und höher funktioniert: [code]@RequiresApi(Build.VERSION_CODES.VANILLA_ICE_CREAM) fun doesWorkProfileExist(context: Context): Boolean { val launcherApps = context.getSystemService(Context.LAUNCHER_APPS_SERVICE) as LauncherApps val userManager = context.getSystemService(Context.USER_SERVICE) as UserManager
for (userInfo in userManager.userProfiles) { if (launcherApps.getLauncherUserInfo(userInfo)?.userType == USER_TYPE_PROFILE_MANAGED) { return true } }
return false }
@RequiresApi(Build.VERSION_CODES.VANILLA_ICE_CREAM) fun getWorkProfile(context: Context): UserHandle? { if (doesWorkProfileExist(context)) { val userManager = context.getSystemService(Context.USER_SERVICE) as UserManager val profiles = userManager.userProfiles
val launcherApps = context.getSystemService(Context.LAUNCHER_APPS_SERVICE) as LauncherApps for (userInfo in profiles) { if (launcherApps.getLauncherUserInfo(userInfo)?.userType == UserManager.USER_TYPE_PROFILE_MANAGED) { return userInfo } } } return null } [/code]
Wenn ich also die Schaltfläche Einverständniserklärung einrichten drücke, leitet sie nur auf den Einrichtungsmodus für Apps um, der nur zeigt, dass wir:
Folgendes dem Manifest hinzufügen können:...
Wo speichert Andorid Apps Dateien in Google Drive, z. B. Notizen Sicherung von einem Android -Apps, ich möchte auf diese Dateien zugreifen? Ich JSUT möchte die Dateien im Google -Laufwerk suchen.
Ich bin mir nicht sicher, wie ich das mit einer MySQL-Abfrage erreichen kann:
Ich habe eine Liste mit Anzeigen, die von mehreren Benutzern gepostet wurden, und einige Benutzer posten mehrere Anzeigen...