Проблемы с конвертацией проекта Android Studio в новый ключ API - PullRequest
1 голос
/ 16 апреля 2019

Я создал проект, который использует Google Maps SDK для Android еще в 2018 году, который по сути является геолокационным.Сейчас я пытаюсь перезапустить проект, однако Google изменил способ внедрения вашего ключа API в вашу программу.Кто-нибудь знает обычный метод добавления вашего ключа API в проект Android Studio в 2019 году. Версия 3.3.

Проект возник на моем рабочем столе, где я некоторое время не обновлял Android Studio.Я взял проект и загрузил его на свой ноутбук под управлением Android Studio 3.3.Он построен отлично и работает функционально идеально, за исключением того, что на карте будет отображаться только водяной знак Google.

Куда я теперь на самом деле положу свой ключ?Я читал, что он должен быть в gradle.properties, но и в других местах.Так, каковы обычные методы, чтобы заставить это работать?

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.tommy.app">

    <!--
         The ACCESS_COARSE/FINE_LOCATION permissions are not required to use
         Google Maps Android API v2, but you must specify either coarse or fine
         location permissions for the 'MyLocation' functionality. 
    -->
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <!--
             The API key for Google Maps-based APIs is defined as a string resource.
             (See the file "res/values/google_maps_api.xml").
             Note that the API key is linked to the encryption key used to sign the APK.
             You need a different API key for each encryption key, including the release key that is used to
             sign the APK for publishing.
             You can define the keys for the debug and release targets in src/debug/ and src/release/. 
        -->
        <meta-data
            android:name="com.google.android.geo.API_KEY"
            android:value="@string/google_maps_key" />

        <activity
            android:name=".MapSearch"
            android:label="@string/title_activity_map_search">
            <meta-data
                android:name="android.support.PARENT_ACTIVITY"
                android:value="com.example.tommy.app.MainActivity" />
        </activity>
        <activity
            android:name=".Map2"
            android:label="@string/title_activity_map2"></activity>
    </application>

</manifest>

Карта должна определять местоположение, введенное в первом действии.

1 Ответ

0 голосов
/ 17 апреля 2019

Если у вас возникли проблемы с переносом компьютера проекта на компьютер, просто перейдите к учетным данным ключа API через Google Cloud Development, найдите ключ, который вы изначально использовали, добавьте новое ограничение для того же имени проекта, но с вашим новым SHA1 ( с нового ПК). Посмотрите хранилище ключей, чтобы узнать свой SHA.

...