diff --git a/app/build.gradle b/app/build.gradle
index c77aea346..ca3651fbd 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -17,6 +17,9 @@ dependencies {
compile "com.jakewharton:butterknife:$BUTTERKNIFE_VERSION"
annotationProcessor "com.jakewharton:butterknife-compiler:$BUTTERKNIFE_VERSION"
compile 'com.jakewharton.timber:timber:4.5.1'
+ compile ('com.mapbox.mapboxsdk:mapbox-android-sdk:5.0.2@aar'){
+ transitive=true
+ }
testCompile 'junit:junit:4.12'
androidTestCompile "com.android.support:support-annotations:${project.supportLibVersion}"
diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyActivity.java b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyActivity.java
index 54657c2f8..ec410ca69 100644
--- a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyActivity.java
+++ b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyActivity.java
@@ -2,7 +2,6 @@ package fr.free.nrw.commons.nearby;
import android.os.Bundle;
import android.support.v4.app.FragmentTransaction;
-import android.util.Log;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
@@ -12,6 +11,7 @@ import fr.free.nrw.commons.location.LocationServiceManager;
import fr.free.nrw.commons.theme.BaseActivity;
public class NearbyActivity extends BaseActivity {
+ private boolean isMapViewActive = false;
private LocationServiceManager locationManager;
@@ -47,21 +47,32 @@ public class NearbyActivity extends BaseActivity {
refreshView();
return true;
case R.id.action_map:
- Log.d("Nearby","map is clicked");
+ showMapView();
return true;
default:
return super.onOptionsItemSelected(item);
}
}
+ private void showMapView() {
+ isMapViewActive = true;
+ getSupportFragmentManager().beginTransaction()
+ .replace(R.id.container, new NearbyMapFragment()).commit();
+ }
+
@Override
protected void onResume() {
super.onResume();
}
protected void refreshView() {
- getSupportFragmentManager().beginTransaction()
- .replace(R.id.container, new NearbyListFragment()).commit();
+ if (isMapViewActive) {
+ getSupportFragmentManager().beginTransaction()
+ .replace(R.id.container, new NearbyMapFragment()).commit();
+ } else {
+ getSupportFragmentManager().beginTransaction()
+ .replace(R.id.container, new NearbyListFragment()).commit();
+ }
}
public LocationServiceManager getLocationManager() {
diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyMapFragment.java b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyMapFragment.java
new file mode 100644
index 000000000..2535aaa4b
--- /dev/null
+++ b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyMapFragment.java
@@ -0,0 +1,83 @@
+package fr.free.nrw.commons.nearby;
+
+import android.app.Fragment;
+import android.os.Bundle;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+
+import com.mapbox.mapboxsdk.Mapbox;
+import com.mapbox.mapboxsdk.maps.MapView;
+import com.mapbox.mapboxsdk.maps.MapboxMap;
+import com.mapbox.mapboxsdk.maps.OnMapReadyCallback;
+import com.mapbox.services.android.telemetry.MapboxTelemetry;
+
+import butterknife.BindView;
+import butterknife.ButterKnife;
+import fr.free.nrw.commons.R;
+
+public class NearbyMapFragment extends android.support.v4.app.Fragment {
+ @BindView(R.id.mapview) MapView mapView;
+
+ public NearbyMapFragment() {
+
+ }
+
+ @Override
+ public void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+
+ Mapbox.getInstance(getActivity(),
+ getString(R.string.mapbox_commons_app_token));
+ MapboxTelemetry.getInstance().setTelemetryEnabled(false);
+ }
+
+ @Override
+ public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
+ View view = inflater.inflate(R.layout.fragment_nearby_map, container, false);
+ ButterKnife.bind(this, view);
+
+ mapView.onCreate(savedInstanceState);
+
+ setHasOptionsMenu(false);
+
+ mapView.getMapAsync(new OnMapReadyCallback() {
+ @Override
+ public void onMapReady(MapboxMap mapboxMap) {
+
+ }
+ });
+
+ return view;
+ }
+
+ @Override
+ public void onStart() {
+ mapView.onStart();
+ super.onStart();
+ }
+
+ @Override
+ public void onPause() {
+ mapView.onPause();
+ super.onPause();
+ }
+
+ @Override
+ public void onResume() {
+ mapView.onResume();
+ super.onResume();
+ }
+
+ @Override
+ public void onStop() {
+ mapView.onStop();
+ super.onStop();
+ }
+
+ @Override
+ public void onDestroyView() {
+ mapView.onDestroy();
+ super.onDestroyView();
+ }
+}
diff --git a/app/src/main/res/layout/fragment_nearby_map.xml b/app/src/main/res/layout/fragment_nearby_map.xml
new file mode 100644
index 000000000..ff4ba4d54
--- /dev/null
+++ b/app/src/main/res/layout/fragment_nearby_map.xml
@@ -0,0 +1,16 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 67ddd2396..981c617e9 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -167,4 +167,5 @@ Tap this message (or hit back) to skip this step.
https://play.google.com/apps/testing/fr.free.nrw.commons
Use Wikidata
(Warning: disabling this may cause large mobile data consumption)
+ pk.eyJ1IjoibWFza2FyYXZpdmVrIiwiYSI6ImNqMmxvdzFjMTAwMHYzM283ZWM3eW5tcDAifQ.ib5SZ9EVjwJe6GSKve0bcg
diff --git a/gradle.properties b/gradle.properties
index 8bc6a1463..95e1dd81b 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -1,4 +1,4 @@
-gradleVersion = 2.3.0
+gradleVersion = 2.2.0
supportLibVersion = 25.2.0
@@ -13,3 +13,4 @@ android.useDeprecatedNdk=true
# Library dependencies
BUTTERKNIFE_VERSION=8.4.0
+