ARTIGOS:Utilizando o seu iPad,iPhone e IPod Touch

Ir para: navegação, pesquisa

"Com um iPad em mãos, percebi a exclusão da Apple com usuários Linux, pois não existe um iTunes for Linux (pelo menos até o presente momento). Sendo assim deixo neste documento as técnicas de comunicação e troca de dados com o seu iPad sem a necessidade de recorrer a sistemas proprietários."

28-ipad.png

Introdução

Ao receber o iPad fiquei frustrado ao perceber que o iTune (software utilizado para transferência de dados com iPad e outros devices da APPLE) não está disponível para a versão Linux. Então não restou outra saída a não ser pesquisar as soluções alternativas no mundo open source.

A seguir dicas para não precisar recorrer aos sistemas operacionais proprietários. Vale a pena mencionar que para o iPod Touch e iPhone podemos contar com o software Rhythmbox, gtkpod e Amarok (vide vídeo abaixo). Sobre o iPad: iPad é um dispositivo em formato tablet produzido pela Apple Inc. O aparelho foi anunciado em 27 de janeiro de 2010, em uma conferência para imprensa no Yerba Buena Center for the Arts em São Francisco.[1] Meses antes de seu anúncio, surgiram rumores do nome do aparelho: iSlate, iBook e iTablet, entre outros.

O iPad foi apresentado como um dispositivo situado a meio caminho entre um notebook e um smartphone. O dispositivo utiliza o mesmo sistema operacional do iPhone e é voltado para o público leigo, devido ao tipo de interface oferecido.

A recepção inicial do iPad foi bastante misturada, com muitos entusiastas ficando contra o aparelho devido ao que percebem como limitações e com outros tantos demonstrando grande empolgação com facilidade de interação que a interface demonstra.

As especificações técnicas incluem redes sem fio Wi-Fi 802.11n e Bluetooth 2.1, tela touch de 9,7 polegadas, acelerômetro e bússola. O chip foi identificado pela Apple como A4, de 1GHz. Seu peso é de 680 gramas e sua espessura é de 0,5 polegadas (1, 27cm). Bateria para 10 horas de vídeo e 1 mês de standby. Possui diferentes versões com espaços de 16, 32 e 64 GB.

Fonte: IPad - Wikipédia

HomeiPad.jpg

Download do Pacotes

Requisitos de software:

A seguir os programas necessários para prosseguir neste tutorial e alguma dicas para instalação para as distribuições SUSE, Mandriva, Ubuntu e Fedora.

FUSE ou Filesystem in Userspace. Ele é um projeto que permite o roteamento do pedidos do sistema de arquivos através do VFS (abstração do sistema de arquivos). Um bom exemplo sobre o Fuse é o GmailFS, que permite "montar" sua conta do Gmail, acessando-a como se fosse um HD externo.

É uma biblioteca com protocolo de comunicação para iPhone, iPod Touch e iPad sem dependência de biblioteca da Apple. O iFuse permite montar o seu iPad no seu sistema de arquivos.

Uma suíte completa para criar, manipular e publicar ePub (livro eletrônico), ou seja, conversor, leitor e editor de arquivos ePub.

Dicas de download:

Ubuntu.png Ubuntu (Karmic, Lucid)

Opensuse.png OpenSUSE openSUSE 11.0, 11.1, 11.2, Factory ou 1-Click Install

Fedora.png Fedora (já disponível na repositório da versão 12+).

Mandriva.pngMadriva (já disponível na versão oficial Cooker).

Abaixo os links para download dos códigos fonte:

   * libimobiledevice-1.0.2.tar.bz2
   * ifuse-1.0.0.tar.bz2
   * libplist-1.3.tar.bz2
   * usbmuxd-1.0.4.tar.bz2
   * nautilus-ideviceinfo-0.1.0.tar.bz2 

Mais informações em: http://www.libimobiledevice.org/

Instalação e execução

Mão na massa

Acredito que em breve o software Rhythmbox, gtkpod e Amarok serão 100% funcionais com iPad como são atualmente compatíveis com os telefone iPhone e iPod Touch. Veja o vídeo a seguir para entenderem onde quero chegar. Mas por enquanto vamos aos recursos disponíveis. Conversão de vídeos: se você possui vídeos no padrão WMV, DIVX, XVID e outros, utilize a linha abaixo para torná-lo compatível com o formato de reprodução do iPad.

