terça-feira, 15 de abril de 2014

Conectando Smartphone com Android pelo cabo USB no Ubuntu

Se você tem o pacote gMTP nativo instalado e mesmo assim você não consegue acessar o Smartphone pelo cabo usb, você deverá atualizar o gvfs, não importa qual é o fabricante do Smartphone com Android.

Para conectar o seu Smartphone via cabo usb, para acessar os arquivos do mesmo são necessários alguns arquivos novos, e atualizar o gvfs para que o mesmo reconheça dispositivos MTP (protocolo adotado a partir do Android 3.x) pois o USB Mass Storage (UMS) sistema de transferência de arquivos não é suportado a partir do Android 3.x.

Os procedimentos abaixo é valido somente para Ubuntu 12.04 e 12.10 e derivados. No Ubuntu 13.10 ele já vem com o gvfs atualizado, não precisando fazer os procedimentos abaixo; já no Ubuntu 13.04 não sei se o mesmo está atualizado já que não tive oportunidade de testar.

$ sudo apt-get install ppa-purge

Caso tenha instalado o gvfs de outro repositório, remova-o e utilize o comando ppa-purge, mas se não tiver instalado de outro local, pule direto pra o próximo passo.
Exemplo: sudo ppa-purge nome-do-ppa

Adicionando repositórios PPAs:

$ sudo add-apt-repository ppa:webupd8team/unstable

Devemos incluir o novo GVFS (Gnome Virtual File System) com suporte a MTP (Multimedia Transfer Protocol).

$ sudo add-apt-repository ppa:langdalepl/gvfs-mtp -y
$ sudo apt-get update

Instalação dos pacotes

$ sudo apt-get install go-mtpfs
$ sudo apt-get install mtp-tools mtpfs

Caso necessário, reinicie o computador.

Conecte o Smartphone pelo cabo usb e depois ir no menu Multimídia e escolha gMTP.

Uma observação importante que ao fazer a conexão pelo Smartphone tanto pelo gMTP, ou por uma montagem manual em linha de comando o mesmo deve está desbloqueado a tela, ou seja destravada senão o acesso ao mesmo não funcionará.


Na tela do gMTP clique em Conectar, e na mini janela que se abre escolha entre Phone (memória interna) ou Card (cartão externo), pois pode somente acessar um por vez.

No gMTP você pode fazer downloads de arquivo para o computador na pasta desejada e fazer upload de arquivos para o Smartphone (abrir a pasta desejada no Smartphone pra receber os uploads antes).
Você pode deletar/mover/renomear arquivos e criar/renomear/deletar pastas. Adicionar arquivos de músicas a uma playlist.
Não pode reproduzir arquivos de vídeos ou mp3 pelo gMTP ou qualquer outro formato.
Você pode selecionar vários arquivos de uma vez para fazer o upload para o Smartphone.


Montagem do dispositivo manualmente

A pasta padrão do dispositivo do Smartphone é /media/MyAndroid criada automaticamente na instalação dos pacotes mtpfs, mas você pode utilizar qualquer outra pasta de sua preferência que esteja vazia como /mnt/celular para fazer a montagem, mas o importante é que elas tenha as permissões drwxrwxrwx usando os seguintes comandos para isto chmod a+rwx ou chmod 777 na pasta desejada.

Se a pasta não tiver as permissões especificadas o acesso a mesma será somente como root.


$ go-mtpfs /media/MyAndroid/
2014/04/06 14:19:49 compiled against libmtp 1.1.5
Device 0 (VID=04e8 and PID=6860) is a Samsung Galaxy models (MTP).
2014/04/06 14:19:49 found device Samsung: Galaxy models (MTP) (04e8:6860) @ bus 1, dev 2
:
2014/04/06 14:19:49 storage ID 65537: Phone
2014/04/06 14:19:49 storage ID 131074: Card
2014/04/06 14:19:49 backing data /tmp/go-mtpfs594953705
2014/04/06 14:19:49 starting FUSE unknown


O terminal em que foi executado o go-mtpfs para a montagem do Smartphone, fica indisponível para usar para outros comandos e se você teclar ctrl+c você perderá o acesso ao dispositivo, mas o mesmo continuará montado ainda no sistema mesmo que você não consiga acessar, então use o comando umount /media/MyAndroid pra remover o mesmo com segurança da porta usb.

