# [Android] Wie erstellt man eine Verknüpfung eines Ordners?



## mrnarn (14. Jun 2014)

Hallo, 

ich bin gerade dabei eine App zu entwickeln, wo ich eine Verknüpfung eines Ordners erstellen muss. Die Verknüpfung des Ordners soll so sein, wie man Sie auch z.B. aus Windows kennt. Im Internet habe ich leider nichts dazu gefunden.
Kann mir vielleicht jemand helfen und sagen, wie man eine Verknüpfung eines Ordners in Android erstellt?


mfg


----------



## Tobse (14. Jun 2014)

Android hat standardmäßig keinen Dateibrowser. Wie bei Windows/Linux ein icon auf den Homescreen zu setzen wird nicht funktionieren. Symlinks macht man unter UNIX so:


```
ln -s ZIEL NAME_DER_VERKNÜPFUNG
```


----------



## mrnarn (14. Jun 2014)

Tobse hat gesagt.:


> Android hat standardmäßig keinen Dateibrowser. Wie bei Windows/Linux ein icon auf den Homescreen zu setzen wird nicht funktionieren. Symlinks macht man unter UNIX so:
> 
> 
> ```
> ...




Achso das war wohl ein Missverständis. Ich will kein Icon von meiner App auf den Homescreen setzen, sondern eine Verknüpfung eines Ordners (z.B. ein Ordner mit der Location: "/storage/sdcard0/DCIM") erstellen und diese Verknüpfung dann in einen anderen Ordner kopieren. 
Oder meintest du das?


----------



## Tobse (14. Jun 2014)

Dafür sind natürliche / symbolische links genau das richtige. Ich greiffe mal dein Beispiel auf: der Orderner 
	
	
	
	





```
/storage/sdcard0/DCIM
```
 soll auch, praktisch als alias, unter [c]/storage/camera-pictures[/c] abrufbar sein. Dann musst du folgenden Befehl ausführen (da Android auf UNIX basiert bin ich mir 99% sicher, dass das auch klappt):

```
cd /storage
ln -s sdcard0/DCIM camera-pictures
```

Wobei dir hier für das Schreiben in 
	
	
	
	





```
/storage
```
 (ausser über die ADB) die Rechte fehlen werden.


----------



## mrnarn (14. Jun 2014)

Erstmal danke für die Antwort. Zwei Fragen habe ich noch:

1. Was ist die ADB bzw. was heißt ich habe keine Berechtigung?
2. Wie gebe ich den Befehl in Eclipse ein? Wenn ich den so wie beschrieben eingebe, kommen einige Fehlermeldungen?


----------



## mrnarn (14. Jun 2014)

Habe ich denn Berechtigungen auf andere Verzeichnisse? Ich kann ja mal meine Absicht ein wenig erklären:

ich bin gerade dabei eine App zu schreiben, die Fotos auf die externe SD-Karte verschiebt. Da ich ja seit Android 4.4 keine vollständigen Schreibrechte mehr auf die externe SD-Karte besitze, hatte ich mir überlegt, das Problem mithilfe einer Verknüpfung zu lösen:
Ich würde auf der externen SD-Karte folgenden Ordner erstellen und die Bilder dann dorthin verschieben: "/storage/external_sd/Android/data/PACKAGE_NAME"
Da die Bilder aber in diesem Ordner von z.B. der Galerie-App nicht erkannt werden, wollte ich eine Verknüfung des Ordners "PACKAGE_NAME" erstellen und diese dann im internen Speicher im Ordner "DCIM" ablegen, damit die Bilder erkannt werden. 
Deshalb wollte ich wissen, wie man eine Verknüpfung eines Ordners erstellt.

Habe ich darauf auch keine Berchtigung bzw. ist meine Idee nicht umsetzbar (ohne root) ?


----------



## Tobse (14. Jun 2014)

mrnarn hat gesagt.:


> Habe ich denn Berechtigungen auf andere Verzeichnisse? Ich kann ja mal meine Absicht ein wenig erklären:
> 
> ich bin gerade dabei eine App zu schreiben, die Fotos auf die externe SD-Karte verschiebt. Da ich ja seit Android 4.4 keine vollständigen Schreibrechte mehr auf die externe SD-Karte besitze, hatte ich mir überlegt, das Problem mithilfe einer Verknüpfung zu lösen:
> Ich würde auf der externen SD-Karte folgenden Ordner erstellen und die Bilder dann dorthin verschieben: "/storage/external_sd/Android/data/PACKAGE_NAME"
> ...



ADB - Android Debuggin Bridge

Das sind kommandozeilen-Befehle, siehe [JAPI]ProcessBuilder[/JAPI] (Wobei mit dem der cd-Befehl wegfällt).

Inwiefern eine App in Android (Symbolische) Verlinkungen ausserhalb ihres Verzeichnisses erstellen _darf_, weiss ich nicht.
Aber ich habe eine andere lösung: Gib deiner App die Berechtigung, auf die SD-Karte zu schrieben (android.permission.WRITE_EXTERNAL_STORAGE) und erstelle einen Ordner für deine App z.B. in 
	
	
	
	





```
/media
```
. Dort findet die Album-App sie auch.


----------



## mrnarn (14. Jun 2014)

Tobse hat gesagt.:


> ADB - Android Debuggin Bridge
> 
> Das sind kommandozeilen-Befehle, siehe [JAPI]ProcessBuilder[/JAPI] (Wobei mit dem der cd-Befehl wegfällt).
> 
> ...




Also das Problem seit Android 4.4 ist, dass Apps nur noch eingeschränkte Berechtigungen auf die externe SD-Karte besitzen. Das heißt, dass ich nur noch auf meinen eigenen Ordner zugreifen darf, den ich nur in folgendem Verzeichnis erstellen darf: /storage/external_SD/Android/data/PACKAGE_NAME_DER_APP"
Wenn ich nun in diesem Ordner meine Bilder ablege, werden diese z.B. in der Galerie App nicht angezeigt.
Deshalb die Idee mit der Verknüpfung. 
Gibt es noch andere Möglichkeiten, die Bilder in der Galerie App anzeigen zu lassen? Bei anderen Apps wie z.B. WhatsApp klappt es ja komischerweise...


----------

