Como enviar arquivos para uma instância do emulador usando o Android Studio

102

Como posso enviar arquivos .txt para o emulador usando o Android Studio?

Feminino
fonte

Respostas:

62

Você pode usar o ADB por meio de um terminal para passar o arquivo da área de trabalho para o emulador.

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

Você também pode copiar o arquivo do emulador para o Desktop

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

No entanto, você também pode usar o Android Device Monitor para acessar arquivos. Clique no ícone do Android que pode ser encontrado na própria barra de ferramentas. Vai demorar alguns segundos para carregar. Uma vez carregado, você pode ver uma guia chamada "File Explorer". Agora você pode puxar / enviar arquivos de lá.

theapache64
fonte
1
Existe alguma maneira de fazer isso usando o Android Studio como costumávamos fazer no Eclipse. @ Shifar
Girish
não há uma guia chamada File Explorer no Android Studio 1.2
Girish
Vá em frente ... ADM abre uma nova janela como o Eclipse UI
Girish
sim, o Android Device Monitor abre uma nova janela semelhante ao Eclipse DDMS
Girish
Sim, você poderia marcar esta resposta como a correta?
theapache64 de
164

Uma maneira fácil é arrastar e soltar. Ele irá copiar os arquivos para / sdcard / Download. Você pode copiar pastas inteiras ou vários arquivos. Certifique-se de que "Ativar compartilhamento da área de transferência" esteja ativado. (em ...-> Configurações)

insira a descrição da imagem aqui

johnml1135
fonte
7
Esta é definitivamente a maneira mais fácil!
JFreeman
3
Obrigado, esta deve ser a resposta!
HaiderSahib
não consigo encontrar - "Ativar Compartilhamento da Área de Transferência". onde está no macbook?
Shirish Herwade
7
A pasta / sdcard / Download ainda está vazia após o upload do arquivo.
alex351
Encontrei a pasta que copiei no Download do armazenamento interno e não o sdcard.
Santosh
74

Atualização (maio de 2020): o Android Studio tem uma nova ferramenta chamada Device File Explorer . Você pode acessá-lo de duas maneiras:

  1. Ao clicar no Device File Explorerícone no canto inferior direito da janela do Android Studio.
  2. Se você não conseguiu encontrar o ícone, dentro do Android Studio pressione o botão shift duas vezes. A janela de pesquisa rápida aparecerá, digite Device File-a e o Device File Explorer aparecerá no resultado da pesquisa e você poderá clicar nele. abra o Device File Explorer

Em seguida, você pode navegar até a pasta para a qual deseja inserir o arquivo. Clique com o botão direito na pasta e selecione upload (ou pressione Ctrl+ Shift+ O). Selecione o arquivo que deseja enviar e ele fará o upload do arquivo para o local desejado.

insira a descrição da imagem aqui

Enviar arquivo usando adb.exe:

No Android 6.0+, você deve usar o mesmo processo, mas seu aplicativo Android não pode acessar arquivos enviados para dentro do SDCARD usando DDMS File Explorer. É o mesmo se você tentar comandos como este:

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

Se você enfrentar uma EACCES (Permission denied)exceção ao tentar ler o arquivo dentro do seu aplicativo, isso significa que você não tem acesso aos arquivos dentro do armazenamento externo, uma vez que requer uma permissão perigosa.

Para esta situação, você precisa solicitar a concessão de acesso manualmente usando o novo sistema de permissão no Android 6.0 e versão superior. Para obter detalhes, você pode dar uma olhada no tutorial do Android e neste link .

Solução para a versão antiga do Android Studio:

Se você quiser fazer isso usando a interface gráfica, pode seguir os menus do Android Studio:

Ferramentas -> Android -> Monitor de dispositivo Android

insira a descrição da imagem aqui

Depois disso, a janela do Android Device Monitor (DDMS) será aberta e você pode fazer upload de arquivos usando o File Explorer. Você pode selecionar um endereço como /mnt/sdcarde enviar seu arquivo para o sdcard. insira a descrição da imagem aqui

