Google Maps API MapView загружается не полностью - PullRequest
0 голосов
/ 18 января 2019

Когда я открываю свое приложение, единственное, что показывает MapView, - это карта мира (его часть), загружающаяся действительно очень медленно.Разрешение низкое, я не могу увеличить изображение и увидеть улицы, дорогу и т. Д. В основном, все просто пикселизировано, и когда я увеличиваю карту, даже не загружается, я вижу только сетку.

Я перепробовал много вещей, но ничего не работает.Любые предложения?

  • Я много раз проверял свой ключ API и даже генерировал новый.
  • Я ограничил свой ключ.
  • Я предоставил все необходимые разрешения.

This is my app, when I zoom in, it stays pixelated

Я почти уверен, что мой код в порядке, но я все равно его опубликую.

//The map code
        public void LoadMap()
        {
            if (IsGoogleApiAvailabe())
            {
                MapFragment mMapFragment = MapFragment.NewInstance();
                FragmentTransaction fragmentTransaction = FragmentManager.BeginTransaction();
                fragmentTransaction.Add(Resource.Id.fragment_container, mMapFragment);
                fragmentTransaction.Commit();
                mMapFragment.GetMapAsync(this);
            }
        }
//Manifest File
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
          android:versionCode="1" 
          android:versionName="1.0" 
          package="com.example.android.porject">
  <permission
         android:name="com.example.android.PCP.permission.MAPS_RECEIVE"
         android:protectionLevel="signature" />

  <uses-sdk android:minSdkVersion="21" android:targetSdkVersion="27" />

  <uses-permission android:name="android.permission.VIBRATE" />
  <uses-permission android:name="com.example.android.PCP.permission.MAPS_RECEIVE" />
  <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
  <uses-permission android:name="android.permission.INTERNET"/>
  <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
  <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
  <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
  <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />

  <uses-feature
        android:glEsVersion="0x00020000"
        android:required="true"/>


  <application 
    android:allowBackup="true" 
    android:icon="@mipmap/ic_launcher" 
    android:label="P.C.P" 
    android:roundIcon="@mipmap/ic_launcher_round" 
    android:supportsRtl="true" 
    android:theme="@style/AppTheme">

    <meta-data
      android:name = "com.google.android.maps.v2.API_KEY"
      android:value = "@string/GoogleKey" />
    <meta-data
    android:name="com.google.android.gms.version"
    android:value="@integer/google_play_services_version" />

  </application>
</manifest>

Чего мне не хватает?

1 Ответ

0 голосов
/ 05 февраля 2019

Очевидно, все это время я использовал неправильный SHA-1.Не делайте эту ошибку: по какой-то причине SHA-1 из проекта Google Maps для Android Studio был ошибочным - как объясняется в большинстве учебных пособий по Google Maps, как самый простой способ получить этот отпечаток.Альтернативные способы получения отпечатка пальца:

  1. В окне вывода отладочной информации VS во время отладки приложения найдите «сертификат хранилища ключей» прямо под этими инструкциями в окне вывода: Ошибка авторизации,Обратитесь к developer.google.com/maps/documentation/android-api/start, чтобы узнать, как правильно настроить карту.В консоли разработчика Google (console.developers.google.com) убедитесь, что «Google Maps Android API v2» включен.Убедитесь, что существует следующий ключ Android: {KEY} ".

  2. Я еще не пробовал эту опцию, но используйте следующую команду, чтобы получить fingerprint :: keytool -list -v-keystore mystore.keystore

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...