title: Google Places API for Android Place Picker Does not work
body: <p>I am unable to use the Place picker in my app. The API worked then just stopped one day with no explanation.The picker shows up for a very short period of time then simply closes with no exception and nothing in the logs. The onActivityResult function is called with requestCode=1, resultCode=2(error code) and with no data. The sample code from google does the same thing. I have tried everything to get this working. anybody experience anything similar? Help please.</p>
  
  <p>AndroidManifest.xml</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.easy.parcelapp."
      android:versionCode="1"
      android:versionName="1.0" &gt;
  
      &lt;uses-sdk
          android:minSdkVersion="16"
          android:targetSdkVersion="22" /&gt;
  
      &lt;uses-feature
          android:glEsVersion="0x00020000"
          android:required="true" /&gt;
  
      &lt;uses-permission android:name="android.permission.CAMERA" /&gt;
      &lt;uses-permission android:name="android.permission.VIBRATE" /&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-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" /&gt;
      &lt;uses-permission android:name="android.permission.INTERNET" /&gt;
      &lt;uses-permission android:name="android.permission.RECEIVE_SMS" /&gt;
      &lt;uses-permission android:name="android.permission.RECORD_AUDIO" /&gt;
      &lt;uses-permission android:name="android.permission.RECORD_VIDEO" /&gt;
      &lt;uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" /&gt;
      &lt;uses-permission android:name="android.permission.READ_CONTACTS" /&gt;
      &lt;uses-permission android:name="android.permission.WRITE_CONTACTS" /&gt;
      &lt;uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /&gt;
      &lt;uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /&gt;
      &lt;uses-permission android:name="android.permission.GET_ACCOUNTS" /&gt;
      &lt;uses-permission android:name="android.permission.BROADCAST_STICKY" /&gt;
      &lt;uses-permission android:name="android.permission.WAKE_LOCK" /&gt;
      &lt;uses-permission android:name="android.permission.READ_PHONE_STATE" /&gt;
      &lt;uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"  /&gt;
      &lt;uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/&gt;
  
      &lt;application
          android:name=".EasiParcelApplication"
          android:allowBackup="true"
          android:icon="@drawable/ic_launcher"
          android:label="@string/app_name"
          android:theme="@style/AppTheme" &gt;
  
          &lt;meta-data
              android:name="com.google.android.gms.version"
              android:value="@integer/google_play_services_version" /&gt;
          &lt;meta-data
              android:name="com.google.android.maps.v2.API_KEY"
              android:value="AIzaSyDEcV-My-Actual-API-Key-goes-here" /&gt;
  
          &lt;activity
              android:name=".MainActivity"
              android:label="@string/app_name"
              android:theme="@android:style/Theme.Holo.Light.NoActionBar" &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=".RegistrationActivity"
              android:label="@string/title_activity_register"
              android:parentActivityName=".MainActivity" &gt;
              &lt;meta-data
                  android:name="android.support.PARENT_ACTIVITY"
                  android:value="com.easiparcel.MainActivity" /&gt;
          &lt;/activity&gt;
          &lt;activity
              android:name=".JobListingActivity"
              android:label="@string/title_activity_listing" &gt;
          &lt;/activity&gt;
          &lt;activity
              android:name=".NewJobActivity"
              android:label="@string/title_activity_new_job"
              android:parentActivityName=".JobListingActivity" &gt;
              &lt;meta-data
                  android:name="android.support.PARENT_ACTIVITY"
                  android:value="com.easiparcel.JobListingActivity" /&gt;
          &lt;/activity&gt;
          &lt;activity
              android:name=".NewJobConfirmation"
              android:label="@string/title_activity_new_job_confirmation"
              android:parentActivityName=".NewJobActivity" &gt;
              &lt;meta-data
                  android:name="android.support.PARENT_ACTIVITY"
                  android:value="com.easiparcel.NewJobActivity" /&gt;
          &lt;/activity&gt;
          &lt;activity
              android:name=".JobDetails"
              android:label="@string/title_activity_job_details"
              android:parentActivityName=".JobListingActivity" &gt;
              &lt;meta-data
                  android:name="android.support.PARENT_ACTIVITY"
                  android:value="com.easiparcel.JobListingActivity" /&gt;
          &lt;/activity&gt;
      &lt;/application&gt;
  
  &lt;/manifest&gt;
  </code></pre>
  
  <p>Activity.java</p>
  
  <pre><code>  public void HandleSenderAddressPickerClicked(View view)
  {
      int PLACE_PICKER_REQUEST = 1;
      LoadPlacePicker(PLACE_PICKER_REQUEST);
  
  }
  
  public void HandleRecieverAddressPickerClicked(View view)
  {
      int PLACE_PICKER_REQUEST = 2;
      LoadPlacePicker(PLACE_PICKER_REQUEST);
  
  }
  
  private void LoadPlacePicker(int PlacePickerRequest)
  {
      try {
  
          PlacePicker.IntentBuilder intentBuilder = new PlacePicker.IntentBuilder();
          Intent intent = intentBuilder.build(NewJobActivity.this);
          // Start the Intent by requesting a result, identified by a request code.
          startActivityForResult(intent, PlacePickerRequest);
  
  
      } catch (GooglePlayServicesRepairableException e) {
          GooglePlayServicesUtil
                  .getErrorDialog(e.getConnectionStatusCode(), NewJobActivity.this, 0);
      } catch (GooglePlayServicesNotAvailableException e) {
          Toast.makeText(NewJobActivity.this, "Google Play Services is not available.",
                  Toast.LENGTH_LONG)
                  .show();
      }
  }
  
  protected void onActivityResult(int requestCode, int resultCode, Intent data) {
      if (requestCode == 1) {
          if (resultCode == RESULT_OK) {
              Place place = PlacePicker.getPlace(data, this);
              String toastMsg = String.format("Sender Place: %s", place.getName());
              Toast.makeText(this, toastMsg, Toast.LENGTH_LONG).show();
          }
      }
  
      //Reciever
      if (requestCode == 2) {
          if (resultCode == RESULT_OK) {
              Place place = PlacePicker.getPlace(data, this);
              String toastMsg = String.format("Receiver Place: %s", place.getName());
              Toast.makeText(this, toastMsg, Toast.LENGTH_LONG).show();
          }
      }
  }
  </code></pre>