Подтвердить что ты не робот

Android Studio - карта Google по-прежнему пуста на реальном устройстве Android в выпуске apk

googled it, прочитайте миллионы советов о том, как сгенерировать ключ API Google, как его использовать, но ничего не работает!

  • включено google maps v2 API
  • созданный проект с одним действием с картой google (мастер по умолчанию в студии)
  • созданный ключ в google для проекта отладки, назначенный SHA1; пакет приложения приложения к ключу проекта в google
  • API-ключ, вставленный в google_maps_api.xml(обновлен автоматически AndroidManifest.xml)
  • Создайте и запустите на AVD, на котором работает приложение, отображается карта.

Тогда:

  • API уже включен.
  • в студии Android создано хранилище ключей для выпуска (keystore.rel.jks)
  • сгенерированные отпечатки пальцев (keytool -list -v -keystore C:\Dropbox\AndroidKeyStore\keystore.rel.jks)
  • в Google добавлен новый отпечаток пальца в новый проект выпуска (выпуск SHA1; пакет приложения) - сгенерированный ключ AIza...
  • API-ключ, вставленный в google_maps_api.xml(AndroidManifest.xml обновлен автоматически)
  • сгенерировать подписанное приложение (используя keystore.rel.jks) и установить на реальном устройстве... приложение работает, карта STILL BLANK, только кнопки масштабирования и ярлык Google находятся на

Заранее благодарим за любые советы.

Зденек

4b9b3361

Ответ 1

Убедитесь, что вы ввели ключ доступа к выпуску в файле google_maps_api.xml в папке выпуска.

Сначала перейдите в представление Project, используя раскрывающийся список в левом верхнем углу Project Explorer. Затем разверните app/src/, и вы увидите подпапки debug и release. В этом разделе вы должны увидеть два отдельных файла google_maps_api.xml в разделе debug/res/values и release/res/values.

Убедитесь, что ключ API выпуска находится в файле google_maps_api.xml в папке release/res/values, так как это тот, который будет использоваться для подписанной версии apk.

enter image description here

Ответ 2

Я устал от повторных попыток, оказалось, что у PlayStore есть что-то, называемое сертификатом подписания приложения, и карта работает после того, как я скопирую этот файл sha1 и вставьте его в консоль Google для карта андроида.

Ответ 3

Когда вы пытаетесь создать ключ API карты, убедитесь, что URL содержит правильное имя пакета. Он не должен принимать какой-либо подобный пакет.

неправильный пакет: com.gpslocation.trackerpro.Activities


правильный пакет: com.gpslocation.trackerpro

enter image description here

После редактирования не забудьте сохранить

Ответ 4

Убедитесь, что ключ карты, введенный в файл google_maps_api.xml, - это тот же самый ключ для Android, сгенерированный консолью Google.

Вы также можете попробовать новый ключ.

Ответ 5

enter image description here Я столкнулся с той же проблемой, в моем случае отпечаток моего пакета, использованного в ключе API Google Map, не совпадал, поэтому я сделал следующее:

  • Создайте новую активность на карте Google.
  • Перейдите на страницу google_maps_api.xml.
  • Скопируйте приведенную в этом файле ссылку в браузере (войдите в учетную запись Google).
  • На Google создайте некоторый проект здесь и нажмите продолжить
  • Нажмите на создать ключ API
  • Скопируйте ключ и вставьте в google_maps_api.xml

    string name = "google_maps_key" templateMergeStrategy = "preserve" transurable = "false" ВАШ КЛЮЧ ЗДЕСЬ

И выполнить заявку

Не используйте ниже fingerprint, или ключ, создайте ваш отдельный на основе пакета и приложения

Ответ 6

как правило, вы должны сделать следующие шаги:

1- Создание новых карт Активность в андроид студии

2- В google_maps_api.xml откройте ссылку в строке 3

3- Подтвердите данные и получите ключ в Firebase

4- Скопируйте ключ в google_maps_api.xml и отпустите

5- Получить релиз SHA1 на вкладке gradle → отчет о подписи

полезная ссылка для получения sha1

полезная ссылка для подписи приложения в режиме отладки для получения sha1

Ответ 7

Перейдите по адресу h ttps://play.google.com/apps/publish/, а затем к App signing:

enter image description here

Может быть, вы увидите это:

enter image description here

Если это так, возможно, вы разработчик, а не владелец аккаунта. Вам нужно будет связаться с владельцем учетной записи и попросить его/ее завершить этот процесс. Следуйте этой статье о том, как это сделать:

https://learnfreecoding.com/how-to-sign-your-android-app-with-signed-key-private_key-pepk/

Владелец аккаунта попадет на этот экран:

enter image description here

Попросите их выбрать Upload a key exported from Android Studio. Им нужно будет загрузить файл private_key.pepk. Вот как вы получаете этот файл из Android Studio:

  • Зайдите в Build > Generate Signed Bundle/APK...

enter image description here

Выберите Android App Bundle и нажмите " Next:

enter image description here

Укажите соответствующие учетные данные и установите флажок " Export encrypted key for enrolling published apps in Google Play App Signing.

enter image description here

Укажите папку назначения и убедитесь, что вы выбрали release прежде чем нажать кнопку " Finish:

enter image description here

Это сгенерирует файл private_key.pepk который вам нужно будет предоставить для Upload a key exported from Android Studio.

После выполнения вышеизложенного, когда вы перейдете в раздел App signing приложения вашего приложения, вы увидите что-то вроде этого:

enter image description here

Тогда вы увидите, что Карты Google работают правильно на реальных физических устройствах Android Studio, а не только на эмуляторе Android Studio. Это было решением для меня.

Ответ 8

Застрял в этом вопросе на один день. Я попробовал все и в конце концов нашел следующий код в моем манифесте:

<supports-screens
   android:anyDensity="false"
   android:largeScreens="true"
   android:normalScreens="true"
   android:smallScreens="false"
   android:xlargeScreens="true" />

После удаления этих строк мои карты отображаются правильно.