web-dev-qa-db-ja.com

Googleマップが表示されていないAPKファイルをリリースする

グーグル開発者ドキュメントに記載されているとおりの手順を正確に適用してサンプルグーグルマッププロジェクトを作成し、すべてがエミュレーターで正常に動作しましたが、プロジェクトapkファイルを生成して実際のデバイスで起動すると、Samsung Galaxy S4グーグルマップが表示されません画面の左下隅に、色付きのGoogleロゴが表示された空白の背景のみが表示されます!!

Googleマップの新しいプロジェクトを作成しました。プロジェクトの新しい.jksファイルを作成し、ストアとキーパスとエイリアスを作成してから、cmd Java binからdev.google.comに移動したSHA1を抽出しました/ consoleが新しいプロジェクトを作成し、Googleマップを有効にしましたAndroid APIが作成された資格情報からAPIキーを作成しましたこのAPIキーをプロジェクトのgoogle_maps_api.xmlに貼り付けて、プロジェクトの.jksファイルパスでsigningConfigsリリースを更新しました。エイリアスと2つのパスワード。Android Studioから署名済みAPKを生成し、次にapp-release.apkを実際のデバイスに転送してから、同じ問題のgoogleマップが表示されないようにインストールしました。

24
user2985035

この問題の理由

これは、debugreleaseタイプに異なるSHA1sがあるために発生しました。

この問題の修正

releaseAPKの構築に使用したキーストアのSHA1をGoogleコンソールに追加します

ステップ

  1. 署名済みAPKを生成するときにキーストアのパスを取得する

    ビルド---->署名済みAPKを生成..

キーストアパスを保存します

enter image description here

ビルドタイプを作成することを忘れないでください--- release

enter image description here

  1. キーストアからSHA1を抽出します。

以下のターミナル使用コマンドを開きます。

 keytool -list -v -keystore "/Users/NT/Desktop/generalkey.jks"

キーストアのパスワードを要求されます。

パスをキーストアパスに変更しますkeytool -list -v -keystore "keystore path"

証明書のフィンガープリントから、SHA1が表示されます

  1. このSHA1とパッケージ名を使用してAndroidキーを生成します

enter image description here

キーストアを使用してAPKを生成し、マップを楽しむ

37
Mina Fawzy

ばかげているかもしれませんが、APIキーが含まれています

app\src\debug\res\values\google_maps_api.xml (debug)

また、に含める必要があります

app\src\release\res\values\google_maps_api.xml (release)

9
Varun Kumar

まだこの問題に直面している人がいる場合:

これは私に起こりました。デバッグ用とanotherリリース用の2つのGoogleマップAPIキーが必要なため、次のようにチェックインできます。

C:\ Users\username\AndroidStudioProjects\yourapp\app\src\debug\res\valuesとすると、次のようなapiキーを持つxmlが見つかります。

    <string name="google_maps_key" templateMergeStrategy="preserve" 
          translatable="false">AIza...etc</string>

ここをチェックすると:

C:\ Users\username\AndroidStudioProjects\yourapp\app\src\release\res\values xmlが見つかりますが、次のようにapiキーがありません。

     <string name="google_maps_key" templateMergeStrategy="preserve" 
         translatable="false">YOUR_KEY_HERE</string>

xmlファイル自体にコメントとして記載されていました。

アプリケーションをリリースする前に、Google Maps APIキーが必要です。

To do this, you can either add your release key credentials to your existing
key, or create a new key.

Note that this file specifies the API key for the release build target.
If you have previously set up a key for the debug target with the debug signing certificate,
you will also need to set up a key for your release certificate.

Follow the directions here:

https://developers.google.com/maps/documentation/Android/signup

Once you have your key (it starts with "AIza"), replace the "google_maps_key"
string in this file.
5
ehab

ストアで公開する前にGoogleで署名されたapkなので、google pushishアプリ---> app signningに移動し、署名済みのキーをgoogle開発者コンソールに追加します。3つのキーsha1を追加する必要があります。

3
Long Bui Duc

別の追加手順:Google Play開発者コンソールで、アプリ署名SHA1フィンガープリントを追加します: enter image description here

3

次のことを確認してください。

  • この下のファイルは、デバッグとリリースの両方にある必要があります

    app\src\debug\res\values\google_maps_api.xml (debug)
    

    あなたも含める必要があります

    app\src\release\res\values\google_maps_api.xml (release)
    
  • SHA1 for release apkをGoogle Apiコンソールに追加します。
    SHA1キーはplay console >> App Signing >> SHA1 Certificateから取得できます

2

Android apkのリリースバージョンでマップを表示するには、開発者は、アプリケーションの公開後にGoogle Play Consoleによって作成された、更新されたSHA-1キーを追加する必要があります。コンソールの[アプリの署名]セクションに移動し、 「アプリ署名証明書:SHA-1証明書のフィンガープリント」を探します。フィンガープリントをコピーして、開発者がマップ用のGoogle APIキーを作成したGoogle APIコンソールに貼り付けます。

1
Parita Dey

私がapkを作成しているときにもマップの同じ問題がありました。Googleマップキーを作成したシステムと同じシステムでapkを作成すると、マップが機能し、完全に表示されます。

0
Umair Khan

上記のすべてのケースが機能しない場合は、以下の方法を使用してください。 このためのGoogle Play署名有効化

0
Sagar Jethva