summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLeith Bade <leith@mapbox.com>2015-08-18 18:54:56 +1000
committerLeith Bade <leith@mapbox.com>2015-08-18 19:15:42 +1000
commit6ad2006d3fdbfb05e1994c3075c349bb7f26d7b1 (patch)
tree33838f740c731fcae4b9acb761b948a02044a059
parentac86ce39adaef1bb9a83801989cf2bf074aa5288 (diff)
downloadqtlocation-mapboxgl-6ad2006d3fdbfb05e1994c3075c349bb7f26d7b1.tar.gz
Improve support for Andrioid M
Checks for and requests runtime location permissions (fixes #2110) Improved the styling of the location FAB Removed redudant drawables Fixed various Java and Android warnings and deprecated functions A few other tweaks
-rw-r--r--android/java/MapboxGLAndroidSDK/src/main/AndroidManifest.xml2
-rw-r--r--android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/geometry/BoundingBox.java21
-rw-r--r--android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/geometry/LatLng.java12
-rw-r--r--android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/geometry/LatLngZoom.java5
-rw-r--r--android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/geometry/ProjectedMeters.java8
-rw-r--r--android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/views/MapView.java25
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/AndroidManifest.xml2
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxgl/testapp/MainActivity.java123
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/direction_arrow.pngbin8095 -> 0 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/ic_action_about.pngbin683 -> 0 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/ic_action_location_found.pngbin722 -> 0 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/ic_action_location_searching.pngbin641 -> 0 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/ic_explore_white_24dp.pngbin471 -> 0 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/ic_my_location_black_24dp.pngbin0 -> 549 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/ic_my_location_white_24dp.pngbin546 -> 0 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-ldpi/direction_arrow.pngbin5291 -> 0 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/direction_arrow.pngbin6191 -> 0 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/ic_action_about.pngbin465 -> 0 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/ic_action_location_found.pngbin484 -> 0 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/ic_action_location_searching.pngbin482 -> 0 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/ic_explore_white_24dp.pngbin323 -> 0 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/ic_my_location_black_24dp.pngbin0 -> 341 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/ic_my_location_white_24dp.pngbin350 -> 0 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/direction_arrow.pngbin10477 -> 0 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/ic_action_about.pngbin860 -> 0 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/ic_action_location_found.pngbin994 -> 0 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/ic_action_location_searching.pngbin854 -> 0 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/ic_explore_white_24dp.pngbin622 -> 0 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/ic_my_location_black_24dp.pngbin0 -> 660 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/ic_my_location_white_24dp.pngbin687 -> 0 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/direction_arrow.pngbin14812 -> 0 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/ic_action_about.pngbin1409 -> 0 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/ic_action_location_found.pngbin1432 -> 0 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/ic_action_location_searching.pngbin1191 -> 0 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/ic_explore_white_24dp.pngbin918 -> 0 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/ic_my_location_black_24dp.pngbin0 -> 976 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/ic_my_location_white_24dp.pngbin1012 -> 0 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxxhdpi/direction_arrow.pngbin20792 -> 0 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxxhdpi/ic_explore_white_24dp.pngbin1219 -> 0 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxxhdpi/ic_my_location_black_24dp.pngbin0 -> 1334 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxxhdpi/ic_my_location_white_24dp.pngbin1379 -> 0 bytes
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/layout/activity_main.xml4
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/menu/menu_drawer.xml4
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/values/strings.xml8
-rw-r--r--android/java/MapboxGLAndroidSDKTestApp/src/main/res/values/styles.xml1
45 files changed, 68 insertions, 147 deletions
diff --git a/android/java/MapboxGLAndroidSDK/src/main/AndroidManifest.xml b/android/java/MapboxGLAndroidSDK/src/main/AndroidManifest.xml
index 767b049870..471582eb6c 100644
--- a/android/java/MapboxGLAndroidSDK/src/main/AndroidManifest.xml
+++ b/android/java/MapboxGLAndroidSDK/src/main/AndroidManifest.xml
@@ -5,7 +5,5 @@
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
- <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
- <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
</manifest>
diff --git a/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/geometry/BoundingBox.java b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/geometry/BoundingBox.java
index cb0409d3e9..091ac4d06b 100644
--- a/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/geometry/BoundingBox.java
+++ b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/geometry/BoundingBox.java
@@ -119,15 +119,7 @@ public final class BoundingBox implements Parcelable, Serializable {
@Override
public String toString() {
- return new StringBuffer().append("N:")
- .append(this.mLatNorth)
- .append("; E:")
- .append(this.mLonEast)
- .append("; S:")
- .append(this.mLatSouth)
- .append("; W:")
- .append(this.mLonWest)
- .toString();
+ return "N:" + this.mLatNorth + "; E:" + this.mLonEast + "; S:" + this.mLatSouth + "; W:" + this.mLonWest;
}
/**
@@ -164,17 +156,8 @@ public final class BoundingBox implements Parcelable, Serializable {
*/
public boolean equals(final BoundingBox other) {
- if (other == null) {
- return false;
- }
- if (other == this) {
- return true;
- }
+ return other != null && (other == this || mLatNorth == other.getLatNorth() && mLatSouth == other.getLatSouth() && mLonEast == other.getLonEast() && mLonWest == other.getLonWest());
- return mLatNorth == other.getLatNorth()
- && mLatSouth == other.getLatSouth()
- && mLonEast == other.getLonEast()
- && mLonWest == other.getLonWest();
}
/**
diff --git a/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/geometry/LatLng.java b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/geometry/LatLng.java
index 9b0991b082..141f0dc966 100644
--- a/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/geometry/LatLng.java
+++ b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/geometry/LatLng.java
@@ -97,18 +97,8 @@ public class LatLng implements ILatLng, Parcelable, Serializable {
LatLng latLng = (LatLng) o;
- if (Double.compare(latLng.altitude, altitude) != 0) {
- return false;
- }
-
- if (Double.compare(latLng.latitude, latitude) != 0) {
- return false;
- }
- if (Double.compare(latLng.longitude, longitude) != 0) {
- return false;
- }
+ return Double.compare(latLng.altitude, altitude) == 0 && Double.compare(latLng.latitude, latitude) == 0 && Double.compare(latLng.longitude, longitude) == 0;
- return true;
}
@Override
diff --git a/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/geometry/LatLngZoom.java b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/geometry/LatLngZoom.java
index f1d2862b24..5d841477ae 100644
--- a/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/geometry/LatLngZoom.java
+++ b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/geometry/LatLngZoom.java
@@ -56,11 +56,8 @@ public class LatLngZoom extends LatLng implements Parcelable, Serializable {
LatLngZoom that = (LatLngZoom) o;
- if (Double.compare(that.zoom, zoom) != 0) {
- return false;
- }
+ return Double.compare(that.zoom, zoom) == 0;
- return true;
}
@Override
diff --git a/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/geometry/ProjectedMeters.java b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/geometry/ProjectedMeters.java
index d28d868876..156d4355b5 100644
--- a/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/geometry/ProjectedMeters.java
+++ b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/geometry/ProjectedMeters.java
@@ -56,14 +56,8 @@ public class ProjectedMeters implements IProjectedMeters, Parcelable, Serializab
ProjectedMeters projectedMeters = (ProjectedMeters) o;
- if (Double.compare(projectedMeters.easting, easting) != 0) {
- return false;
- }
- if (Double.compare(projectedMeters.northing, northing) != 0) {
- return false;
- }
+ return Double.compare(projectedMeters.easting, easting) == 0 && Double.compare(projectedMeters.northing, northing) == 0;
- return true;
}
@Override
diff --git a/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/views/MapView.java b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/views/MapView.java
index 42adeb1013..de99fcd630 100644
--- a/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/views/MapView.java
+++ b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/views/MapView.java
@@ -22,6 +22,7 @@ import android.net.NetworkInfo;
import android.os.Build;
import android.os.Bundle;
import android.support.annotation.NonNull;
+import android.support.v4.content.ContextCompat;
import android.support.v4.view.GestureDetectorCompat;
import android.support.v4.view.ScaleGestureDetectorCompat;
import android.text.TextUtils;
@@ -104,7 +105,6 @@ public class MapView extends FrameLayout implements LocationListener {
//
// Used to call JNI NativeMapView
- private SurfaceView mSurfaceView;
private NativeMapView mNativeMapView;
// Used to handle DPI scaling
@@ -135,7 +135,7 @@ public class MapView extends FrameLayout implements LocationListener {
private Location mGpsLocation;
public enum UserLocationTrackingMode {
- NONE, FOLLOW, FOLLOW_BEARING;
+ NONE, FOLLOW, FOLLOW_BEARING
}
private UserLocationTrackingMode mUserLocationTrackingMode = UserLocationTrackingMode.FOLLOW;
@@ -215,8 +215,8 @@ public class MapView extends FrameLayout implements LocationListener {
// Save the context
mContext = context;
- mSurfaceView = new SurfaceView(mContext);
- addView(mSurfaceView);
+ SurfaceView surfaceView = new SurfaceView(mContext);
+ addView(surfaceView);
// Check if we are in Eclipse UI editor
if (isInEditMode()) {
@@ -252,9 +252,9 @@ public class MapView extends FrameLayout implements LocationListener {
// Register the SurfaceHolder callbacks
if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.GINGERBREAD) {
- mSurfaceView.getHolder().addCallback(new Callbacks2());
+ surfaceView.getHolder().addCallback(new Callbacks2());
} else {
- mSurfaceView.getHolder().addCallback(new Callbacks());
+ surfaceView.getHolder().addCallback(new Callbacks());
}
// Touch gesture detectors
@@ -294,7 +294,7 @@ public class MapView extends FrameLayout implements LocationListener {
mCompassListener = new CompassListener();
mCompassView = new ImageView(mContext);
- mCompassView.setImageDrawable(getResources().getDrawable(R.drawable.compass));
+ mCompassView.setImageDrawable(ContextCompat.getDrawable(getContext(), R.drawable.compass));
mCompassView.setContentDescription(getResources().getString(R.string.compassContentDescription));
LayoutParams lp = new FrameLayout.LayoutParams((int)(48 * mScreenDensity), (int)(48 * mScreenDensity));
lp.gravity = Gravity.TOP | Gravity.END;
@@ -306,7 +306,7 @@ public class MapView extends FrameLayout implements LocationListener {
// Setup Support For Listener Tracking
// MapView's internal listener is setup in onCreate()
- mOnMapChangedListener = new ArrayList<OnMapChangedListener>();
+ mOnMapChangedListener = new ArrayList<>();
// Load the attributes
TypedArray typedArray = context.obtainStyledAttributes(attrs, R.styleable.MapView, 0, 0);
@@ -560,7 +560,6 @@ public class MapView extends FrameLayout implements LocationListener {
}
private void validateStyleUrl(String url) {
- String[] schemes = {"http", "https", "asset"};
url = url.replaceFirst("asset://", "http://");
HttpUrl parsedUrl = HttpUrl.parse(url);
if (parsedUrl == null) {
@@ -723,7 +722,9 @@ public class MapView extends FrameLayout implements LocationListener {
getContext().unregisterReceiver(mConnectivityReceiver);
mConnectivityReceiver = null;
- toggleGps(!mIsMyLocationEnabled);
+ if (mIsMyLocationEnabled) {
+ toggleGps(false);
+ };
mNativeMapView.pause();
}
@@ -736,7 +737,9 @@ public class MapView extends FrameLayout implements LocationListener {
mConnectivityReceiver = new ConnectivityReceiver();
mContext.registerReceiver(mConnectivityReceiver, new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION));
- toggleGps(mIsMyLocationEnabled);
+ if (mIsMyLocationEnabled) {
+ toggleGps(true);
+ }
mNativeMapView.resume();
}
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/AndroidManifest.xml b/android/java/MapboxGLAndroidSDKTestApp/src/main/AndroidManifest.xml
index f9514654da..a5f7c32362 100644
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/AndroidManifest.xml
+++ b/android/java/MapboxGLAndroidSDKTestApp/src/main/AndroidManifest.xml
@@ -23,4 +23,6 @@
</application>
<uses-permission android:name="android.permission.INTERNET" />
+ <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
+ <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
</manifest>
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxgl/testapp/MainActivity.java b/android/java/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxgl/testapp/MainActivity.java
index 52ab677fd2..3d7538977b 100644
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxgl/testapp/MainActivity.java
+++ b/android/java/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxgl/testapp/MainActivity.java
@@ -1,11 +1,15 @@
package com.mapbox.mapboxgl.testapp;
+import android.Manifest;
+import android.content.pm.PackageManager;
import android.graphics.Color;
import android.graphics.PointF;
import android.location.Location;
import android.os.Bundle;
import android.support.design.widget.FloatingActionButton;
import android.support.design.widget.NavigationView;
+import android.support.v4.app.ActivityCompat;
+import android.support.v4.content.ContextCompat;
import android.support.v4.view.GravityCompat;
import android.support.v4.widget.DrawerLayout;
import android.support.v7.app.ActionBar;
@@ -16,13 +20,10 @@ import android.view.GestureDetector;
import android.view.MenuItem;
import android.view.MotionEvent;
import android.view.View;
-import android.widget.AdapterView;
import android.widget.TextView;
import com.crashlytics.android.Crashlytics;
import com.mapbox.mapboxgl.annotations.MarkerOptions;
-import com.mapbox.mapboxgl.annotations.Polygon;
import com.mapbox.mapboxgl.annotations.PolygonOptions;
-import com.mapbox.mapboxgl.annotations.Polyline;
import com.mapbox.mapboxgl.annotations.PolylineOptions;
import com.mapbox.mapboxgl.geometry.LatLng;
import com.mapbox.mapboxgl.views.MapView;
@@ -44,6 +45,9 @@ public class MainActivity extends AppCompatActivity {
private static final String STATE_IS_ANNOTATIONS_ON = "isAnnotationsOn";
private static final String STATE_SELECTED_STYLE = "selectedStyle";
+ // Used for permissions requests
+ private static final int PERMISSIONS_LOCATION = 0;
+
//
// Instance members
//
@@ -78,8 +82,10 @@ public class MainActivity extends AppCompatActivity {
setSupportActionBar(toolbar);
final ActionBar ab = getSupportActionBar();
- ab.setHomeAsUpIndicator(R.drawable.ic_menu);
- ab.setDisplayHomeAsUpEnabled(true);
+ if (ab != null) {
+ ab.setHomeAsUpIndicator(R.drawable.ic_menu);
+ ab.setDisplayHomeAsUpEnabled(true);
+ }
mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
@@ -229,6 +235,17 @@ public class MainActivity extends AppCompatActivity {
}
}
+ @Override
+ public void onRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults) {
+ switch (requestCode) {
+ case PERMISSIONS_LOCATION: {
+ if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {
+ enableGps();
+ }
+ }
+ }
+ }
+
private void setupDrawerContent(NavigationView navigationView) {
navigationView.setNavigationItemSelectedListener(
new NavigationView.OnNavigationItemSelectedListener() {
@@ -331,14 +348,24 @@ public class MainActivity extends AppCompatActivity {
*/
private void toggleGps(boolean enableGps) {
if (enableGps) {
- mMapView.setMyLocationEnabled(enableGps);
- mLocationFAB.setColorFilter(getResources().getColor(R.color.primary));
+ if ((ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) ||
+ (ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED))
+ {
+ ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.ACCESS_COARSE_LOCATION, Manifest.permission.ACCESS_FINE_LOCATION}, PERMISSIONS_LOCATION);
+ } else {
+ enableGps();
+ }
} else {
- mMapView.setMyLocationEnabled(enableGps);
+ mMapView.setMyLocationEnabled(false);
mLocationFAB.setColorFilter(Color.TRANSPARENT);
}
}
+ private void enableGps() {
+ mMapView.setMyLocationEnabled(true);
+ mLocationFAB.setColorFilter(ContextCompat.getColor(this, R.color.primary));
+ }
+
/**
* Enable / Disable Annotations.
*
@@ -364,7 +391,6 @@ public class MainActivity extends AppCompatActivity {
private void addMarkers() {
LatLng backLot = new LatLng(38.649441, -121.369064);
- MapView map = mMapView;
mMapView.addMarker(new MarkerOptions()
.position(backLot)
.title("Back Lot")
@@ -383,7 +409,7 @@ public class MainActivity extends AppCompatActivity {
String geojsonStr = Util.loadStringFromAssets(this, "small_line.geojson");
LatLng[] latLngs = Util.parseGeoJSONCoordinates(geojsonStr);
MapView map = mMapView;
- Polyline line = map.addPolyline(new PolylineOptions()
+ map.addPolyline(new PolylineOptions()
.add(latLngs)
.width(2)
.color(Color.RED));
@@ -394,17 +420,16 @@ public class MainActivity extends AppCompatActivity {
}
private void addPolygon() {
- String geojsonStr = null;
try {
- geojsonStr = Util.loadStringFromAssets(this, "small_poly.geojson");
+ String geojsonStr = Util.loadStringFromAssets(this, "small_poly.geojson");
LatLng[] latLngs = Util.parseGeoJSONCoordinates(geojsonStr);
MapView map = mMapView;
- ArrayList<PolygonOptions> opts = new ArrayList<PolygonOptions>();
+ ArrayList<PolygonOptions> opts = new ArrayList<>();
opts.add(new PolygonOptions()
.add(latLngs)
.strokeColor(Color.MAGENTA)
.fillColor(Color.BLUE));
- Polygon polygon = map.addPolygons(opts).get(0);
+ map.addPolygons(opts).get(0);
} catch (Exception e) {
Log.e(TAG, "Error adding Polygon: "+ e);
e.printStackTrace();
@@ -415,76 +440,6 @@ public class MainActivity extends AppCompatActivity {
mMapView.removeAnnotations();
}
- // This class handles outdoor class change events
- private class OutdoorClassSpinnerListener implements AdapterView.OnItemSelectedListener {
-
- @Override
- public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
- ArrayList<String> styleClasses = new ArrayList<>(1);
-
- switch (position) {
- // Day
- case 0:
- styleClasses.add("day");
- mMapView.setStyleClasses(styleClasses);
- break;
-
- // Night
- case 1:
- styleClasses.add("night");
- mMapView.setStyleClasses(styleClasses);
- break;
-
- default:
- onNothingSelected(parent);
- break;
- }
- }
-
- @Override
- public void onNothingSelected(AdapterView<?> parent) {
- mMapView.removeAllStyleClasses();
- }
- }
-
- // This class handles satellite class change events
- private class SatelliteClassSpinnerListener implements AdapterView.OnItemSelectedListener {
-
- @Override
- public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
- ArrayList<String> styleClasses = new ArrayList<>(2);
-
- switch (position) {
- // Labels + Contours
- case 0:
- styleClasses.add("labels");
- styleClasses.add("contours");
- mMapView.setStyleClasses(styleClasses);
- break;
-
- // Labels Only
- case 1:
- styleClasses.add("labels");
- mMapView.setStyleClasses(styleClasses);
- break;
-
- // No Labels
- case 2:
- mMapView.setStyleClasses(styleClasses);
- break;
-
- default:
- onNothingSelected(parent);
- break;
- }
- }
-
- @Override
- public void onNothingSelected(AdapterView<?> parent) {
- mMapView.removeAllStyleClasses();
- }
- }
-
// Called when FPS changes
private class MyOnFpsChangedListener implements MapView.OnFpsChangedListener {
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/direction_arrow.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/direction_arrow.png
deleted file mode 100644
index 379ac4fb16..0000000000
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/direction_arrow.png
+++ /dev/null
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/ic_action_about.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/ic_action_about.png
deleted file mode 100644
index 077dcec800..0000000000
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/ic_action_about.png
+++ /dev/null
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/ic_action_location_found.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/ic_action_location_found.png
deleted file mode 100644
index e1bf5807b0..0000000000
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/ic_action_location_found.png
+++ /dev/null
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/ic_action_location_searching.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/ic_action_location_searching.png
deleted file mode 100644
index 48f4aec5b0..0000000000
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/ic_action_location_searching.png
+++ /dev/null
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/ic_explore_white_24dp.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/ic_explore_white_24dp.png
deleted file mode 100644
index 69ac91f7b0..0000000000
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/ic_explore_white_24dp.png
+++ /dev/null
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/ic_my_location_black_24dp.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/ic_my_location_black_24dp.png
new file mode 100644
index 0000000000..85e38726dd
--- /dev/null
+++ b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/ic_my_location_black_24dp.png
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/ic_my_location_white_24dp.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/ic_my_location_white_24dp.png
deleted file mode 100644
index 745db489be..0000000000
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/ic_my_location_white_24dp.png
+++ /dev/null
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-ldpi/direction_arrow.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-ldpi/direction_arrow.png
deleted file mode 100644
index 292d2c5dfa..0000000000
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-ldpi/direction_arrow.png
+++ /dev/null
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/direction_arrow.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/direction_arrow.png
deleted file mode 100644
index c0101b8a69..0000000000
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/direction_arrow.png
+++ /dev/null
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/ic_action_about.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/ic_action_about.png
deleted file mode 100644
index 624e745b69..0000000000
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/ic_action_about.png
+++ /dev/null
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/ic_action_location_found.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/ic_action_location_found.png
deleted file mode 100644
index 33f660f2d8..0000000000
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/ic_action_location_found.png
+++ /dev/null
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/ic_action_location_searching.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/ic_action_location_searching.png
deleted file mode 100644
index fcb72b8825..0000000000
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/ic_action_location_searching.png
+++ /dev/null
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/ic_explore_white_24dp.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/ic_explore_white_24dp.png
deleted file mode 100644
index 17f1883a0e..0000000000
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/ic_explore_white_24dp.png
+++ /dev/null
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/ic_my_location_black_24dp.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/ic_my_location_black_24dp.png
new file mode 100644
index 0000000000..5684aa7dc5
--- /dev/null
+++ b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/ic_my_location_black_24dp.png
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/ic_my_location_white_24dp.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/ic_my_location_white_24dp.png
deleted file mode 100644
index d1c563cc9f..0000000000
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/ic_my_location_white_24dp.png
+++ /dev/null
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/direction_arrow.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/direction_arrow.png
deleted file mode 100644
index 5227caf44b..0000000000
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/direction_arrow.png
+++ /dev/null
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/ic_action_about.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/ic_action_about.png
deleted file mode 100644
index 3be3152704..0000000000
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/ic_action_about.png
+++ /dev/null
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/ic_action_location_found.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/ic_action_location_found.png
deleted file mode 100644
index 4c06441f9a..0000000000
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/ic_action_location_found.png
+++ /dev/null
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/ic_action_location_searching.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/ic_action_location_searching.png
deleted file mode 100644
index 7a3d4984f9..0000000000
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/ic_action_location_searching.png
+++ /dev/null
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/ic_explore_white_24dp.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/ic_explore_white_24dp.png
deleted file mode 100644
index cfe12105fb..0000000000
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/ic_explore_white_24dp.png
+++ /dev/null
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/ic_my_location_black_24dp.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/ic_my_location_black_24dp.png
new file mode 100644
index 0000000000..7faa3455f6
--- /dev/null
+++ b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/ic_my_location_black_24dp.png
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/ic_my_location_white_24dp.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/ic_my_location_white_24dp.png
deleted file mode 100644
index ffab865d95..0000000000
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/ic_my_location_white_24dp.png
+++ /dev/null
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/direction_arrow.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/direction_arrow.png
deleted file mode 100644
index 760edd4390..0000000000
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/direction_arrow.png
+++ /dev/null
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/ic_action_about.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/ic_action_about.png
deleted file mode 100644
index 0fe809b90d..0000000000
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/ic_action_about.png
+++ /dev/null
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/ic_action_location_found.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/ic_action_location_found.png
deleted file mode 100644
index 43f18ea01d..0000000000
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/ic_action_location_found.png
+++ /dev/null
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/ic_action_location_searching.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/ic_action_location_searching.png
deleted file mode 100644
index aff020a6b9..0000000000
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/ic_action_location_searching.png
+++ /dev/null
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/ic_explore_white_24dp.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/ic_explore_white_24dp.png
deleted file mode 100644
index 599711f992..0000000000
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/ic_explore_white_24dp.png
+++ /dev/null
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/ic_my_location_black_24dp.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/ic_my_location_black_24dp.png
new file mode 100644
index 0000000000..d3a1ab08c8
--- /dev/null
+++ b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/ic_my_location_black_24dp.png
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/ic_my_location_white_24dp.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/ic_my_location_white_24dp.png
deleted file mode 100644
index 387ecdfbcb..0000000000
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/ic_my_location_white_24dp.png
+++ /dev/null
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxxhdpi/direction_arrow.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxxhdpi/direction_arrow.png
deleted file mode 100644
index 8e3c598195..0000000000
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxxhdpi/direction_arrow.png
+++ /dev/null
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxxhdpi/ic_explore_white_24dp.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxxhdpi/ic_explore_white_24dp.png
deleted file mode 100644
index 33031d077a..0000000000
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxxhdpi/ic_explore_white_24dp.png
+++ /dev/null
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxxhdpi/ic_my_location_black_24dp.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxxhdpi/ic_my_location_black_24dp.png
new file mode 100644
index 0000000000..0812b0e31d
--- /dev/null
+++ b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxxhdpi/ic_my_location_black_24dp.png
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxxhdpi/ic_my_location_white_24dp.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxxhdpi/ic_my_location_white_24dp.png
deleted file mode 100644
index c55220a5fe..0000000000
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxxhdpi/ic_my_location_white_24dp.png
+++ /dev/null
Binary files differ
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/layout/activity_main.xml b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/layout/activity_main.xml
index c1fa38bc97..e81ddae4c2 100644
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/layout/activity_main.xml
+++ b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/layout/activity_main.xml
@@ -47,13 +47,13 @@
<android.support.design.widget.FloatingActionButton
android:id="@+id/locationFAB"
- android:src="@drawable/ic_my_location_white_24dp"
+ android:src="@drawable/ic_my_location_black_24dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="end|bottom"
android:layout_margin="@dimen/fab_margin"
+ app:backgroundTint="@color/white"
app:borderWidth="0dp"
- app:elevation="0dp"
/>
</android.support.design.widget.CoordinatorLayout>
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 7244fa09bb..a374ab18d4 100644
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/menu/menu_drawer.xml
+++ b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/menu/menu_drawer.xml
@@ -3,7 +3,7 @@
<item
android:id="@+id/action_debug"
- android:icon="@drawable/ic_action_about"
+ android:icon="@android:drawable/ic_menu_info_details"
android:title="@string/action_debug"
android:checkable="true"
/>
@@ -14,7 +14,7 @@
android:checkable="true"
/>
<item android:id="@+id/action_compass"
- android:icon="@drawable/ic_explore_white_24dp"
+ android:icon="@android:drawable/ic_menu_compass"
android:title="@string/action_compass"
android:checkable="true"
/>
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/values/strings.xml b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/values/strings.xml
index a26fa55e71..81ba6e1cc3 100644
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/values/strings.xml
+++ b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/values/strings.xml
@@ -4,10 +4,10 @@
<string name="app_name">Mapbox GL</string>
<string name="action_gps">Toggle GPS location</string>
- <string name="action_location_none">Toggle Location Bearing Tracking</string>
- <string name="action_location_follow">Follow</string>
- <string name="action_location_bearing">Bearing</string>
- <string name="action_compass">Toggle Compass</string>
+ <string name="action_location_none">Disable tracking</string>
+ <string name="action_location_follow">Use follow tracking mode</string>
+ <string name="action_location_bearing">Use bearing tracking mode tracking</string>
+ <string name="action_compass">Toggle compass</string>
<string name="action_debug">Toggle debug mode</string>
<string name="action_point_annotations">Toggle point annotations</string>
diff --git a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/values/styles.xml b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/values/styles.xml
index 200665796e..9248bc7d00 100644
--- a/android/java/MapboxGLAndroidSDKTestApp/src/main/res/values/styles.xml
+++ b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/values/styles.xml
@@ -7,7 +7,6 @@
<item name="colorPrimary">@color/primary</item>
<item name="colorPrimaryDark">@color/primaryDark</item>
<item name="colorAccent">@color/accent</item>
- <item name="android:windowBackground">@color/white</item>
</style>
</resources>