fixes for prefs/settings management

This commit is contained in:
Nathan Freitas 2013-07-22 15:18:02 -04:00
parent 303ceb416a
commit 21d1023ada
8 changed files with 115 additions and 114 deletions

View File

@ -4,18 +4,14 @@
package org.torproject.android; package org.torproject.android;
import java.util.Locale; import java.util.Locale;
import java.util.StringTokenizer;
import org.torproject.android.service.ITorService; import org.torproject.android.service.ITorService;
import org.torproject.android.service.ITorServiceCallback; import org.torproject.android.service.ITorServiceCallback;
import org.torproject.android.service.TorServiceConstants; import org.torproject.android.service.TorServiceConstants;
import org.torproject.android.settings.ProcessSettingsAsyncTask; import org.torproject.android.settings.ProcessSettingsAsyncTask;
import org.torproject.android.settings.SettingsPreferences; import org.torproject.android.settings.SettingsPreferences;
import org.torproject.android.share.ShareItem;
import org.torproject.android.share.ShareService;
import org.torproject.android.wizard.ChooseLocaleWizardActivity; import org.torproject.android.wizard.ChooseLocaleWizardActivity;
import android.annotation.SuppressLint;
import android.app.AlertDialog; import android.app.AlertDialog;
import android.app.NotificationManager; import android.app.NotificationManager;
import android.content.ComponentName; import android.content.ComponentName;
@ -25,6 +21,7 @@ import android.content.Intent;
import android.content.ServiceConnection; import android.content.ServiceConnection;
import android.content.SharedPreferences; import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor; import android.content.SharedPreferences.Editor;
import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
import android.content.pm.PackageManager.NameNotFoundException; import android.content.pm.PackageManager.NameNotFoundException;
import android.content.res.Configuration; import android.content.res.Configuration;
import android.net.Uri; import android.net.Uri;
@ -33,7 +30,6 @@ import android.os.Handler;
import android.os.IBinder; import android.os.IBinder;
import android.os.Message; import android.os.Message;
import android.os.RemoteException; import android.os.RemoteException;
import android.os.StrictMode;
import android.preference.PreferenceManager; import android.preference.PreferenceManager;
import android.text.ClipboardManager; import android.text.ClipboardManager;
import android.text.Layout; import android.text.Layout;
@ -55,7 +51,7 @@ import com.actionbarsherlock.view.MenuInflater;
import com.actionbarsherlock.view.MenuItem; import com.actionbarsherlock.view.MenuItem;
public class Orbot extends SherlockActivity implements TorConstants, OnLongClickListener public class Orbot extends SherlockActivity implements TorConstants, OnLongClickListener, OnSharedPreferenceChangeListener
{ {
/* Useful UI bits */ /* Useful UI bits */
private TextView lblStatus = null; //the main text display widget private TextView lblStatus = null; //the main text display widget
@ -100,6 +96,9 @@ public class Orbot extends SherlockActivity implements TorConstants, OnLongClick
} }
*/ */
prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
prefs.registerOnSharedPreferenceChangeListener(this);
Orbot.setCurrent(this); Orbot.setCurrent(this);
//if Tor binary is not running, then start the service up //if Tor binary is not running, then start the service up
@ -110,8 +109,6 @@ public class Orbot extends SherlockActivity implements TorConstants, OnLongClick
startService(new Intent(INTENT_TOR_SERVICE)); startService(new Intent(INTENT_TOR_SERVICE));
prefs = PreferenceManager.getDefaultSharedPreferences(this);
doLayout(); doLayout();
} }
@ -368,7 +365,6 @@ public class Orbot extends SherlockActivity implements TorConstants, OnLongClick
private void enableHiddenServicePort (int hsPort) private void enableHiddenServicePort (int hsPort)
{ {
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
Editor pEdit = prefs.edit(); Editor pEdit = prefs.edit();
String hsPortString = prefs.getString("pref_hs_ports", ""); String hsPortString = prefs.getString("pref_hs_ports", "");
@ -522,7 +518,6 @@ public class Orbot extends SherlockActivity implements TorConstants, OnLongClick
{ {
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
boolean showWizard = prefs.getBoolean("show_wizard",true); boolean showWizard = prefs.getBoolean("show_wizard",true);
@ -586,7 +581,6 @@ public class Orbot extends SherlockActivity implements TorConstants, OnLongClick
private void startWizard () private void startWizard ()
{ {
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
Editor pEdit = prefs.edit(); Editor pEdit = prefs.edit();
pEdit.putBoolean("wizardscreen1",true); pEdit.putBoolean("wizardscreen1",true);
@ -1075,11 +1069,10 @@ public class Orbot extends SherlockActivity implements TorConstants, OnLongClick
private void setLocale () private void setLocale ()
{ {
SharedPreferences settings = PreferenceManager.getDefaultSharedPreferences(this);
Configuration config = getResources().getConfiguration(); Configuration config = getResources().getConfiguration();
String lang = settings.getString(PREF_DEFAULT_LOCALE, ""); String lang = prefs.getString(PREF_DEFAULT_LOCALE, "");
if (! "".equals(lang) && ! config.locale.getLanguage().equals(lang)) if (! "".equals(lang) && ! config.locale.getLanguage().equals(lang))
{ {
@ -1124,4 +1117,11 @@ public class Orbot extends SherlockActivity implements TorConstants, OnLongClick
//return count+" kB"; //return count+" kB";
} }
@Override
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences,
String key) {
}
} }

View File

@ -44,15 +44,14 @@ import android.content.Intent;
import android.content.IntentFilter; import android.content.IntentFilter;
import android.content.SharedPreferences; import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor; import android.content.SharedPreferences.Editor;
import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
import android.net.ConnectivityManager; import android.net.ConnectivityManager;
import android.net.Uri; import android.net.Uri;
import android.os.AsyncTask;
import android.os.IBinder; import android.os.IBinder;
import android.os.RemoteCallbackList; import android.os.RemoteCallbackList;
import android.os.RemoteException; import android.os.RemoteException;
import android.preference.PreferenceManager; import android.preference.PreferenceManager;
import android.util.Log; import android.util.Log;
import android.widget.Toast;
public class TorService extends Service implements TorServiceConstants, TorConstants, Runnable, EventHandler public class TorService extends Service implements TorServiceConstants, TorConstants, Runnable, EventHandler
{ {
@ -98,8 +97,15 @@ public class TorService extends Service implements TorServiceConstants, TorConst
private long mTotalTrafficRead = 0; private long mTotalTrafficRead = 0;
private boolean mConnectivity = true; private boolean mConnectivity = true;
private long lastRead = -1;
private long lastWritten = -1;
private NotificationManager mNotificationManager = null; private NotificationManager mNotificationManager = null;
SharedPreferences mPrefs = null;
public void logMessage(String msg) public void logMessage(String msg)
{ {
if (ENABLE_DEBUG_LOG) if (ENABLE_DEBUG_LOG)
@ -246,6 +252,19 @@ public class TorService extends Service implements TorServiceConstants, TorConst
_torInstance = this; _torInstance = this;
mPrefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
mPrefs.registerOnSharedPreferenceChangeListener(new OnSharedPreferenceChangeListener()
{
@Override
public void onSharedPreferenceChanged(
SharedPreferences sharedPreferences, String key) {
updateSettings();
}
});
initTorPaths(); initTorPaths();
IntentFilter mNetworkStateFilter = new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION); IntentFilter mNetworkStateFilter = new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION);
@ -276,9 +295,7 @@ public class TorService extends Service implements TorServiceConstants, TorConst
if (intent != null && intent.getAction()!=null && intent.getAction().equals("onboot")) if (intent != null && intent.getAction()!=null && intent.getAction().equals("onboot"))
{ {
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext()); boolean startOnBoot = mPrefs.getBoolean("pref_start_boot",false);
boolean startOnBoot = prefs.getBoolean("pref_start_boot",false);
if (startOnBoot) if (startOnBoot)
{ {
@ -347,9 +364,7 @@ public class TorService extends Service implements TorServiceConstants, TorConst
{ {
currentStatus = STATUS_OFF; currentStatus = STATUS_OFF;
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext()); boolean hasRoot = mPrefs.getBoolean(PREF_HAS_ROOT,false);
boolean hasRoot = prefs.getBoolean(PREF_HAS_ROOT,false);
try try
{ {
@ -407,9 +422,7 @@ public class TorService extends Service implements TorServiceConstants, TorConst
private String getHiddenServiceHostname () private String getHiddenServiceHostname ()
{ {
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext()); boolean enableHiddenServices = mPrefs.getBoolean("pref_hs_enable", false);
boolean enableHiddenServices = prefs.getBoolean("pref_hs_enable", false);
if (enableHiddenServices) if (enableHiddenServices)
{ {
@ -420,7 +433,7 @@ public class TorService extends Service implements TorServiceConstants, TorConst
try { try {
String onionHostname = Utils.readString(new FileInputStream(file)).trim(); String onionHostname = Utils.readString(new FileInputStream(file)).trim();
showToolbarNotification(getString(R.string.hidden_service_on) + ' ' + onionHostname, HS_NOTIFY_ID, R.drawable.ic_stat_tor, Notification.FLAG_ONGOING_EVENT); showToolbarNotification(getString(R.string.hidden_service_on) + ' ' + onionHostname, HS_NOTIFY_ID, R.drawable.ic_stat_tor, Notification.FLAG_ONGOING_EVENT);
Editor pEdit = prefs.edit(); Editor pEdit = mPrefs.edit();
pEdit.putString("pref_hs_hostname",onionHostname); pEdit.putString("pref_hs_hostname",onionHostname);
pEdit.commit(); pEdit.commit();
@ -534,9 +547,8 @@ public class TorService extends Service implements TorServiceConstants, TorConst
initTorPaths(); initTorPaths();
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext()); String currTorBinary = mPrefs.getString(TorServiceConstants.PREF_BINARY_TOR_VERSION_INSTALLED, null);
String currTorBinary = prefs.getString(TorServiceConstants.PREF_BINARY_TOR_VERSION_INSTALLED, null); String currPrivoxyBinary = mPrefs.getString(TorServiceConstants.PREF_BINARY_PRIVOXY_VERSION_INSTALLED, null);
String currPrivoxyBinary = prefs.getString(TorServiceConstants.PREF_BINARY_PRIVOXY_VERSION_INSTALLED, null);
StringBuilder cmdLog = new StringBuilder(); StringBuilder cmdLog = new StringBuilder();
int exitCode = -1; int exitCode = -1;
@ -579,7 +591,7 @@ public class TorService extends Service implements TorServiceConstants, TorConst
if (success) if (success)
{ {
Editor edit = prefs.edit(); Editor edit = mPrefs.edit();
edit.putString(TorServiceConstants.PREF_BINARY_TOR_VERSION_INSTALLED, TorServiceConstants.BINARY_TOR_VERSION); edit.putString(TorServiceConstants.PREF_BINARY_TOR_VERSION_INSTALLED, TorServiceConstants.BINARY_TOR_VERSION);
edit.putString(TorServiceConstants.PREF_BINARY_PRIVOXY_VERSION_INSTALLED, TorServiceConstants.BINARY_PRIVOXY_VERSION); edit.putString(TorServiceConstants.PREF_BINARY_PRIVOXY_VERSION_INSTALLED, TorServiceConstants.BINARY_PRIVOXY_VERSION);
edit.commit(); edit.commit();
@ -625,17 +637,30 @@ public class TorService extends Service implements TorServiceConstants, TorConst
} }
public void initTor () throws Exception private boolean mHasRoot = false;
private boolean mEnableTransparentProxy = false;
private boolean mTransProxyAll = false;
private boolean mTransProxyTethering = false;
private void updateSettings ()
{ {
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext()); android.os.Debug.waitForDebugger();
ENABLE_DEBUG_LOG = prefs.getBoolean("pref_enable_logging",false);
mHasRoot = mPrefs.getBoolean(PREF_HAS_ROOT,false);
mEnableTransparentProxy = mPrefs.getBoolean("pref_transparent", false);
mTransProxyAll = mPrefs.getBoolean("pref_transparent_all", false);
mTransProxyTethering = mPrefs.getBoolean("pref_transparent_tethering", false);
ENABLE_DEBUG_LOG = mPrefs.getBoolean("pref_enable_logging",false);
Log.i(TAG,"debug logging:" + ENABLE_DEBUG_LOG); Log.i(TAG,"debug logging:" + ENABLE_DEBUG_LOG);
boolean hasRoot = prefs.getBoolean(PREF_HAS_ROOT,false); prefPersistNotifications = mPrefs.getBoolean(TorConstants.PREF_PERSIST_NOTIFICATIONS, true);
boolean enableTransparentProxy = prefs.getBoolean("pref_transparent", false); }
boolean transProxyAll = prefs.getBoolean("pref_transparent_all", false);
boolean transProxyTethering = prefs.getBoolean("pref_transparent_tethering", false);
public void initTor () throws Exception
{
updateSettings ();
currentStatus = STATUS_CONNECTING; currentStatus = STATUS_CONNECTING;
@ -652,10 +677,8 @@ public class TorService extends Service implements TorServiceConstants, TorConst
runTorShellCmd(); runTorShellCmd();
runPrivoxyShellCmd(); runPrivoxyShellCmd();
if (hasRoot && enableTransparentProxy) if (mHasRoot && mEnableTransparentProxy)
enableTransparentProxy(transProxyAll, transProxyTethering); enableTransparentProxy(mTransProxyAll, mTransProxyTethering);
//new Thread (new TotalUpdaterRunnable()).start();
} catch (Exception e) { } catch (Exception e) {
@ -751,8 +774,7 @@ public class TorService extends Service implements TorServiceConstants, TorConst
String torrcPath = new File(appBinHome, TORRC_ASSET_KEY).getAbsolutePath(); String torrcPath = new File(appBinHome, TORRC_ASSET_KEY).getAbsolutePath();
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext()); boolean transProxyTethering = mPrefs.getBoolean("pref_transparent_tethering", false);
boolean transProxyTethering = prefs.getBoolean("pref_transparent_tethering", false);
if (transProxyTethering) if (transProxyTethering)
{ {
@ -1033,7 +1055,7 @@ public class TorService extends Service implements TorServiceConstants, TorConst
} }
} }
private void startNotification (String message) private void startNotification (String message, boolean persistent)
{ {
Notification notice = new Notification(R.drawable.ic_stat_tor, getString(R.string.status_activated), System.currentTimeMillis()); Notification notice = new Notification(R.drawable.ic_stat_tor, getString(R.string.status_activated), System.currentTimeMillis());
@ -1045,7 +1067,7 @@ public class TorService extends Service implements TorServiceConstants, TorConst
//This method is deprecated. Use Notification.Builder instead. //This method is deprecated. Use Notification.Builder instead.
notice.setLatestEventInfo(TorService.this,getString(R.string.app_name), message, pendIntent); notice.setLatestEventInfo(TorService.this,getString(R.string.app_name), message, pendIntent);
if (prefPersistNotifications) if (persistent)
{ {
notice.flags |= Notification.FLAG_NO_CLEAR; notice.flags |= Notification.FLAG_NO_CLEAR;
notice.flags |= Notification.FLAG_ONGOING_EVENT; notice.flags |= Notification.FLAG_ONGOING_EVENT;
@ -1072,7 +1094,7 @@ public class TorService extends Service implements TorServiceConstants, TorConst
{ {
currentStatus = STATUS_ON; currentStatus = STATUS_ON;
startNotification(getString(R.string.status_activated)); startNotification(getString(R.string.status_activated),prefPersistNotifications);
@ -1133,6 +1155,8 @@ public class TorService extends Service implements TorServiceConstants, TorConst
public void bandwidthUsed(long read, long written) { public void bandwidthUsed(long read, long written) {
if (read != lastRead || written != lastWritten)
{
StringBuilder sb = new StringBuilder(); StringBuilder sb = new StringBuilder();
sb.append("Bandwidth: "); sb.append("Bandwidth: ");
sb.append(formatCount(read)); sb.append(formatCount(read));
@ -1141,20 +1165,16 @@ public class TorService extends Service implements TorServiceConstants, TorConst
sb.append(" up"); sb.append(" up");
if (mConnectivity && prefPersistNotifications) if (mConnectivity && prefPersistNotifications)
startNotification(sb.toString()); startNotification(sb.toString(),prefPersistNotifications);
mTotalTrafficWritten += written; mTotalTrafficWritten += written;
mTotalTrafficRead += read; mTotalTrafficRead += read;
/*
try
{
mTotalTrafficWritten = Long.parseLong(conn.getInfo("traffic/written"));
mTotalTrafficRead = Long.parseLong(conn.getInfo("traffic/read"));
}
catch (IOException ioe){}
*/
sendCallbackStatusMessage(written, read, mTotalTrafficWritten, mTotalTrafficRead); sendCallbackStatusMessage(written, read, mTotalTrafficWritten, mTotalTrafficRead);
}
lastWritten = written;
lastRead = read;
} }
@ -1269,12 +1289,6 @@ public class TorService extends Service implements TorServiceConstants, TorConst
} }
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
ENABLE_DEBUG_LOG = prefs.getBoolean("pref_enable_logging",false);
Log.i(TAG,"debug logging:" + ENABLE_DEBUG_LOG);
prefPersistNotifications = prefs.getBoolean(TorConstants.PREF_PERSIST_NOTIFICATIONS, true);
new Thread () new Thread ()
{ {
@ -1335,7 +1349,7 @@ public class TorService extends Service implements TorServiceConstants, TorConst
} catch (RemoteException e) { } catch (RemoteException e) {
logException ("error applying prefs",e); logException ("error applying mPrefs",e);
} }
} }
@ -1589,16 +1603,16 @@ public class TorService extends Service implements TorServiceConstants, TorConst
if (!mConnectivity) if (!mConnectivity)
{ {
logNotice("No network connectivity. Putting Tor to sleep..."); logNotice("No network connectivity. Putting Tor to sleep...");
startNotification(getString(R.string.no_internet_connection_tor)); startNotification(getString(R.string.no_internet_connection_tor),prefPersistNotifications);
} }
else else
{ {
logNotice("Network connectivity is good. Waking Tor up..."); logNotice("Network connectivity is good. Waking Tor up...");
startNotification(getString(R.string.status_activated)); startNotification(getString(R.string.status_activated),prefPersistNotifications);
} }
} catch (RemoteException e) { } catch (RemoteException e) {
logException ("error applying prefs",e); logException ("error applying mPrefs",e);
} }
} }
} }
@ -1607,33 +1621,26 @@ public class TorService extends Service implements TorServiceConstants, TorConst
private boolean processSettingsImpl () throws RemoteException private boolean processSettingsImpl () throws RemoteException
{ {
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext()); boolean useBridges = mPrefs.getBoolean(TorConstants.PREF_BRIDGES_ENABLED, false);
prefPersistNotifications = prefs.getBoolean(TorConstants.PREF_PERSIST_NOTIFICATIONS, true); //boolean autoUpdateBridges = mPrefs.getBoolean(TorConstants.PREF_BRIDGES_UPDATED, false);
ENABLE_DEBUG_LOG = prefs.getBoolean("pref_enable_logging",false); boolean becomeRelay = mPrefs.getBoolean(TorConstants.PREF_OR, false);
Log.i(TAG,"debug logging:" + ENABLE_DEBUG_LOG); boolean ReachableAddresses = mPrefs.getBoolean(TorConstants.PREF_REACHABLE_ADDRESSES,false);
boolean enableHiddenServices = mPrefs.getBoolean("pref_hs_enable", false);
boolean useBridges = prefs.getBoolean(TorConstants.PREF_BRIDGES_ENABLED, false); boolean enableStrictNodes = mPrefs.getBoolean("pref_strict_nodes", false);
String entranceNodes = mPrefs.getString("pref_entrance_nodes", "");
String exitNodes = mPrefs.getString("pref_exit_nodes", "");
String excludeNodes = mPrefs.getString("pref_exclude_nodes", "");
//boolean autoUpdateBridges = prefs.getBoolean(TorConstants.PREF_BRIDGES_UPDATED, false); String proxyType = mPrefs.getString("pref_proxy_type", null);
boolean becomeRelay = prefs.getBoolean(TorConstants.PREF_OR, false);
boolean ReachableAddresses = prefs.getBoolean(TorConstants.PREF_REACHABLE_ADDRESSES,false);
boolean enableHiddenServices = prefs.getBoolean("pref_hs_enable", false);
boolean enableStrictNodes = prefs.getBoolean("pref_strict_nodes", false);
String entranceNodes = prefs.getString("pref_entrance_nodes", "");
String exitNodes = prefs.getString("pref_exit_nodes", "");
String excludeNodes = prefs.getString("pref_exclude_nodes", "");
String proxyType = prefs.getString("pref_proxy_type", null);
if (proxyType != null) if (proxyType != null)
{ {
String proxyHost = prefs.getString("pref_proxy_host", null); String proxyHost = mPrefs.getString("pref_proxy_host", null);
String proxyPort = prefs.getString("pref_proxy_port", null); String proxyPort = mPrefs.getString("pref_proxy_port", null);
String proxyUser = prefs.getString("pref_proxy_username", null); String proxyUser = mPrefs.getString("pref_proxy_username", null);
String proxyPass = prefs.getString("pref_proxy_password", null); String proxyPass = mPrefs.getString("pref_proxy_password", null);
if (proxyHost != null && proxyPort != null) if (proxyHost != null && proxyPort != null)
{ {
@ -1688,7 +1695,7 @@ public class TorService extends Service implements TorServiceConstants, TorConst
if (useBridges) if (useBridges)
{ {
String bridgeList = prefs.getString(TorConstants.PREF_BRIDGES_LIST,getString(R.string.default_bridges)); String bridgeList = mPrefs.getString(TorConstants.PREF_BRIDGES_LIST,getString(R.string.default_bridges));
if (bridgeList == null || bridgeList.length() == 0) if (bridgeList == null || bridgeList.length() == 0)
{ {
@ -1711,7 +1718,7 @@ public class TorService extends Service implements TorServiceConstants, TorConst
showToolbarNotification(getString(R.string.notification_using_bridges) + ": " + bridgeList, TRANSPROXY_NOTIFY_ID, R.drawable.ic_stat_tor, -1); showToolbarNotification(getString(R.string.notification_using_bridges) + ": " + bridgeList, TRANSPROXY_NOTIFY_ID, R.drawable.ic_stat_tor, -1);
boolean obfsBridges = prefs.getBoolean(TorConstants.PREF_BRIDGES_OBFUSCATED, false); boolean obfsBridges = mPrefs.getBoolean(TorConstants.PREF_BRIDGES_OBFUSCATED, false);
String bridgeCfgKey = "bridge"; String bridgeCfgKey = "bridge";
if (obfsBridges) if (obfsBridges)
@ -1745,7 +1752,7 @@ public class TorService extends Service implements TorServiceConstants, TorConst
if (ReachableAddresses) if (ReachableAddresses)
{ {
String ReachableAddressesPorts = String ReachableAddressesPorts =
prefs.getString(TorConstants.PREF_REACHABLE_ADDRESSES_PORTS, "*:80,*:443"); mPrefs.getString(TorConstants.PREF_REACHABLE_ADDRESSES_PORTS, "*:80,*:443");
mBinder.updateConfiguration("ReachableAddresses", ReachableAddressesPorts, false); mBinder.updateConfiguration("ReachableAddresses", ReachableAddressesPorts, false);
@ -1766,8 +1773,8 @@ public class TorService extends Service implements TorServiceConstants, TorConst
{ {
if (becomeRelay && (!useBridges) && (!ReachableAddresses)) if (becomeRelay && (!useBridges) && (!ReachableAddresses))
{ {
int ORPort = Integer.parseInt(prefs.getString(TorConstants.PREF_OR_PORT, "9001")); int ORPort = Integer.parseInt(mPrefs.getString(TorConstants.PREF_OR_PORT, "9001"));
String nickname = prefs.getString(TorConstants.PREF_OR_NICKNAME, "Orbot"); String nickname = mPrefs.getString(TorConstants.PREF_OR_NICKNAME, "Orbot");
String dnsFile = writeDNSFile (); String dnsFile = writeDNSFile ();
@ -1797,7 +1804,7 @@ public class TorService extends Service implements TorServiceConstants, TorConst
mBinder.updateConfiguration("HiddenServiceDir",appCacheHome.getAbsolutePath(), false); mBinder.updateConfiguration("HiddenServiceDir",appCacheHome.getAbsolutePath(), false);
//mBinder.updateConfiguration("RendPostPeriod", "600 seconds", false); //possible feature to investigate //mBinder.updateConfiguration("RendPostPeriod", "600 seconds", false); //possible feature to investigate
String hsPorts = prefs.getString("pref_hs_ports",""); String hsPorts = mPrefs.getString("pref_hs_ports","");
StringTokenizer st = new StringTokenizer (hsPorts,","); StringTokenizer st = new StringTokenizer (hsPorts,",");
String hsPortConfig = null; String hsPortConfig = null;

View File

@ -272,7 +272,7 @@ public class AppManager extends Activity implements OnCheckedChangeListener, OnC
if (apps == null) if (apps == null)
return; return;
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this); SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
// final SharedPreferences prefs = context.getSharedPreferences(PREFS_KEY, 0); // final SharedPreferences prefs = context.getSharedPreferences(PREFS_KEY, 0);

View File

@ -46,16 +46,10 @@ public class SettingsPreferences
addPreferencesFromResource(R.xml.preferences); addPreferencesFromResource(R.xml.preferences);
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this); SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
hasRoot = prefs.getBoolean("has_root",false); hasRoot = prefs.getBoolean("has_root",false);
if (!hasRoot)
{
hasRoot = prefs.getBoolean("use_whispercore", false);
}
init(); init();
} }
@ -170,7 +164,7 @@ public class SettingsPreferences
} }
else if (preference == prefLocale) else if (preference == prefLocale)
{ {
SharedPreferences settings = PreferenceManager.getDefaultSharedPreferences(this); SharedPreferences settings = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
Configuration config = getResources().getConfiguration(); Configuration config = getResources().getConfiguration();

View File

@ -116,7 +116,7 @@ public class ChooseLocaleWizardActivity extends Activity implements TorConstants
private void setLocalePref(int selId) private void setLocalePref(int selId)
{ {
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getBaseContext()); SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
Configuration config = getResources().getConfiguration(); Configuration config = getResources().getConfiguration();

View File

@ -76,7 +76,7 @@ public class ConfigureTransProxy extends Activity implements TorConstants {
private void setupUI () private void setupUI ()
{ {
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
boolean transEnabled = prefs.getBoolean(PREF_TRANSPARENT, false); boolean transEnabled = prefs.getBoolean(PREF_TRANSPARENT, false);
@ -162,7 +162,7 @@ public class ConfigureTransProxy extends Activity implements TorConstants {
RadioButton rb1 = (RadioButton)findViewById(R.id.radio1); RadioButton rb1 = (RadioButton)findViewById(R.id.radio1);
RadioButton rb2 = (RadioButton)findViewById(R.id.radio2); RadioButton rb2 = (RadioButton)findViewById(R.id.radio2);
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
Editor pEdit = prefs.edit(); Editor pEdit = prefs.edit();
pEdit.putBoolean(PREF_TRANSPARENT, rb0.isChecked()); pEdit.putBoolean(PREF_TRANSPARENT, rb0.isChecked());

View File

@ -39,7 +39,7 @@ public class LotsaText extends Activity implements TorConstants{
super.onStart(); super.onStart();
setContentView(R.layout.scrollingtext_buttons_view); setContentView(R.layout.scrollingtext_buttons_view);
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
boolean wizardScreen1 = prefs.getBoolean("wizardscreen1",true); boolean wizardScreen1 = prefs.getBoolean("wizardscreen1",true);
if(wizardScreen1) if(wizardScreen1)
@ -71,7 +71,7 @@ public class LotsaText extends Activity implements TorConstants{
private void stepOne() { private void stepOne() {
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
Editor pEdit = prefs.edit(); Editor pEdit = prefs.edit();
pEdit.putBoolean("wizardscreen1",true); pEdit.putBoolean("wizardscreen1",true);
@ -104,7 +104,7 @@ public class LotsaText extends Activity implements TorConstants{
private void stepTwo() { private void stepTwo() {
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
Editor pEdit = prefs.edit(); Editor pEdit = prefs.edit();
pEdit.putBoolean("wizardscreen1",false); pEdit.putBoolean("wizardscreen1",false);

View File

@ -115,7 +115,7 @@ public class Permissions extends Activity implements TorConstants {
boolean isChecked) { boolean isChecked) {
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
Editor pEdit = prefs.edit(); Editor pEdit = prefs.edit();
@ -144,7 +144,7 @@ public class Permissions extends Activity implements TorConstants {
public void onClick(View v) { public void onClick(View v) {
//Check and Install iptables - TorTransProxy.testOwnerModule(this) //Check and Install iptables - TorTransProxy.testOwnerModule(this)
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
boolean hasRoot = prefs.getBoolean("has_root",false); boolean hasRoot = prefs.getBoolean("has_root",false);