diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/AndroidManifest.xml b/android/java/MapboxGLAndroidSDKTestApp/src/main/AndroidManifest.xml
index dfd43694f..f76ffe266 100644
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/AndroidManifest.xml
+++ b/android/java/MapboxGLAndroidSDKTestApp/src/main/AndroidManifest.xml
@@ -33,6 +33,9 @@
android:name=".MapFragmentActivity"
android:label="@string/activity_map_fragment" />
+
+
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/MainActivity.java b/android/java/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/MainActivity.java
index ee0aba008..dadaba503 100644
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/MainActivity.java
+++ b/android/java/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/MainActivity.java
@@ -287,6 +287,11 @@ public class MainActivity extends AppCompatActivity {
case R.id.action_map_fragment:
startActivity(new Intent(getApplicationContext(), MapFragmentActivity.class));
return true;
+
+ case R.id.action_press_for_marker:
+ startActivity(new Intent(getApplicationContext(), PressForMarkerActivity.class));
+ return true;
+
/*
case R.id.followNone:
mMapView.setUserLocationTrackingMode(MapView.UserLocationTrackingMode.NONE);
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/PressForMarkerActivity.java b/android/java/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/PressForMarkerActivity.java
new file mode 100644
index 000000000..5b8447663
--- /dev/null
+++ b/android/java/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/PressForMarkerActivity.java
@@ -0,0 +1,126 @@
+package com.mapbox.mapboxsdk.testapp;
+
+import android.graphics.PointF;
+import android.os.Bundle;
+import android.support.v7.app.ActionBar;
+import android.support.v7.app.AppCompatActivity;
+import android.support.v7.widget.Toolbar;
+import android.view.GestureDetector;
+import android.view.MenuItem;
+import android.view.MotionEvent;
+import android.view.View;
+import com.mapbox.mapboxsdk.annotations.Marker;
+import com.mapbox.mapboxsdk.annotations.MarkerOptions;
+import com.mapbox.mapboxsdk.geometry.LatLng;
+import com.mapbox.mapboxsdk.utils.ApiAccess;
+import com.mapbox.mapboxsdk.views.MapView;
+
+public class PressForMarkerActivity extends AppCompatActivity {
+
+ private static final String TAG = "PressForMarkerActivity";
+
+ private MapView mMapView;
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_press_for_marker);
+
+ Toolbar toolbar = (Toolbar) findViewById(R.id.secondToolBar);
+ setSupportActionBar(toolbar);
+
+ ActionBar actionBar = getSupportActionBar();
+ if (actionBar != null) {
+ actionBar.setDisplayHomeAsUpEnabled(true);
+ actionBar.setDisplayShowHomeEnabled(true);
+ }
+
+ mMapView = (MapView) findViewById(R.id.pressForMarkerMapView);
+ mMapView.setAccessToken(ApiAccess.getToken(this));
+ mMapView.setStyleUrl(MapView.StyleUrls.MAPBOX_STREETS);
+ mMapView.onCreate(savedInstanceState);
+
+
+ mMapView.setCenterCoordinate(new LatLng(47.798202, 7.573781));
+ mMapView.setZoomLevel(4);
+
+
+ final GestureDetector gestureDetector = new GestureDetector(this, new GestureDetector.SimpleOnGestureListener() {
+ public void onLongPress(final MotionEvent e) {
+ float x = e.getX();
+ float y = e.getY();
+
+ final LatLng position = mMapView.fromScreenLocation(new PointF(x, y));
+
+ Marker marker = mMapView.addMarker(new MarkerOptions()
+ .position(position)
+ .title("Dropped Pin")
+ .snippet("Tap for directions")
+ .sprite("default_marker"));
+ }
+ });
+
+ mMapView.setOnTouchListener(new View.OnTouchListener() {
+ public boolean onTouch(View v, MotionEvent event) {
+ return gestureDetector.onTouchEvent(event);
+ }
+ });
+ }
+
+ /**
+ * Dispatch onStart() to all fragments. Ensure any created loaders are
+ * now started.
+ */
+ @Override
+ protected void onStart() {
+ super.onStart();
+ mMapView.onStart();
+ }
+
+ @Override
+ protected void onStop() {
+ super.onStop();
+ mMapView.onStop();
+ }
+
+ // Called when our app goes into the background
+ @Override
+ public void onPause() {
+ super.onPause();
+
+ mMapView.onPause();
+ }
+
+ // Called when our app comes into the foreground
+ @Override
+ public void onResume() {
+ super.onResume();
+
+ mMapView.onResume();
+ }
+
+ @Override
+ protected void onDestroy() {
+ super.onDestroy();
+ mMapView.onDestroy();
+ }
+
+ // Called when the system is running low on memory
+ @Override
+ public void onLowMemory() {
+ super.onLowMemory();
+
+ mMapView.onLowMemory();
+ }
+
+ @Override
+ public boolean onOptionsItemSelected(MenuItem item) {
+ switch (item.getItemId()) {
+ case android.R.id.home:
+ onBackPressed();
+ return true;
+ default:
+ return super.onOptionsItemSelected(item);
+ }
+ }
+}
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/layout/activity_press_for_marker.xml b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/layout/activity_press_for_marker.xml
new file mode 100644
index 000000000..91dd13e74
--- /dev/null
+++ b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/layout/activity_press_for_marker.xml
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+
+
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/menu/menu_drawer.xml b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/menu/menu_drawer.xml
index 8d1bb289b..1a1c1d830 100644
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/menu/menu_drawer.xml
+++ b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/menu/menu_drawer.xml
@@ -84,6 +84,9 @@
android:checkable="false"
android:icon="@drawable/ic_widgets_white_24dp"
android:title="@string/action_map_fragment" />
+
+
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/values/strings.xml b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/values/strings.xml
index e3e8d38ad..139aa5f11 100644
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/values/strings.xml
+++ b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/values/strings.xml
@@ -3,8 +3,10 @@
Mapbox GL
+
InfoWindow Adapter
Map Fragment Activity
+ Press For Marker Activity
Main Activity Controls
Main Activity Styles
@@ -18,6 +20,7 @@
Toggle point annotations
InfoWindow Adapter
MapFragment
+ Press For Marker
FPS: