android wurde Wie kann ich wissen, dass eine Anwendung von Google Play oder Side-Load installiert wird?




sistrix snippet tool (3)

Die PackageManager Klasse stellt die Methode " getInstallerPackageName PackageManager , die Ihnen den Paketnamen des von Ihnen angegebenen Pakets mitteilt. Seitengeladene Apps enthalten keinen Wert.

BEARBEITEN: Beachten Sie die unten stehende Antwort von @mtttmlns zum Amazon App Store.

Ich muss feststellen, dass meine Anwendung von Google Play oder einem anderen Markt installiert ist. Wie kann ich diese Informationen erhalten?


Und apparently legt die neueste Version des Amazon-Stores schließlich auch getInstallerPackageName auf "com.amazon.venezia" um mit dem "com.android.vending" Google Play zu "com.android.vending" .


Ich verwende diesen Code, um zu überprüfen, ob ein Build von einem Store heruntergeladen oder in die Seiten geladen wurde:

public static boolean isStoreVersion(Context context) {
    boolean result = false;

    try {
        String installer = context.getPackageManager()
                                    .getInstallerPackageName(context.getPackageName());
        result = !TextUtils.isEmpty(installer);
    } catch (Throwable e) {          
    }

    return result;
}




sideloading