Mostrando postagens com marcador android. Mostrar todas as postagens
Mostrando postagens com marcador android. Mostrar todas as postagens

quarta-feira, 17 de abril de 2013

Galaxy S - Como usar Bluetooth e Wifi no Modo Offline

Galaxy S - Como usar Bluetooth e Wifi no Modo Offline


Tive uma curiosidade de saber se podíamos utilizar os recursos de wifi e bluetooth com o célular no modo OffLine e dei uma pesquisada na internet e não encontrei nada então fui dá uma olhada nas bases de dados de configurações do celular e encontrei como se pode fazer para isso funcionar. Estou postando para que possa servir para mais alguém.


Requisitos:
  • Celular com root liberado.
  • Um editor de SQLite -  SQLite Manager
  • Visualizador de arquivos com acesso root – Root Explorer

Primeiramente é necessário liberar o root no celular veja como fazer isso no Galaxy S nesse link. Depois é só navegar até o diretório das bases de dados do SQLite onde fica os arquivos da base de dados das configurações do sistema em: /dbdata/databases/com.android.providers.settings conforme imagem abaixo.

Base de Configuração do Android
Base de Configuração do Android



Crie o diretório /mnt/sdcard/Base e fazer uma cópia do arquivo settings.db para esse  diretório, conforme imagem abaixo.

Diretório de Cópia de Bases
Diretório de Cópia de Bases


Execute o aplicativo SQLite Manager e selecione a base de dados settings.db, aparecerá a relação das tabelas dessa base de dados.


Seleção de Base de dados
Seleção de Base de dados


Selecione a tabela system, nos registros terá airplane_mode_radios com o valor cell, bluetooth,wifi conforme imagem abaixo.



Edição da tabela System
Edição da tabela System



Segure o dedo uns instantes em cima do registro que quer alterar e aparecerá um menu e escolha Update Row conforme imagem abaixo.


Menu do SQLite
Menu do SQLite


Altere o campo que tem airplane_mode_radios de cell,bluetooth,wifi para somente cell e clique em OK, conforme imagem abaixo.


Editando registro
Editando registro



O registro será gravado e você terá que reiniciar o celular para poder vê a atualização. Na imagem abaixo se vê como pode ser usado o wifi e bluetooth com o celular em Modo OffLine.


Usando Wifi e Bluetooth em Modo OffLine
Usando Wifi e Bluetooth em Modo OffLine



Para o momento é só isso, até a próxima. 











Acesso root no Android

Acesso root no Android


O que é acesso root?

O acesso root ao Android é quando você consegue obter privilégios de Administrador no aparelho, mais ou menos com no Linux um usuário que tenha a senha de root e tem acesso irrestrito ao sistema. Com o aparelho rooteado você pode fazer tarefas que antes não tinha privilégios, a utilidade disso é que você pode executar um app que tenha funções especificas e a necessidade de ser executada com funções de administrador tais como: Titanium Backup, Voodoo Control Plus e um muito bom que eu uso Transparent Proxy.

Na internet existe um grande número de tutoriais para se obter acesso root ao Android um muito bom que conheço é o seguinte: 



Nesse tutorial mostra de uma maneira bem clara como fazer o acesso root no Android.


Se você necessita de um acesso privilégiado ao seu celular esse tutorial é excelente.

Até a próxima.

segunda-feira, 1 de abril de 2013

Ferramentas do SDK Android



As Ferramentas do SDK Android

O SDK do Android é um ambiente composto de vários componentes que juntos possibilita um desenvolvimento mais rápido e eficiente de aplicativos para dispositivos Android.  As partes mais importantes do SDK Android são um conjunto de tecnologias como Java, Eclipse, máquina virtual Dalvik, QEMU e outras plataformas, que juntas formam as partes mais importantes do SDK Android. Abaixo será apresentado algumas dessas ferramentas.


Android Debug Bridge (adb)

É um programa que permite que controle tanto o emulador quanto os dispositivos e executa um Shell no ambiente do emulador ou no dispositivo que se está conectado. Permitindo assim que se tenha um controle muito grande sobre o ambiente em que se está desenvolvendo. Ele permite fazer tarefas desde as mais simples até se obter acesso root ao ambiente do emulador ou do dispositivo.


