Android install source
The PackageManager class supplies the getInstallerPackageName method that will tell you the package name of whatever installed the package you specify. Side-loaded apps will not contain a value.
The latest version of the Amazon store finally sets PackageManager.getInstallerPackageName() to "com.amazon.venezia
" as well to contrast with Google Play's "com.android.vending
".
Source: How to know an application is installed from google play or side-load? For an Example: getInstallerPackageName returns null
Use getInstallerPackageName.
This stores the packageName of what installed the application.
- Google Play: "com.android.vending"
- Amazon Appstore: "com.amazon.venezia"
At present (16/01/2022) code:
val s = applicationContext.getPackageManager().getInstallerPackageName(applicationContext.getPackageName())
works fine for Android 11 in GooglePlay, and get "com.android.vending".