Jak przesłać pliki do instancji emulatora za pomocą Android Studio

107

Jak mogę przesłać pliki .txt do emulatora za pomocą Android Studio?

Girish
źródło

Odpowiedzi:

63

Możesz użyć ADB za pośrednictwem terminala, aby przekazać plik z pulpitu do emulatora.

adb push <file-source-local> <destination-path-remote>

Możesz także skopiować plik z emulatora na pulpit

adb pull <file-source-remote> <destination-path>

Jak zawsze możesz również użyć monitora urządzeń Android, aby uzyskać dostęp do plików. Kliknij ikonę Androida, którą można znaleźć na samym pasku narzędzi. Załadowanie zajmie kilka sekund. Po załadowaniu możesz zobaczyć zakładkę o nazwie „Eksplorator plików”. Teraz możesz pobierać / przesyłać pliki z tego miejsca.

theapache64
źródło
1
Czy można to zrobić za pomocą Android Studio, tak jak robiliśmy to w Eclipse. @ Shifar
Girish
nie ma karty o nazwie Eksplorator plików w Android Studio 1.2
Girish
Idź, ADM otwiera nowe okno, podobnie jak interfejs eclipse
Girish
tak, Android Device Monitor otwiera nowe okno podobne do Eclipse DDMS
Girish
Tak, czy mógłbyś oznaczyć tę odpowiedź jako właściwą?
theapache64
167

Jednym prostym sposobem jest przeciąganie i upuszczanie. Skopiuje pliki do / sdcard / Download. Możesz kopiować całe foldery lub wiele plików. Upewnij się, że opcja „Włącz udostępnianie schowka” jest włączona. (pod ...-> Ustawienia)

wprowadź opis obrazu tutaj

johnml1135
źródło
7
To zdecydowanie najłatwiejszy sposób!
JFreeman
3
Dzięki, to powinna być odpowiedź!
HaiderSahib
nie można znaleźć - „Włącz udostępnianie schowka”. gdzie to jest na macbooku?
Shirish Herwade
7
Folder / sdcard / Download jest nadal pusty po przesłaniu pliku.
alex351
1
Znalazłem folder, który skopiowałem w Download of internal storage, a nie sdcard.
Santosh
74

Aktualizacja (maj 2020 r.): Android studio ma nowe narzędzie o nazwie Device File Explorer . Możesz uzyskać do niego dostęp na dwa sposoby:

  1. Klikając Device File Explorerikonę w prawym dolnym rogu okna studia Android.
  2. Jeśli nie możesz znaleźć jego ikony, w Android Studio naciśnij dwukrotnie przycisk Shift. Pojawi się okno szybkiego wyszukiwania, następnie wpisz Device Fileje, a Eksplorator plików urządzenia pojawi się w wynikach wyszukiwania i możesz go kliknąć. otwórz Eksplorator plików urządzenia

Następnie możesz przejść do folderu, do którego chcesz przesłać plik. Kliknij prawym przyciskiem myszy ten folder i wybierz prześlij (lub naciśnij Ctrl+ Shift+ O). Wybierz plik, który chcesz przesłać, a plik zostanie przesłany do wybranej lokalizacji.

wprowadź opis obrazu tutaj

Wypchnij plik za pomocą adb.exe:

W systemie Android 6.0+ powinieneś użyć tego samego procesu, ale aplikacja na Androida nie może uzyskać dostępu do plików, które zostały przesłane do SDCARD za pomocą Eksploratora plików DDMS. Tak samo jest, jeśli spróbujesz takich poleceń:

adb push myfile.txt /mnt/sdcard/myfile.txt

Jeśli napotkasz EACCES (Permission denied)wyjątek podczas próby odczytania pliku w aplikacji, oznacza to, że nie masz dostępu do plików w pamięci zewnętrznej, ponieważ wymaga to niebezpiecznego pozwolenia.

W takiej sytuacji należy poprosić o nadanie dostępu ręcznie przy użyciu nowego systemu uprawnień w systemie Android 6.0 i nowszych wersjach. Aby uzyskać szczegółowe informacje, możesz zajrzeć do samouczka Androida i tego linku .

Rozwiązanie dla starej wersji Android Studio:

Jeśli chcesz to zrobić za pomocą interfejsu graficznego, możesz to zrobić w menu studia Android:

Narzędzia -> Android -> Monitor urządzenia Android

wprowadź opis obrazu tutaj

Następnie otworzy się okno Android Device Monitor (DDMS) i możesz przesyłać pliki za pomocą Eksploratora plików. Możesz wybrać adres, taki jak, /mnt/sdcarda następnie przesłać plik do sdcard. wprowadź opis obrazu tutaj

