3

Google マップ Api V2 を使用して MAP を表示しています。PC で実行しているときにデバイスに正常に表示されましたが、今は署名済みのエクスポート apk を介してアプリケーションに署名し、.keystore および .apk として作成し、証明書を作成して現在使用しています。そのapkファイルとアプリケーションを実行していますが、http://developer.android.com/tools/publishing/app-signing.htmlを使用してリリースキーを作成しても、マップは白い画面を表示するだけで表示されず、 すべて のリンクに記載されている手順ですが、地図が表示されません。助けてください。

ありがとう。

4

6 に答える 6

3

新しく作成したキーストアを使用して新しいマップ API キーを作成し、それを Google Map Api コンソール ページに配置する必要があります。以下のコマンドを使用します。

PATH OF YOUR KEYTOOL FILE/keytool -list -v -keystore YOURKEYSTORENAME

SHA-1 が取得されるので、保存します。Google API コンソール ページに移動し、この SHA-1 を使用して新しい Android キーを作成し、新しく作成したキーをアプリに配置します。それは確かに機能します。

于 2013-10-08T09:53:50.753 に答える
2

リリースキーでマップに署名する必要があります;) debug.keystore でマップに署名しました

Google Maps API v2 リリース キーの入手方法

Google マップ v2 はじめに

私のpublic class VentanaMapa extends FragmentActivity いつprivate GoogleMap mMap;

status = GooglePlayServicesUtil
            .isGooglePlayServicesAvailable(getBaseContext());
    Intent intentErrorMapa = null;
    switch (status) {
    case ConnectionResult.SUCCESS:
        SupportMapFragment SupportMap = (SupportMapFragment) getSupportFragmentManager()
                .findFragmentById(R.id.map);
        mMap = SupportMap.getMap();
        mMap.setMapType(GoogleMap.MAP_TYPE_NORMAL);

        mMap.getUiSettings().setZoomControlsEnabled(true);
        mMap.getUiSettings().setCompassEnabled(true);

        new ObtenerEnvio().execute(_empAlbaran, _codAlbaran.toString(),
                _lineaAlbaran.toString());
        mMap.setMyLocationEnabled(true);
        break;

    case ConnectionResult.SERVICE_MISSING:
        Toast.makeText(VentanaMapa.this, R.string.ErrorMapaServiceMissing,
                Toast.LENGTH_LONG).show();
        break;

    case ConnectionResult.SIGN_IN_REQUIRED:
        Toast.makeText(VentanaMapa.this, R.string.ErrorMapaSignRequired,
                Toast.LENGTH_LONG).show();
        break;

    case ConnectionResult.SERVICE_VERSION_UPDATE_REQUIRED:
        Toast.makeText(VentanaMapa.this, R.string.ErrorMapaServiceUpdate,
                Toast.LENGTH_LONG).show();
        break;
    case 999:
        Toast.makeText(VentanaMapa.this, R.string.ErrorCargarMapa,
                Toast.LENGTH_LONG).show();
        break;
    }

マイ Map.xml:

`<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity" >

<fragment
    android:id="@+id/map"
    android:name="com.google.android.gms.maps.SupportMapFragment"
    android:layout_width="fill_parent"
    android:layout_height="100dp"
    android:layout_above="@+id/ImageButtonAnteriorMapa"
    android:layout_alignParentTop="true" />

</RelativeLayout>

1) アプリに署名するためのリリース キーを作成します。あなたが持っているSHA1は、Google APIコンソールに行く必要があります。SHA1_number;your.package 2) のような新しい Android キーを作成し、マニフェストに次のように追加する必要があるこのキーを使用し <meta-data android:name="com.google.android.maps.v2.API_KEY" android:value="your_key_for_release" /> ます</application> 。logcat をチェックして、Google マップから受け取ったメッセージを正確に確認してください

于 2013-07-19T08:09:31.120 に答える
1

私は同じ問題に直面しました,最終的に解決策を得ました,親切にあなたの開発者アカウントをチェックしてください.APIキー生成の権限があります.この手順に従って、Google Play署名付きAPKでマップを表示してください.

1. Create the Api using Debugging SHA1.
(eg)F0:0F:F0:0F:F0:0F:F0:0F:F0:0F:F0:0F:F0:0F:F0:0F:F0:0F:F0:0F;com.blabla.app
2.Create the Api using Relased SHA1 from appname.keystore.
(eg)F2:83:F2:83:F2:83:F2:83:F2:83:F2:83:F2:83:F2:83:F2:83:F2:83;com.blabla.app
 you have an option to create on this api in single textfield in developerId api console page.

This kind of option are available only in developer account.Try it.Thank you.
Please refer the following Image if u have any doubt.

ここに画像の説明を入力

于 2014-10-24T19:21:42.707 に答える
0

リリース キーストアの Android SHA1 フィンガープリントを見つけるには、次の手順に従います。

ターミナルを開きますディレクトリをJDK binディレクトリに変更します.私のものはjdk1.7.0_05でした(あなたにとっては異なるかもしれません)

cd C:\Program Files\Java\jdk1.7.0_05\bin

次に、keytool.exe を実行する必要があります。次の行を使用して、SHA1 フィンガープリントを取得します。

keytool -list -v -keystore {keystore_name} -alias {alias_name}

例:

keytool -list -v -keystore C:\Users\MG\Desktop\test.jks -alias test

パスワードの入力を求めるプロンプトが表示されます。パスワードを入力すると、SHA1 および MD5 フィンガープリントが取得されます。

于 2016-05-07T15:33:55.820 に答える
0

Google API コンソールで、signedsha1 キーを追加して変更しましたManifest.xmlか?

Eclipseでは完全に異なるため、signedプロジェクトを Android アプリケーションとしてエクスポートするときは、キーストアを選択し、[] をクリックする前に、ウィンドウの下部に sha1 キーがあります。この特定のキーを API コンソールに追加する必要があります。debug keystorefinish

于 2013-07-19T08:12:22.457 に答える