วิธีการส่งไฟล์ไปยังอินสแตนซ์จำลองโดยใช้ Android Studio


คำตอบ:


65

คุณสามารถใช้ ADB ผ่านเทอร์มินัลเพื่อส่งไฟล์จากเดสก์ท็อปไปยังโปรแกรมจำลอง

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

คุณยังสามารถคัดลอกไฟล์จากโปรแกรมจำลองไปยังเดสก์ท็อป

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

คุณยังสามารถใช้ Android Device Monitor เพื่อเข้าถึงไฟล์ได้อย่างไร คลิกที่ไอคอน Android ซึ่งอยู่ในแถบเครื่องมือ จะใช้เวลาโหลดไม่กี่วินาที เมื่อโหลดแล้วคุณจะเห็นแท็บชื่อ "File Explorer" ตอนนี้คุณสามารถดึง / พุชไฟล์จากที่นั่นได้


1
มีวิธีใดบ้างที่จะทำได้โดยใช้สตูดิโอ Android เหมือนกับที่เราเคยทำใน Eclipse @shifar
Girish

ไม่มีแท็บชื่อ File Explorer ใน Android Studio 1.2
Girish

ไปเลย .. ADM เปิดหน้าต่างใหม่เหมือนกับ eclipse UI
Girish

ใช่ Android Device Monitor จะเปิดหน้าต่างใหม่คล้ายกับ Eclipse DDMS
Girish

ใช่คุณช่วยทำเครื่องหมายคำตอบนี้ว่าถูกต้องได้ไหม
theapache64

178

วิธีง่ายๆวิธีหนึ่งคือการลากและวาง มันจะคัดลอกไฟล์ไปที่ / sdcard / Download คุณสามารถคัดลอกทั้งโฟลเดอร์หรือหลายไฟล์ ตรวจสอบให้แน่ใจว่าได้เปิดใช้งาน "เปิดใช้งานการแชร์คลิปบอร์ด" แล้ว (ภายใต้ ... -> การตั้งค่า)

ป้อนคำอธิบายภาพที่นี่


8
นี่เป็นวิธีที่ง่ายที่สุดแน่นอน!
JFreeman

4
ขอบคุณนี่น่าจะเป็นคำตอบ!
HaiderSahib

ไม่พบ - "เปิดใช้งานการแชร์คลิปบอร์ด" มันอยู่ที่ไหนบน macbook?
Shirish Herwade

7
โฟลเดอร์ / sdcard / Download ยังคงว่างเปล่าหลังจากอัปโหลดไฟล์
alex351

1
ฉันพบโฟลเดอร์ที่ฉันคัดลอกในการดาวน์โหลดที่เก็บข้อมูลภายในไม่ใช่ sdcard
Santosh

77

Update (พฤษภาคม 2020): Android สตูดิโอมีเครื่องมือใหม่ที่เรียกว่าอุปกรณ์ File Explorer คุณสามารถเข้าถึงได้สองทาง:

  1. โดยคลิกที่Device File Explorerไอคอนที่มุมล่างขวาของหน้าต่าง android studio
  2. หากคุณไม่พบไอคอนภายใน Android Studio ให้กดปุ่ม shift สองครั้ง หน้าต่างค้นหาด่วนจะปรากฏขึ้นจากนั้นพิมพ์Device FileและDevice File Explorerจะปรากฏในผลการค้นหาและคุณสามารถคลิกได้ เปิด Device File Explorer

จากนั้นคุณสามารถไปที่โฟลเดอร์ที่คุณต้องการพุชไฟล์ของคุณได้ คลิกขวาที่โฟลเดอร์นั้นแล้วเลือกอัปโหลด (หรือกดCtrl+ Shift+ O) เลือกไฟล์ที่คุณต้องการอัปโหลดและจะอัปโหลดไฟล์ไปยังตำแหน่งที่ต้องการ