VSB
źródło
To zadziałało dla logiki kopiowania. Jednak - używając AS-ide 2.3 - w DDMS, / mnt / sdcard nie pojawi się jako folder rozwijany i będzie wyglądał jako pusty - nawet po ponownym uruchomieniu DDMS. Sprawdziłem, czy polecenie kopiowania zadziałało podczas używania adb shelldo nawigacji do tego folderu. Dziękuję za wskazówkę do rozwiązania
Gene Bo
1
Możesz także wybrać folder, a następnie kliknąć prawym przyciskiem myszy i wybrać „Prześlij ...”, a następnie wybrać ścieżkę do folderu lub pliku źródłowego.
CoolMind
odmówiono uprawnień podczas przesyłania pliku do systemu, jakiś pomysł?
Będąc Jk
8
stare rozwiązanie, nie ma zakładki „Android” pod narzędziami
Shirish Herwade
52

Monitor urządzeń z systemem Android nie jest już dostępny w Android Studio.

Jeśli używasz Android Studio 3.0 lub nowszego.

  1. Przejdź do „Eksploratora plików urządzeń”, który znajduje się w prawym dolnym rogu Android Studio.
  2. Jeśli masz podłączonych więcej niż jedno urządzenie, wybierz żądane urządzenie z rozwijanej listy u góry.
  3. mnt>sdcard to lokalizacja karty SD w emulatorze.
  4. Kliknij folder prawym przyciskiem myszy i kliknij Prześlij. Zobacz obrazek poniżej.

Uwaga: możesz przesłać folder, a nie tylko pojedyncze pliki.

Eksplorator plików urządzenia

Prakash
źródło
To. Zapisałem plik w sdcard/Downloadfolderze, a następnie w aplikacji wyboru plików Emulatora skorzystałem z menu Hamburger i wybrałem folder Pobrane.
lukegjpotter
1
włożyłem pliki do sdcard / Download, ale selektor plików emulatorów nic nie pokazuje
Rafael Lima
3
To nie działa. storage / emulated / path to miejsce, w którym musimy umieścić nasze pliki, ale zawiera komunikat „Odmowa uprawnień”.
Darush
8

Używam Android Studio 3.3.

Przejdź do Widok -> Okno narzędzi -> Eksplorator plików urządzenia . Lub możesz go znaleźć w prawym dolnym rogu Android Studio.

wprowadź opis obrazu tutaj

Jeśli emulator jest uruchomiony, Eksplorator plików urządzenia wyświetli strukturę plików w magazynie emulatora.

wprowadź opis obrazu tutaj

Tutaj możesz kliknąć folder prawym przyciskiem myszy i wybrać „Prześlij”, aby umieścić plik

wprowadź opis obrazu tutaj

Zwykle używam mnt - sdcard - folder pobierania. Dzięki.

Jitendra Sawant
źródło
4

Otwórz wiersz polecenia i podaj ścieżkę narzędzi platformy do pakietu SDK. Np .: - C: \ Android \ sdk \ platform-tools> Następnie wpisz polecenie „adb push” jak poniżej,

C: \ Android \ sdk \ platform-tools> adb push C: \ MyFiles \ nazwa_pliku.txt /sdcard/fileName.txt

To polecenie wypycha plik do folderu głównego emulatora.

REMITH
źródło
3

odnoszą się do johnml1135odpowiedzi, ale nie do końca działają.

po samodzielnym zbadaniu, pracuj teraz:

jak oficjalnie mówią :

添加 文件

将 任意 文件 拖动 到 模拟器 屏幕 上。 文件 将 保存 到 / sdcard / Download 目录 中。 使用 适合 API 级别 的 方法 导航 到 文件。 例如 , 对于 对于 API 22 , 导航 路径 为 : Ustawienia> Urządzenie: Pamięć i USB> Pamięć wewnętrzna> Przeglądaj (虚拟 SD 卡)。

i użycie Drag and Drop faktycznie zadziałało, ale użyj samodzielnie zainstalowanej aplikacji na Androida Download, wtedy NIE możesz znaleźć skopiowanego pliku, ponieważ nie istnieje tak zwany /sdcard/Downloadfolder.

wreszcie za pomocą innej aplikacji do zarządzania plikami, takiej jak

Eksplorator plików ES

wtedy widać, że naprawdę jest ścieżka

/storage/emulated/0/Download/

który zawiera skopiowane pliki, takie jak

/storage/emulated/0/Download/chenhongyu_lixiangsanxun.mp3

po przeciągnięciu i upuszczeniu więcej plików mp3:

crifan
źródło
Doskonały! Użyłem ścieżki pliku /storage/emulated/0/Downloadsi od razu zadziałało.
Kyle Burkett
0

adb push [ścieżka do pliku na komputerze] [ścieżka do pliku na telefonie komórkowym]

XC.xc
źródło