Merge "[TvProvision] Add open network "AndroidWifi"" into sc-dev
diff --git a/TvProvision/AndroidManifest.xml b/TvProvision/AndroidManifest.xml
index 17460a1..e167597 100644
--- a/TvProvision/AndroidManifest.xml
+++ b/TvProvision/AndroidManifest.xml
@@ -23,6 +23,7 @@
     <uses-permission android:name="android.permission.WRITE_SETTINGS" />
     <uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" />
     <uses-permission android:name="android.permission.MANAGE_USERS" />
+    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
 
     <application>
         <activity android:name="DefaultActivity"
diff --git a/TvProvision/src/com/android/tv/provision/DefaultActivity.java b/TvProvision/src/com/android/tv/provision/DefaultActivity.java
index 94d01f8..8ea0bae 100644
--- a/TvProvision/src/com/android/tv/provision/DefaultActivity.java
+++ b/TvProvision/src/com/android/tv/provision/DefaultActivity.java
@@ -20,11 +20,14 @@
 import android.content.ComponentName;
 import android.content.Context;
 import android.content.pm.PackageManager;
+import android.net.wifi.WifiManager;
+import android.net.wifi.WifiConfiguration;
 import android.os.Bundle;
 import android.os.SystemProperties;
 import android.os.UserHandle;
 import android.os.UserManager;
 import android.provider.Settings;
+import android.util.Log;
 
 /**
  * Application that sets the provisioned bit, like SetupWizard does.
@@ -32,7 +35,8 @@
 public class DefaultActivity extends Activity {
 
     private static final String TV_USER_SETUP_COMPLETE = "tv_user_setup_complete";
-
+    private static final String TAG = "TvProvision";
+    private static final int ADD_NETWORK_FAIL = -1;
     @Override
     protected void onCreate(Bundle icicle) {
         super.onCreate(icicle);
@@ -46,6 +50,15 @@
         if (SystemProperties.get("ro.boot.qemu").equals("1")) {
           // Emulator-only: Enable USB debugging and adb
           Settings.Global.putInt(getContentResolver(), Settings.Global.ADB_ENABLED, 1);
+          // Add network with SSID "AndroidWifi"
+          WifiConfiguration config = new WifiConfiguration();
+          config.SSID = "\"AndroidWifi\"";
+          config.setSecurityParams(WifiConfiguration.SECURITY_TYPE_OPEN);
+          WifiManager mWifiManager = getApplicationContext().getSystemService(WifiManager.class);
+          int netId = mWifiManager.addNetwork(config);
+          if (netId == ADD_NETWORK_FAIL || mWifiManager.enableNetwork(netId, true)) {
+              Log.e(TAG, "Unable to add Wi-Fi network AndroidWifi.");
+          }
         }
 
         // remove this activity from the package manager.