2017-06-09 7 views
0

Google Playからアプリをダウンロードするとき、Googleマップは読み込まれません。 .apkファイルを直接ダウンロードして(携帯電話に転送してダウンロードする)、アプリが読み込まれました。 私はすべてを検索し、それでも動作しません。 これは私がやったことです:AndroidのスタジオでGoogle PlayストアからアプリをダウンロードするときにGoogleマップが読み込まれない

  1. 、ビルド - >私は新しいキーストアの「鍵ストア」と新しいキー「アプリ」
  2. 実行作成したサインAPKを生成します。keytool -list -v -keystoreをkeystore.jks -alias app。
  3. ステップ2の出力で、「証明書フィンガープリント」:「SHA1」の値とパッケージ名「com.gilshelef.feedme」(AndroidManifest.xmlファイル)を取得し、Googleで新しいAPIキーを生成しましたAPIコンソール。私はキーを 'android apps'に制限し、SHA1とパッケージ名を追加しました。
  4. は私が私のマニフェストファイルで生成されたキー(ステップ3)を配置:>サインAPKを生成アンドロイドスタジオで

    <meta-data android:name="com.google.android.geo.API_KEY" android:value="@string/google_maps_key" />

  5. 、ビルド - 私はステップ1で作成したキーストアを使用し、同じキー。

  6. 私は、生成されたapkをGoogleプレイにアップロードしました。

Googleからアプリをダウンロードした後、マップはまだ空白です。

NOTES:

  1. 私はまた、Androidのスタジオは.jks拡張子を使用しているための.keystoreする.jksからキーストアの拡張子を変更してみました。
  2. GoogleのapiコンソールのキーとAndroidManifest.xmlファイルで使用しているキーが同じであることを確認しました。
  3. google apiコンソールとマニフェストファイルでパッケージ名を確認しました。
  4. 私はこれに続いて、thisチュートリアル 'リリース証明書フィンガープリントの表示'を行いました。出力は 'Signature algorithm name:SHA1withRSA'を除いて同じに見えます。私のリリースキーストアの署名アルゴリズム名は 'SHA256withRSA'でしょうか?これは問題でしょうか?

何が間違っていますか?

答えて

0

google_maps_keyは、リリースモードとデバッグモードのものが異なるためです。あなたはリリースバージョンが作られて、あなたは次の操作を行うことができ、あなたのアプリに署名 :

  1. 検索リリースSHA-1フィンガープリント(here
  2. はグーグル
  3. からGoogleマップのAPIの別のAPI_KEYを取得し、新規を入れ(プロジェクトビューで)のsrc /リリース/値/ google_maps_api.xmlでAPI_KEYまたは(アンドロイドビューでアプリ/ RES /値/ google_maps_api.xml(リリース))

はそれがあなたの役に立てば幸い...

+0

これはまさに私がやったことです。keytoolを使用してリリースキーストアからSHA1フィンガープリントを取得しました。 Google apiコンソールで新しいapiキーを作成し、google_maps_api.xmlのリリースにそのキーを追加しました。 –

+0

ステップ1で生成された 'keystore.jks'からアンドロイドスタジオで作成したSHA1フィンガープリントです。私はステップ2のコマンドでkeytoolを使いました。 –

+0

私はそれがあなたの質問ではないと誓っています:o!リリースキーをres/release/values/google_maps_api.xmlに入れて、マニフェストファイルには直接書き込まないようにしました。 –

関連する問題