Wrap access to SharedPreferences with "Prefs"
(to centralize quirk handling)
This commit is contained in:
parent
b89eb14be7
commit
0c715a2669
|
@ -36,6 +36,7 @@ import nodomain.freeyourgadget.gadgetbridge.model.DeviceService;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.util.FileUtils;
|
import nodomain.freeyourgadget.gadgetbridge.util.FileUtils;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.util.GB;
|
import nodomain.freeyourgadget.gadgetbridge.util.GB;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.util.LimitedQueue;
|
import nodomain.freeyourgadget.gadgetbridge.util.LimitedQueue;
|
||||||
|
import nodomain.freeyourgadget.gadgetbridge.util.Prefs;
|
||||||
|
|
||||||
//import nodomain.freeyourgadget.gadgetbridge.externalevents.BluetoothConnectReceiver;
|
//import nodomain.freeyourgadget.gadgetbridge.externalevents.BluetoothConnectReceiver;
|
||||||
|
|
||||||
|
@ -56,6 +57,7 @@ public class GBApplication extends Application {
|
||||||
private static final int CURRENT_PREFS_VERSION = 2;
|
private static final int CURRENT_PREFS_VERSION = 2;
|
||||||
private static LimitedQueue mIDSenderLookup = new LimitedQueue(16);
|
private static LimitedQueue mIDSenderLookup = new LimitedQueue(16);
|
||||||
private static Appender<ILoggingEvent> fileLogger;
|
private static Appender<ILoggingEvent> fileLogger;
|
||||||
|
private static Prefs prefs;
|
||||||
|
|
||||||
public static final String ACTION_QUIT
|
public static final String ACTION_QUIT
|
||||||
= "nodomain.freeyourgadget.gadgetbridge.gbapplication.action.quit";
|
= "nodomain.freeyourgadget.gadgetbridge.gbapplication.action.quit";
|
||||||
|
@ -89,6 +91,7 @@ public class GBApplication extends Application {
|
||||||
super.onCreate();
|
super.onCreate();
|
||||||
|
|
||||||
sharedPrefs = PreferenceManager.getDefaultSharedPreferences(context);
|
sharedPrefs = PreferenceManager.getDefaultSharedPreferences(context);
|
||||||
|
prefs = new Prefs(sharedPrefs);
|
||||||
|
|
||||||
// don't do anything here before we set up logging, otherwise
|
// don't do anything here before we set up logging, otherwise
|
||||||
// slf4j may be implicitly initialized before we properly configured it.
|
// slf4j may be implicitly initialized before we properly configured it.
|
||||||
|
@ -125,7 +128,7 @@ public class GBApplication extends Application {
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean isFileLoggingEnabled() {
|
public static boolean isFileLoggingEnabled() {
|
||||||
return sharedPrefs.getBoolean("log_to_file", false);
|
return prefs.getBoolean("log_to_file", false);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void setupLogging(boolean enable) {
|
public static void setupLogging(boolean enable) {
|
||||||
|
@ -345,7 +348,7 @@ public class GBApplication extends Application {
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean isDarkThemeEnabled() {
|
public static boolean isDarkThemeEnabled() {
|
||||||
return sharedPrefs.getString("pref_key_theme", context.getString(R.string.pref_theme_value_light)).equals(context.getString(R.string.pref_theme_value_dark));
|
return prefs.getString("pref_key_theme", context.getString(R.string.pref_theme_value_light)).equals(context.getString(R.string.pref_theme_value_dark));
|
||||||
}
|
}
|
||||||
|
|
||||||
public static int getTextColor(Context context) {
|
public static int getTextColor(Context context) {
|
||||||
|
@ -361,4 +364,7 @@ public class GBApplication extends Application {
|
||||||
return typedValue.data;
|
return typedValue.data;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static Prefs getPrefs() {
|
||||||
|
return prefs;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,11 +4,9 @@ import android.content.BroadcastReceiver;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.content.IntentFilter;
|
import android.content.IntentFilter;
|
||||||
import android.content.SharedPreferences;
|
|
||||||
import android.content.pm.ApplicationInfo;
|
import android.content.pm.ApplicationInfo;
|
||||||
import android.content.pm.PackageManager;
|
import android.content.pm.PackageManager;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.preference.PreferenceManager;
|
|
||||||
import android.support.v4.app.NavUtils;
|
import android.support.v4.app.NavUtils;
|
||||||
import android.support.v4.content.LocalBroadcastManager;
|
import android.support.v4.content.LocalBroadcastManager;
|
||||||
import android.view.LayoutInflater;
|
import android.view.LayoutInflater;
|
||||||
|
@ -47,7 +45,6 @@ public class AppBlacklistActivity extends GBActivity {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
private SharedPreferences sharedPrefs;
|
|
||||||
private IdentityHashMap<ApplicationInfo, String> nameMap;
|
private IdentityHashMap<ApplicationInfo, String> nameMap;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -56,7 +53,6 @@ public class AppBlacklistActivity extends GBActivity {
|
||||||
setContentView(R.layout.activity_appblacklist);
|
setContentView(R.layout.activity_appblacklist);
|
||||||
|
|
||||||
final PackageManager pm = getPackageManager();
|
final PackageManager pm = getPackageManager();
|
||||||
sharedPrefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
|
|
||||||
|
|
||||||
final List<ApplicationInfo> packageList = pm.getInstalledApplications(PackageManager.GET_META_DATA);
|
final List<ApplicationInfo> packageList = pm.getInstalledApplications(PackageManager.GET_META_DATA);
|
||||||
ListView appListView = (ListView) findViewById(R.id.appListView);
|
ListView appListView = (ListView) findViewById(R.id.appListView);
|
||||||
|
|
|
@ -4,10 +4,8 @@ import android.content.BroadcastReceiver;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.content.IntentFilter;
|
import android.content.IntentFilter;
|
||||||
import android.content.SharedPreferences;
|
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.preference.PreferenceManager;
|
|
||||||
import android.support.v4.app.NavUtils;
|
import android.support.v4.app.NavUtils;
|
||||||
import android.support.v4.content.LocalBroadcastManager;
|
import android.support.v4.content.LocalBroadcastManager;
|
||||||
import android.view.ContextMenu;
|
import android.view.ContextMenu;
|
||||||
|
@ -34,6 +32,7 @@ import nodomain.freeyourgadget.gadgetbridge.impl.GBDeviceApp;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.service.devices.pebble.PebbleProtocol;
|
import nodomain.freeyourgadget.gadgetbridge.service.devices.pebble.PebbleProtocol;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.util.FileUtils;
|
import nodomain.freeyourgadget.gadgetbridge.util.FileUtils;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.util.PebbleUtils;
|
import nodomain.freeyourgadget.gadgetbridge.util.PebbleUtils;
|
||||||
|
import nodomain.freeyourgadget.gadgetbridge.util.Prefs;
|
||||||
|
|
||||||
|
|
||||||
public class AppManagerActivity extends GBActivity {
|
public class AppManagerActivity extends GBActivity {
|
||||||
|
@ -59,7 +58,7 @@ public class AppManagerActivity extends GBActivity {
|
||||||
appList.add(new GBDeviceApp(uuid, appName, appCreator, "", appType));
|
appList.add(new GBDeviceApp(uuid, appName, appCreator, "", appType));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (sharedPrefs.getBoolean("pebble_force_untested", false)) {
|
if (prefs.getBoolean("pebble_force_untested", false)) {
|
||||||
appList.addAll(getSystemApps());
|
appList.addAll(getSystemApps());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -68,7 +67,7 @@ public class AppManagerActivity extends GBActivity {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
private SharedPreferences sharedPrefs;
|
private Prefs prefs;
|
||||||
|
|
||||||
private final List<GBDeviceApp> appList = new ArrayList<>();
|
private final List<GBDeviceApp> appList = new ArrayList<>();
|
||||||
private GBDeviceAppAdapter mGBDeviceAppAdapter;
|
private GBDeviceAppAdapter mGBDeviceAppAdapter;
|
||||||
|
@ -130,7 +129,7 @@ public class AppManagerActivity extends GBActivity {
|
||||||
throw new IllegalArgumentException("Must provide a device when invoking this activity");
|
throw new IllegalArgumentException("Must provide a device when invoking this activity");
|
||||||
}
|
}
|
||||||
|
|
||||||
sharedPrefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
|
prefs = GBApplication.getPrefs();
|
||||||
|
|
||||||
setContentView(R.layout.activity_appmanager);
|
setContentView(R.layout.activity_appmanager);
|
||||||
|
|
||||||
|
@ -150,7 +149,7 @@ public class AppManagerActivity extends GBActivity {
|
||||||
|
|
||||||
appList.addAll(getCachedApps());
|
appList.addAll(getCachedApps());
|
||||||
|
|
||||||
if (sharedPrefs.getBoolean("pebble_force_untested", false)) {
|
if (prefs.getBoolean("pebble_force_untested", false)) {
|
||||||
appList.addAll(getSystemApps());
|
appList.addAll(getSystemApps());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -16,6 +16,7 @@ import nodomain.freeyourgadget.gadgetbridge.R;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.adapter.GBAlarmListAdapter;
|
import nodomain.freeyourgadget.gadgetbridge.adapter.GBAlarmListAdapter;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.devices.miband.MiBandConst;
|
import nodomain.freeyourgadget.gadgetbridge.devices.miband.MiBandConst;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.impl.GBAlarm;
|
import nodomain.freeyourgadget.gadgetbridge.impl.GBAlarm;
|
||||||
|
import nodomain.freeyourgadget.gadgetbridge.util.Prefs;
|
||||||
|
|
||||||
import static nodomain.freeyourgadget.gadgetbridge.devices.miband.MiBandConst.PREF_MIBAND_ALARMS;
|
import static nodomain.freeyourgadget.gadgetbridge.devices.miband.MiBandConst.PREF_MIBAND_ALARMS;
|
||||||
|
|
||||||
|
@ -34,12 +35,12 @@ public class ConfigureAlarms extends GBActivity {
|
||||||
|
|
||||||
setContentView(R.layout.activity_configure_alarms);
|
setContentView(R.layout.activity_configure_alarms);
|
||||||
|
|
||||||
SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(this);
|
Prefs prefs = GBApplication.getPrefs();
|
||||||
preferencesAlarmListSet = sharedPrefs.getStringSet(PREF_MIBAND_ALARMS, new HashSet<String>());
|
preferencesAlarmListSet = prefs.getStringSet(PREF_MIBAND_ALARMS, new HashSet<String>());
|
||||||
if (preferencesAlarmListSet.isEmpty()) {
|
if (preferencesAlarmListSet.isEmpty()) {
|
||||||
//initialize the preferences
|
//initialize the preferences
|
||||||
preferencesAlarmListSet = new HashSet<>(Arrays.asList(GBAlarm.DEFAULT_ALARMS));
|
preferencesAlarmListSet = new HashSet<>(Arrays.asList(GBAlarm.DEFAULT_ALARMS));
|
||||||
sharedPrefs.edit().putStringSet(PREF_MIBAND_ALARMS, preferencesAlarmListSet).apply();
|
prefs.getPreferences().edit().putStringSet(PREF_MIBAND_ALARMS, preferencesAlarmListSet).apply();
|
||||||
}
|
}
|
||||||
|
|
||||||
mGBAlarmListAdapter = new GBAlarmListAdapter(this, preferencesAlarmListSet);
|
mGBAlarmListAdapter = new GBAlarmListAdapter(this, preferencesAlarmListSet);
|
||||||
|
@ -66,9 +67,9 @@ public class ConfigureAlarms extends GBActivity {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void updateAlarmsFromPrefs() {
|
private void updateAlarmsFromPrefs() {
|
||||||
SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(this);
|
Prefs prefs = GBApplication.getPrefs();
|
||||||
preferencesAlarmListSet = sharedPrefs.getStringSet(PREF_MIBAND_ALARMS, new HashSet<String>());
|
preferencesAlarmListSet = prefs.getStringSet(PREF_MIBAND_ALARMS, new HashSet<String>());
|
||||||
int reservedSlots = Integer.parseInt(sharedPrefs.getString(MiBandConst.PREF_MIBAND_RESERVE_ALARM_FOR_CALENDAR, "0"));
|
int reservedSlots = Integer.parseInt(prefs.getString(MiBandConst.PREF_MIBAND_RESERVE_ALARM_FOR_CALENDAR, "0"));
|
||||||
|
|
||||||
mGBAlarmListAdapter.setAlarmList(preferencesAlarmListSet, reservedSlots);
|
mGBAlarmListAdapter.setAlarmList(preferencesAlarmListSet, reservedSlots);
|
||||||
mGBAlarmListAdapter.notifyDataSetChanged();
|
mGBAlarmListAdapter.notifyDataSetChanged();
|
||||||
|
|
|
@ -46,6 +46,7 @@ import nodomain.freeyourgadget.gadgetbridge.devices.DeviceCoordinator;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.impl.GBDevice;
|
import nodomain.freeyourgadget.gadgetbridge.impl.GBDevice;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.util.DeviceHelper;
|
import nodomain.freeyourgadget.gadgetbridge.util.DeviceHelper;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.util.GB;
|
import nodomain.freeyourgadget.gadgetbridge.util.GB;
|
||||||
|
import nodomain.freeyourgadget.gadgetbridge.util.Prefs;
|
||||||
|
|
||||||
public class ControlCenter extends GBActivity {
|
public class ControlCenter extends GBActivity {
|
||||||
|
|
||||||
|
@ -184,9 +185,9 @@ public class ControlCenter extends GBActivity {
|
||||||
/*
|
/*
|
||||||
* Ask for permission to intercept notifications on first run.
|
* Ask for permission to intercept notifications on first run.
|
||||||
*/
|
*/
|
||||||
SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(this);
|
Prefs prefs = GBApplication.getPrefs();
|
||||||
if (sharedPrefs.getBoolean("firstrun", true)) {
|
if (prefs.getBoolean("firstrun", true)) {
|
||||||
sharedPrefs.edit().putBoolean("firstrun", false).apply();
|
prefs.getPreferences().edit().putBoolean("firstrun", false).apply();
|
||||||
Intent enableIntent = new Intent("android.settings.ACTION_NOTIFICATION_LISTENER_SETTINGS");
|
Intent enableIntent = new Intent("android.settings.ACTION_NOTIFICATION_LISTENER_SETTINGS");
|
||||||
startActivity(enableIntent);
|
startActivity(enableIntent);
|
||||||
}
|
}
|
||||||
|
|
|
@ -14,8 +14,10 @@ import android.preference.PreferenceManager;
|
||||||
import android.support.annotation.NonNull;
|
import android.support.annotation.NonNull;
|
||||||
import android.support.v4.content.LocalBroadcastManager;
|
import android.support.v4.content.LocalBroadcastManager;
|
||||||
|
|
||||||
|
import nodomain.freeyourgadget.gadgetbridge.GBApplication;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.impl.GBDevice;
|
import nodomain.freeyourgadget.gadgetbridge.impl.GBDevice;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.model.DeviceType;
|
import nodomain.freeyourgadget.gadgetbridge.model.DeviceType;
|
||||||
|
import nodomain.freeyourgadget.gadgetbridge.util.Prefs;
|
||||||
|
|
||||||
public class PebbleContentProvider extends ContentProvider {
|
public class PebbleContentProvider extends ContentProvider {
|
||||||
|
|
||||||
|
@ -59,8 +61,8 @@ public class PebbleContentProvider extends ContentProvider {
|
||||||
MatrixCursor mc = new MatrixCursor(columnNames);
|
MatrixCursor mc = new MatrixCursor(columnNames);
|
||||||
int connected = 0;
|
int connected = 0;
|
||||||
int appMessage = 0;
|
int appMessage = 0;
|
||||||
SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(this.getContext());
|
Prefs prefs = GBApplication.getPrefs();
|
||||||
if (sharedPrefs.getBoolean("pebble_enable_pebblekit", false)) {
|
if (prefs.getBoolean("pebble_enable_pebblekit", false)) {
|
||||||
appMessage = 1;
|
appMessage = 1;
|
||||||
}
|
}
|
||||||
if (mGBDevice != null && mGBDevice.getType() == DeviceType.PEBBLE && mGBDevice.isInitialized()) {
|
if (mGBDevice != null && mGBDevice.getType() == DeviceType.PEBBLE && mGBDevice.isInitialized()) {
|
||||||
|
|
|
@ -26,6 +26,7 @@ import nodomain.freeyourgadget.gadgetbridge.activities.DiscoveryActivity;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.devices.DeviceCoordinator;
|
import nodomain.freeyourgadget.gadgetbridge.devices.DeviceCoordinator;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.impl.GBDevice;
|
import nodomain.freeyourgadget.gadgetbridge.impl.GBDevice;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.util.GB;
|
import nodomain.freeyourgadget.gadgetbridge.util.GB;
|
||||||
|
import nodomain.freeyourgadget.gadgetbridge.util.Prefs;
|
||||||
|
|
||||||
public class MiBandPairingActivity extends Activity {
|
public class MiBandPairingActivity extends Activity {
|
||||||
private static final Logger LOG = LoggerFactory.getLogger(MiBandPairingActivity.class);
|
private static final Logger LOG = LoggerFactory.getLogger(MiBandPairingActivity.class);
|
||||||
|
@ -170,8 +171,8 @@ public class MiBandPairingActivity extends Activity {
|
||||||
unregisterReceiver(mBondingReceiver);
|
unregisterReceiver(mBondingReceiver);
|
||||||
|
|
||||||
if (pairedSuccessfully) {
|
if (pairedSuccessfully) {
|
||||||
SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(this);
|
Prefs prefs = GBApplication.getPrefs();
|
||||||
sharedPrefs.edit().putString(MiBandConst.PREF_MIBAND_ADDRESS, macAddress).apply();
|
prefs.getPreferences().edit().putString(MiBandConst.PREF_MIBAND_ADDRESS, macAddress).apply();
|
||||||
}
|
}
|
||||||
|
|
||||||
Intent intent = new Intent(this, ControlCenter.class).setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
|
Intent intent = new Intent(this, ControlCenter.class).setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
|
||||||
|
|
|
@ -14,6 +14,7 @@ import nodomain.freeyourgadget.gadgetbridge.devices.SampleProvider;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.impl.GBDevice;
|
import nodomain.freeyourgadget.gadgetbridge.impl.GBDevice;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.impl.GBDeviceCandidate;
|
import nodomain.freeyourgadget.gadgetbridge.impl.GBDeviceCandidate;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.model.DeviceType;
|
import nodomain.freeyourgadget.gadgetbridge.model.DeviceType;
|
||||||
|
import nodomain.freeyourgadget.gadgetbridge.util.Prefs;
|
||||||
|
|
||||||
public class PebbleCoordinator extends AbstractDeviceCoordinator {
|
public class PebbleCoordinator extends AbstractDeviceCoordinator {
|
||||||
public PebbleCoordinator() {
|
public PebbleCoordinator() {
|
||||||
|
@ -45,8 +46,8 @@ public class PebbleCoordinator extends AbstractDeviceCoordinator {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public SampleProvider getSampleProvider() {
|
public SampleProvider getSampleProvider() {
|
||||||
SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(GBApplication.getContext());
|
Prefs prefs = GBApplication.getPrefs();
|
||||||
int activityTracker = Integer.parseInt(sharedPrefs.getString("pebble_activitytracker", Integer.toString(SampleProvider.PROVIDER_PEBBLE_HEALTH)));
|
int activityTracker = Integer.parseInt(prefs.getString("pebble_activitytracker", Integer.toString(SampleProvider.PROVIDER_PEBBLE_HEALTH)));
|
||||||
switch (activityTracker) {
|
switch (activityTracker) {
|
||||||
case SampleProvider.PROVIDER_PEBBLE_HEALTH:
|
case SampleProvider.PROVIDER_PEBBLE_HEALTH:
|
||||||
return new HealthSampleProvider();
|
return new HealthSampleProvider();
|
||||||
|
|
|
@ -10,6 +10,7 @@ import android.support.v4.content.LocalBroadcastManager;
|
||||||
|
|
||||||
import nodomain.freeyourgadget.gadgetbridge.GBApplication;
|
import nodomain.freeyourgadget.gadgetbridge.GBApplication;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.activities.ControlCenter;
|
import nodomain.freeyourgadget.gadgetbridge.activities.ControlCenter;
|
||||||
|
import nodomain.freeyourgadget.gadgetbridge.util.Prefs;
|
||||||
|
|
||||||
public class BluetoothStateChangeReceiver extends BroadcastReceiver {
|
public class BluetoothStateChangeReceiver extends BroadcastReceiver {
|
||||||
@Override
|
@Override
|
||||||
|
@ -22,8 +23,8 @@ public class BluetoothStateChangeReceiver extends BroadcastReceiver {
|
||||||
Intent refreshIntent = new Intent(ControlCenter.ACTION_REFRESH_DEVICELIST);
|
Intent refreshIntent = new Intent(ControlCenter.ACTION_REFRESH_DEVICELIST);
|
||||||
LocalBroadcastManager.getInstance(context).sendBroadcast(refreshIntent);
|
LocalBroadcastManager.getInstance(context).sendBroadcast(refreshIntent);
|
||||||
|
|
||||||
SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(context);
|
Prefs prefs = GBApplication.getPrefs();
|
||||||
if (!sharedPrefs.getBoolean("general_autoconnectonbluetooth", false)) {
|
if (!prefs.getBoolean("general_autoconnectonbluetooth", false)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -15,6 +15,7 @@ import org.slf4j.LoggerFactory;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.GBApplication;
|
import nodomain.freeyourgadget.gadgetbridge.GBApplication;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.model.NotificationSpec;
|
import nodomain.freeyourgadget.gadgetbridge.model.NotificationSpec;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.model.NotificationType;
|
import nodomain.freeyourgadget.gadgetbridge.model.NotificationType;
|
||||||
|
import nodomain.freeyourgadget.gadgetbridge.util.Prefs;
|
||||||
|
|
||||||
public class K9Receiver extends BroadcastReceiver {
|
public class K9Receiver extends BroadcastReceiver {
|
||||||
|
|
||||||
|
@ -24,11 +25,11 @@ public class K9Receiver extends BroadcastReceiver {
|
||||||
@Override
|
@Override
|
||||||
public void onReceive(Context context, Intent intent) {
|
public void onReceive(Context context, Intent intent) {
|
||||||
|
|
||||||
SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(context);
|
Prefs prefs = GBApplication.getPrefs();
|
||||||
if ("never".equals(sharedPrefs.getString("notification_mode_k9mail", "when_screen_off"))) {
|
if ("never".equals(prefs.getString("notification_mode_k9mail", "when_screen_off"))) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if ("when_screen_off".equals(sharedPrefs.getString("notification_mode_k9mail", "when_screen_off"))) {
|
if ("when_screen_off".equals(prefs.getString("notification_mode_k9mail", "when_screen_off"))) {
|
||||||
PowerManager powermanager = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
|
PowerManager powermanager = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
|
||||||
if (powermanager.isScreenOn()) {
|
if (powermanager.isScreenOn()) {
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -30,6 +30,7 @@ import nodomain.freeyourgadget.gadgetbridge.model.NotificationSpec;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.model.NotificationType;
|
import nodomain.freeyourgadget.gadgetbridge.model.NotificationType;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.service.DeviceCommunicationService;
|
import nodomain.freeyourgadget.gadgetbridge.service.DeviceCommunicationService;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.util.LimitedQueue;
|
import nodomain.freeyourgadget.gadgetbridge.util.LimitedQueue;
|
||||||
|
import nodomain.freeyourgadget.gadgetbridge.util.Prefs;
|
||||||
|
|
||||||
public class NotificationListener extends NotificationListenerService {
|
public class NotificationListener extends NotificationListenerService {
|
||||||
|
|
||||||
|
@ -161,8 +162,8 @@ public class NotificationListener extends NotificationListenerService {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(this);
|
Prefs prefs = GBApplication.getPrefs();
|
||||||
if (!sharedPrefs.getBoolean("notifications_generic_whenscreenon", false)) {
|
if (!prefs.getBoolean("notifications_generic_whenscreenon", false)) {
|
||||||
PowerManager powermanager = (PowerManager) getSystemService(POWER_SERVICE);
|
PowerManager powermanager = (PowerManager) getSystemService(POWER_SERVICE);
|
||||||
if (powermanager.isScreenOn()) {
|
if (powermanager.isScreenOn()) {
|
||||||
return;
|
return;
|
||||||
|
@ -189,13 +190,13 @@ public class NotificationListener extends NotificationListenerService {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (source.equals("eu.siacs.conversations")) {
|
if (source.equals("eu.siacs.conversations")) {
|
||||||
if (!"never".equals(sharedPrefs.getString("notification_mode_pebblemsg", "when_screen_off"))) {
|
if (!"never".equals(prefs.getString("notification_mode_pebblemsg", "when_screen_off"))) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (source.equals("com.fsck.k9")) {
|
if (source.equals("com.fsck.k9")) {
|
||||||
if (!"never".equals(sharedPrefs.getString("notification_mode_k9mail", "when_screen_off"))) {
|
if (!"never".equals(prefs.getString("notification_mode_k9mail", "when_screen_off"))) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -205,7 +206,7 @@ public class NotificationListener extends NotificationListenerService {
|
||||||
source.equals("com.sonyericsson.conversations") ||
|
source.equals("com.sonyericsson.conversations") ||
|
||||||
source.equals("com.android.messaging") ||
|
source.equals("com.android.messaging") ||
|
||||||
source.equals("org.smssecure.smssecure")) {
|
source.equals("org.smssecure.smssecure")) {
|
||||||
if (!"never".equals(sharedPrefs.getString("notification_mode_sms", "when_screen_off"))) {
|
if (!"never".equals(prefs.getString("notification_mode_sms", "when_screen_off"))) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,6 +15,7 @@ import org.slf4j.LoggerFactory;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.GBApplication;
|
import nodomain.freeyourgadget.gadgetbridge.GBApplication;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.model.NotificationSpec;
|
import nodomain.freeyourgadget.gadgetbridge.model.NotificationSpec;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.model.NotificationType;
|
import nodomain.freeyourgadget.gadgetbridge.model.NotificationType;
|
||||||
|
import nodomain.freeyourgadget.gadgetbridge.util.Prefs;
|
||||||
|
|
||||||
public class PebbleReceiver extends BroadcastReceiver {
|
public class PebbleReceiver extends BroadcastReceiver {
|
||||||
|
|
||||||
|
@ -23,11 +24,11 @@ public class PebbleReceiver extends BroadcastReceiver {
|
||||||
@Override
|
@Override
|
||||||
public void onReceive(Context context, Intent intent) {
|
public void onReceive(Context context, Intent intent) {
|
||||||
|
|
||||||
SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(context);
|
Prefs prefs = GBApplication.getPrefs();
|
||||||
if ("never".equals(sharedPrefs.getString("notification_mode_pebblemsg", "when_screen_off"))) {
|
if ("never".equals(prefs.getString("notification_mode_pebblemsg", "when_screen_off"))) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if ("when_screen_off".equals(sharedPrefs.getString("notification_mode_pebblemsg", "when_screen_off"))) {
|
if ("when_screen_off".equals(prefs.getString("notification_mode_pebblemsg", "when_screen_off"))) {
|
||||||
PowerManager powermanager = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
|
PowerManager powermanager = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
|
||||||
if (powermanager.isScreenOn()) {
|
if (powermanager.isScreenOn()) {
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -9,6 +9,7 @@ import android.telephony.TelephonyManager;
|
||||||
|
|
||||||
import nodomain.freeyourgadget.gadgetbridge.GBApplication;
|
import nodomain.freeyourgadget.gadgetbridge.GBApplication;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.model.CallSpec;
|
import nodomain.freeyourgadget.gadgetbridge.model.CallSpec;
|
||||||
|
import nodomain.freeyourgadget.gadgetbridge.util.Prefs;
|
||||||
|
|
||||||
|
|
||||||
public class PhoneCallReceiver extends BroadcastReceiver {
|
public class PhoneCallReceiver extends BroadcastReceiver {
|
||||||
|
@ -64,8 +65,8 @@ public class PhoneCallReceiver extends BroadcastReceiver {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (callCommand != CallSpec.CALL_UNDEFINED) {
|
if (callCommand != CallSpec.CALL_UNDEFINED) {
|
||||||
SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(context);
|
Prefs prefs = GBApplication.getPrefs();
|
||||||
if ("never".equals(sharedPrefs.getString("notification_mode_calls", "always"))) {
|
if ("never".equals(prefs.getString("notification_mode_calls", "always"))) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
CallSpec callSpec = new CallSpec();
|
CallSpec callSpec = new CallSpec();
|
||||||
|
|
|
@ -12,17 +12,17 @@ import android.telephony.SmsMessage;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.GBApplication;
|
import nodomain.freeyourgadget.gadgetbridge.GBApplication;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.model.NotificationSpec;
|
import nodomain.freeyourgadget.gadgetbridge.model.NotificationSpec;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.model.NotificationType;
|
import nodomain.freeyourgadget.gadgetbridge.model.NotificationType;
|
||||||
|
import nodomain.freeyourgadget.gadgetbridge.util.Prefs;
|
||||||
|
|
||||||
public class SMSReceiver extends BroadcastReceiver {
|
public class SMSReceiver extends BroadcastReceiver {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onReceive(Context context, Intent intent) {
|
public void onReceive(Context context, Intent intent) {
|
||||||
|
Prefs prefs = GBApplication.getPrefs();
|
||||||
SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(context);
|
if ("never".equals(prefs.getString("notification_mode_sms", "when_screen_off"))) {
|
||||||
if ("never".equals(sharedPrefs.getString("notification_mode_sms", "when_screen_off"))) {
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if ("when_screen_off".equals(sharedPrefs.getString("notification_mode_sms", "when_screen_off"))) {
|
if ("when_screen_off".equals(prefs.getString("notification_mode_sms", "when_screen_off"))) {
|
||||||
PowerManager powermanager = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
|
PowerManager powermanager = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
|
||||||
if (powermanager.isScreenOn()) {
|
if (powermanager.isScreenOn()) {
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -14,6 +14,7 @@ import java.util.GregorianCalendar;
|
||||||
|
|
||||||
import nodomain.freeyourgadget.gadgetbridge.GBApplication;
|
import nodomain.freeyourgadget.gadgetbridge.GBApplication;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.util.DateTimeUtils;
|
import nodomain.freeyourgadget.gadgetbridge.util.DateTimeUtils;
|
||||||
|
import nodomain.freeyourgadget.gadgetbridge.util.Prefs;
|
||||||
|
|
||||||
|
|
||||||
public class TimeChangeReceiver extends BroadcastReceiver {
|
public class TimeChangeReceiver extends BroadcastReceiver {
|
||||||
|
@ -22,10 +23,10 @@ public class TimeChangeReceiver extends BroadcastReceiver {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onReceive(Context context, Intent intent) {
|
public void onReceive(Context context, Intent intent) {
|
||||||
SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(context);
|
Prefs prefs = GBApplication.getPrefs();
|
||||||
final String action = intent.getAction();
|
final String action = intent.getAction();
|
||||||
|
|
||||||
if (sharedPrefs.getBoolean("datetime_synconconnect", true) && (action.equals(Intent.ACTION_TIME_CHANGED) || action.equals(Intent.ACTION_TIMEZONE_CHANGED))) {
|
if (prefs.getBoolean("datetime_synconconnect", true) && (action.equals(Intent.ACTION_TIME_CHANGED) || action.equals(Intent.ACTION_TIMEZONE_CHANGED))) {
|
||||||
Date newTime = GregorianCalendar.getInstance().getTime();
|
Date newTime = GregorianCalendar.getInstance().getTime();
|
||||||
LOG.info("Time or Timezone changed, syncing with device: " + DateTimeUtils.formatDate(newTime) + " (" + newTime.toGMTString() + "), " + intent.getAction());
|
LOG.info("Time or Timezone changed, syncing with device: " + DateTimeUtils.formatDate(newTime) + " (" + newTime.toGMTString() + "), " + intent.getAction());
|
||||||
GBApplication.deviceService().onSetTime();
|
GBApplication.deviceService().onSetTime();
|
||||||
|
|
|
@ -6,11 +6,9 @@ import android.content.BroadcastReceiver;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.content.IntentFilter;
|
import android.content.IntentFilter;
|
||||||
import android.content.SharedPreferences;
|
|
||||||
import android.database.Cursor;
|
import android.database.Cursor;
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import android.os.IBinder;
|
import android.os.IBinder;
|
||||||
import android.preference.PreferenceManager;
|
|
||||||
import android.provider.ContactsContract;
|
import android.provider.ContactsContract;
|
||||||
import android.support.annotation.Nullable;
|
import android.support.annotation.Nullable;
|
||||||
import android.support.v4.content.LocalBroadcastManager;
|
import android.support.v4.content.LocalBroadcastManager;
|
||||||
|
@ -39,6 +37,7 @@ import nodomain.freeyourgadget.gadgetbridge.model.NotificationSpec;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.model.NotificationType;
|
import nodomain.freeyourgadget.gadgetbridge.model.NotificationType;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.util.DeviceHelper;
|
import nodomain.freeyourgadget.gadgetbridge.util.DeviceHelper;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.util.GB;
|
import nodomain.freeyourgadget.gadgetbridge.util.GB;
|
||||||
|
import nodomain.freeyourgadget.gadgetbridge.util.Prefs;
|
||||||
|
|
||||||
import static nodomain.freeyourgadget.gadgetbridge.model.DeviceService.ACTION_APP_CONFIGURE;
|
import static nodomain.freeyourgadget.gadgetbridge.model.DeviceService.ACTION_APP_CONFIGURE;
|
||||||
import static nodomain.freeyourgadget.gadgetbridge.model.DeviceService.ACTION_CALLSTATE;
|
import static nodomain.freeyourgadget.gadgetbridge.model.DeviceService.ACTION_CALLSTATE;
|
||||||
|
@ -170,7 +169,7 @@ public class DeviceCommunicationService extends Service {
|
||||||
|
|
||||||
// when we get past this, we should have valid mDeviceSupport and mGBDevice instances
|
// when we get past this, we should have valid mDeviceSupport and mGBDevice instances
|
||||||
|
|
||||||
SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(this);
|
Prefs prefs = GBApplication.getPrefs();
|
||||||
switch (action) {
|
switch (action) {
|
||||||
case ACTION_START:
|
case ACTION_START:
|
||||||
start();
|
start();
|
||||||
|
@ -181,8 +180,8 @@ public class DeviceCommunicationService extends Service {
|
||||||
String btDeviceAddress = null;
|
String btDeviceAddress = null;
|
||||||
if (gbDevice == null) {
|
if (gbDevice == null) {
|
||||||
btDeviceAddress = intent.getStringExtra(EXTRA_DEVICE_ADDRESS);
|
btDeviceAddress = intent.getStringExtra(EXTRA_DEVICE_ADDRESS);
|
||||||
if (btDeviceAddress == null && sharedPrefs != null) { // may be null in test cases
|
if (btDeviceAddress == null && prefs != null) { // may be null in test cases
|
||||||
btDeviceAddress = sharedPrefs.getString("last_device_address", null);
|
btDeviceAddress = prefs.getString("last_device_address", null);
|
||||||
}
|
}
|
||||||
if (btDeviceAddress != null) {
|
if (btDeviceAddress != null) {
|
||||||
gbDevice = DeviceHelper.getInstance().findAvailableDevice(btDeviceAddress, this);
|
gbDevice = DeviceHelper.getInstance().findAvailableDevice(btDeviceAddress, this);
|
||||||
|
@ -191,8 +190,8 @@ public class DeviceCommunicationService extends Service {
|
||||||
btDeviceAddress = gbDevice.getAddress();
|
btDeviceAddress = gbDevice.getAddress();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (sharedPrefs != null) {
|
if (prefs != null) {
|
||||||
sharedPrefs.edit().putString("last_device_address", btDeviceAddress).apply();
|
prefs.getPreferences().edit().putString("last_device_address", btDeviceAddress).apply();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (gbDevice != null && !isConnecting() && !isConnected()) {
|
if (gbDevice != null && !isConnecting() && !isConnected()) {
|
||||||
|
@ -241,12 +240,12 @@ public class DeviceCommunicationService extends Service {
|
||||||
if (((notificationSpec.flags & NotificationSpec.FLAG_WEARABLE_REPLY) > 0)
|
if (((notificationSpec.flags & NotificationSpec.FLAG_WEARABLE_REPLY) > 0)
|
||||||
|| (notificationSpec.type == NotificationType.SMS && notificationSpec.phoneNumber != null)) {
|
|| (notificationSpec.type == NotificationType.SMS && notificationSpec.phoneNumber != null)) {
|
||||||
// NOTE: maybe not where it belongs
|
// NOTE: maybe not where it belongs
|
||||||
if (sharedPrefs.getBoolean("pebble_force_untested", false)) {
|
if (prefs.getBoolean("pebble_force_untested", false)) {
|
||||||
// I would rather like to save that as an array in ShadredPreferences
|
// I would rather like to save that as an array in ShadredPreferences
|
||||||
// this would work but I dont know how to do the same in the Settings Activity's xml
|
// this would work but I dont know how to do the same in the Settings Activity's xml
|
||||||
ArrayList<String> replies = new ArrayList<>();
|
ArrayList<String> replies = new ArrayList<>();
|
||||||
for (int i = 1; i <= 16; i++) {
|
for (int i = 1; i <= 16; i++) {
|
||||||
String reply = sharedPrefs.getString("canned_reply_" + i, null);
|
String reply = prefs.getString("canned_reply_" + i, null);
|
||||||
if (reply != null && !reply.equals("")) {
|
if (reply != null && !reply.equals("")) {
|
||||||
replies.add(reply);
|
replies.add(reply);
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,10 +8,8 @@ import android.content.BroadcastReceiver;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.content.IntentFilter;
|
import android.content.IntentFilter;
|
||||||
import android.content.SharedPreferences;
|
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import android.os.ParcelUuid;
|
import android.os.ParcelUuid;
|
||||||
import android.preference.PreferenceManager;
|
|
||||||
|
|
||||||
import org.json.JSONArray;
|
import org.json.JSONArray;
|
||||||
import org.json.JSONException;
|
import org.json.JSONException;
|
||||||
|
@ -29,6 +27,7 @@ import java.nio.ByteBuffer;
|
||||||
import java.nio.ByteOrder;
|
import java.nio.ByteOrder;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
|
||||||
|
import nodomain.freeyourgadget.gadgetbridge.GBApplication;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.R;
|
import nodomain.freeyourgadget.gadgetbridge.R;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.deviceevents.GBDeviceEvent;
|
import nodomain.freeyourgadget.gadgetbridge.deviceevents.GBDeviceEvent;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.deviceevents.GBDeviceEventAppInfo;
|
import nodomain.freeyourgadget.gadgetbridge.deviceevents.GBDeviceEventAppInfo;
|
||||||
|
@ -44,6 +43,7 @@ import nodomain.freeyourgadget.gadgetbridge.service.serial.GBDeviceProtocol;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.util.FileUtils;
|
import nodomain.freeyourgadget.gadgetbridge.util.FileUtils;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.util.GB;
|
import nodomain.freeyourgadget.gadgetbridge.util.GB;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.util.PebbleUtils;
|
import nodomain.freeyourgadget.gadgetbridge.util.PebbleUtils;
|
||||||
|
import nodomain.freeyourgadget.gadgetbridge.util.Prefs;
|
||||||
|
|
||||||
public class PebbleIoThread extends GBDeviceIoThread {
|
public class PebbleIoThread extends GBDeviceIoThread {
|
||||||
private static final Logger LOG = LoggerFactory.getLogger(PebbleIoThread.class);
|
private static final Logger LOG = LoggerFactory.getLogger(PebbleIoThread.class);
|
||||||
|
@ -62,7 +62,7 @@ public class PebbleIoThread extends GBDeviceIoThread {
|
||||||
public static final String PEBBLEKIT_ACTION_APP_START = "com.getpebble.action.app.START";
|
public static final String PEBBLEKIT_ACTION_APP_START = "com.getpebble.action.app.START";
|
||||||
public static final String PEBBLEKIT_ACTION_APP_STOP = "com.getpebble.action.app.STOP";
|
public static final String PEBBLEKIT_ACTION_APP_STOP = "com.getpebble.action.app.STOP";
|
||||||
|
|
||||||
final SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(getContext());
|
final Prefs prefs = GBApplication.getPrefs();
|
||||||
|
|
||||||
private final PebbleProtocol mPebbleProtocol;
|
private final PebbleProtocol mPebbleProtocol;
|
||||||
private final PebbleSupport mPebbleSupport;
|
private final PebbleSupport mPebbleSupport;
|
||||||
|
@ -160,7 +160,7 @@ public class PebbleIoThread extends GBDeviceIoThread {
|
||||||
mPebbleProtocol = (PebbleProtocol) gbDeviceProtocol;
|
mPebbleProtocol = (PebbleProtocol) gbDeviceProtocol;
|
||||||
mBtAdapter = btAdapter;
|
mBtAdapter = btAdapter;
|
||||||
mPebbleSupport = pebbleSupport;
|
mPebbleSupport = pebbleSupport;
|
||||||
mEnablePebblekit = sharedPrefs.getBoolean("pebble_enable_pebblekit", false);
|
mEnablePebblekit = prefs.getBoolean("pebble_enable_pebblekit", false);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -199,7 +199,7 @@ public class PebbleIoThread extends GBDeviceIoThread {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
mPebbleProtocol.setForceProtocol(sharedPrefs.getBoolean("pebble_force_protocol", false));
|
mPebbleProtocol.setForceProtocol(prefs.getBoolean("pebble_force_protocol", false));
|
||||||
|
|
||||||
mIsConnected = true;
|
mIsConnected = true;
|
||||||
if (originalState == GBDevice.State.WAITING_FOR_RECONNECT) {
|
if (originalState == GBDevice.State.WAITING_FOR_RECONNECT) {
|
||||||
|
@ -364,7 +364,7 @@ public class PebbleIoThread extends GBDeviceIoThread {
|
||||||
if (e.getMessage().contains("socket closed")) { //FIXME: this does not feel right
|
if (e.getMessage().contains("socket closed")) { //FIXME: this does not feel right
|
||||||
LOG.info(e.getMessage());
|
LOG.info(e.getMessage());
|
||||||
mIsConnected = false;
|
mIsConnected = false;
|
||||||
int reconnectAttempts = Integer.valueOf(sharedPrefs.getString("pebble_reconnect_attempts", "10"));
|
int reconnectAttempts = Integer.valueOf(prefs.getString("pebble_reconnect_attempts", "10"));
|
||||||
if (reconnectAttempts > 0) {
|
if (reconnectAttempts > 0) {
|
||||||
gbDevice.setState(GBDevice.State.CONNECTING);
|
gbDevice.setState(GBDevice.State.CONNECTING);
|
||||||
gbDevice.sendDeviceUpdateIntent(getContext());
|
gbDevice.sendDeviceUpdateIntent(getContext());
|
||||||
|
@ -480,7 +480,7 @@ public class PebbleIoThread extends GBDeviceIoThread {
|
||||||
private boolean evaluateGBDeviceEventPebble(GBDeviceEvent deviceEvent) {
|
private boolean evaluateGBDeviceEventPebble(GBDeviceEvent deviceEvent) {
|
||||||
|
|
||||||
if (deviceEvent instanceof GBDeviceEventVersionInfo) {
|
if (deviceEvent instanceof GBDeviceEventVersionInfo) {
|
||||||
if (sharedPrefs.getBoolean("datetime_synconconnect", true)) {
|
if (prefs.getBoolean("datetime_synconconnect", true)) {
|
||||||
LOG.info("syncing time");
|
LOG.info("syncing time");
|
||||||
write(mPebbleProtocol.encodeSetTime());
|
write(mPebbleProtocol.encodeSetTime());
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,7 +12,9 @@ import android.view.KeyEvent;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
|
import nodomain.freeyourgadget.gadgetbridge.GBApplication;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.deviceevents.GBDeviceEventMusicControl;
|
import nodomain.freeyourgadget.gadgetbridge.deviceevents.GBDeviceEventMusicControl;
|
||||||
|
import nodomain.freeyourgadget.gadgetbridge.util.Prefs;
|
||||||
|
|
||||||
public class GBMusicControlReceiver extends BroadcastReceiver {
|
public class GBMusicControlReceiver extends BroadcastReceiver {
|
||||||
private static final Logger LOG = LoggerFactory.getLogger(GBMusicControlReceiver.class);
|
private static final Logger LOG = LoggerFactory.getLogger(GBMusicControlReceiver.class);
|
||||||
|
@ -53,8 +55,8 @@ public class GBMusicControlReceiver extends BroadcastReceiver {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (keyCode != -1) {
|
if (keyCode != -1) {
|
||||||
SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(context);
|
Prefs prefs = GBApplication.getPrefs();
|
||||||
String audioPlayer = sharedPrefs.getString("audio_player", "default");
|
String audioPlayer = prefs.getString("audio_player", "default");
|
||||||
|
|
||||||
long eventtime = SystemClock.uptimeMillis();
|
long eventtime = SystemClock.uptimeMillis();
|
||||||
|
|
||||||
|
|
|
@ -12,6 +12,7 @@ import java.util.LinkedHashSet;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
|
import nodomain.freeyourgadget.gadgetbridge.GBApplication;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.R;
|
import nodomain.freeyourgadget.gadgetbridge.R;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.devices.DeviceCoordinator;
|
import nodomain.freeyourgadget.gadgetbridge.devices.DeviceCoordinator;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.devices.UnknownDeviceCoordinator;
|
import nodomain.freeyourgadget.gadgetbridge.devices.UnknownDeviceCoordinator;
|
||||||
|
@ -75,8 +76,8 @@ public class DeviceHelper {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(context);
|
Prefs prefs = GBApplication.getPrefs();
|
||||||
String miAddr = sharedPrefs.getString(MiBandConst.PREF_MIBAND_ADDRESS, "");
|
String miAddr = prefs.getString(MiBandConst.PREF_MIBAND_ADDRESS, "");
|
||||||
if (miAddr.length() > 0) {
|
if (miAddr.length() > 0) {
|
||||||
GBDevice miDevice = new GBDevice(miAddr, "MI", DeviceType.MIBAND);
|
GBDevice miDevice = new GBDevice(miAddr, "MI", DeviceType.MIBAND);
|
||||||
if (!availableDevices.contains(miDevice)) {
|
if (!availableDevices.contains(miDevice)) {
|
||||||
|
@ -84,8 +85,8 @@ public class DeviceHelper {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
String pebbleEmuAddr = sharedPrefs.getString("pebble_emu_addr", "");
|
String pebbleEmuAddr = prefs.getString("pebble_emu_addr", "");
|
||||||
String pebbleEmuPort = sharedPrefs.getString("pebble_emu_port", "");
|
String pebbleEmuPort = prefs.getString("pebble_emu_port", "");
|
||||||
if (pebbleEmuAddr.length() >= 7 && pebbleEmuPort.length() > 0) {
|
if (pebbleEmuAddr.length() >= 7 && pebbleEmuPort.length() > 0) {
|
||||||
GBDevice pebbleEmuDevice = new GBDevice(pebbleEmuAddr + ":" + pebbleEmuPort, "Pebble qemu", DeviceType.PEBBLE);
|
GBDevice pebbleEmuDevice = new GBDevice(pebbleEmuAddr + ":" + pebbleEmuPort, "Pebble qemu", DeviceType.PEBBLE);
|
||||||
availableDevices.add(pebbleEmuDevice);
|
availableDevices.add(pebbleEmuDevice);
|
||||||
|
|
|
@ -0,0 +1,113 @@
|
||||||
|
package nodomain.freeyourgadget.gadgetbridge.util;
|
||||||
|
|
||||||
|
import android.content.SharedPreferences;
|
||||||
|
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Wraps SharedPreferences to avoid ClassCastExceptions and others.
|
||||||
|
*/
|
||||||
|
public class Prefs {
|
||||||
|
private static final Logger LOG = LoggerFactory.getLogger(Prefs.class);
|
||||||
|
|
||||||
|
private final SharedPreferences preferences;
|
||||||
|
|
||||||
|
public Prefs(SharedPreferences preferences) {
|
||||||
|
this.preferences = preferences;
|
||||||
|
}
|
||||||
|
|
||||||
|
public SharedPreferences getPreferences() {
|
||||||
|
return preferences;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getString(String key, String defaultValue) {
|
||||||
|
String value = preferences.getString(key, defaultValue);
|
||||||
|
if (value == null || "".equals(value)) {
|
||||||
|
return defaultValue;
|
||||||
|
}
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Set<String> getStringSet(String key, Set<String> defaultValue) {
|
||||||
|
Set<String> value = preferences.getStringSet(key, defaultValue);
|
||||||
|
if (value == null || value.isEmpty()) {
|
||||||
|
return defaultValue;
|
||||||
|
}
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getInt(String key, int defaultValue) {
|
||||||
|
try {
|
||||||
|
return preferences.getInt(key, defaultValue);
|
||||||
|
} catch (Exception ex) {
|
||||||
|
try {
|
||||||
|
String value = preferences.getString(key, String.valueOf(defaultValue));
|
||||||
|
if ("".equals(value)) {
|
||||||
|
return defaultValue;
|
||||||
|
}
|
||||||
|
return Integer.parseInt(value);
|
||||||
|
} catch (Exception ex2) {
|
||||||
|
logReadError(key, ex);
|
||||||
|
return defaultValue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public long getLong(String key, long defaultValue) {
|
||||||
|
try {
|
||||||
|
return preferences.getLong(key, defaultValue);
|
||||||
|
} catch (Exception ex) {
|
||||||
|
try {
|
||||||
|
String value = preferences.getString(key, String.valueOf(defaultValue));
|
||||||
|
if ("".equals(value)) {
|
||||||
|
return defaultValue;
|
||||||
|
}
|
||||||
|
return Long.parseLong(value);
|
||||||
|
} catch (Exception ex2) {
|
||||||
|
logReadError(key, ex);
|
||||||
|
return defaultValue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public float getFloat(String key, float defaultValue) {
|
||||||
|
try {
|
||||||
|
return preferences.getFloat(key, defaultValue);
|
||||||
|
} catch (Exception ex) {
|
||||||
|
try {
|
||||||
|
String value = preferences.getString(key, String.valueOf(defaultValue));
|
||||||
|
if ("".equals(value)) {
|
||||||
|
return defaultValue;
|
||||||
|
}
|
||||||
|
return Float.parseFloat(value);
|
||||||
|
} catch (Exception ex2) {
|
||||||
|
logReadError(key, ex);
|
||||||
|
return defaultValue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean getBoolean(String key, boolean defaultValue) {
|
||||||
|
try {
|
||||||
|
return preferences.getBoolean(key, defaultValue);
|
||||||
|
} catch (Exception ex) {
|
||||||
|
try {
|
||||||
|
String value = preferences.getString(key, String.valueOf(defaultValue));
|
||||||
|
if ("".equals(value)) {
|
||||||
|
return defaultValue;
|
||||||
|
}
|
||||||
|
return Boolean.parseBoolean(value);
|
||||||
|
} catch (Exception ex2) {
|
||||||
|
logReadError(key, ex);
|
||||||
|
return defaultValue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void logReadError(String key, Exception ex) {
|
||||||
|
LOG.error("Error reading preference value: " + key + "; returning default value", ex); // log the first exception
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue