2016-12-17 87 views
0

嗨我無法加載地圖,它只在屏幕底部顯示谷歌標誌,當我嘗試加載它。 Iv按照程序獲得了API key,並在thyr應該在的地方提到它。仍然顯示我的錯誤。其中之一是api鍵未激活。 iv到處閱讀,但沒有得到如何激活API鍵,因爲所有的教程指定了一個頁面,你可以手動激活鍵,但我認爲谷歌已經從那裏更新,現在該頁面不存在了。如果有其他選擇,請提出建議。即時貼上我的代碼。地圖不加載,只顯示谷歌寫在Android工作室底部谷歌屏幕

這是我的清單文件

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

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

<permission android:name="com.rohanchandak.find_em.permission.MAPS_RECIEVE" 
    android:protectionLevel="signature"/> 

<uses-permission android:name="com.rohanchandak.find_em.permission.MAPS_RECIEVE"/> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> 
<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" /> 
<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-feature 
    android:glEsVersion="0x00020000" 
    android:required="true"/> 

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

      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 

    <activity android:name=".MainActivity" /> 
    <activity android:name=".first_screen" /> 
    <activity android:name=".family_details" /> 
    <activity 
     android:name=".MapsActivity"/> 

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

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

</application> 

</manifest> 

這是我activity_maps

package com.rohanchandak.find_em; 

import android.Manifest; 
import android.app.Activity; 
import android.app.Dialog; 
import android.content.Context; 
import android.content.SharedPreferences; 
import android.content.pm.PackageManager; 
import android.location.Location; 
import android.location.LocationManager; 
import android.os.Build; 
import android.support.annotation.RequiresApi; 
import android.support.v4.app.ActivityCompat; 
import android.support.v4.app.FragmentActivity; 
import android.os.Bundle; 
import android.widget.Toast; 
import com.google.android.gms.maps.CameraUpdateFactory; 
import com.google.android.gms.maps.GoogleMap; 
import com.google.android.gms.maps.OnMapReadyCallback; 
import com.google.android.gms.maps.SupportMapFragment; 
import com.google.android.gms.maps.model.LatLng; 
import com.google.android.gms.maps.model.MarkerOptions; 
import com.google.android.gms.common.ConnectionResult; 
import com.google.android.gms.common.GoogleApiAvailability; 
import com.google.android.gms.location.LocationListener; 


public class MapsActivity extends FragmentActivity implements OnMapReadyCallback { 

private GoogleMap mGoogleMap; 
private LocationManager locationManager; 
private LocationListener locationListener; 
String activity; 


@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_maps); 
    if (googleServicesAvailable()) { 
     Toast.makeText(this, "Getting Directions", Toast.LENGTH_LONG).show(); 
    } 

    // Obtain the SupportMapFragment and get notified when the map is ready to be used. 
    SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager() 
      .findFragmentById(R.id.map); 
    mapFragment.getMapAsync(this); 

} 

public boolean googleServicesAvailable() { 
    GoogleApiAvailability api = GoogleApiAvailability.getInstance(); 
    int isAvailable = api.isGooglePlayServicesAvailable(this); 
    if (isAvailable == ConnectionResult.SUCCESS) { 
     return true; 
    } else if (api.isUserResolvableError(isAvailable)) { 
     Dialog dialog = api.getErrorDialog(this, isAvailable, 0); 
     dialog.show(); 
    } else { 
     Toast.makeText(this, "Cant Connect To Play Services", Toast.LENGTH_LONG).show(); 
    } 
    return false; 
} 

@Override 
public void onMapReady(GoogleMap googleMap) { 
    mGoogleMap = googleMap; 
     // Add a marker in Sydney and move the camera 
     LatLng sydney = new LatLng(-34, 151); 
     mGoogleMap.addMarker(new MarkerOptions().position(sydney).title("I'm Here")); 
     mGoogleMap.moveCamera(CameraUpdateFactory.newLatLng(sydney)); 

} 

}

這是我的gradle這個

apply plugin: 'com.android.application' 

android { 
compileSdkVersion 25 
buildToolsVersion "25.0.0" 
defaultConfig { 
    applicationId "com.rohanchandak.find_em" 
    minSdkVersion 15 
    targetSdkVersion 25 
    versionCode 1 
    versionName "1.0" 
    testInstrumentationRunner                        "android.support.test.runner.AndroidJUnitRunner" 
    multiDexEnabled true 
} 
buildTypes { 
    release { 
     minifyEnabled false 
     proguardFiles getDefaultProguardFile('proguard-android.txt'),         'proguard-rules.pro' 
    } 
} 

}

dependencies { 
compile fileTree(dir: 'libs', include: ['*.jar']) 
compile 'com.android.support:multidex:1.0.1' 
androidTestCompile('com.android.support.test.espresso:espresso- core:2.2.2', { 
    exclude group: 'com.android.support', module: 'support-annotations' 
}) 
compile 'com.android.support:appcompat-v7:25.0.1' 
compile 'com.android.support:design:25.0.1' 
compile 'com.google.android.gms:play-services:10.0.1' 
testCompile 'junit:junit:4.12' 

}

IV已經過去了2天只是閱讀和做的東西,沒什麼是hapenin。 PL幫助

+0

訪問[這裏](https://console.developers.google.com) – Shashanth

回答

0

如果您有關於API密鑰的錯誤那是因爲你沒有正確遵循本教程:https://developers.google.com/maps/documentation/android-api/signup?hl=en

要確保你有一個CORRCT SHA-1的指紋,讓這個你應該遵守這些指示:再次 How to get the SHA-1 fingerprint certificate in Android Studio for debug mode?

+0

ok..so IV所做的一切..創造了一個新的API複查我的SHA1指紋和INFACT創建了一個新的項目本身讓它起作用。但結果相同。在新項目中還沒有加載地圖,只是顯示一個空白的屏幕.. !!! –

+0

以及即時在真實設備上運行我的代碼,而不是模擬器 –