Estou fazendo uma aplicação com a API do Google Maps… mas ele só exibe uma tela com uns quadradinhos… não está exibindo o mapa… e algum erro… ou é poque eu ainda não implementei as classes e métodos ?
Print: http://imageshack.us/photo/my-images/42/capturadetelaem20120220.png/
Olá,
Você cadastrou seu fingerprint no site do Google já?
Se não me engano você vai precisar de permissão pra Internet no seu Manifest também…
Cadastrei… mas só fiquei com uma Dúvida… no exemplo da página tem esse código … 94:1 E: 43:49:87:73: BB: E6: A6: 88: D7: 20: F1: 8E: B5: 98
e quando eu gerei o meu ele apareceu assim: 3a36634f4cdc44bcf4f2d3c…
o formato de número é diferente… é assim mesmo ? Mas quando eu gerei no google ele não me retornou nenhum erro.
MANIFEST:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="your.br"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="8" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<uses-library android:name = "com.google.android.maps"/>
<activity
android:name="br.com.mapa.banese.Map_TesteActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<uses-permission android:name = "android.permission.INTERNET" />
</manifest>
ACTIVITY:
[code]
package br.com.mapa.banese;
import your.br.R;
import com.google.android.maps.MapActivity;
import com.google.android.maps.MapView;
import android.app.Activity;
import android.os.Bundle;
public class Map_TesteActivity extends MapActivity{
/** Called when the activity is first created. */
MapView mapView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//Aplicando ZOOM no mapa.
mapView = (MapView) findViewById(R.id.mapa);
mapView.setBuiltInZoomControls(true);
}
@Override
protected boolean isRouteDisplayed() {
// TODO Auto-generated method stub
return true;
}
}
[/code]
MAIN:
[code]
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<com.google.android.maps.MapView
android:id="@+id/mapa"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:apiKey="0E7YjeiIDq5pxnBPe46-8RuPBeCup4hHQ....."
android:clickable="true"
android:enabled="true" />
</RelativeLayout>
[/code]
O 94:1 E: 43:49:87:73: BB: E6: A6: 88: D7: 20: F1: 8E: B5: 98 é um exemplo de fingerprint… quando você gerou o seu deve ter aparecido algo do tipo, que você coloca então no campo de texto lá na página… ai ele te devolve o api key que é o seu 3a36634f4cdc44bcf4f2d3c…
Então é isso mesmo
Você colocou o target api como Google Apis level 8 no seu projeto? Seu emulador (se estiver testando no emulador) está como Google Apis?
sim… está com o google API e o número 8
será que eles não liberar na hora ? (a chave)
Liberam na hora sim… vou tentar lembrar de algum outro problema que já tive com isso… se lembrar eu te falo!
ok.
Qual a chave que eu coloco ? a que o google gerou, ou do meu computador?
Eu pegue o código no meu computador… copiei e colei no google … ele me gerou a chave… copiei essa nov chave e colei na minha aplicação … é isso mesmo ? ou precisa modificar algum arquivo.?
…
Resolvido!!!
Eu resolvi com o seguinte comando para o linux Ubuntu: (keytool -list -keystore ~/.android/debug.keystore)
O problema estava na chave mesmo… quando eu gerava a chave com o comando MD5SUM ele me retornava algo do tipo 098d09d8098f09f8098
eu colocava no google ele dizia que era válida mas não funcionava (o mapa não exibia…).
Quando eu dei esse primeiro comando para linux no terminal ( keytool -list -keystore ~/.android/debug.keystore )
ele me retornou algo do tipo: A5: T5:1R:7R … coloquei no google e supimpa de bom! ahuahau
Bom! tá aí pra quem precisar futuramente… =)
Até mais e um grande abraço.