Beta release of V2.5.5 - Adds network status logging.
This commit is contained in:
Binary file not shown.
@@ -1 +1 @@
|
||||
[{"outputType":{"type":"APK"},"apkInfo":{"type":"MAIN","splits":[],"versionCode":38},"path":"app-release.apk","properties":{"packageId":"uk.org.openseizuredetector","split":"","minSdkVersion":"14"}}]
|
||||
[{"outputType":{"type":"APK"},"apkInfo":{"type":"MAIN","splits":[],"versionCode":39},"path":"app-release.apk","properties":{"packageId":"uk.org.openseizuredetector","split":"","minSdkVersion":"14"}}]
|
||||
@@ -1,11 +1,12 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="uk.org.openseizuredetector"
|
||||
android:versionCode="38"
|
||||
android:versionName="2.5.4">
|
||||
android:versionCode="39"
|
||||
android:versionName="2.5.5">
|
||||
|
||||
<uses-permission android:name="android.permission.INTERNET" />
|
||||
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
|
||||
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
|
||||
<uses-permission android:name="android.permission.WAKE_LOCK" />
|
||||
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
|
||||
<uses-permission android:name="android.permission.SEND_SMS" />
|
||||
|
||||
@@ -245,7 +245,7 @@ public class SdDataSourcePebble extends SdDataSource {
|
||||
*/
|
||||
public void updatePrefs() {
|
||||
Log.v(TAG, "updatePrefs()");
|
||||
mUtil.writeToSysLogFile("SdDataSourcePebble.updatePrefs()");
|
||||
//mUtil.writeToSysLogFile("SdDataSourcePebble.updatePrefs()");
|
||||
SharedPreferences SP = PreferenceManager
|
||||
.getDefaultSharedPreferences(mContext);
|
||||
try {
|
||||
@@ -527,7 +527,7 @@ public class SdDataSourcePebble extends SdDataSource {
|
||||
*/
|
||||
public void getPebbleSdSettings() {
|
||||
Log.v(TAG, "getPebbleSdSettings() - sending required settings to pebble");
|
||||
mUtil.writeToSysLogFile("SdDataSourcePebble.getPebbleSdSettings()");
|
||||
//mUtil.writeToSysLogFile("SdDataSourcePebble.getPebbleSdSettings()");
|
||||
sendPebbleSdSettings();
|
||||
//Log.v(TAG, "getPebbleSdSettings() - requesting settings from pebble");
|
||||
//mUtil.writeToSysLogFile("SdDataSourcePebble.getPebbleSdSettings() - and request settings from pebble");
|
||||
@@ -545,7 +545,7 @@ public class SdDataSourcePebble extends SdDataSource {
|
||||
*/
|
||||
public void sendPebbleSdSettings() {
|
||||
Log.v(TAG, "sendPebblSdSettings() - preparing settings dictionary.. mSampleFreq=" + mSampleFreq);
|
||||
mUtil.writeToSysLogFile("SdDataSourcePebble.sendPebbleSdSettings()");
|
||||
//mUtil.writeToSysLogFile("SdDataSourcePebble.sendPebbleSdSettings()");
|
||||
|
||||
// Watch Settings
|
||||
final PebbleDictionary setDict = new PebbleDictionary();
|
||||
|
||||
@@ -37,9 +37,11 @@ import android.app.Notification;
|
||||
import android.app.NotificationManager;
|
||||
import android.app.PendingIntent;
|
||||
import android.app.Service;
|
||||
import android.content.BroadcastReceiver;
|
||||
import android.content.ComponentName;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.content.IntentFilter;
|
||||
import android.content.res.AssetManager;
|
||||
import android.content.SharedPreferences;
|
||||
import android.graphics.drawable.Drawable;
|
||||
@@ -47,6 +49,8 @@ import android.location.Location;
|
||||
import android.media.AudioManager;
|
||||
import android.media.RingtoneManager;
|
||||
import android.media.ToneGenerator;
|
||||
import android.net.ConnectivityManager;
|
||||
import android.net.NetworkInfo;
|
||||
import android.net.Uri;
|
||||
import android.os.CountDownTimer;
|
||||
import android.os.Environment;
|
||||
@@ -123,6 +127,8 @@ public class SdServer extends Service implements SdDataReceiver, SdLocationRecei
|
||||
private Handler mHandler;
|
||||
private ToneGenerator mToneGenerator;
|
||||
|
||||
private NetworkBroadcastReceiver mNetworkBroadcastReceiver;
|
||||
|
||||
private final IBinder mBinder = new SdBinder();
|
||||
|
||||
/**
|
||||
@@ -764,7 +770,7 @@ public class SdServer extends Service implements SdDataReceiver, SdLocationRecei
|
||||
// Start timer to remove the cancel audible flag
|
||||
// after the required period.
|
||||
if (mCancelAudibleTimer != null) {
|
||||
Log.v(TAG, "onCreate(): cancel audible timer already running - cancelling it.");
|
||||
Log.v(TAG, "cancelAudible(): cancel audible timer already running - cancelling it.");
|
||||
mCancelAudibleTimer.cancel();
|
||||
mCancelAudibleTimer = null;
|
||||
mCancelAudible = false;
|
||||
@@ -792,7 +798,8 @@ public class SdServer extends Service implements SdDataReceiver, SdLocationRecei
|
||||
|
||||
|
||||
/**
|
||||
* Start the web server (on port 8080)
|
||||
* Start the web server (on port 8080), and register for network connectivity events so we can log
|
||||
* problems.
|
||||
*/
|
||||
protected void startWebServer() {
|
||||
Log.v(TAG, "startWebServer()");
|
||||
@@ -808,10 +815,16 @@ public class SdServer extends Service implements SdDataReceiver, SdLocationRecei
|
||||
} else {
|
||||
Log.v(TAG, "startWebServer(): server already running???");
|
||||
}
|
||||
|
||||
mNetworkBroadcastReceiver = new NetworkBroadcastReceiver();
|
||||
IntentFilter filter = new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION);
|
||||
//filter.addAction(Intent.ACTION_AIRPLANE_MODE_CHANGED);
|
||||
getApplicationContext().registerReceiver(mNetworkBroadcastReceiver,filter);
|
||||
}
|
||||
|
||||
/**
|
||||
* Stop the web server - FIXME - doesn't seem to do anything!
|
||||
* And de-register for network connectivity events.
|
||||
*/
|
||||
protected void stopWebServer() {
|
||||
Log.v(TAG, "SdServer.stopWebServer()");
|
||||
@@ -824,8 +837,50 @@ public class SdServer extends Service implements SdDataReceiver, SdLocationRecei
|
||||
}
|
||||
webServer = null;
|
||||
}
|
||||
getApplicationContext().unregisterReceiver(mNetworkBroadcastReceiver);
|
||||
}
|
||||
|
||||
private class NetworkBroadcastReceiver extends BroadcastReceiver {
|
||||
@Override
|
||||
public void onReceive(Context context, Intent intent) {
|
||||
Log.v(TAG,"NetworkBroadCastReceiver.onReceive");
|
||||
mUtil.writeToSysLogFile("Network State Changed" + intent.getAction());
|
||||
//mUtil.showToast("Network State Changed" + intent.getAction());
|
||||
|
||||
ConnectivityManager cm =
|
||||
(ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);
|
||||
|
||||
NetworkInfo activeNetwork = null;
|
||||
try {
|
||||
activeNetwork = cm.getActiveNetworkInfo();
|
||||
} catch (Exception e) {
|
||||
Log.v(TAG,"NetworkBroadcastReceiver - failed to retrieve active network info");
|
||||
mUtil.writeToSysLogFile("NetworkBroadcastReceiver - failed to retrieve active network info");
|
||||
Log.v(TAG,e.toString());
|
||||
}
|
||||
if (activeNetwork != null) {
|
||||
boolean isConnected = activeNetwork != null &&
|
||||
activeNetwork.isConnectedOrConnecting();
|
||||
boolean isWiFi = activeNetwork.getType() == ConnectivityManager.TYPE_WIFI;
|
||||
if (!isWiFi) {
|
||||
Log.v(TAG,"NetworkBroadcastReceiver - no Wifi Connection");
|
||||
mUtil.writeToSysLogFile("Network State Changed - no Wifi Connection");
|
||||
mUtil.showToast("Network State Changed - no Wifi Connection");
|
||||
} else {
|
||||
Log.v(TAG,"NetworkBroadcastReceiver - Wifi Connected");
|
||||
mUtil.writeToSysLogFile("Network State Changed - Wifi Connected");
|
||||
mUtil.showToast("Network State Changed - Wifi Connected");
|
||||
}
|
||||
|
||||
} else {
|
||||
Log.v(TAG,"NetworkBroadcastReceiver - No Active Network");
|
||||
mUtil.writeToSysLogFile("Network State Changed - No Active Network");
|
||||
mUtil.showToast("Network State Changed - No Active Network");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Log data to SD card if mLogData is set in preferences.
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user