From 8a0ed4050479f0076f99891382ae04ac9ca03592 Mon Sep 17 00:00:00 2001 From: Keith Irwin Date: Wed, 26 Apr 2017 12:30:01 -0400 Subject: [PATCH] Fixed #1 --- app/src/main/AndroidManifest.xml | 24 +++++++--- .../tracman/ConnectionReceiver.java | 35 ++++++++++++++ .../keithirwin/tracman/LocationService.java | 44 +++++++++++------- app/src/main/res/drawable-hdpi/logo_dark.png | Bin 0 -> 1480 bytes app/src/main/res/drawable-mdpi/logo_dark.png | Bin 0 -> 878 bytes app/src/main/res/drawable-xhdpi/logo_dark.png | Bin 0 -> 1808 bytes .../main/res/drawable-xxhdpi/logo_dark.png | Bin 0 -> 2703 bytes .../main/res/drawable-xxxhdpi/logo_dark.png | Bin 0 -> 4096 bytes app/src/main/res/values-de/strings.xml | 8 ++-- app/src/main/res/values-es/strings.xml | 13 +++--- app/src/main/res/values/strings.xml | 6 +-- 11 files changed, 94 insertions(+), 36 deletions(-) create mode 100644 app/src/main/java/us/keithirwin/tracman/ConnectionReceiver.java create mode 100644 app/src/main/res/drawable-hdpi/logo_dark.png create mode 100644 app/src/main/res/drawable-mdpi/logo_dark.png create mode 100644 app/src/main/res/drawable-xhdpi/logo_dark.png create mode 100644 app/src/main/res/drawable-xxhdpi/logo_dark.png create mode 100644 app/src/main/res/drawable-xxxhdpi/logo_dark.png diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 33d8210..f379dd8 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -1,6 +1,6 @@ - + @@ -8,26 +8,26 @@ - + - + - + + + + + + + + - + \ No newline at end of file diff --git a/app/src/main/java/us/keithirwin/tracman/ConnectionReceiver.java b/app/src/main/java/us/keithirwin/tracman/ConnectionReceiver.java new file mode 100644 index 0000000..e2d7e9b --- /dev/null +++ b/app/src/main/java/us/keithirwin/tracman/ConnectionReceiver.java @@ -0,0 +1,35 @@ +package us.keithirwin.tracman; + +import android.content.BroadcastReceiver; +import android.content.Context; +import android.content.Intent; +import android.net.ConnectivityManager; +import android.net.NetworkInfo; +import android.util.Log; + +public class ConnectionReceiver extends BroadcastReceiver { + private String TAG = "ConnectionReceiver"; + + @Override + public void onReceive(Context context, Intent intent) { + Log.d(TAG,"onReceive() called"); + + // Get connection information + ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); + NetworkInfo networkInfo = cm.getActiveNetworkInfo(); + + // Prepare intent + Intent locationServiceIntent = new Intent(context, LocationService.class); + + // Check connection + if (networkInfo!=null) { + Log.d(TAG, "Connected"); + context.startService(locationServiceIntent); + } + else { + Log.d(TAG,"Disconnected"); + context.stopService(locationServiceIntent); + } + + } +} diff --git a/app/src/main/java/us/keithirwin/tracman/LocationService.java b/app/src/main/java/us/keithirwin/tracman/LocationService.java index df8f8b1..d872077 100644 --- a/app/src/main/java/us/keithirwin/tracman/LocationService.java +++ b/app/src/main/java/us/keithirwin/tracman/LocationService.java @@ -42,6 +42,9 @@ public class LocationService extends Service implements GoogleApiClient.Connecti GoogleApiClient.OnConnectionFailedListener, LocationListener { public LocationService() {} private String TAG = "LocationService"; + final int ICON_ON = 2; + final int ICON_HALF = 1; + final int ICON_OFF = 0; final String SERVER_ADDRESS = "https://dev.tracman.org"; private Socket socket; @@ -64,6 +67,8 @@ public class LocationService extends Service implements GoogleApiClient.Connecti private NotificationManager mNotificationManager; private final NotificationCompat.Builder mNotificationBuilder = new NotificationCompat.Builder(this); private void setupNotifications(Boolean persist) { + Log.d(TAG,"setupNotification() called"); + if (mNotificationManager == null) { mNotificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); } @@ -73,21 +78,28 @@ public class LocationService extends Service implements GoogleApiClient.Connecti 0); mNotificationBuilder .setPriority(-1) - .setSmallIcon(R.drawable.logo_white) + .setSmallIcon(R.drawable.logo_dark) .setCategory(NotificationCompat.CATEGORY_SERVICE) .setVisibility(NotificationCompat.VISIBILITY_PUBLIC) .setContentTitle(getText(R.string.app_name)) .setContentIntent(notificationIntent) .setOngoing(persist); } - private void showNotification(CharSequence text, Boolean active) { + private void showNotification(CharSequence text, int icon) { + Log.d(TAG,"showNotification() called"); mNotificationBuilder .setTicker(text) .setContentText(text); - if (active) { - mNotificationBuilder.setSmallIcon(R.drawable.logo_white); - } else { - mNotificationBuilder.setSmallIcon(R.drawable.logo_trans); + switch (icon) { + case ICON_ON: + mNotificationBuilder.setSmallIcon(R.drawable.logo_white); + break; + case ICON_HALF: + mNotificationBuilder.setSmallIcon(R.drawable.logo_trans); + break; + case ICON_OFF: + mNotificationBuilder.setSmallIcon(R.drawable.logo_dark); + break; } if (mNotificationManager != null) { mNotificationManager.notify(1, mNotificationBuilder.build()); @@ -111,7 +123,7 @@ public class LocationService extends Service implements GoogleApiClient.Connecti sharedPref = PreferenceManager.getDefaultSharedPreferences(this); setupNotifications(true); - showNotification(getText(R.string.connecting), false); + showNotification(getText(R.string.notify_connecting), ICON_OFF); Log.d(TAG, "Notification set up"); buildGoogleApiClient(); @@ -134,7 +146,7 @@ public class LocationService extends Service implements GoogleApiClient.Connecti opts.secure = true; socket = IO.socket(SERVER_ADDRESS, opts); - showNotification(getText(R.string.connected), false); + showNotification(getText(R.string.notify_connected), ICON_HALF); // Log errors socket.io().on(Manager.EVENT_TRANSPORT, new Emitter.Listener() { @@ -145,7 +157,7 @@ public class LocationService extends Service implements GoogleApiClient.Connecti @Override public void call(Object... args) { Exception e = (Exception) args[0]; - Log.e(TAG, "Transport error " + e); + Log.e(TAG, "Transport error: " + e); e.printStackTrace(); e.getCause().printStackTrace(); } @@ -166,7 +178,7 @@ public class LocationService extends Service implements GoogleApiClient.Connecti socket.connect(); } catch (URISyntaxException e) { - showNotification(getText(R.string.server_connection_error), false); + showNotification(getText(R.string.server_connection_error), ICON_OFF); Log.e(TAG, "Failed to connect to sockets server " + SERVER_ADDRESS, e); } @@ -234,7 +246,7 @@ public class LocationService extends Service implements GoogleApiClient.Connecti mLocationRequest = LocationRequest.create(); connectLocationUpdates(getIntervalSetting(), getPrioritySetting()); - showNotification(getString(R.string.realtime_updates), true); + showNotification(getString(R.string.occasional_updates), ICON_HALF); } @Override @@ -245,7 +257,7 @@ public class LocationService extends Service implements GoogleApiClient.Connecti @Override public void onConnectionFailed(ConnectionResult connectionResult) { Log.e(TAG, "onConnectionFailed: " + connectionResult); - showNotification(getText(R.string.google_connection_error), false); + showNotification(getText(R.string.google_connection_error), ICON_OFF); buildGoogleApiClient(); } @@ -255,11 +267,11 @@ public class LocationService extends Service implements GoogleApiClient.Connecti if (args[0].toString().equals("true")) { Log.d(TAG, "Activating realtime updates"); connectLocationUpdates(getIntervalSetting(), getPrioritySetting()); - showNotification(getString(R.string.realtime_updates), true); + showNotification(getString(R.string.realtime_updates), ICON_ON); } else { Log.d(TAG, "Deactivating realtime updates"); connectLocationUpdates(300, LocationRequest.PRIORITY_NO_POWER); - showNotification(getString(R.string.occasional_updates), false); + showNotification(getString(R.string.occasional_updates), ICON_HALF); } } }; @@ -293,7 +305,7 @@ public class LocationService extends Service implements GoogleApiClient.Connecti @Override public void onConnectionSuspended(int i) { Log.d(TAG, "onConnectionSuspended called"); - showNotification(getText(R.string.google_connection_error), false); + showNotification(getText(R.string.google_connection_error), ICON_OFF); } @Override @@ -312,7 +324,7 @@ public class LocationService extends Service implements GoogleApiClient.Connecti Log.d(TAG, "LowPowerReceiver deactivated"); setupNotifications(false); - showNotification(getText(R.string.disconnected), false); + showNotification(getText(R.string.disconnected), ICON_OFF); Log.d(TAG, "Notification changed"); } } \ No newline at end of file diff --git a/app/src/main/res/drawable-hdpi/logo_dark.png b/app/src/main/res/drawable-hdpi/logo_dark.png new file mode 100644 index 0000000000000000000000000000000000000000..f941934985b46ca30a786b11ccd3f075a6728ffa GIT binary patch literal 1480 zcmV;(1vmPMP))zhuvf^ zT)5|+bKdiC?(@FqIWO>m86#B(SFT)93xz@w0G>a8{-n0Hb|4jhM5=&9B9UCH)#d;| zM@I(%ASFP|5ABz+lAU9_a@YVcF)_hXsZ`V3w{M@cTCMY|&LN7T z7<@jzte~Jky<^7?9*4t;I&Nxe3J!-O=yW;0_y4M31nns*tuM;GCMn)4FH=q zZCc0Y^C!$^^B-{oq9}?{QBhGX5{XynjEDQ(T$4sHjLyzjt?c`}BIfKMEKs8W_57u|I6bk01AT zcX$6zw^b@tQCvsIp+kq*YPFh2hql}8Hpc+7qAeXaGBRR${rWWkproXPck0xsv=spr z78Y*ia=8G2;o;%=^XJe1mJFC^cIM2PQIE$nznHTi6bfZgIdtjLCAC;ACIKKbGjl!N z>GgVpN$Z*=JfdxEY%C~~$piqPR4R9wOeQ%1_=iZg|f=ZO6k(cb8~ak z?+Zx8IX4AB008CX<$M5q0BCD#V*wca*X0L65X={A*$NvHVzu)f(1JdjDHUPFoNvhOnG@k;1R4U~qyA!d1 zNhA_pMAY>jJ9cd7ol!P3Gvk?_enXv&8#fa5_4SfOII_h4ToPpxk|bHQX7c;}BP)h| zU0vNPo6Qyk049?Ok|Z^W5;tPpw~_6wTet3}-yIG|AX@fk#t>Cup}v3r{tX6$VM7d1 zwpfw26tux$$lAMiZ&)d~-R{AJIN)-*>LO)Fw5*zl{*II(PN(y9!tx_KJNxhA;$j&= z5D<&S1e3{BWM*bM7fuQfF_50aL!*REar;^@(% z(#RV{S67$c?RJ~bojd1^ab`&r3dJ%B+uYpjt*)+aO5i#3kwT) z`t<3-*w|R$<;$1TbkdVbr96@(2?m1^nM%;n(J`#k>Art&*Pw=m2HBoHdn!~a6+6M; znC}Ib zW`#oWad~+;4*;xIYj9|2s270e#EBEH{*&TBdwaW%&M)ol?YdO`eQ?!}lN0000I%gk8j=A<=?|t*INu`q!G4d8i(2+Fsn&rr$1R6KxwO2xBh8u|m=^@Wix8@>w03T8u0aq4 zFUFY9X0!an!~|8993e!6!{OH$V_uRZuOvx^Lm){~jV=-jg(~yaa<`9iM%~NKE?wB19gEwpueI(M@I(>03ZlLYHVyQcagkI z@opXW`F#2H_4O100K+hBMS=GAb~6A#CX@MUK(0qYe@P?~@;Qg)$`lm}1-`cS&p^du zv4p|ae_loS8}P17cfF<&eefh0+P*(MeW1)~G_<1*0F(o$2=DoB#_69nN; zBoZ0`KwDcIWguYIo2>)Q&CL`5Ks+AT2!imFBgLpii0|2nuY`wpaIzgc8cn(ET zy#N5wXf#u?$@}~J^7-i5XJ=>Y4Mf5^zPPw(9vK<20{|Qy9c@*uM3!YA#+YAQTk|4> z49!rM<(iF+jh7f>J{%7FF6T{Uel^|Q-F?5StLsj&SnP4RTrp7;f0iQ;27{KSrluD| zLqiR!s>1T}@_SJfvxaVp5PC2^KK|HZvB1g62^K{$nM@|PR8>vo^LgCa+39F)ZS5Hz z9=2JnR>3U1u5H(Tzu)fhc%HE=Th*>NH#g5#R#rYNEG&Gx(S@_LwAAl% zxmc&uX`yM_1ORY&c&P2{?5NRb^z-E8WcdHSlW#qK0iFY4TaW5==Kufz07*qoM6N<$ Ef+SXpE&u=k literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xhdpi/logo_dark.png b/app/src/main/res/drawable-xhdpi/logo_dark.png new file mode 100644 index 0000000000000000000000000000000000000000..2c5d4c8fac61fb308d4438dc08ccd6814ea05fb4 GIT binary patch literal 1808 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 USkS^73uqeBQrAaTt71a`53>rT0RR91 literal 0 HcmV?d00001 diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index ff213f2..cdf723a 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -4,8 +4,6 @@ Über Sendungen deaktiviert Problembericht - Verbindung festgestellt - verbindet… Verbindung unterbrochen FEHLER: Könnte nicht zum Google API Server verbinden. Hilfe @@ -49,9 +47,11 @@ Sendungen einschalten Aktualisierung Vorrang - Kein Internet Zugang Passwort vergessen? Einloggen - Email + Email Passwort + verbindet… + Aktualisiert nicht + Verbindung festgestellt \ No newline at end of file diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml index 085d4e7..f87f20b 100644 --- a/app/src/main/res/values-es/strings.xml +++ b/app/src/main/res/values-es/strings.xml @@ -2,10 +2,8 @@ Atras Info - conectando… - Cargando… + Cargando… Conexión perdida - Conexión establecida Informe de error Configuración principales Configuración @@ -47,10 +45,13 @@ Ciudad Sin energía - Encender transmisiónes Actualizaciones de ubicación - Sin conexión a Internet + Encender transmisiónes + Actualizaciones de ubicación Olividé su contrasena? Inciar session - email + email contrasena + conectando… + No se actualiza + Conexión establecida \ 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 18ec874..957bd69 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -16,13 +16,10 @@ ERROR: Unable to connect to Tracman server. - Connecting… - Connection established Disconnected Sending realtime updates Sending occasional updates Broadcast disabled - No internet connection Settings @@ -102,5 +99,8 @@ Login email password + Not sending updates + "Connecting… " + Connection established