title: Google Places API Crashes After Launch
body: <p>I have been trying to integrate Google Places API into my application, but cannot seem to get the API to launch.  Every time I click the button to launch the API it will load, then revert back to the main screen.  I believe I have followed all steps in the API documentation, but cannot seem to seem to find the issue.  My code is as follows:</p>
  
  <p>Java Class:</p>
  
  <pre><code>package lgalle19.developements.findplaces;
  
  import android.app.Activity;
  import android.content.Intent;
  import android.os.Bundle;
  import android.support.v7.app.ActionBarActivity;
  import android.text.Html;
  import android.view.View;
  import android.widget.Button;
  import android.widget.TextView;
  
  import com.google.android.gms.common.GooglePlayServicesNotAvailableException;
  import com.google.android.gms.common.GooglePlayServicesRepairableException;
  import com.google.android.gms.location.places.Place;
  import com.google.android.gms.location.places.ui.PlacePicker;
  
  
  public class PlacePickerActivity extends ActionBarActivity {
  private static final int PLACE_PICKER_REQUEST = 1;
  private TextView mViewName;
  private TextView mViewAddress;
  private TextView mViewAttributions;
  private Button mPickerButton;
  
  @Override
  protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_place_picker);
  
      mViewName = (TextView) findViewById(R.id.textView);
      mViewAddress = (TextView) findViewById(R.id.textView2);
      mViewAttributions = (TextView) findViewById(R.id.textView3);
      mPickerButton = (Button) findViewById(R.id.pickerButton);
  }
  
  public void onPickButtonClick(View v) {
      // Construct an intent for the place picker
      try {
          PlacePicker.IntentBuilder intentBuilder =
                  new PlacePicker.IntentBuilder();
          Intent intent = intentBuilder.build(this);
          // Start the intent by requesting a result,
          // identified by a request code.
          startActivityForResult(intent, PLACE_PICKER_REQUEST);
  
      } catch (Exception e){
          e.printStackTrace();
      }
  }
  
  @Override
  protected void onActivityResult(int requestCode,
                                  int resultCode, Intent data) {
  
      if (requestCode == PLACE_PICKER_REQUEST
              &amp;&amp; resultCode == Activity.RESULT_OK) {
  
          // The user has selected a place. Extract the name and address.
          final Place place = PlacePicker.getPlace(data, this);
  
          final CharSequence name = place.getName();
          final CharSequence address = place.getAddress();
          String attributions = PlacePicker.getAttributions(data);
          if (attributions == null) {
              attributions = "";
          }
  
          mViewName.setText(name);
          mViewAddress.setText(address);
          mViewAttributions.setText(Html.fromHtml(attributions));
  
      } else {
          super.onActivityResult(requestCode, resultCode, data);
      }
  }
  }
  </code></pre>
  
  <p>Main XML: </p>
  
  <pre><code>&lt;RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:tools="http://schemas.android.com/tools"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:paddingLeft="@dimen/activity_horizontal_margin"
  android:paddingRight="@dimen/activity_horizontal_margin"
  android:paddingTop="@dimen/activity_vertical_margin"
  android:paddingBottom="@dimen/activity_vertical_margin"
  tools:context=".PlacePickerActivity"&gt;
  
  &lt;TextView
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:id="@+id/textView"
      android:layout_alignParentTop="true"
      android:layout_marginTop="20dp"
      android:layout_centerHorizontal="true"/&gt;
  
  &lt;TextView
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:id="@+id/textView2"
      android:layout_below="@+id/textView"
      android:layout_centerHorizontal="true"/&gt;
  
  &lt;Button
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="Launch Places API Picker"
      android:id="@+id/pickerButton"
      android:layout_below="@+id/textView2"
      android:layout_centerHorizontal="true"
      android:layout_marginTop="50dp"
      android:onClick="onPickButtonClick" /&gt;
  
  &lt;TextView
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:id="@+id/textView3"
      android:layout_alignParentBottom="true"
      android:layout_alignParentRight="true"
      android:layout_alignParentEnd="true"/&gt;
  
  &lt;ImageView
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:layout_above="@+id/textView3"
      android:layout_alignParentRight="true"
      android:layout_alignParentEnd="true"
      android:id="@+id/poweredBy"
      android:src="@drawable/powered_by_google_light"/&gt;
  
  
  &lt;/RelativeLayout&gt;
  </code></pre>
  
  <p>Manifest:</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
  package="lgalle19.developements.findplaces" &gt;
  
  
  &lt;uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/&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="@mipmap/ic_launcher"
      android:label="@string/app_name"
      android:theme="@style/AppTheme"&gt;
  
      &lt;activity
          android:name=".PlacePickerActivity"
          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;meta-data
          android:name="com.google.android.geo.API_KEY"
          android:value="MY API KEY"/&gt;
      &lt;meta-data
          android:name="com.google.android.gms.version"
          android:value="@integer/google_play_services_version"/&gt;
  &lt;/application&gt;
  
  &lt;/manifest&gt;
  </code></pre>
  
  <p>Gradle:</p>
  
  <pre><code>apply plugin: 'com.android.application'
  
  android {
  compileSdkVersion 22
  buildToolsVersion "22.0.1"
  
  defaultConfig {
      applicationId "lgalle19.developements.findplaces"
      minSdkVersion 15
      targetSdkVersion 22
      versionCode 1
      versionName "1.0"
  }
  buildTypes {
      release {
          minifyEnabled false
          proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
      }
  }
  }
  
  dependencies {
  compile fileTree(dir: 'libs', include: ['*.jar'])
  compile 'com.android.support:appcompat-v7:22.0.0'
  compile 'com.google.android.gms:play-services:7.5.0'
  }
  </code></pre>
  
  <p>LogCat:</p>
  
  <pre><code>08-07 13:25:37.053  29527-29527/lgalle19.developements.findplaces E/Zygote﹕ MountEmulatedStorage()
  08-07 13:25:37.053  29527-29527/lgalle19.developements.findplaces E/Zygote﹕ v2
  08-07 13:25:37.053  29527-29527/lgalle19.developements.findplaces I/libpersona﹕ KNOX_SDCARD checking this for 10245
  08-07 13:25:37.053  29527-29527/lgalle19.developements.findplaces I/libpersona﹕ KNOX_SDCARD not a persona
  08-07 13:25:37.053  29527-29527/lgalle19.developements.findplaces I/SELinux﹕ Function: selinux_compare_spd_ram, SPD-policy is existed. and_ver=SEPF_SM-G920V_5.0.2 ver=27
  08-07 13:25:37.063  29527-29527/lgalle19.developements.findplaces I/SELinux﹕ Function: selinux_compare_spd_ram , priority [1] , priority version is VE=SEPF_SM-G920V_5.0.2_0027
  08-07 13:25:37.063  29527-29527/lgalle19.developements.findplaces E/SELinux﹕ [DEBUG] get_category: variable seinfo: default sensitivity: NULL, cateogry: NULL
  08-07 13:25:37.063  29527-29527/lgalle19.developements.findplaces I/art﹕ Late-enabling -Xcheck:jni
  08-07 13:25:37.083  29527-29527/lgalle19.developements.findplaces D/TimaKeyStoreProvider﹕ TimaSignature is unavailable
  08-07 13:25:37.083  29527-29527/lgalle19.developements.findplaces D/ActivityThread﹕ Added TimaKeyStore provider
  08-07 13:25:37.153  29527-29527/lgalle19.developements.findplaces I/InjectionManager﹕ Inside getClassLibPath + mLibMap{0=, 1=}
  08-07 13:25:37.163  29527-29527/lgalle19.developements.findplaces I/InjectionManager﹕ Inside getClassLibPath caller
  08-07 13:25:37.203  29527-29527/lgalle19.developements.findplaces D/InjectionManager﹕ InjectionManager
  08-07 13:25:37.203  29527-29527/lgalle19.developements.findplaces D/InjectionManager﹕ fillFeatureStoreMap lgalle19.developements.findplaces
  08-07 13:25:37.213  29527-29527/lgalle19.developements.findplaces I/InjectionManager﹕ Constructor lgalle19.developements.findplaces, Feature store :{}
  08-07 13:25:37.213  29527-29527/lgalle19.developements.findplaces I/InjectionManager﹕ featureStore :{}
  08-07 13:25:37.273  29527-29527/lgalle19.developements.findplaces D/PhoneWindow﹕ *FMB* installDecor mIsFloating : false
  08-07 13:25:37.273  29527-29527/lgalle19.developements.findplaces D/PhoneWindow﹕ *FMB* installDecor flags : -2139029248
  08-07 13:25:37.333  29527-29527/lgalle19.developements.findplaces D/Activity﹕ performCreate Call Injection manager
  08-07 13:25:37.333  29527-29527/lgalle19.developements.findplaces I/InjectionManager﹕ dispatchOnViewCreated &gt; Target : lgalle19.developements.findplaces.PlacePickerActivity isFragment :false
  08-07 13:25:37.353  29527-29561/lgalle19.developements.findplaces D/OpenGLRenderer﹕ Render dirty regions requested: true
  08-07 13:25:37.363  29527-29527/lgalle19.developements.findplaces D/PhoneWindow﹕ *FMB* isFloatingMenuEnabled mFloatingMenuBtn : null
  08-07 13:25:37.363  29527-29527/lgalle19.developements.findplaces D/PhoneWindow﹕ *FMB* isFloatingMenuEnabled return false
  08-07 13:25:37.473  29527-29561/lgalle19.developements.findplaces D/libEGL﹕ loaded /vendor/lib64/egl/libGLES_mali.so
  08-07 13:25:37.513  29527-29561/lgalle19.developements.findplaces I/OpenGLRenderer﹕ Initialized EGL, version 1.4
  08-07 13:25:37.523  29527-29561/lgalle19.developements.findplaces I/OpenGLRenderer﹕ HWUI protection enabled for context ,  &amp;this =0x7fa4c75060 ,&amp;mEglDisplay = 1 , &amp;mEglConfig = -1529904464
  08-07 13:25:37.523  29527-29561/lgalle19.developements.findplaces D/OpenGLRenderer﹕ Get maximum texture size. GL_MAX_TEXTURE_SIZE is 8192
  08-07 13:25:37.523  29527-29561/lgalle19.developements.findplaces D/OpenGLRenderer﹕ Enabling debug mode 0
  08-07 13:25:37.523  29527-29561/lgalle19.developements.findplaces D/mali_winsys﹕ new_window_surface returns 0x3000,  [1440x2560]-format:1
  08-07 13:25:37.553  29527-29527/lgalle19.developements.findplaces I/InjectionManager﹕ dispatchCreateOptionsMenu :lgalle19.developements.findplaces.PlacePickerActivity
  08-07 13:25:37.553  29527-29527/lgalle19.developements.findplaces I/InjectionManager﹕ dispatchPrepareOptionsMenu :lgalle19.developements.findplaces.PlacePickerActivity
  08-07 13:25:37.673  29527-29527/lgalle19.developements.findplaces I/Timeline﹕ Timeline: Activity_idle id: android.os.BinderProxy@3d2a49fa time:246449518
  08-07 13:25:42.163  29527-29527/lgalle19.developements.findplaces D/ViewRootImpl﹕ ViewPostImeInputStage ACTION_DOWN
  08-07 13:25:42.813  29527-29561/lgalle19.developements.findplaces D/OpenGLRenderer﹕ endAllStagingAnimators on 0x7faaf61e00 (RippleDrawable) with handle 0x7f966ee140
  08-07 13:25:46.713  29527-29561/lgalle19.developements.findplaces D/mali_winsys﹕ new_window_surface returns 0x3000,  [1440x2560]-format:1
  08-07 13:25:46.813  29527-29527/lgalle19.developements.findplaces I/Timeline﹕ Timeline: Activity_idle id: android.os.BinderProxy@3d2a49fa time:246458658
  </code></pre>
  
  <p>I have also been sure to enable Google Places API for Android on the developer console and create an API Key which I am storing the Manifest.  A topic posted here <a href="https://stackoverflow.com/questions/29781978/google-placepicker-closes-immediately-after-launch">Google PlacePicker Closes Immediately After Launch</a> seems like a similar issue to mine, but I have already added my API Key to my manifest so my issue seems to be different.</p>
  
  <p>Any help is greatly appreciated! </p>