[SCM] Multi-format 1D/2D barcode image processing library branch, upstream, updated. 24d4480bc48cf9eabf7b2bd2f528248b0e458809
srowen
srowen at 59b500cc-1b3d-0410-9834-0bbf25fbcc57
Wed Aug 4 01:32:04 UTC 2010
The following commit has been merged in the upstream branch:
commit 3f8a60227a660fdd010f853bd26d33cd3323de7f
Author: srowen <srowen at 59b500cc-1b3d-0410-9834-0bbf25fbcc57>
Date: Tue Jun 15 16:25:24 2010 +0000
Style-related changes
git-svn-id: http://zxing.googlecode.com/svn/trunk@1428 59b500cc-1b3d-0410-9834-0bbf25fbcc57
diff --git a/android/res/layout/network.xml b/android/res/layout/network.xml
index 8ca7665..1fbe63d 100644
--- a/android/res/layout/network.xml
+++ b/android/res/layout/network.xml
@@ -1,14 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:orientation="vertical" android:layout_width="fill_parent"
- android:layout_height="fill_parent">
-<!-- <ImageView android:id="@+id/imageStatus"-->
-<!-- android:layout_width="wrap_content" android:layout_height="wrap_content"-->
-<!-- android:layout_gravity="center_horizontal" android:padding="10dip"-->
-<!-- android:src="@drawable/up" />-->
-
- <TextView android:layout_width="wrap_content"
- android:layout_height="wrap_content" android:id="@+id/networkStatus"
- android:text="Status" android:textSize="20dip" android:padding="8dip"
- android:layout_gravity="center_horizontal|bottom" />
+ android:orientation="vertical" android:layout_width="fill_parent"
+ android:layout_height="fill_parent">
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:id="@+id/networkStatus"
+ android:text="Status" android:textSize="20dip"
+ android:padding="8dip"
+ android:layout_gravity="center_horizontal|bottom" />
</LinearLayout>
diff --git a/android/src/com/google/zxing/client/android/wifi/ConnectedReceiver.java b/android/src/com/google/zxing/client/android/wifi/ConnectedReceiver.java
new file mode 100644
index 0000000..542169e
--- /dev/null
+++ b/android/src/com/google/zxing/client/android/wifi/ConnectedReceiver.java
@@ -0,0 +1,41 @@
+package com.google.zxing.client.android.wifi;
+
+import android.app.Activity;
+import android.content.BroadcastReceiver;
+import android.content.Context;
+import android.content.Intent;
+import android.net.ConnectivityManager;
+import android.net.NetworkInfo;
+import android.widget.TextView;
+
+/**
+ * Get a broadcast when the network is connected, and kill the activity.
+ */
+final class ConnectedReceiver extends BroadcastReceiver {
+
+ private final Activity parent;
+ private final TextView statusView;
+
+ ConnectedReceiver(Activity wifiActivity, TextView statusView) {
+ parent = wifiActivity;
+ this.statusView = statusView;
+ }
+
+ @Override
+ public void onReceive(Context context, Intent intent) {
+ if (intent.getAction().equals(android.net.ConnectivityManager.CONNECTIVITY_ACTION)) {
+ ConnectivityManager con = (ConnectivityManager) parent.getSystemService(Context.CONNECTIVITY_SERVICE);
+ NetworkInfo[] s = con.getAllNetworkInfo();
+ for (NetworkInfo i : s){
+ if (i.getTypeName().contentEquals("WIFI")){
+ NetworkInfo.State state = i.getState();
+ if (state == NetworkInfo.State.CONNECTED){
+ statusView.setText("Connected!");
+ Runnable delayKill = new Killer(parent);
+ delayKill.run();
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/android/src/com/google/zxing/client/android/wifi/Killer.java b/android/src/com/google/zxing/client/android/wifi/Killer.java
index 8eba9cc..dcb8955 100644
--- a/android/src/com/google/zxing/client/android/wifi/Killer.java
+++ b/android/src/com/google/zxing/client/android/wifi/Killer.java
@@ -25,16 +25,18 @@ import android.os.Handler;
/**
* Close the parent after a delay.
* @author Vikram Aggarwal
- *
*/
-class Killer implements Runnable {
+final class Killer implements Runnable {
+
// Three full seconds
- final int delay_millis = 3 * 1000;
- Activity parent = null;
- public Killer(Activity parent) {
+ private static final long DELAY_MS = 3 * 1000L;
+
+ private final Activity parent;
+
+ Killer(Activity parent) {
this.parent = parent;
}
- @Override
+
public void run() {
final Handler handler = new Handler();
Timer t = new Timer();
@@ -47,6 +49,6 @@ class Killer implements Runnable {
}
});
}
- }, delay_millis);
+ }, DELAY_MS);
}
}
diff --git a/android/src/com/google/zxing/client/android/wifi/NetworkSetting.java b/android/src/com/google/zxing/client/android/wifi/NetworkSetting.java
index 955088e..ddef685 100644
--- a/android/src/com/google/zxing/client/android/wifi/NetworkSetting.java
+++ b/android/src/com/google/zxing/client/android/wifi/NetworkSetting.java
@@ -16,51 +16,44 @@
package com.google.zxing.client.android.wifi;
-import java.util.Vector;
-
import com.google.zxing.client.android.wifi.WifiActivity.NetworkType;
/**
* Everything we could get from the barcode is to be here
- * @author Vikram Aggarwal
*
+ * @author Vikram Aggarwal
*/
-class NetworkSetting {
- // The ancillary network setting from the barcode
- private NetworkType mNetworkType;
- // The password this ssid has
- private String mPassword;
- // The ssid we read from the barcode
- private String mSsid;
+final class NetworkSetting {
+
+ /** The ancillary network setting from the barcode */
+ private final NetworkType networkType;
+ /** The password this ssid has */
+ private final String password;
+ /** The ssid we read from the barcode */
+ private final String ssid;
- static String[] toStringArray(Vector<String> strings) {
- int size = strings.size();
- String[] result = new String[size];
- for (int j = 0; j < size; j++) {
- result[j] = (String) strings.elementAt(j);
- }
- return result;
- }
/**
* Create a new NetworkSetting object.
* @param ssid: The SSID
* @param password: Password for the setting, blank if unsecured network
* @param networkType: WPA for WPA/WPA2, or WEP for WEP or unsecured
*/
- public NetworkSetting(String ssid, String password, NetworkType networkType){
- mSsid = ssid;
- mPassword = password;
- mNetworkType = networkType;
+ NetworkSetting(String ssid, String password, NetworkType networkType){
+ this.ssid = ssid;
+ this.password = password;
+ this.networkType = networkType;
}
- public NetworkType getNetworkType() {
- return mNetworkType;
+ NetworkType getNetworkType() {
+ return networkType;
}
- public String getPassword() {
- return mPassword;
+
+ String getPassword() {
+ return password;
}
- public String getSsid() {
- return mSsid;
+ String getSsid() {
+ return ssid;
}
+
}
\ No newline at end of file
diff --git a/android/src/com/google/zxing/client/android/wifi/NetworkUtil.java b/android/src/com/google/zxing/client/android/wifi/NetworkUtil.java
index 0fbad03..9a84d43 100644
--- a/android/src/com/google/zxing/client/android/wifi/NetworkUtil.java
+++ b/android/src/com/google/zxing/client/android/wifi/NetworkUtil.java
@@ -21,36 +21,41 @@ import android.text.TextUtils;
/**
* Try with:
* http://chart.apis.google.com/chart?cht=qr&chs=240x240&chl=WIFI:S:linksys;P:mypass;T:WPA;;
- * @author Vikram Aggarwal
*
* TODO(vikrama): Test with binary ssid or password.
+ *
+ * @author Vikram Aggarwal
*/
-public final class NetworkUtil {
+final class NetworkUtil {
+
+ private NetworkUtil() {
+ }
+
/**
* Encloses the incoming string inside double quotes, if it isn't already quoted.
* @param string: the input string
* @return a quoted string, of the form "input". If the input string is null, it returns null as well.
*/
- public static String convertToQuotedString(String string) {
+ static String convertToQuotedString(String string) {
if (string == null){
return null;
}
if (TextUtils.isEmpty(string)) {
return "";
}
- final int lastPos = string.length() - 1;
+ int lastPos = string.length() - 1;
if (lastPos < 0 || (string.charAt(0) == '"' && string.charAt(lastPos) == '"')) {
return string;
}
- return "\"" + string + "\"";
+ return '\"' + string + '\"';
}
- private static boolean isHex(String key) {
+ private static boolean isHex(CharSequence key) {
if (key == null){
return false;
}
for (int i = key.length() - 1; i >= 0; i--) {
- final char c = key.charAt(i);
+ char c = key.charAt(i);
if (!(c >= '0' && c <= '9' || c >= 'A' && c <= 'F' || c >= 'a' && c <= 'f')) {
return false;
}
@@ -63,14 +68,13 @@ public final class NetworkUtil {
* @param wepKey the input to be checked
* @return true if the input string is indeed hex or empty. False if the input string is non-hex or null.
*/
- public static boolean isHexWepKey(String wepKey) {
- if (wepKey == null)
- return false;
- final int len = wepKey.length();
- // WEP-40, WEP-104, and some vendors using 256-bit WEP (WEP-232?)
- if (len != 10 && len != 26 && len != 58) {
+ static boolean isHexWepKey(CharSequence wepKey) {
+ if (wepKey == null) {
return false;
}
- return isHex(wepKey);
- }
+ int len = wepKey.length();
+ // WEP-40, WEP-104, and some vendors using 256-bit WEP (WEP-232?)
+ return (len == 10 || len == 26 || len == 58) && isHex(wepKey);
+ }
+
}
diff --git a/android/src/com/google/zxing/client/android/wifi/WifiActivity.java b/android/src/com/google/zxing/client/android/wifi/WifiActivity.java
index ae8dc64..82f43a3 100644
--- a/android/src/com/google/zxing/client/android/wifi/WifiActivity.java
+++ b/android/src/com/google/zxing/client/android/wifi/WifiActivity.java
@@ -19,73 +19,38 @@ package com.google.zxing.client.android.wifi;
import java.util.List;
import android.app.Activity;
-import android.content.BroadcastReceiver;
-import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.net.ConnectivityManager;
-import android.net.NetworkInfo;
import android.net.wifi.WifiConfiguration;
import android.net.wifi.WifiManager;
import android.os.Bundle;
import android.util.Log;
-import android.widget.ImageView;
import android.widget.TextView;
import com.google.zxing.client.android.Intents;
import com.google.zxing.client.android.R;
-import com.google.zxing.client.android.wifi.Killer;
-import com.google.zxing.client.android.wifi.NetworkUtil;
-import com.google.zxing.client.android.wifi.NetworkSetting;
/**
* A new activity showing the progress of Wifi connection
- * @author Vikram Aggarwal
*
+ * @author Vikram Aggarwal
*/
public class WifiActivity extends Activity {
- public static enum NetworkType {
- NETWORK_WEP, NETWORK_WPA,
- }
- /**
- * Get a broadcast when the network is connected, and kill the activity.
- */
- class ConnectedReceiver extends BroadcastReceiver {
- Activity parent = null;
- public ConnectedReceiver(WifiActivity wifiActivity) {
- parent = wifiActivity;
- }
+ private static final String TAG = WifiActivity.class.getSimpleName();
- @Override
- public void onReceive(Context context, Intent intent) {
- if (intent.getAction().equals(android.net.ConnectivityManager.CONNECTIVITY_ACTION)){
- ConnectivityManager con = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
- NetworkInfo[] s = con.getAllNetworkInfo();
- for (NetworkInfo i : s){
- if (i.getTypeName().contentEquals("WIFI")){
- NetworkInfo.State state = i.getState();
- if (state == NetworkInfo.State.CONNECTED){
- statusT.setText("Connected!");
- Killer delay_kill = new Killer(parent);
- delay_kill.run();
- }
- }
- }
- }
- }
- }
+ private WifiManager wifiManager;
+ private TextView statusView;
+ private ConnectedReceiver connectedReceiver;
- private static final String tag = "NetworkActivity";
- WifiManager mWifiManager = null;
- TextView statusT = null;
- ImageView statusI = null;
- ConnectedReceiver rec = null;
- boolean debug = true;
+ public enum NetworkType {
+ NETWORK_WEP, NETWORK_WPA,
+ }
private int changeNetwork(NetworkSetting setting) {
// If the password is empty, this is an unencrypted network
- if (setting.getPassword() == null || setting.getPassword() == "") {
+ if (setting.getPassword() == null || setting.getPassword().length() == 0) {
return changeNetworkUnEncrypted(setting);
}
if (setting.getNetworkType() == NetworkType.NETWORK_WPA) {
@@ -96,11 +61,8 @@ public class WifiActivity extends Activity {
}
private WifiConfiguration changeNetworkCommon(NetworkSetting input){
- statusT.setText("Creating settings...");
- if (debug) {
- Log.d(tag, "adding new configuration: \nSSID: " + input.getSsid() + "\nPassword: \""
- + input.getPassword() + "\"\nType: " + input.getNetworkType());
- }
+ statusView.setText("Creating settings...");
+ Log.d(TAG, "Adding new configuration: \nSSID: " + input.getSsid() + "\nType: " + input.getNetworkType());
WifiConfiguration config = new WifiConfiguration();
config.allowedAuthAlgorithms.clear();
@@ -115,10 +77,9 @@ public class WifiActivity extends Activity {
return config;
}
- private int requestNetworkChange(WifiConfiguration config){
- boolean disableOthers = false;
- statusT.setText("Changing Network...");
- return updateNetwork(config, disableOthers);
+ private int requestNetworkChange(WifiConfiguration config){
+ statusView.setText("Changing Network...");
+ return updateNetwork(config, false);
}
// Adding a WEP network
@@ -155,9 +116,7 @@ public class WifiActivity extends Activity {
// Adding an open, unsecured network
private int changeNetworkUnEncrypted(NetworkSetting input){
WifiConfiguration config = changeNetworkCommon(input);
- if (debug){
- Log.d(tag, "Empty password prompting a simple account setting");
- }
+ Log.d(TAG, "Empty password prompting a simple account setting");
config.wepKeys[0] = "";
config.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE);
config.wepTxKeyIndex = 0;
@@ -169,10 +128,10 @@ public class WifiActivity extends Activity {
* @param ssid
*/
private WifiConfiguration findNetworkInExistingConfig(String ssid){
- List <WifiConfiguration> existingConfigs = mWifiManager.getConfiguredNetworks();
- for (int i = 0; i < existingConfigs.size(); i++){
- if (existingConfigs.get(i).SSID.compareTo(ssid) == 0){
- return existingConfigs.get(i);
+ List <WifiConfiguration> existingConfigs = wifiManager.getConfiguredNetworks();
+ for (WifiConfiguration existingConfig : existingConfigs) {
+ if (existingConfig.SSID.equals(ssid)) {
+ return existingConfig;
}
}
return null;
@@ -193,68 +152,62 @@ public class WifiActivity extends Activity {
String networkType = intent.getStringExtra(Intents.WifiConnect.TYPE);
// TODO(vikrama): Error checking here, to ensure ssid exists.
- NetworkType networkT = null;
+ NetworkType networkT;
if (networkType.contains("WPA")) {
networkT = NetworkType.NETWORK_WPA;
- }
- else if (networkType.contains("WEP")) {
+ } else if (networkType.contains("WEP")) {
networkT = NetworkType.NETWORK_WEP;
- }
- else {
+ } else {
// Got an incorrect network type
finish();
return;
}
setContentView(R.layout.network);
- statusT = (TextView) findViewById(R.id.networkStatus);
+ statusView = (TextView) findViewById(R.id.networkStatus);
// This is not available before onCreate
- mWifiManager = (WifiManager) this.getSystemService(Context.WIFI_SERVICE);
+ wifiManager = (WifiManager) this.getSystemService(WIFI_SERVICE);
// So we know when the network changes
- rec = new ConnectedReceiver(this);
- registerReceiver(rec, new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION));
+ connectedReceiver = new ConnectedReceiver(this, statusView);
+ registerReceiver(connectedReceiver, new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION));
- if (password == null)
+ if (password == null) {
password = "";
- if (debug) {
- Log.d(tag, "adding new configuration: \nSSID: " + ssid + "\nPassword: \"" + password + "\"\nType: " + networkT);
}
+ Log.d(TAG, "Adding new configuration: \nSSID: " + ssid + "Type: " + networkT);
NetworkSetting setting = new NetworkSetting(ssid, password, networkT);
changeNetwork(setting);
}
@Override
protected void onDestroy() {
+ if (connectedReceiver != null) {
+ unregisterReceiver(connectedReceiver);
+ connectedReceiver = null;
+ }
super.onDestroy();
- if (rec != null)
- unregisterReceiver(rec);
- rec = null;
}
/**
* Update the network: either create a new network or modify an existing network
- * @param config: the new network configuration
- * @param disableOthers: true if other networks must be disabled
+ * @param config the new network configuration
+ * @param disableOthers true if other networks must be disabled
* @return network ID of the connected network.
*/
private int updateNetwork(WifiConfiguration config, boolean disableOthers){
- WifiConfiguration existing = findNetworkInExistingConfig(config.SSID);
int networkId;
- if (existing == null){
- statusT.setText("Creating network...");
- networkId = mWifiManager.addNetwork(config);
+ if (findNetworkInExistingConfig(config.SSID) == null){
+ statusView.setText("Creating network...");
+ networkId = wifiManager.addNetwork(config);
} else {
- statusT.setText("Modifying network...");
- networkId = mWifiManager.updateNetwork(config);
- }
- if (networkId == -1){
- return networkId;
+ statusView.setText("Modifying network...");
+ networkId = wifiManager.updateNetwork(config);
}
- if (!mWifiManager.enableNetwork(networkId, disableOthers)) {
+ if (networkId == -1 || !wifiManager.enableNetwork(networkId, disableOthers)) {
return -1;
}
- mWifiManager.saveConfiguration();
+ wifiManager.saveConfiguration();
return networkId;
}
}
\ No newline at end of file
--
Multi-format 1D/2D barcode image processing library
More information about the Pkg-google-commits
mailing list