domingo, 10 de abril de 2016

Bons sonhos com Sleep Timer para Android

Se você gosta de ir dormir ouvindo música no seu celular com Android e não quer ter a preocupação de desligar o player de música  antes de  cair  no sono para  evitar  o descarregamento da bateria, o Sleep Timer é uma excelente solução para isto. Define o tempo que quiser em minutos, depois clique "Iniciar & Reprodutor", onde será aberto por padrão o Google Play Música e escolha a sua música preferida, Álbum, Playlist etc, normalmente no Google Play Música e pronto. Faltando apenas alguns segundos para o final da contagem regressiva, o Sleep Timer abaixará suavemente o som até parar totalmente, fechando o Google Play Música e a ele mesmo.

Para usar outro player de música diferente do padrão do Google, se você tiver mais de um instalado, basta acessar Configurações do Sleep Timer, clique em “Player lançador na inicialização” para escolher outro player a ser usado como padrão.






Download: Google Play

segunda-feira, 4 de abril de 2016

Montando o seu celular pelo MTP no GNU/Linux



Existe várias maneiras de transferir arquivos entre o celular e o computador, podendo ser pelo WI-FI com Apps do celular, ou pelo Bluetooth, mas pelo cabo usb é mais prático, principalmente se o mesmo está sempre do lado do computador, sem precisar ter que digitar IPs, ou senha para permitir a conexão.

No Salix a montagem de celular pelo MTP e a transferência de arquivos funciona pelo Thunar normalmente com boa velocidade na transferência de arquivos, mas apresenta dois problemas inconvenientes que são:

Os arquivos vindos do celular para o computador com a montagem feita pelo Thunar os nomes dos mesmos ficam completamente diferente e sem extensão ficando com nomes como 618, 619, 620 e assim sucessivamente, mas isto não acontece enviado do computador para o celular.

O segundo problema é que todos os arquivos armazenados no celular como vídeos, mp3, fotos, etc não são abertos pelos programas associados aos mesmos no computador, sendo executado o programa mas não abrindo o arquivo clicado no qual será exibido uma mensagem de erro.

Tentei usar primeiramente o mtpfs pela linha de comando para montar o celular, mas a montagem não funciona como deve, pelo menos na distro Salix, mesmo o celular sendo reconhecido.

Melhor programa para montagem por MTP

A melhor solução para MTP é o programa jmtpfs que pode ser obtido em https://github.com/JasonFerrara/jmtpfs/archive/v0.5.tar.gz

Para quem usa o sbopkg faça:

$ sudo sbopkg -i jmtpfs

Agora, conecte o celular pelo cabo usb para ver se o programa jmtpfs reconhece o mesmo

$ jmtpfs -l
Device 0 (VID=22b8 and PID=2e82) is UNKNOWN.
Please report this VID/PID and the device model to the libmtp development team
Unable to open ~/.mtpz-data for reading, MTPZ disabled.Available devices (busLocation, devNum, productId, vendorId, product, vendor):
1, 2, 0x2e82, 0x22b8, UNKNOWN, UNKNOWN


IMPORTANTE:
Caso o seu modelo de celular, não seja suportado nativamente, você deverá criar uma linha no arquivo /lib/udev/rules.d/69-libmtp.rules para o mesmo copiando uma das linhas já existente da que contém a marca do seu celular, editando apenas idProduct que será sempre um número diferente para outro modelo diferente da mesma marca pois provavelmente não exista o seu modelo neste arquivo de acordo com o exibido pelo comando mtp-detect ou jmtpfs -l onde o idVendor deverá ser sempre o mesmo número para a mesma marca, por exemplo Motorola.
Se não não existir a marca do seu celular no /lib/udev/rules.d/69-libmtp.rules dificilmente o mesmo funcionará pelo MTP mesmo que você coloque o número do idVendor e o idProduct exibido pelos comandos citados.