VSB
fonte
Isso funcionou para a lógica de cópia. No entanto - usando AS-ide 2.3 - no DDMS, o / mnt / sdcard não aparecerá como uma pasta expansível e aparecerá como vazio - mesmo após reiniciar o DDMS. Verifiquei se o comando de cópia funcionou adb shellao navegar para essa pasta. Obrigado por apontar para a solução
Gene Bo
1
Além disso, você pode selecionar uma pasta, clicar com o botão direito e escolher "Fazer upload ..." e selecionar um caminho para uma pasta ou arquivo de origem.
CoolMind
obteve permissão negada ao enviar arquivo para o sistema, alguma ideia?
Beeing Jk
8
solução antiga, sem guia 'Android' em ferramentas
Shirish Herwade
51

O monitor de dispositivo Android não está mais disponível no Android Studio.

Se você estiver usando o Android Studio 3.0 e superior.

  1. Vá para "Device File Explorer", que está no canto inferior direito do Android Studio.
  2. Se você tiver mais de um dispositivo conectado, selecione o dispositivo que deseja na lista suspensa no topo.
  3. mnt>sdcard é a localização do cartão SD no emulador.
  4. Clique com o botão direito na pasta e clique em Upload. Veja a imagem abaixo.

Nota: Você também pode fazer upload de pastas, não apenas de arquivos individuais.

Device File Explorer

Prakash
fonte
Este. Salvei meu arquivo na sdcard/Downloadpasta, em seguida, no aplicativo seletor de arquivos do Emulador, use o Menu Hambúrguer e selecione a pasta Downloads.
lukegjpotter
1
coloquei os arquivos em sdcard / Download, mas o seletor de arquivos emuladores não mostra nada
Rafael Lima
3
Não funciona. storage / emulado / path é onde precisamos colocar nossos arquivos, mas diz "Permission denied".
Darush de
8

Estou usando o Android Studio 3.3.

Vá para Exibir -> Janela de ferramentas -> Gerenciador de arquivos do dispositivo . Ou você pode encontrá-lo no canto inferior direito do Android Studio.

insira a descrição da imagem aqui

Se o emulador estiver em execução, o Device File Explorer exibirá a estrutura do arquivo no Emulator Storage.

insira a descrição da imagem aqui

Aqui você pode clicar com o botão direito em uma pasta e selecionar "Upload" para colocar o arquivo

insira a descrição da imagem aqui

Eu costumo usar a pasta mnt - sdcard - download. Obrigado.

Jitendra Sawant
fonte
4

Abra o prompt de comando e forneça o caminho das ferramentas da plataforma do SDK. Ex .: - C: \ Android \ sdk \ platform-tools> Em seguida, digite o comando 'adb push' como abaixo,

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

Este comando envia o arquivo para a pasta raiz do emulador.

REMITH
fonte
3

consulte a johnml1135resposta, mas não funcione totalmente.

após a auto-investigação, trabalhe agora:

como oficial dizer:

添加 文件

将 任意 文件 拖动 到 模拟器 屏幕 上。 文件 将 保存 到 / sdcard / Download 目录 中。 使用 适合 API 级别 的 方法 导航 到 文件。 例如 , 对于 API 22 , 导航 路径 为 : Configurações> Dispositivo: Armazenamento e USB> Armazenamento interno> Explorar (虚拟 SD 卡)。

e use Drag and Drop realmente funcionou, mas use o aplicativo android auto-instalado Download, então você NÃO pode encontrar o arquivo copiado, pois não existe a chamada /sdcard/Downloadpasta.

finalmente usando outro aplicativo de gerenciamento de arquivos, como

ES File Explorer

então podemos ver que o verdadeiro caminho é

/storage/emulated/0/Download/

que contém os arquivos copiados, como

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

depois de arrastar e soltar mais arquivos mp3:

crifan
fonte
Excelente! Usei o caminho do arquivo /storage/emulated/0/Downloadse funcionou imediatamente.
Kyle Burkett
0

adb push [caminho do arquivo no seu computador] [caminho do arquivo no seu celular]

XC.xc
fonte