0

hi im unable to load maps and its only showing google logo at the bottom of the screen when i try to load it. Iv got the api key as per the procedure and mentioned it at the places where thyr supposed to be. still its showing me error. one of them is api key not activated. iv read everywhere but not got how to activate the api key since all the tutorials specify a page where u can manually activate the key, but i think google has updated from there and now that page doesnt exist anymore. if there are any other alternatives please suggest. im pasting my code below.

this is my manifest file

<?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>

this is my 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));

}

}

this is my 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 already passed 2 days in just reading and doing stuff and nothin is hapenin. pl help

rohan c
  • 31
  • 1
  • 1

1 Answers1

0

If you have an error about API keys it is because you have not correctly followed this tutorial : https://developers.google.com/maps/documentation/android-api/signup?hl=en

Be sure that you have a corrct SHA-1 fingerprint, to get this you should follow those instructions : How to get the SHA-1 fingerprint certificate in Android Studio for debug mode?

Community
  • 1
  • 1
Yoleth
  • 1,269
  • 7
  • 15
  • ok..so iv done everything again.. created a new api rechecked my sha1 fingerprint and infact created a new project itself to make it work. but the results the same. in the new project also the maps not loading and just showing a blank screen..!!! – rohan c Dec 19 '16 at 01:38
  • and also im running my code on a real device and not the emulator – rohan c Dec 19 '16 at 01:39