Verificando a montagem em outra janela de terminal.

$ mount

---corte---
gvfsd-fuse on /run/user/nando/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,user=nando)
DeviceFs(GT-S6313T) on /media/MyAndroid type fuse.DeviceFs(GT-S6313T)

$ df
Sist. Arq. 1K-blocos Usad Dispon. Uso% Montado em
--corte---
DeviceFs(GT-S6313T) 5358540 1804908 3553632 34% /media/MyAndroid

Com a montagem feita pelo go-mtpfs, você acessa tanto a memória interna quanto a externa, e pode executar os mp3, vídeos etc com seus programas preferidos, copiar e colar arquivos facilmente entre o computador e o Smartphone usando o seu gerenciador de arquivos.

Para desmontar:

$ sudo umount /media/MyAndroid


Outras configurações opcionais

Estas configurações você somente precisará fazer se tiver problema em montar o dispositivo do Smartphone como usuário comum verifique se o seu usuário está no grupo fuse do arquivo /etc/group

fuse:x:104:usuário

No arquivo /etc/fuse.conf remove o sustenido (#) da última linha que é #user_allow_other.

No arquivo /lib/udev/rules.d/69-libmtp.rules verifique se o seu celular se encontra na lista.
Um detalhe importante é que muitas vezes o seu modelo de celular não está na lista e sim outros modelos da mesma marca, mas o importante é o que é exibido na saída do comando lsusb do ID do celular, se o ID do seu celular estiver na lista do arquivo 69-libmtp.rules mesmo que o modelo ou marca sejam outros mas que coincide com a saída do comando lsusb (acho que o hardware utilizado deve ser o mesmo indiferente da marca e modelo), mude a permissão padrão 660 para 666 em MODE.

Exemplo o meu Smartphone é um Samung Galaxy Young GT-S6313T e na saída do comando lsusb é listado como:

# lsusb
Bus 001 Device 002: ID 04e8:6860 Samsung Electronics Co., Ltd GT-I9100 Phone [Galaxy S II], GT-P7500 [Galaxy Tab 10.1]

No arquivo /lib/udev/rules.d/69-libmtp.rules não existe o modelo GT-S6313T da Samung, mas achei uma linha dos modelos da Samsung que possuir o mesmo ID e que bate com a saída do comando lsusb.

# Samsung GT P7310/P7510/N7000/I9070/I9100/I9300 Galaxy Tab 7.7/10.1/S2/S3/Nexus/Note/Y
ATTR{idVendor}=="04e8", ATTR{idProduct}=="6860", SYMLINK+="libmtp-%k", MODE="666", GROUP="audio", ENV{ID_MTP_DEVICE}="1", ENV{ID_MEDIA_PLAYER}="1"



Se mesmo assim você não conseguir montar o dispositivo verifique se o Smartphone está no modo MTP (o Smartphone já deve está conectado ao cabo usb com o computador), na barra de estado você verá um ícone de USB, abra a mesma e na barra de notificações pressione o dedo em Conectando como um disp (Toque para outras opções USB), no qual surgira a tela da foto abaixo.



Na foto acima o Smartphone já está no modo MTP (Dispositivo de mídia), em algumas marcas e modelos o nome MTP pode se encontrado com um nome diferente e também as informações abaixo do mesmo pode ser um pouco diferente.


Alguns fabricantes ou operadoras podem esconder muitas configurações dos usuários dificultando a vida para fazer algo simples como permitir MTP ao conectar o seu telefone Android para o seu computador. Entretanto muitos destes ajustes podem ser acessados através de códigos de discagem e o modo de conexão USB para PC é um desses.

Primeiro lugar é discar o código *#7284# que abrirá o diálogo "PhoneUtil". Isso não vai funcionar em todos os telefones; então tente também discar *#22745927 lembrando que este procedimento, pode conter opções diferentes da foto abaixo dependendo do modelo e marca do Smartphone e que também pode ter sido desativado pela sua operadora/fabricante o acesso a estas opções ocultas.






Um comentário: