3 Stimmen

Google Karte wird nicht in meiner MapActivity angezeigt.

Ich habe mit dem Eclipse IDE einen Freigabe-Keystore erstellt. Ich habe es mit keytool signiert und auf Google Maps registriert. Ich habe den Schlüssel eingefügt, aber meine Karte wird nicht angezeigt.

Die Karten werden ordnungsgemäß angezeigt, wenn ich den mit meinem Debug-Keystore verknüpften Schlüssel verwende.

Wie kann ich das diagnostizieren? Ich habe die gleichen Schritte wie bei Debug für die Freigabe befolgt.

UPDATE:

Hier ist meine Manifest-Datei:

2voto

Falmarri Punkte 46357

Hast du die Internetberechtigung hinzugefügt? Diese Frage wird buchstäblich jeden Tag gestellt.

0voto

Octavian A. Damiean Punkte 39044

Sie müssen einen separaten API-Schlüssel erhalten, wenn Sie sich mit dem Veröffentlichungsschlüssel speichern, da sich Ihr Fingerabdruck ändert.

Vergewissern Sie sich auch, dass die .apk mit dem richtigen Schlüssel signiert ist.

Aktualisierung: Was ich meine ist, sind Sie sicher, dass Sie Ihre APK mit dem richtigen Schlüssel signieren? Das bedeutet, sind Sie sicher, dass Sie es mit dem Veröffentlichungsschlüssel signieren, wenn Sie die APK generieren?

Wenn Sie es exportieren, wählen Sie tatsächlich den Keystore aus, mit dem Sie es signieren möchten?

0voto

coernel Punkte 79

Also, ich bin gestern selbst auf dieses Problem gestoßen und habe es gelöst, indem ich die .apk manuell signiert habe

Ich gehe davon aus, dass Sie Ihren privaten Keystore verwenden und den Release Map-Schlüssel in Ihrer MapView (und anderen Ressourcen, falls erforderlich) eingegeben haben.

Um dies zu tun, wählen Sie Ihr Projekt aus dem Projekt-Explorer von Eclipse (Rechtsklick) -> Android-Tools -> Exportieren des ungesignierten Pakets. Speichern Sie es, wo immer Sie möchten.

Öffnen Sie Ihr Terminal (Ich benutze eine Windows 7-Maschine), wechseln Sie in Ihren JDK-Ordner (NICHT JRE), gehen Sie weiter in bin\.

Verwenden Sie folgenden Befehl: (Beachten Sie, dass die " erforderlich sind, wenn Sie einen Pfad eingeben)

        jarsigner -verbose -sigalg MD5withRSA -digestalg SHA1 -keystore "Pfad-zu-Ihrem-Keystore" "Pfad-zu-Ihrer-apk"  -certs 

Um den Signierungsprozess zu überprüfen, führen Sie aus

jarsigner -verify "Pfad-zu-kürzlich-signierter-apk" -verbose 

(Sie können die verbose-Option weglassen, wenn Sie möchten). Es wird (hoffentlich) "jar verified" anzeigen (eventuell wird es Sie auch vor Einträgen ohne validierte Zertifikatskette warnen, das war in meinem Fall nicht relevant)

Führen Sie dann zipalign aus:

zipalign -v 4 "Pfad-zu-signierter-apk" "Pfad-zu-signiertem-und-ausgerichtetem.apk"

Beachten Sie, dass eine neue apk erstellt wird, die den Standards von Google entspricht.

Installieren Sie diese apk und Ihre Karten sollten einwandfrei angezeigt werden!

Aus: http://developer.android.com/tools/publishing/app-signing.html#ExportWizard

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X