Dalvik Debug Monitor Server (DDMS)

O Dalvik Debug monitor Server é quem monitora todo o trafego entre uma Java Virtual Machine (JVM) e qualquer depurador Java. O DDMS fornece vários recursos para ajudar no desenvolvimento de uma aplicação Android e pode ser acessada por uma interface de usuário independente ou através de uma interface incorporada ao Eclipse por meio do plug-in ADT. Abaixo está uma tela da interface acionada pela linha de comando do DOS com o comando ddms.bat:

Execução do comando ddms.bat na linha de comando
Execução do comando ddms.bat na linha de comando

Como se vê na imagem acima a interface independente de usuário do DDMS dá acesso as seguintes informações:


Lista de dispositivos conectados e os dispositivos Virtuais

No painel superior esquerdo mostra todas os dispositivos conectados através do USB ao seu Computador e também todos os dispositivos Virtuais (AVD) executados no emulador. Expandindo-se um máquina listada será apresentada a lista de todas as tarefas executadas nas máquinas virtuais (VMs) Dalvik.


Informações da VMS

No painel superior direito tem as informações de cada VMs Dalvik que estão sendo executadas nos dispositivos.


Informações de thread

As informações sobre as threads de cada processo são encontradas também na guia Threads do painel superior direito da janela do DDMS.


Gerenciador do sistema de arquivos


O sistema de arquivos do dispositivo Android ou do dispositivo virtual é explorado pelo gerenciador de arquivos do DDMS que é encontrado no menu File Explorer..., no menu Devices.  Nele pode pegar um arquivo do dispositivo para o computador, gravar para o dispositivo um arquivo que esteja no computador, deletar um arquivo do dispositivo ou adicionar uma pasta ao dispositivo. A imagem abaixo mostra a janela do File Explorer do DDMS:

Janela File Explorer do DDMS
Janela File Explorer do DDMS

Simulação de operações telefônicas e de localização

Na guia emulator control, no painel superior direito tem um simulador de chamadas telefônicas de voz e de SMS, também é possível simular a localização do dispositivo emulado através dessa guia.


Captura de tela

No menu Device há a opção Screen Capture..., que é uma opção que captura uma imagem do dispositivo conectado ao computador ou a um dispositivo virtual sendo executado no emulador.


Registro dos processos


Na parte inferior do DDMS é mostrado um registro da saída dos processos sendo executado no dispositivo selecionado. Pode ser  feito um filtro das informações levando em consideração os seguintes dados: Tag do log, Mensagem do log, PID do processo, pelo nome da Aplicação e pelo nível do Log. Conforme mostra imagem abaixo:




Dummping do dispositivo

No menu Device existem opções de Dump do estado do Dispositivo, do estado do Aplicativo e do estado do rádio.



Plug-in  ADT para o Eclipse

O plug-in ADT foi feito especialmente para o Eclipse e tem várias ferramentas para uma criação rápida de um projeto com toda a hierarquia de arquivos para a construção correta de um aplicativo Android. Com esse plug-in é feito no Eclipse todos os procedimentos para a construção do projeto, edição dos arquivos do projetos, compilação do aplicativo, execução e depuração.

Através do plug-in ADT os componentes do SDK do Android são executados no Eclipse. A seguir é mostrado os componentes do plug-in ADT utilizados no Eclipse para o desenvolvimento de Aplicativos Android.


Android Layout Editor

As interfaces de usuários dos aplicativos Android podem ser especificadas tanto em código como em arquivos XML.

O plug-in ADT adiciona um Editor Visual que possibilita ao desenvolvedor a visualização e composição do Layout das telas do aplicativo Android, esse editor é sempre aberto quando um arquivo de layout de tela é selecionado. Ele possibilita tanto a visualização do código XML do arquivo da tela como a representação do modo gráfico da tela.


Android Manifest Editor

