diff options
author | Kenny Root <kenny@the-b.org> | 2008-11-24 13:40:37 +0000 |
---|---|---|
committer | Kenny Root <kenny@the-b.org> | 2008-11-24 13:40:37 +0000 |
commit | b7cc89c811bf07240251b746a59a292dcfea7ec5 (patch) | |
tree | 2a0f7ab9b87d9a7c264bf4faa8f62972d379278e /src | |
parent | feb5ffaccc031ae308aec1fc1cb7c924c998895d (diff) | |
download | connectbot-b7cc89c811bf07240251b746a59a292dcfea7ec5.tar.gz connectbot-b7cc89c811bf07240251b746a59a292dcfea7ec5.tar.bz2 connectbot-b7cc89c811bf07240251b746a59a292dcfea7ec5.zip |
Only lock Wi-Fi if our active network is Wi-Fi upon connection
Diffstat (limited to 'src')
-rw-r--r-- | src/org/connectbot/service/TerminalManager.java | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/org/connectbot/service/TerminalManager.java b/src/org/connectbot/service/TerminalManager.java index 92b97b4..298f179 100644 --- a/src/org/connectbot/service/TerminalManager.java +++ b/src/org/connectbot/service/TerminalManager.java @@ -36,6 +36,8 @@ import android.content.Context; import android.content.Intent; import android.content.SharedPreferences; import android.content.res.Resources; +import android.net.ConnectivityManager; +import android.net.NetworkInfo; import android.net.Uri; import android.net.wifi.WifiManager; import android.os.Binder; @@ -71,6 +73,7 @@ public class TerminalManager extends Service implements BridgeDisconnectedListen protected SharedPreferences prefs; private String pref_emulation, pref_scrollback, pref_keymode, pref_memkeys, pref_wifilock; + private ConnectivityManager connectivityManager; private WifiManager.WifiLock wifilock; @Override @@ -104,6 +107,8 @@ public class TerminalManager extends Service implements BridgeDisconnectedListen } } + connectivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); + WifiManager manager = (WifiManager) getSystemService(Context.WIFI_SERVICE); wifilock = manager.createWifiLock(TAG); } @@ -145,7 +150,8 @@ public class TerminalManager extends Service implements BridgeDisconnectedListen bridges.add(bridge); // Add a reference to the WifiLock - if (isLockingWifi()) { + NetworkInfo info = connectivityManager.getActiveNetworkInfo(); + if (isLockingWifi() && info.getType() == ConnectivityManager.TYPE_WIFI) { Log.d(TAG, "Acquiring WifiLock"); wifilock.acquire(); } @@ -281,5 +287,4 @@ public class TerminalManager extends Service implements BridgeDisconnectedListen Log.i(TAG, "Someone bound to TerminalManager"); return binder; } - } |