Getting Name der ursprünglichen .APK-Datei in Android

Ich versuche herauszufinden, wie ich den Namen der ursprünglichen APK-Datei abrufen kann, aus der eine Anwendung installiert wurde. Ich weiß, dass Sie den Paketnamen und das Quellverzeichnis der installierten Anwendung mit @ abrufen könneApplicationInfo class (hier beschrieben:Android: Wie wird der Name einer APK-Datei programmgesteuert ermittelt?) aber das ist NICHT was ich will.

ngenommen, ich habe eine einfache Anwendung mit dem NamenTestApp (über dasandroid:label tag imAndroidManifest.xml Datei). Angenommen, ich generiere eine APK-Datei für die oben genannte Anwendung und benenne die APK-Datei in @ uTestApp_JohnDoe.apk, und senden Sie diese Anwendung zur Installation per E-Mail an John Doe. Wenn John Doe die Anwendung durch Klicken auf die APK-Datei installiert, möchte ich den Dateinamen der ursprünglichen APK-Datei lesen können,TestApp_JohnDoe.apk, die ich ihm geschickt habe. Verwendung derApplicationInfo Klasse, genauer gesagt diesourceDir -Methode gibt mir das Installationsverzeichnis und den Anwendungsnamen,/data/app/TestApp.apk, das ist nicht das, wonach ich suche. Ich weiß, dass es wahrscheinlich möglich ist, alle verfügbaren Verzeichnisse nach der ursprünglichen APK-Datei zu durchsuchen, aber ich hoffe, dies zu vermeiden.

Zusammenfassend möchte ich das .apk-Dateinamen- / Quellverzeichnis des Installationsprogramms .apk programmgesteuert abrufen, z. B./storage/sdcard0/Download/TestApp_JohnDoe.apk, im Gegensatz zum .apk-Dateinamen- / Quellverzeichnis der aktuell installierten Anwendung,/data/app/TestApp.apk.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage