diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 35fc025..ffea1a9 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -5,6 +5,8 @@ + + diff --git a/app/src/main/java/de/apps4ics/mountainnavigation/MainActivity.java b/app/src/main/java/de/apps4ics/mountainnavigation/MainActivity.java index 78f127a..a24a0b0 100644 --- a/app/src/main/java/de/apps4ics/mountainnavigation/MainActivity.java +++ b/app/src/main/java/de/apps4ics/mountainnavigation/MainActivity.java @@ -15,6 +15,8 @@ import android.location.Location; import android.location.LocationListener; import android.location.LocationManager; +import android.net.ConnectivityManager; +import android.net.NetworkInfo; import android.os.AsyncTask; import android.provider.Settings; import android.support.design.widget.FloatingActionButton; @@ -24,6 +26,8 @@ import android.os.Bundle; import android.support.v4.app.ActionBarDrawerToggle; import android.support.v7.app.AppCompatActivity; +import android.telephony.PhoneStateListener; +import android.telephony.TelephonyManager; import android.util.Log; import android.view.Gravity; import android.view.LayoutInflater; @@ -78,6 +82,10 @@ private static final int GPS_MIN_TIME = 5000; private static final int GPS_MIN_DIST = 5; private static final String API_KEY = "fd4034defae557fd5f2fdaaf73c3402c"; + private static ConnectivityManager cm; + private static TelephonyManager tm; + private static NetworkInfo activeNetwork; + private static int networkStrength; private static SimpleDateFormat df_hm; private static SimpleDateFormat df_full; @@ -126,6 +134,12 @@ res = getResources(); + cm = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE); + tm = (TelephonyManager) getSystemService(TELEPHONY_SERVICE); + tm.listen(new MyPhoneStateListener(), PhoneStateListener.LISTEN_SIGNAL_STRENGTHS); + activeNetwork = cm.getActiveNetworkInfo(); + networkStrength = 0; + df_hm = new SimpleDateFormat(res.getString(R.string.date_format_hm)); df_full = new SimpleDateFormat(res.getString(R.string.date_format_full)); @@ -179,6 +193,8 @@ entryImgs = new Integer[]{ R.drawable.water, R.drawable.path, + R.mipmap.ic_cabin, + R.mipmap.path_exposed, R.drawable.break_point, R.drawable.trash, R.drawable.image_upload, @@ -399,21 +415,27 @@ type = Types.PATH; break; case 2: - type = Types.BREAK_POINT; + type = Types.HUT; break; case 3: - type = Types.TRASH_BIN; + type = Types.PEAK; break; case 4: - type = Types.PIC; + type = Types.BREAK_POINT; break; case 5: - type = Types.CELL_RECEPTION; + type = Types.TRASH_BIN; break; case 6: - type = Types.WIFI; + type = Types.PIC; break; case 7: + type = Types.CELL_RECEPTION; + break; + case 8: + type = Types.WIFI; + break; + case 9: type = Types.LIFT; break; default: @@ -444,6 +466,14 @@ else Toast.makeText(getApplicationContext(), text, Toast.LENGTH_SHORT).show(); } + private void setActiveNetwork(){ + activeNetwork = cm.getActiveNetworkInfo(); + } + + public static void setNetworkStrength(int strength){ + networkStrength = strength; + } + private void addSimpleMarker(GeoPoint gp){ Marker positionMarker = new Marker(mapView); positionMarker.setPosition(gp); @@ -636,6 +666,13 @@ AddPathDialog addPathDialog = new AddPathDialog(); addPathDialog.show(getFragmentManager(), "Add Path POI Dialog"); break; + case Types.HUT: + //TODO add Options + addPoi(Types.HUT); + break; + case Types.PEAK: + addPoi(Types.PEAK); + break; case Types.BREAK_POINT: AddBreakpointDialog addBreakpointDialog = new AddBreakpointDialog(); addBreakpointDialog.show(getFragmentManager(), "Add Break point POI Dialog"); @@ -647,7 +684,8 @@ addPoi(Types.PIC); break; case Types.CELL_RECEPTION: - addPoi(Types.CELL_RECEPTION); + //addPoi(Types.CELL_RECEPTION); + addCellReceptionPoi(); break; case Types.WIFI: addPoi(Types.WIFI); @@ -708,6 +746,22 @@ @Override public void onClick(DialogInterface dialog, int which) { int[] options = adapter.getCheckedItems(); + for(int i=0; i