É incluído também um editor para o arquivo de manifesto do Android, esse editor é especializado para ler o XML e mostrar de forma gráfica as opções de configuração do arquivo podendo também fazer alteração do manifesto do Android.

No Android também existem outros editores especializados para visualização e edição de outros arquivos XML do Android.


Compiladores do plug-in ADT

O plug-in ADT também fornece os compiladores específicos do Android que permitem seja utilizado o Java como linguagem de programação de aplicativos Android.


Depurador do plug-in do ADT

O plug-in ADT adiciona ao Eclipse os componentes que o permitem fazer todo o processo de depuração e execução do aplicativo em um dispositivo ou em um AVD de um emulador. Essa depuração pode ser feita com a perspectiva DDMS que o plug-in ADT adiciona ao Eclipse.


Dispositivos Virtuais

Os Dispositivos Virtuais Android (AVDs) são capazes de emular um dispositivo Android real e são executados em um emulador QEMU com uma imagem do sistema Android feita especialmente para ser rodada em um emulador.


Gerenciador de AVD

É um software que tem como função criar e gerenciar as AVDs que são utilizadas para o desenvolvimento dos aplicativos Android.

Mas informações sobre as ferramentas do SDK Android em:




segunda-feira, 25 de março de 2013

Como acelerar um emulador Android



Muitos desenvolvedores tem o problema com os emuladores que ficam muito lentos para iniciar e executar algumas tarefas com gráficos em seus computadores, essa lentidão causa um mal estar muito grande, pois temos que esperar um bom tempo para poder rodar uma simples aplicação. Pensando nisso o Google programou formas para se acelerar o emulador.

Existem três formas para se acelerar o emulador:

  • Usando snapshot
  • Usando aceleração de  hardware x86 na imagem do Android
  • Usando aceleração GPU

Usando snapshot

Sendo a inicialização do emulador do Android muito lenda, foi criado um meio de se trabalhar com snapshot das imagens do emulador que funciona da seguinte maneira após o primeiro boot o estado do emulador é gravado no disco rígido e na próxima inicialização o estado é lido para a memória sem passar pelos demorados procedimentos de inicialização do Android reduzindo o tempo de inicialização.

Utilizando o snapshot do Android

Primeiro você tem que habilitar o Snapshot na criação do AVD conforme se ver na imagem abaixo:

Criação de AVD com Snapshot
Criação de AVD com Snapshot

Após a criação do AVD inicialize-o e verifique se está ativada a opção de Salvar para snapshot conforme a imagem abaixo:

Habilitar Salvamento para Snapshot
Habilitar Salvamento para Snapshot

Depois da primeira inicializada do AVD as próximas serão significantemente mais rápidas.


Aceleração de Hardware x86

Para a aceleração de hardware x86 é necessário ser usada uma imagem x86 do Android pois o Emulador Android usa por padrão uma imagem ARM. E como essa arquitetura é muito diferente da x86 o emulador precisa fazer uma conversão de todas as instruções de ARM para o x86 e isso causa uma perca de performance.

Primeiro passo para se ter a aceleração de hardware x86 é baixar no Android SDK Manager os seguintes itens:

  • Intel x86 Emulador Accelerator (HAXM) e
  • Intel x86 Atom System Image (Para cada versão de API do Android que se usar para o desenvolvimento)


Conforme imagem abaixo:


Download dos componentes de Intel x86
Download de Intel x86

Para instalação do HAXM é necessário ir ao diretório extra  do SDK do Android e executar o seguinte arquivo: haxm-windows_r02.exe.

Agora é só criar um AVD usando uma imagem Intel Atom (x86) conforme imagem abaixo:



O desempenho da imagem do emulador  fica sensivelmente visível, mas esse recurso só funciona se seu computador possui  um processador Intel com suporte a VT-x.  Para mais informações sobre HAXM, acesse http://www.intel.com/software/android.


 Usando aceleração GPU OpenGL

O Emulador Android por padrão vem com a aceleração de GPU desabilitada e pode ser habilitada na criação do AVD, clicando na opção Use Host GPU, conforme imagem abaixo:

Aceleração por GPU
Aceleração por GPU