$ ffmpeg -i [NOME-ARQ] -s 640x480 -vcodec mpeg4 -b 2000k -acodec aac -ac 1 -ar 16000 -r 13 -ab 32000 -aspect 3:2 [NOME-ARQ-FINAL.mp4]

Transferindo fotos: utilize o utilitário iFuse para montar o iPad na pasta especificada do filesystem. Para tal operação, basta criar a pasta e executar o comando conforme o exemplo a seguir.

$ mkdir iPad $ ifuse iPad

Verifique se a montagem ocorre com sucesso.

Verifique se a montagem ocorre com sucesso.

$ df

Sist. Arq. 1K-blocos Usad Dispon. Uso% Montado em /dev/sda6 22705980 14327520 7224996 67% / udev 2028528 684 2027844 1% /dev /dev/sda3 65538604 36285228 29253376 56% /windows

ifuse 30443104 1333056 29110048 5% /home/cabelo/iPad

Se tudo estiver funcionando corretamente, copie as fotos para a pasta 100APPLE como no exemplo abaixo:

$ cp /home/cabelo/imagem/*.JPG iPad/DCIM/100APPLE/

ATENÇÃO: As imagens devem possuir obrigatoriamente o nome IMG_[NUMERO_SEQUENCIAL].JPG. Vejam a saída do comando ls logo a seguir.

$ ls iPad/DCIM/100APPLE/

IMG_0001.JPG IMG_0004.JPG IMG_0007.JPG IMG_0011.JPG IMG_0014.JPG IMG_0017.JPG IMG_0020.JPG IMG_0023.JPG IMG_0026.JPG IMG_0002.JPG IMG_0005.JPG IMG_0008.JPG IMG_0012.JPG IMG_0015.JPG IMG_0018.JPG IMG_0021.JPG IMG_0024.JPG IMG_0003.JPG IMG_0006.JPG IMG_0009.JPG IMG_0013.JPG IMG_0016.JPG IMG_0019.JPG IMG_0022.JPG

IMG_0025.JPG

Comandos úteis

A seguir comandos úteis para utilizar na linha de comando. Função de backup, restore, listagem do dispositivo conectado, e até obter screenshot é possível na linha de comando.

Backup e restore:

$ /usr/bin/idevicebackup backup /home/cabelo/iPad/ $ /usr/bin/idevicebackup restore /home/cabelo/iPad/

Gerando screenshots:

$ /usr/bin/idevicescreenshot Screenshot saved to screenshot-2010-06-28-17-21-24.tiff

Exibindo log de operações:

$ /usr/bin/idevicesyslog

ASL is here to serve you

> Jun 28 14:24:00 unknown Stanza[2683] <Warning>: Stanza exiting cleanly

Listando o device conectado:

$ /usr/bin/idevice_id -l 1f0970a04333c665050d608aef364d1ed1c03636

Informações sobre o device:

$ /usr/bin/ideviceinfo

ActivationPublicKey: LS0tLw1CRUdJwiBeU0rgUFVWTEl ActivationState: Activated ActivationStateAcknowledged: true BluetoothAddress: e8:03:83:90:21:e2 BuildVersion: 7B367 CPUArchitecture: armv7 DeviceCertificate: LS0tLS1CRUdJTiBDIO DeviceClass: iPad DeviceColor: unknown DeviceName: iPad de Ricardo Alexandre Lemos Valverde DevicePublicKey: AaS0tLS1CRUdJTiBSU0EgUFV DieID: 3747037828049680404 FirmwareVersion: iBoot-817.28 HardwareModel: K48AP HostAttached: true MLBSerialNumber: J60152510G9YG ModelNumber: MB293 PasswordProtected: false ProductType: iPad1,1 ProductVersion: 3.2 ProductionSOC: true ProtocolVersion: 2 RegionInfo: LL/A SBLockdownEverRegisteredKey: false SDIOManufacturerTuple: IOSDIOManufacturerID: 720 IOSDIOProductID: 17193 SDIOProductInfo: P=K48 m=u80 SIMStatus: kCTSIMSupportSIMStatusReady SerialNumber: V5016EVDZ39 SoftwareBehavior: EQAAAAAAAAAQAAAAABBBBB== SoftwareBundleVersion: SomebodySetTimeZone: true SupportedDeviceFamilies[2]: 0: 1 1: 2 TimeIntervalSince1970: 1277742526 TimeZone: America/Sao_Paulo TimeZoneOffsetFromUTC: -10800.000000 TrustedHostAttached: true UniqueChipID: 223922014622 UniqueDeviceID: 1f0972a04222c665050d608aef364d1ed2c23611 Uses24HourClock: false WiFiAddress: e8:06:82:90:21:e2

iTunesHasConnected: true

Criando a sua biblioteca ePUB (servidor de conteúdo)

Para instalar livros sem precisar da App Store, a seguir os procedimentos para montar o seu próprio servidor de livros, inclusive criados ou editados por você. Em primeiro lugar instale o software Calibre (lembra dele?). A instalação passo-a-passo encontramos no artigo publicado aqui no Viva o Linux: ePub - O MP3 dos livros

Com o programa Calibre em execução, adicione e/ou selecione os livros ou gibis que serão enviados para o iPad ou iPhone e logo em seguida clique no botão preferências. No formulário preferências, selecione o item Servidor de Conteúdo, define a porta de comunicação, login, senha e clique no botão "Iniciar Servidor".

Calibre.jpeg
Calibre2.jpeg

Agora entre no ícone APP Store no iPad, selecione e instale o programa Stanza. Após a instalação, execute-o e clique no ícone "Get Books" conforme a ilustração a seguir.

Stanza02.jpg

Agora, na aba "Share", clique no ícone "+" para adicionar um servidor de conteúdo.

Stanza03.jpg

Preencha os campos Name e URL com um nome para o seu servidor de conteúdo, na URL o IP seguido da porta seleciona e configurada anteriormente no software calibre.

Stanza04.jpg

Se tudo estiver funcionando corretamente, teremos na lista de "Sources Books" do novo servidor cadastrado. Para conectar, clique no servidor recém cadastrado.

Stanza05.jpg

Informe no formulário "Secure Catalog" o login e senha definida nos parâmetros do servidor de conteúdo no software calibre.

Stanza06.jpg

Após a autenticação, visualizaremos a lista dos livros e gibis disponíveis. Selecione o documento desejado, clique em Download e pronto!

Stanza08.jpg
Stanza07.jpg

Opções como iBook só funcionará com o iTune no Mac e Linux (por enquanto). Pretendo desenvolver um aplicativo inserir mídias no iPad na linha de comando, pois as mídias inseridas no iPad são registro inclusos em bancos SQLite3. Para inserir mídias MP3 ou MP4 foi preciso utilizar os comando insert manualmente. A seguir uma breve explicação.

Ibook01.jpg
Ibook02.jpg

Entrando na pasta iTunes Library.itlp, encontramos diversos bancos, entre eles o Locations.itdb com as tabelas base_location (path da localização da mídia) e location (as mídias na integra).


$ cd IPAD/iTunes_Control/iTunes/iTunes\ Library.itlp/

$ sqlite3 Locations.itdb sqlite> .table base_location location

sqlite>

Abaixo a estrutura da tabela location e base_location:


sqlite> .schema location

CREATE TABLE location ( item_pid INTEGER NOT NULL, sub_id INTEGER NOT NULL DEFAULT 0, base_location_id INTEGER DEFAULT 0, location_type INTEGER, location TEXT, extension INTEGER, kind_id INTEGER DEFAULT 0, date_created INTEGER DEFAULT 0, file_size INTEGER DEFAULT 0, file_creator INTEGER, file_type INTEGER, num_dir_levels_file INTEGER, num_dir_levels_lib INTEGER, PRIMARY KEY (item_pid,sub_id));

sqlite> .schema base_location

CREATE TABLE base_location (id INTEGER NOT NULL, path TEXT, PRIMARY KEY (id));

O iTunes é todo baseado nestas tabelas, reparem que mídias mp3, vídeo mp4 e livros são incluso no aparelho com um simples comando insert.


sqlite> select * from location;

4610245287509869689|0|1|1179208773|F36/JJHG.mp3|1297101600|1|298737443|4473555|||| -6283167265674541040|0|1|1179208773|F45/IJDM.mp3|1297101600|1|298737443|4063119|||| -5642726876562733935|0|1|1179208773|F41/IIAE.mp4|1297101856|2|298952628|21454398||||

sqlite> select * from base_location; 1|iTunes_Control/Music

4|Podcasts

Com estas dicas é possível tornar o seu iPad mais independente... Como sempre menciono: Colaborar atrai amigos, competir atrai inimigos...


Sobre o autor: (Alessandro de Oliveira Faria A.K.A.CABELO )