Android
Android é um sistema operativo baseado no núcleo do Linux6 para dispositivos móveis, desenvolvido pela Open Handset Alliance, liderada pelo Google. Segundo a Google, mais de 1 milhão de utilizadores. Este sistema foi adoptado por várias marcas de topo de mercado HTC, Samsung, Sony, Motorola, LG e Nokia.
O Android está disponível com código aberto desde 21 Outubro de 2008. O Google publicou todo o código sob a licença Apache. No entanto, ele depende de uma autorização da próprio Google para poder aceder à biblioteca de aplicações, Play Store.
Com a API do Google Maps v2 para Android, é possível adicionar mapas com base em dados do Google Maps numa aplicação. A API, que é lida automaticamente com acesso aos servidores do Google Maps, possui métodos que permitem adicionar marcadores, polígonos, sobreposições, e ainda mudar a visão de uma área do mapa.
IDE
O IDE mais utilizado para o desenvolvimento de Android é o Eclipse. A empresa multinacional de serviços e software, Google, disponibiliza uma versão optimizada onde permite o download gratuito, em developer.android.com/sdk/index.html.
Após descarregar o IDE tem reunidos os elementos necessários para o desenvolvimento de aplicações para o Android. Com o processo de download terminado, irá ter uma pasta de trabalho contendo o nome: adt-bundle-windows-x86_64-20131030
(pode diferir um pouco mediante a versão).
Passos a seguir:
- Abrir a pasta
adt-bundle-windows-x86_64-20131030
>eclipse
>eclipse.exe
> Ok
Criar um projeto
- File > New > Android Application Project
Neste passo é possível dar o nome ao projeto e escolher as versões para que estará disponível a aplicação desenvolvida. Neste caso irá correr em dispostivos com versão 11 até à 19.
- Next
Nesta janela pode escolher o logotipo por defeito ou criar o seu próprio.
- Next
- Next
Cada atividade (janela) é composta por três ficheiros e aqui podemos alterar o seu nome se pretendermos.
- Finish
Importar a biblioteca, uma vez que esta permite aceder ao mapa
Neste passo iremos importar a biblioteca Google Play Services, ou seja, vamos juntar à nossa pasta de trabalho uma pasta que contém todos os serviços de mapas da Google. Desta forma, ser-nos-á permitido invocar todas as funcionalidades no nosso projeto.
O projeto está localizado na diretoria adt-bundle-windows-x86_64-20131030\sdk\extras\google\google_play_services\libproject
. Caso não encontre esta diretoria, deve verificar se o Google Play Services no Android SDK Manager, está instalado; se não estiver apenas tem de selecionar e descarregar.
Após garantir que o projeto google_play_services_lib
existe, prosseguir da seguinte forma:
Passos a seguir:
- Browse > ir a pasta de trabalho
adt-bundle..XXXXX./sdk/extras/google/google_play_services/libproject/google-play-services_lib
Passo a seguir:
Alterar Manifest
Neste momento o projeto está criado, é necessário configurar o ficheiro AndoridManifest.xml
. Este ficheiro tem como objetivo, entre outros, definir as permissões que a aplicação terá. Imaginemos um exemplo prático, os mapas do Google permitem saber a nossa localização. Para isso o nosso telemóvel precisa de utilizar o GPS ou a internet, e se essas permissões não forem dadas neste ficheiro, essa funcionalidade não está disponível.
Passos a seguir:
- Eclipse >
Mapa
>bin
>AndroidManifest.xml
<permission android:name="<NAMESPACE>.permission.MAPS_RECEIVE" android:protectionLevel="signature"/> <uses-feature android:glEsVersion="0x00020000" android:required="true"/> <uses-permissionandroid:name="<NAMESPACE>.permission.MAPS_RECEIVE"/> <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> <uses-permission android:name="android.permission.READ_CONTACTS"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
- Logo de seguida a iniciar o manifest encontras
package="NAMESPACE"
- Copias o teu namesapce
- No
AndroidManifest.xml
trocar onde tempelo que acabas de copiar
Obter a API_Key
A chave do Google Maps API v2 é baseada num pequeno formulário de certificado digital do aplicativo, conhecido como SHA-1 fingerprint. Porque a fingerprint é única, o Google Maps pode usá-la como forma de identificar a sua aplicação. (Foste buscar isto a algum lado?)
Existem dois tipos de certificado: o certificado de debug ( o que vamos usar e serve apenas para propósito de testes e desenvolvimento) e certificados gerados que nos permitem, por exemplo, colocar a aplicação no Google Play.
- Ir ao link https://console.developers.google.com/project e, posteriormente, criar um novo projeto no Google Console.
- Abrir o projeto > APIs & auth > APIs > Activar o Google Maps Android API v2
- APIs & auth > Credentials > Create New Key > Andorid Key
Passos a seguir:
Passos a seguir:
- Colar na janela do Google Console seguida de
;
- Buscar o nome completo da aplicação
- Eclipse >
Mapa
>bin
>AndroidManifest.xml
- Logo de seguida a inciciar o manifest encontras
package="NAMESPACE"
- Copias o teu namesapce
- Eclipse >
- Retornar ao Google Console e colar o nome da app depois do
;
Passos a seguir:
- Depois de carregar em criar, o Google irá fornecer uma key
- Deve substituir no manifest
<!-- Atenção isto deverá ser colocado dentro da tag application --> <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version"/> <meta-data android:name="com.google.android.maps.v2.API_KEY" android:value="Substituir aqui"/>
Alterar Layout
Em Android, o aspeto gráfico de cada atividade é definido num ficheiro XML. Neste caso, vamos editar o ficheiro activity_main.xml
.
Passos a seguir:
- Eclipse >
Mapa
>res
>layout
>activity_main.xml
<?xmlversion="1.0"encoding="utf-8"?> <fragment xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/map" android:name="com.google.android.gms.maps.MapFragment" android:layout_width="match_parent" android:layout_height="match_parent"/>
Alterar a Activity
Uma Activity representa uma interface que nos é apresentada e, além do ficheiro XML que define o aspeto gráfico, existe um ficheiro Java onde é definido o código das funcionalidades.
Neste caso, bastará codificarmos o método onCreate
que faz parte do ciclo de vida de uma atividade e é executado sempre que a atividade é mostrada ao utilizador. Neste método o que iremos fazer é associar o layout XML que acima definimos.
Passos a seguir:
- Eclipse >
Mapa
>src
>MainActivity.java
package com.programar.mapa; import com.google.android.gms.maps.GoogleMap; import com.google.android.gms.maps.MapFragment; import android.app.Activity; import android.os.Bundle; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ((MapFragment) getFragmentManager().findFragmentById(R.id.map)).getMap(); } }
Executar aplicação
A criação do AVD (emulador de dispositivos Android) é feita da seguinte forma:
- Ir a Window\Android Virtual Device Manager
- New
- Preencher segundo a imagem seguinte
- OK
- Start Avd
- (Depois do emulador iniciar) Selecione Choose a running Android device
- OK
No final deste tutorial é possível visualizar no emulador ou dispositivo móvel um mapa como este.