A aceleração GPU não é compatível com snapshot.

A aceleração GPU torna seu AVD bastante rápido para os testes de seus aplicativos, mais não tendo o snapshot o torna lento na inicialização.

Nos meus testes foi a melhor opção, pois a execução dos aplicativos ficou mais rápido mesmo tendo a inicialização se tornado mais lenta, é só inicializar a AVD antes dos testes e só desligar depois que terminar os trabalhos, assim se economizar um bom tempo durante os vários testes após cada mudança de código e compilação.

Espero ter ajudado com mais esse post.




















quinta-feira, 21 de março de 2013

Decompilação de Programas Android




Procurando na internet um meio de vê como extrai o código fonte de uma aplicação Android,  achei os links acima, o primeiro ensina como descompactar o apk extraindo os códigos fontes e também os XML de layout, o segundo é uma ferramenta disponibilizada no fórum da XDA que faz todo o trabalho de decompilação dos apks e pode fazer também a alteração dos fontes e posterior compilação novamente.

Com base nestes dois links fiz um BAT para decompilar um APK mais adequado e simples para minha utilização. Disponibilizo aqui para quem queira dá uma estudada.

Aviso: Respeite os direitos autorais.

Faça o Download nestes links: 

Depois de descompactado ele fica com a seguinte estrutura:

Estrutura de diretório BAT de decompilação
Estrutura do Diretório

A estrutura de diretórios tem os seguintes pastas:
  • apks – Onde se coloca os arquivos apk que se quer decompilar.
  • apktool – Arquivos do apktool.
  • Decompilados – Onde um BAT descompacta os arquivos.
  • dex2jar – Utilitário para gerar o jar com o código fonte do apk.
  • Other – Outros arquivos necessários para descompactar o apk.
  • decompila.bat – Arquivo de lote que executar as tarefas necessárias para a decompilação do apk.

É só executar o arquivo decompila.bat e será apresentado a tela de comando do DOS.

Execução do BAT decomplica.bat
Execução do BAT decompila.bat

Escolha a opção 1 para se escolher um APK para  decompilar e será lidos os arquivos do diretório apks e será criado uma lista para escolha do apk para decompilar.


Tela de escolha do APK
Escolha do APK 

Após a escolha do apk para decompilar execute as opções 2,3,4 para gerar os arquivos descompactados e a opção número 5 para sair do BAT. Será criado no diretório Decompilados a seguinte estrutura:

Estrutura criada pela decompilação
Estrutura criada pela decompilação

Onde:
  • MinhaAplicacao – É o nome do programa selecionado para decompilação.
  • MinhaAplicacao.apk  - É o diretório onde se encontra os fontes do apk no arquivo jar criado.
  • Xml – É o diretório com os arquivos  xml dos layouts do apk.


A visualização do fonte do apk é feita com o programa Java Decompiler do site: http://java.decompiler.free.fr.


Para visualizar o fonte descompacte o arquivo jd-gui.rar  e abri o programa Java Decompiler e navegar até o diretório MinhaAplicacao.apk e escolher o arquivo classes_dex2jar.jar, será apresentado a tela seguinte:

Visualização do código fonte
Visualização do código fonte

Logo abaixo tem a comparação dos código originais e os gerados pela decompilação:

Comparação dos códigos fontes originais e decompilados
Comparação dos códigos fontes originais e decompilados


Espero que este tutorial seja de ajuda para alguém. 




Android – Como começar a programar



O Android foi inicialmente desenvolvido pela Google e é um sistema baseado em kernel Linux.  A Google disponibiliza várias bibliotecas e um SDK para estimular os desenvolvedores à criação e popularização do sistema Android.

Requisitos para desenvolvimento com android
  • Java development Kit (SDK)
  • ADT Bundle

Java development Kit (SDK)
        
        O java development Kit é necessário para a compilação dos programas. O link para downloads é: 
                  www.oracle.com/technetwork/java/javase/downloads/index.html.

