Gestern hatte ich ~40 MB freien Speicherplatz auf meinem Android 2.2.1 Samsung GT-S5570. Ich wollte die App installieren Facebook
, also habe ich sie heruntergeladen Play Store
und dann automatisch installiert. Seine Größe betrug ~20 MB.
Diese App wird auf der SD-Karte installiert. Nach all dem Vorgang erhielt ich jedoch eine Warnmeldung über niedrigen internen Speicher. Ich habe den freien Speicherplatz überprüft und überraschenderweise sind es jetzt ~ 20 MB ... Ich nehme an, die 20 MB sind die heruntergeladene App (etwas wie die .exe in Windows).
Ich habe .temp und Downloads durchsucht, um zu sehen, ob die ".exe" dort ist, aber ich konnte sie nicht finden. Ich habe die Browsereinstellungen (den Standard-Android-Browser) durchgesehen, um zu sehen, wo die Downloads gespeichert werden, aber ich konnte keinen Verweis auf die Downloads finden.
Wo werden die heruntergeladenen „.exe“-Dateien gespeichert?
Android-Apps sind keine .exe-Dateien, sondern .apk-Dateien, die effektiv Java-JAR-Dateien mit zusätzlichen enthaltenen Informationen sind.
Die Pakete werden an einem der wenigen Orte installiert:
/system/app
- für vom System installierte Apps - Sie können diesen Ordner nicht ändern./data/app
- Alle vom Markt installierten Apps werden hier installiert, und Sie als Benutzer können den Ordner ändern./sdcard/.android_secure
- Apps, die auf die SD-Karte verschoben werden, werden hier gespeichertBeachten Sie, dass Apps auch Daten an einer Reihe von Orten ablegen, und nicht alle davon befinden sich auf der SD-Karte, selbst wenn die App selbst auf der SD-Karte installiert ist. Dies ist wahrscheinlich Ihr Problem mit der App auf Ihrem Gerät, und leider - ohne das Gerät zu rooten und etwas wie a2sd zu verwenden , mit dem Sie andere Partitionen auf die SD-Karte verschieben können.
Als Referenz siehe auch diese Frage zu StackOverflow , die weitere Informationen enthält.
ext2
, alle verschiebbaren Apps mit verschoben Link2SD
, symbolische Links zu nicht verschiebbaren Apps erstellt (wie maps
, play store
), „System“-Apps gelöscht wie gmail
und youtube
aber ich habe wieder nur ~20 MB frei Raum...Der tatsächliche Speicherort (oder Pfad) der externen SD-Karte (nicht intern, manchmal wird der vom Benutzer verfügbare interne Speicher als externer Speicher betrachtet (in der Android-Entwicklung)) variiert von Gerät zu Gerät. Vermutlich unterscheidet sich also auch der Pfad der installierten Anwendungen auf der SD-Karte von Gerät zu Gerät. Wenn Sie wirklich wissen möchten, wo sich installierte Apps (auf der SD-Karte) befinden, müssen Sie ein wenig programmieren.
Aber in den meisten Fällen (Samsung-Geräte, die auf Lolipop laufen) befindet sich das Anwendungspaket in /mnt/asec/[package_name] und die .apk-Datei in /mnt/asec/[package_name]/[app_name].apk . Wenn Sie wirklich wissen möchten, wo es sich befindet, fügen Sie den folgenden Code in die Methode onCreate() ein und führen Sie die App auf dem gewünschten Gerät aus. Es zeigt Ihnen alle Speicherorte der App, die sich auf der SD-Karte befinden....
Hoffe es hilft...
PackageManager pm=getPackageManager();
List<ApplicationInfo> infos=pm.getInstalledApplications(0);
for(int i=0;i<infos.size();++i){
String src_path=infos.get(i).sourceDir;
if(!src_path.contains("/system") &&
!src_path.contains("/data")){
// showing path as toast message
// you can even print it with System.out.println()
Toast.makeText(this, src_path, Toast.LENGTH_SHORT).show();
}
}
Izzy
insufficient-memory
Tag zu deiner Frage hinzugefügt. Bitte werfen Sie einen Blick auf das Tag-Wiki für Details, einschließlich des Vorschlags von babelmonk (der eher im app2sd-Tag-Wiki behandelt wird ).