Restructure WifiManager Action Listener.
Add proper names to events of action listener.
Add an Rpc method to retrieve device model.
Change-Id: If21311ac377d6c2332372f765916f280e25da680
diff --git a/Common/src/com/googlecode/android_scripting/facade/AndroidFacade.java b/Common/src/com/googlecode/android_scripting/facade/AndroidFacade.java
index f16ac30..6c461ae 100644
--- a/Common/src/com/googlecode/android_scripting/facade/AndroidFacade.java
+++ b/Common/src/com/googlecode/android_scripting/facade/AndroidFacade.java
@@ -813,4 +813,9 @@
}
return result;
}
+
+ @Rpc(description = "Get the end-user-visible name for the end product.")
+ public String getDeviceModel() {
+ return android.os.Build.MODEL;
+ }
}
diff --git a/Common/src/com/googlecode/android_scripting/facade/wifi/WifiManagerFacade.java b/Common/src/com/googlecode/android_scripting/facade/wifi/WifiManagerFacade.java
index e0c32b2..11d4e64 100644
--- a/Common/src/com/googlecode/android_scripting/facade/wifi/WifiManagerFacade.java
+++ b/Common/src/com/googlecode/android_scripting/facade/wifi/WifiManagerFacade.java
@@ -42,7 +42,6 @@
private final IntentFilter mScanFilter;
private final IntentFilter mStateChangeFilter;
private final WifiScanReceiver mScanResultsAvailableReceiver;
- private final WifiActionListener mWifiActionListener;
private final WifiStateChangeReceiver mStateChangeReceiver;
private WifiLock mLock;
@@ -62,7 +61,6 @@
mStateChangeFilter.setPriority(999);
mScanResultsAvailableReceiver = new WifiScanReceiver(mEventFacade);
- mWifiActionListener = new WifiActionListener(mEventFacade);
mStateChangeReceiver = new WifiStateChangeReceiver();
}
@@ -102,27 +100,24 @@
class WifiActionListener implements WifiManager.ActionListener{
private final EventFacade mEventFacade;
- private final Bundle mResults;
+ private final String TAG;
- public WifiActionListener(EventFacade eventFacade) {
+ public WifiActionListener(EventFacade eventFacade, String tag) {
mEventFacade = eventFacade;
- mResults = new Bundle();
+ this.TAG = tag;
}
@Override
public void onSuccess() {
- Log.d("WifiActionListener "+ mEventType);
- mResults.putString("Type", "onSuccess");
- mEventFacade.postEvent(mEventType, mResults.clone());
- mResults.clear();
+ mEventFacade.postEvent(mEventType + TAG + "OnSuccess", null);
}
@Override
public void onFailure(int reason) {
Log.d("WifiActionListener "+ mEventType);
- mResults.putString("Type", "onFailure");
- mEventFacade.postEvent(mEventType, mResults.clone());
- mResults.clear();
+ Bundle msg = new Bundle();
+ msg.putInt("reason", reason);
+ mEventFacade.postEvent(mEventType + TAG + "OnFailure", msg);
}
}
@@ -132,8 +127,11 @@
String action = intent.getAction();
if (action.equals(WifiManager.NETWORK_STATE_CHANGED_ACTION)) {
Log.d("Wifi network state changed.");
- if (intent.hasExtra(WifiManager.EXTRA_WIFI_INFO)) {
- WifiInfo wInfo = intent.getParcelableExtra(WifiManager.EXTRA_WIFI_INFO);
+ NetworkInfo nInfo = intent.getParcelableExtra(WifiManager.EXTRA_NETWORK_INFO);
+ WifiInfo wInfo = intent.getParcelableExtra(WifiManager.EXTRA_WIFI_INFO);
+ Log.d("NetworkInfo " + nInfo);
+ Log.d("WifiInfo " + wInfo);
+ if (wInfo != null) {
Bundle msg = new Bundle();
String ssid = wInfo.getSSID();
if (ssid.charAt(0)=='"' && ssid.charAt(ssid.length()-1)=='"') {
@@ -142,12 +140,9 @@
msg.putString("ssid", ssid);
}
msg.putString("bssid", wInfo.getBSSID());
+ Log.d("WifiNetworkConnected");
mEventFacade.postEvent("WifiNetworkConnected", msg);
}
- NetworkInfo nInfo = intent.getParcelableExtra(WifiManager.EXTRA_NETWORK_INFO);
- WifiInfo wInfo = intent.getParcelableExtra(WifiManager.EXTRA_WIFI_INFO);
- Log.d("NetworkInfo " + nInfo);
- Log.d("WifiInfo " + wInfo);
} else if (action.equals(WifiManager.SUPPLICANT_CONNECTION_CHANGE_ACTION)) {
Log.d("Supplicant connection state changed.");
mIsConnected = intent.getBooleanExtra(WifiManager.EXTRA_SUPPLICANT_CONNECTED, false);
@@ -290,7 +285,8 @@
*/
@Rpc(description = "Forget a wifi network with priority")
public void wifiForgetNetwork(@RpcParameter(name = "wifiSSID") Integer newtorkId ) {
- mWifi.forget(newtorkId, mWifiActionListener);
+ WifiActionListener listener = new WifiActionListener(mEventFacade, "ForgetNetwork");
+ mWifi.forget(newtorkId, listener);
}
@Rpc(description = "Return a list of all the configured wifi networks.")
@@ -343,7 +339,8 @@
wifiConfig.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE);
else
wifiConfig.preSharedKey = "\"" + wifiPassword + "\"";
- mWifi.connect(wifiConfig, mWifiActionListener);
+ WifiActionListener listener = new WifiActionListener(mEventFacade, "PriorityConnect");
+ mWifi.connect(wifiConfig, listener);
}
@Rpc(description = "Reassociates with the currently active access point.",