ADT Bundle

   O ADT Bundle é disponibilizado no site do developer.android.com e tem todos os componentes necessários para começar  rapidamente o desenvolvimento de aplicativos Android.
       O pacote ADT Bundle contém os seguintes componentes:   


  • Eclipse + ADT Plugin
  • Android SDK Tools
  • Android Platform-tools
  • A mais recente plataforma Android
  • A imagem mais recente do sistema Android para o emulador
O download pode ser feito em: http://developer.android.com/sdk/índex.html#download.

É só fazer o download e descompactar em uma pasta e ficará a seguinte estrutura de diretórios:

Estrutura do diretório do ADT Bundle
Estrutura do diretório do ADT Bundle

Depois é só executar o SDK Manager.exe e será apresentado a imagem abaixo com a última API do Android instalada e onde se pode marcar qualquer outras que se queira trabalhar e fazer a instalação.

Execução do Android SDK Manager
Execução do Android SDK Manager

Agora depois que se executa as instalações dos pacotes necessários vamos criar um novo dispositivo virtual para os teste das aplicações. 


Criação de Máquinas virtuais para os testes das aplicações.

Após a instalação se faz necessário que se crie um dispositivo virtual para a realização dos testes das aplicações, então vamos lá primeiro clique no menu em Tools e escolha a opção Manage AVDs, será apresentada a tela abaixo:

Execução do AVD Manager
Execução do AVD Manager


Nesta tela clique em New e será apresentada a tela de criação de nova AVD com os seguintes campos para serem completados:
  • AVD Name: Nome que sera dado ao AVD.
  • Device: Tipo de dispositivo predefinido.
  • Target: Qual API sera usuada.
  • CPU/ABI: Tipo de CPU utilizada.
  • Keyboard:  Escolhe se um teclado será visível.
  • Skin: Mostra um skin com controle de hardware.
  • Front Camera: Escolhe uma camera frontal.
  • Back Camera: Escolhe uma camera traseira.
  • Memory Options: Opções de memória.
  • Internal Storage: O tamanho do armazenamento interno do dispositivo.
  • SD Card: O tamanho do armazenamento externo do dispositivo.
  • Emulation Options: Opções de emulation que podem ser Snapshot ou Host GPU.
Criação de nova AVD
Criação de nova AVD

Após completar e escolher todos os valores para os campos clique em OK e depois de alguns instantes será criado um novo AVD.

Podemos agora executar o AVD selecionando o recém criado AVD e clicando em Start.

AVD sendo executada
AVD sendo executada


Criação de um projeto de teste

Agora o próximo passo vai ser criar um projeto para testes no eclipse que já veio junto com o ADT Bundle.
  • Execute o eclipse
  • Clique no menu File à New à Android Project Application
  • Na tela  que aparece informe as informações seguintes:
    • Application Name
    • Project  Name
    • Package Name
    • Minimum Required SDK
    • Target SDK
    • Compile With
    • Theme

Criação de nova aplicação
Criação de nova aplicação


  • Clique em Next e na tela Configure Project complete as informações requeridas
    • Create custom launcher icon
    • Create activity
    • Mark this Project as a library
    • Create Project in Workspace
    • Working sets
Tela de configuração do projeto
Tela de configuração do projeto

  • Clique em Next novamente e na tela seguinte configure os ícones.


Tela de configuração dos icones
Tela de configuração dos icones

  • Clique em Next novamente e selecione o tipo de Active inicial.
  • Clique em Next novamente e complete os campos seguintes:
    • Activity Name
    • Layout Name
    • Navigaton Type
Tela de criação de Activity principal
Tela de criação de Activity principal

  • Clique em Finish para finalizar a criação do projeto.


    Execução do aplicativo em um AVD

    Para executar a aplicação clique com o botão direito em cima do projeto e no menu de contexto que aparece clique em Run as à Android Application.

    O Eclipse vai executar todo o  processo de compilação para gerar o APK e depois será instalado e executado o aplicativo em um AVD aberto ou se não tiver um AVD executando no momento será executado um AVD.


    Execução do aplicativo em um dispositivo Android

    Também é possível executar o aplicativo em um dispositivo Android,  para o isso é necessário conectar o seu dispositivo em uma porta USB e ter instalado os drives para usar a USB com o dispositivo Android e também ativar os recursos de depuração USB em seu dispositivo Android.


    Ex:  Configuração à Aplicações à Desenvolvimento à Depuração de USB

    Conforme imagem abaixo:


    Configuração de Depuração de USB
    Configuração de Depuração de USB


    Com isso foi mostrado como se prepara um ambiente de desenvolvimento para aplicativos Android.  Bons programas.








