AppEntry

data class AppEntry(val label: String, val packageName: String, val activityName: String, val userSerial: Long = 0)(source)

A launchable app: just what we need to show a name and start it. userSerial identifies which profile the app lives in: 0 = the launcher's own (personal) profile, otherwise the work/private profile's stable serial number — the same package can be installed in both, and they are distinct entries.

Constructors

Link copied to clipboard
constructor(label: String, packageName: String, activityName: String, userSerial: Long = 0)

Properties

Link copied to clipboard
Link copied to clipboard

Android's declared app category (ApplicationInfo.CATEGORY_*), or -1 if unknown/pre-API-26. Kept out of the primary constructor so it stays out of equals/hashCode/copy and the persisted (favorites/shortcuts) encoding — it's populated only on the live list from loadLaunchableApps.

Link copied to clipboard

Stable identity for an app across sessions. Personal-profile apps keep the historical two-part form so pre-existing prefs stay valid; other profiles append their user serial ('/' never appears in package or class names).

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Functions

Link copied to clipboard
internal fun AppEntry.encode(): String