ป้อนคำอธิบายภาพที่นี่

พุชไฟล์โดยใช้adb.exe:

ใน Android 6.0+ คุณควรใช้กระบวนการเดียวกัน แต่แอปพลิเคชัน Android ของคุณไม่สามารถเข้าถึงไฟล์ที่ผลักดันภายใน SDCARD โดยใช้ DDMS File Explorer เช่นเดียวกันหากคุณลองใช้คำสั่งเช่นนี้:

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

หากคุณพบEACCES (Permission denied)ข้อยกเว้นเมื่อพยายามอ่านไฟล์ภายในแอปพลิเคชันหมายความว่าคุณไม่มีสิทธิ์เข้าถึงไฟล์ภายในที่จัดเก็บข้อมูลภายนอกเนื่องจากต้องได้รับอนุญาตที่เป็นอันตราย

ในสถานการณ์นี้คุณต้องขออนุญาตการเข้าถึงด้วยตนเองโดยใช้ระบบการอนุญาตใหม่ใน Android 6.0 และเวอร์ชันสูงกว่า สำหรับรายละเอียดคุณสามารถดูได้ในบทช่วยสอน Androidและลิงค์นี้นี้

โซลูชันสำหรับ Android Studio เวอร์ชันเก่า:

หากคุณต้องการทำโดยใช้อินเทอร์เฟซแบบกราฟิกคุณสามารถทำตามเมนูนี้ภายใน Android Studio:

เครื่องมือ -> Android -> การตรวจสอบอุปกรณ์ Android

ป้อนคำอธิบายภาพที่นี่

หลังจากนั้นหน้าต่างการตรวจสอบอุปกรณ์ Android (DDMS) จะเปิดขึ้นและคุณสามารถอัปโหลดไฟล์โดยใช้ File Explorer คุณสามารถเลือกที่อยู่ที่ต้องการ/mnt/sdcardแล้วพุชไฟล์ของคุณลงใน sdcard ป้อนคำอธิบายภาพที่นี่


สิ่งนี้ใช้ได้กับตรรกะการคัดลอก อย่างไรก็ตาม - เมื่อใช้ AS-ide 2.3 - ใน DDMS / mnt / sdcard จะไม่ปรากฏเป็นโฟลเดอร์ที่ขยายได้และดูเหมือนว่างเปล่าแม้จะรีสตาร์ท DDMS แล้วก็ตาม ฉันตรวจสอบแล้วว่าคำสั่ง copy ใช้งานได้เมื่อใช้adb shellเพื่อนำทางไปยังโฟลเดอร์นั้น ขอบคุณสำหรับตัวชี้ทางแก้
ยีนบ่อ

1
นอกจากนี้คุณสามารถเลือกโฟลเดอร์จากนั้นคลิกขวาและเลือก "อัปโหลด ... " จากนั้นเลือกเส้นทางไปยังโฟลเดอร์ต้นทางหรือไฟล์
CoolMind

ได้รับอนุญาตถูกปฏิเสธเมื่อส่งไฟล์ไปยังระบบมีความคิดอย่างไร
Beeing Jk

8
โซลูชันเก่าไม่มีแท็บ 'Android' ภายใต้เครื่องมือ
Shirish Herwade

52

การตรวจสอบอุปกรณ์ Android ไม่มีให้บริการในสตูดิโอ Android อีกต่อไป

หากคุณใช้ Android Studio 3.0 ขึ้นไป

  1. ไปที่ "Device File Explorer" ซึ่งอยู่ด้านขวาล่างของ android studio
  2. หากคุณเชื่อมต่ออุปกรณ์มากกว่าหนึ่งเครื่องให้เลือกอุปกรณ์ที่คุณต้องการจากรายการแบบเลื่อนลงที่ด้านบน
  3. mnt>sdcard คือตำแหน่งของการ์ด SD บนโปรแกรมจำลอง
  4. คลิกขวาที่โฟลเดอร์แล้วคลิกอัปโหลด ดูภาพด้านล่าง