Códigos secretos do android



Os códigos secretos do android servem para temos acesso a várias propriedades do telefones e podemos com isso também alterar algumas delas.

 1.       Informação sobre o telefone.
a.       *#*#4636#*#* -  Esse código mostra informações sobre seu telefone e bateria. Quando é executado mostra 4 menus que são os seguintes:
                                                               i.      Informações do telefone
                                                             ii.      Informações da bateria
                                                            iii.      Estatistica de utilização
                                                           iv.      Informação de Wifi
b.      *#*#34971539#*#* - Informações sobre a câmera do telefone. Mostra 4 opções:
                                                               i.      Update camera firmware in image
                                                             ii.      Update camera firmware in SD card
                                                            iii.      Get camera firmware version
                                                           iv.      Get firmware updade count
c.       Informações sobre a versão do Firmware
                                                               i.      *#*#4986*2650468#*#* - PDA, Phone, WH, RFCallDate
                                                             ii.      *#*#1234#*#* - Informações sobre o PDA e telefone.
                                                            iii.      *#*#1111#*#* - Informações sobre a versão da FTA SW
                                                           iv.      *#*#2222#*#* - Informações sobre a versão da FTA HW
                                                             v.      *#*#44336#*#* - informações sobre PDA, Telefone, CSC, Built Time e ChangeList.
                                                           vi.      *#*#3264#*#*  - Versão da RAM
                                                          vii.      *#*#2663#*#* - Versão screen Touch

 2.       Reset de informações e configurações
a.       *#*#7780#*#* - Usado para voltar as configurações de fabrica.
                                                               i.      Esse código remove:
1.       Contas Google
2.       Dados e configurações de aplicações
3.       Aplicações baixadas
                                                             ii.      Não remove:
1.        O Sistema e programas internos.
2.       Arquivos no SD card.
b.      *#*#2767*3855# - Formatação do telefone – reinstala a firware, esse código apaga todos os arquivos e configurações inclusive a memory interna de armazanamento.
c.       *#*#7594#*#* - Esse código altera o modo como o pressionamento longo do botão de ligar o telefone funciona.  Por padrão um pressionamento longo no botão de ligar/desligar apresenta um menu com as opções: Silent mode, Airplane mode and Power off. Executando esse código um pressionamento longo vai  fazer o telefone desligar imediatamente.
d.      *#*#1973286640#*#* - Entre no modo de serviço. Serve para executar vários testes e mudar configurações no modo de serviço.

 3.       Backup de arquivos
a.       *#*#273283*255*663282*#*#* - Faz um backup de arquivos para a área do sistema ou para a área de usuário.

 4.       Testes de WLAN, GPS e Bluetooth
a.       *#*#232339#*#*, *#*#526#*#*, *#*#528#*#* - Esses códigos fazem vários testes de WLAN.
b.      *#*#232338#*#* - Mostra o endereço MAC  do WIFI.
c.       *#*#1472365#*#* e *#*#1575#*#* -  Teste de GPS
d.      *#*#232331*#*# - Teste de Bluetooth
e.      *#*#232337*#*# - Mostra o endereço do device do Bluetooth.

 5.       Testes de Fabrica
a.       *#*#0283#*#* - Teste de Loopback
b.      *#*#2664#*#* - Teste do Touch da tela
c.       *#*#0673#*#* e *#*#0289#*#* - Teste de som dos componentes do telefone.
d.      *#*#0*#*#* - Teste do LCD
e.      *#*#0588#*#* - Teste do sensor de Proximidade
f.        *#*#0842#*#* - Teste de devices -  Vibraçao e BackLight.