diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 5af7771..fec628f 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -3,6 +3,8 @@
package="fr.utbm.lo53.p2017.positionningapp">
+
+
() {
@Override
@@ -128,6 +136,7 @@ public class PositioningActivity extends BaseActivity {
}
public void startLocating(View v) {
+ Log.i(TAG, v.toString());
if (isLocating) {
return;
}
@@ -162,6 +171,7 @@ public class PositioningActivity extends BaseActivity {
mapMarker.setX(mapView.getX() + x_on_map - mapMarker.getWidth()/2);
mapMarker.setY(mapView.getY() + y_on_map - mapMarker.getHeight());
mapMarker.setVisibility(View.VISIBLE);
+ mapView.setVisibility(mapView.VISIBLE);
}
private boolean hasCorrectMap(int mapId) {
@@ -175,6 +185,7 @@ public class PositioningActivity extends BaseActivity {
@Override
public void onResponse(Bitmap bitmap) {
mapView.setImageBitmap(bitmap);
+ mapView.setVisibility(mapView.VISIBLE);
}
}, 0, 0, null,
new Response.ErrorListener() {
@@ -185,4 +196,40 @@ public class PositioningActivity extends BaseActivity {
});
queue.add(mapRequest);
}
+
+ protected String getMacAddress() {
+ if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) {
+ // Get MAC address prior to android 6.0
+ WifiManager wifiManager = (WifiManager) getApplicationContext().getSystemService(Context.WIFI_SERVICE);
+ WifiInfo wInfo = wifiManager.getConnectionInfo();
+ return wInfo.getMacAddress();
+ } else {
+ // Removed in Android 6.0 -> manually get MAC address
+ try {
+ List all = Collections.list(NetworkInterface.getNetworkInterfaces());
+ for (NetworkInterface nif : all) {
+ if (!nif.getName().equalsIgnoreCase("wlan0")) continue;
+
+ byte[] macBytes = nif.getHardwareAddress();
+ if (macBytes == null) {
+ return "";
+ }
+
+ StringBuilder res1 = new StringBuilder();
+ for (byte b : macBytes) {
+ //res1.append(Integer.toHexString(b & 0xFF) + ":");
+ res1.append(String.format("%02X:", b));
+ }
+
+ if (res1.length() > 0) {
+ res1.deleteCharAt(res1.length() - 1);
+ }
+ return res1.toString();
+ }
+ } catch (SocketException e) {
+ e.printStackTrace();
+ }
+ return "02:00:00:00:00:00";
+ }
+ }
}
diff --git a/app/src/main/java/fr/utbm/lo53/p2017/positionningapp/network/URLSolver.java b/app/src/main/java/fr/utbm/lo53/p2017/positionningapp/network/URLSolver.java
index 2ab1921..59f0f00 100644
--- a/app/src/main/java/fr/utbm/lo53/p2017/positionningapp/network/URLSolver.java
+++ b/app/src/main/java/fr/utbm/lo53/p2017/positionningapp/network/URLSolver.java
@@ -49,11 +49,11 @@ public class URLSolver implements SharedPreferences.OnSharedPreferenceChangeList
return builder.scheme("http").encodedAuthority(hostname + ":" + port);
}
- public String locateURL(/* TODO: mac ... */) {
+ public String locateURL(String mac) {
Uri.Builder b = baseURL();
b.appendPath("positioning")
.appendPath("request")
- .appendQueryParameter("mac", "TODO"); // TODO
+ .appendQueryParameter("mac", mac);
return b.build().toString();
}
diff --git a/app/src/main/res/layout/content_positioning.xml b/app/src/main/res/layout/content_positioning.xml
index b2691b0..b811eb9 100644
--- a/app/src/main/res/layout/content_positioning.xml
+++ b/app/src/main/res/layout/content_positioning.xml
@@ -19,10 +19,11 @@
android:layout_marginTop="8dp"
android:adjustViewBounds="true"
android:scaleType="fitXY"
+ android:visibility="invisible"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
- app:srcCompat="@drawable/map2" />
+ app:srcCompat="@drawable/map" />