Exemplo:
# Moto E 2ª edicão
ATTR{idVendor}=="22b8", ATTR{idProduct}=="2e82", SYMLINK+="libmtp-%k", ENV{ID_MTP_DEVICE}="1", ENV{ID_MEDIA_PLAYER}="1"

Onde o idProduct é o número exclusivo para o modelo Moto E 2ª edição e o idVendor 22b8 é o número exclusivo pra todos os celulares e tablet da marca Motorola.

Após alterado o arquivo /lib/udev/rules.d/69-libmtp.rules 

$ cd /etc/rc.d (para distro Slackware e Salix)
$ sudo ./rc.udev force-restart (ou reinicie o computador)

Criar o ponto de montagem para o celular

$ sudo mkdir /mnt/celular
$ sudo chmod 777 /mnt/celular

Montar o celular

$ jmtpfs  /mnt/celular/

Para montar o seu celular a tela do mesmo deve está desbloqueada, pois senão não funcionará.
Pronto agora você ponto acessar o ponto de montagem com qualquer gerenciador de arquivos ou pelo terminal e os arquivos vindo do celular para o computador não ficam mais com nomes como 618, 619, 620... além de poder abrir os arquivos normalmente que estiver no celular pelos seus programas que estão associados, e onde tem a vantagem de poder utilizar uma janela de terminal, sendo que a montagem feita pelo Thunar não permite abrir uma janela de terminal a partir do mesmo  dentro do celular.
Outro ponto importante usando o jmtpfs você acessar o seu celular como se fosse um pendrive.

Verificando a montagem do celular

$ df -hT
Sist. Arq.     Tipo         Tam. Usado Disp. Uso% Montado em
/dev/sda6      ext4         132G   18G  108G  14% /
tmpfs          tmpfs        1,5G  8,0K  1,5G   1% /dev/shm
/dev/sda4      ext4         289G  170G  104G  63% /mnt/dados
/dev/sda1      fuseblk      146G   21G  126G  14% /mnt/win
jmtpfs         fuse.jmtpfs  3,7G  758M  3,0G  21% /mnt/celular

$ mount | grep celular
jmtpfs on /mnt/celular type fuse.jmtpfs (rw,nosuid,nodev,user=nando)


Criando um atalho no desktop para acesso rápido ao celular

Primeiro crie o scrip zcelular em /usr/local/bin com permissão 755 do chmod com o conteúdo abaixo.

zenity --info --text "O celular será montado em alguns segundos, após clicado em OK" 
jmtpfs /mnt/celular ; thunar /mnt/celular


Nota:
Troque thunar pelo seu gerenciador de arquivos favoritos.

Agora crie um lançador no seu gerenciador de janelas usando o botão direito do mouse, escolha Criar lançador..., e preencha conforme abaixo.

Nome: Montar celular
Comentário: Montar celular pelo MTP
Comando: zcelular
Diretório de trabalho: /usr/local/bin
Ícone: Escolha um ícone para o lançador

Clique no botão Criar.


Após criado o ícone no seu Desktop, clique sobre o mesmo usando o botão direito do mouse e escolha Propriedades, guia Permissões, marque a opção "Permitir que este arquivo execute como um programa" Clique em Fechar.



MTP no  Android Marshmallow 6.0

Nas versões inferior ao Android Marshmallow 6.0 era bem mais prático e automático, bastando conectar o celular com o cabo usb no computador e desbloquear o celular para o computador reconhecer as unidades de cartão SD e de armazenamento interno imediatamente, agora se você atualizou o seu celular para o Android Marshmallow 6.0 ou adquirir um de fábrica com o mesmo já instalado terá dois passos a mais; após desbloquear o celular  puxe a barra de notificações para baixo e em Usar USB para, clique em Transferir arquivos (MTP) para o computador reconhecer as unidades de cartão SD e de armazenamento interno. 






Procedimentos realizados no Salix 14.1 onde foi usado os celulares Samsung SM-G3502T (suportado nativamente) e o Moto E 2ª geração (não suportado nativamente, tendo que incluir o mesmo no arquivo /lib/udev/rules.d/69-libmtp.rules).