title: Google maps no empty tiles, no map, no LogCat errors. Map API V2 6/2013
body: <p>My map wont show up.  I DONT even get a map grid nor any error messages in the Log Cat.  I do not get any type of “Failed to authenticate via google api” or anything like that (which makes me believe my api key is correct).  I simply don’t get any type of map. </p>
  
  <p>Configuration &amp; Manifest</p>
  
  <ol>
  <li>I am using the android emulator (I retrived the debug key to generate my API key since im not exporting this as an apk)</li>
  <li>I appropriately got the SHA1 from jdk1.7 and debug keystore</li>
  <li>I enabled both GoogleMaps V2 and GooglMapsAndroidV2 on the API developer console</li>
  <li>I enabled all required and recommended permissions, meta-data, and features (such as openGL 2) as shown below in my manifest</li>
  <li>I have enabled Android PrivateLibraries
  a.  Google-play-services.jar
  b.  Android-support-v4.jar</li>
  <li>I have Android Dependencies: 
  a.  Google-play-services_lib.jar</li>
  <li>I have coppied my project.properties and proguard file at the bottom of this post</li>
  </ol>
  
  <p><img src="https://i.stack.imgur.com/oZFWD.png" alt="enter image description here"></p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="com.example.proximitystuff"
      android:versionCode="1"
      android:versionName="1.0" &gt;
  
      &lt;uses-sdk
          android:minSdkVersion="9"
          android:targetSdkVersion="17" /&gt;
  
      &lt;permission
          android:name="com.example.mapdemo.permission.MAPS_RECEIVE"
          android:protectionLevel="signature"/&gt;
  
      &lt;uses-permission android:name="com.example.proximitystuff.permission.MAPS_RECEIVE"/&gt;
  
      &lt;uses-permission android:name="android.permission.INTERNET"/&gt;
      &lt;uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/&gt;
      &lt;uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/&gt;
      &lt;uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/&gt;
      &lt;!-- The following two permissions are not required to use
           Google Maps Android API v2, but are recommended. --&gt;
      &lt;uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/&gt;
      &lt;uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/&gt;
  
      &lt;uses-feature
          android:glEsVersion="0x00020000"
          android:required="true"/&gt;
  
      &lt;application
          android:allowBackup="true"
          android:icon="@drawable/ic_launcher"
          android:label="@string/app_name"
          android:theme="@style/AppTheme"&gt;
  
          &lt;uses-library
              android:name="com.google.android.maps"/&gt;
          &lt;activity
              android:name="com.example.proximitystuff.MainActivity"
              android:label="@string/app_name" &gt;
              &lt;intent-filter&gt;
                  &lt;action android:name="android.intent.action.MAIN" /&gt;
  
                  &lt;category android:name="android.intent.category.LAUNCHER" /&gt;
              &lt;/intent-filter&gt;
          &lt;/activity&gt;
  
           &lt;activity
              android:name="com.example.proximitystuff.MyMapActivity"
              android:label="@string/app_name" &gt;
              &lt;intent-filter&gt;
                  &lt;action android:name="android.intent.action.MAPACTIVITY" /&gt;
                  &lt;category android:name="android.intent.category.DEFAULT" /&gt;
              &lt;/intent-filter&gt;
          &lt;/activity&gt;
  
          &lt;service
              android:name="com.example.proximitystuff.ProxyBackgroundCheck"
              android:enabled="true"
              android:permission="com.example.ADAMS_PROX_PERMISSION" &gt;
          &lt;/service&gt;
  
         &lt;meta-data
              android:name="com.google.android.maps.v2.API_KEY"
              android:value="AIzaSyBnQNgn166qfatch_xcFwL8K0AfVHBYcGA"/&gt;
  
      &lt;/application&gt;
  
  &lt;/manifest&gt;
  </code></pre>
  
  <p>Java Code and XML layout:
  My main activity uses a button to go into the map activity shown in the screenshot.  The code for this map activity is stipped to the most basic functionality and it still wont work.  One theory I had was that since this class doesn’t inherit from “FragmentActivity” it woulndt be able to work with the xml fragment (I expect I would get at least some type of error in the log if this was the case).</p>
  
  <pre><code>package com.example.proximitystuff;
  
  
  import android.app.Activity;
  import android.os.Bundle;
  
  
  public class MyMapActivity extends Activity {
  
  
      @Override
      protected void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          setContentView(R.layout.activity_my_map);
      }
  }
  
  My XML layout is using the most basic layout possible. 
  &lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;fragment xmlns:android="http://schemas.android.com/apk/res/android"
            android:id="@+id/map"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:name="com.google.android.gms.maps.MapFragment"/&gt;
  </code></pre>
  
  <p><img src="https://i.stack.imgur.com/BOACp.png" alt="enter image description here"></p>
  
  <p>Project.properties</p>
  
  <pre><code># This file is automatically generated by Android Tools.
  # Do not modify this file -- YOUR CHANGES WILL BE ERASED!
  #
  # This file must be checked in Version Control Systems.
  #
  # To customize properties used by the Ant build system edit
  # "ant.properties", and override values to adapt the script to your
  # project structure.
  #
  # To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home):
  #proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt
  
  # Project target.
  target=android-17
  android.library.reference.1=../google-play-services_lib
  </code></pre>
  
  <p>Proguard (just in case this is wrong):</p>
  
  <pre><code># To enable ProGuard in your project, edit project.properties
  # to define the proguard.config property as described in that file.
  #
  # Add project specific ProGuard rules here.
  # By default, the flags in this file are appended to flags specified
  # in ${sdk.dir}/tools/proguard/proguard-android.txt
  # You can edit the include path and order by changing the ProGuard
  # include property in project.properties.
  #
  # For more details, see
  #   http://developer.android.com/guide/developing/tools/proguard.html
  
  # Add any project specific keep options here:
  
  # If your project uses WebView with JS, uncomment the following
  # and specify the fully qualified class name to the JavaScript interface
  # class:
  #-keepclassmembers class fqcn.of.javascript.interface.for.webview {
  #   public *;
  #}
  -keep class * extends java.util.ListResourceBundle {
  
  protected Object[][] getContents();
  
  }
  </code></pre>