หมายเหตุ: คุณสามารถอัปโหลดโฟลเดอร์ได้ไม่ใช่เฉพาะไฟล์แต่ละไฟล์

Device File Explorer


นี้. ฉันบันทึกไฟล์ไว้ในsdcard/Downloadโฟลเดอร์จากนั้นในแอปพลิเคชันตัวเลือกไฟล์ของ Emulator ให้ใช้เมนูแฮมเบอร์เกอร์แล้วเลือกโฟลเดอร์ดาวน์โหลด
lukegjpotter

1
ฉันใส่ไฟล์ลงใน sdcard / ดาวน์โหลด แต่ตัวเลือกไฟล์อีมูเลเตอร์ไม่แสดงอะไรเลย
Rafael Lima

3
มันใช้ไม่ได้ storage / emulated / path คือที่ที่เราต้องใส่ไฟล์ของเรา แต่มันขึ้นว่า "Permission ถูกปฏิเสธ"
Darush

8

ฉันใช้ Android Studio 3.3

ไปดู -> เครื่องมือหน้าต่าง -> อุปกรณ์ File Explorer หรือจะอยู่ที่มุมขวาล่างของ Android Studio

ป้อนคำอธิบายภาพที่นี่

หาก Emulator ทำงานอยู่ Device File Explorer จะแสดงโครงสร้างไฟล์บน Emulator Storage

ป้อนคำอธิบายภาพที่นี่

คุณสามารถคลิกขวาที่โฟลเดอร์และเลือก"อัปโหลด"เพื่อวางไฟล์ได้ที่นี่

ป้อนคำอธิบายภาพที่นี่

ฉันมักจะใช้ mnt - sdcard - โฟลเดอร์ดาวน์โหลด ขอบคุณ.


4

เปิดพรอมต์คำสั่งและกำหนดเส้นทางเครื่องมือแพลตฟอร์มของ sdk เช่น: - C: \ Android \ sdk \ platform-tools> จากนั้นพิมพ์คำสั่ง 'adb push' ดังต่อไปนี้

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

คำสั่งนี้พุชไฟล์ไปยังโฟลเดอร์รูทของโปรแกรมจำลอง


3

อ้างอิงjohnml1135คำตอบ แต่ใช้งานได้ไม่เต็มที่

หลังจากตรวจสอบตัวเองทำงานตอนนี้:

อย่างเป็นทางการ

添加文件

将任意文件拖动到模拟器屏幕上。文件将保存到 / sdcard / ดาวน์โหลด目录中。使用适合 API 级别的方法导航到文件。例如, 对于 API 22, 导航路径为: การตั้งค่า> อุปกรณ์: ที่เก็บข้อมูลและ USB> ที่เก็บข้อมูลภายใน> สำรวจ (虚拟 SD 卡) 。

และใช้งานได้Drag and Drop จริงแต่ใช้แอพที่ติดตั้งด้วยตัวเองของ Android Downloadจากนั้นคุณจะไม่พบไฟล์ที่คัดลอกเพราะไม่มีอยู่/sdcard/Downloadโฟลเดอร์

ในที่สุดก็ใช้แอพจัดการไฟล์อื่น ๆ เช่น

ES File Explorer

จากนั้นจะเห็นเส้นทางจริงๆ

/storage/emulated/0/Download/

ซึ่งมีไฟล์ที่คัดลอกเช่น

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

หลังจากลากและวางไฟล์ mp3 เพิ่มเติม:


ยอดเยี่ยม! ฉันใช้ filepath /storage/emulated/0/Downloadsและใช้งานได้ทันที
Kyle Burkett

0

adb push [เส้นทางไฟล์บนคอมพิวเตอร์ของคุณ] [เส้นทางไฟล์บนมือถือของคุณ]

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.