set softAP on a specified band, including both 2.4 and 5 GHz band
Bug:18929692 Change-Id: I455e9b17e5091596beb0246ccfd981c5d2b932f0
This commit is contained in:
@@ -66,6 +66,31 @@
|
|||||||
style="@style/wifi_item_content"
|
style="@style/wifi_item_content"
|
||||||
android:prompt="@string/wifi_security"
|
android:prompt="@string/wifi_security"
|
||||||
android:entries="@array/wifi_ap_security" />
|
android:entries="@array/wifi_ap_security" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
style="@style/wifi_item_label"
|
||||||
|
android:layout_marginTop="8dip"
|
||||||
|
android:text="@string/wifi_ap_band_config" />
|
||||||
|
|
||||||
|
<RadioGroup android:id = "@+id/choose_channel"
|
||||||
|
android:layout_width="fill_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="vertical">
|
||||||
|
|
||||||
|
<RadioButton android:id="@+id/ap_2G_band"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="@string/wifi_ap_choose_2G"
|
||||||
|
android:layout_marginTop="8dip"/>
|
||||||
|
|
||||||
|
<RadioButton android:id="@+id/ap_5G_band"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="@string/wifi_ap_choose_5G"
|
||||||
|
android:layout_marginTop="8dip"/>
|
||||||
|
</RadioGroup>
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
<LinearLayout android:id="@+id/fields"
|
<LinearLayout android:id="@+id/fields"
|
||||||
|
@@ -1577,6 +1577,12 @@
|
|||||||
<string name="wifi_password">Password</string>
|
<string name="wifi_password">Password</string>
|
||||||
<!-- Label for the check box to show password -->
|
<!-- Label for the check box to show password -->
|
||||||
<string name="wifi_show_password">Show password</string>
|
<string name="wifi_show_password">Show password</string>
|
||||||
|
<!-- Label for the RadioGroup to choose wifi ap band -->
|
||||||
|
<string name="wifi_ap_band_config">Config AP Band</string>
|
||||||
|
<!-- Label for the radio button to choose wifi ap 2.4 GHz band -->
|
||||||
|
<string name="wifi_ap_choose_2G">2.4 GHz Band</string>
|
||||||
|
<!-- Label for the radio button to choose wifi ap 5GHz band -->
|
||||||
|
<string name="wifi_ap_choose_5G">5 GHz Band</string>
|
||||||
<!-- Label for the spinner to show ip settings [CHAR LIMIT=25] -->
|
<!-- Label for the spinner to show ip settings [CHAR LIMIT=25] -->
|
||||||
<string name="wifi_ip_settings">IP settings</string>
|
<string name="wifi_ip_settings">IP settings</string>
|
||||||
<!-- Hint for unchanged fields -->
|
<!-- Hint for unchanged fields -->
|
||||||
|
@@ -32,9 +32,13 @@ import android.widget.CheckBox;
|
|||||||
import android.widget.EditText;
|
import android.widget.EditText;
|
||||||
import android.widget.Spinner;
|
import android.widget.Spinner;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
|
import android.widget.RadioGroup;
|
||||||
|
import android.widget.RadioButton;
|
||||||
|
|
||||||
import com.android.settings.R;
|
import com.android.settings.R;
|
||||||
|
|
||||||
|
import android.util.Log;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Dialog to configure the SSID and security settings
|
* Dialog to configure the SSID and security settings
|
||||||
* for Access Point operation
|
* for Access Point operation
|
||||||
@@ -53,8 +57,12 @@ public class WifiApDialog extends AlertDialog implements View.OnClickListener,
|
|||||||
private TextView mSsid;
|
private TextView mSsid;
|
||||||
private int mSecurityTypeIndex = OPEN_INDEX;
|
private int mSecurityTypeIndex = OPEN_INDEX;
|
||||||
private EditText mPassword;
|
private EditText mPassword;
|
||||||
|
private RadioGroup mChannel;
|
||||||
|
private RadioButton mChannel2G;
|
||||||
|
private RadioButton mChannel5G;
|
||||||
|
|
||||||
WifiConfiguration mWifiConfig;
|
WifiConfiguration mWifiConfig;
|
||||||
|
private static final String TAG = "WifiApDialog";
|
||||||
|
|
||||||
public WifiApDialog(Context context, DialogInterface.OnClickListener listener,
|
public WifiApDialog(Context context, DialogInterface.OnClickListener listener,
|
||||||
WifiConfiguration wifiConfig) {
|
WifiConfiguration wifiConfig) {
|
||||||
@@ -85,6 +93,16 @@ public class WifiApDialog extends AlertDialog implements View.OnClickListener,
|
|||||||
*/
|
*/
|
||||||
config.SSID = mSsid.getText().toString();
|
config.SSID = mSsid.getText().toString();
|
||||||
|
|
||||||
|
//obtain the band configure
|
||||||
|
if (mChannel2G.isChecked()) {
|
||||||
|
config.apBand = 0;
|
||||||
|
} else if(mChannel5G.isChecked()) {
|
||||||
|
config.apBand = 1;
|
||||||
|
} else {
|
||||||
|
Log.e("TAG", "AP band configure error!");
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
switch (mSecurityTypeIndex) {
|
switch (mSecurityTypeIndex) {
|
||||||
case OPEN_INDEX:
|
case OPEN_INDEX:
|
||||||
config.allowedKeyManagement.set(KeyMgmt.NONE);
|
config.allowedKeyManagement.set(KeyMgmt.NONE);
|
||||||
@@ -118,15 +136,25 @@ public class WifiApDialog extends AlertDialog implements View.OnClickListener,
|
|||||||
mSsid = (TextView) mView.findViewById(R.id.ssid);
|
mSsid = (TextView) mView.findViewById(R.id.ssid);
|
||||||
mPassword = (EditText) mView.findViewById(R.id.password);
|
mPassword = (EditText) mView.findViewById(R.id.password);
|
||||||
|
|
||||||
|
mChannel = (RadioGroup) mView.findViewById(R.id.choose_channel);
|
||||||
|
mChannel2G = (RadioButton) mView.findViewById(R.id.ap_2G_band);
|
||||||
|
mChannel5G = (RadioButton) mView.findViewById(R.id.ap_5G_band);
|
||||||
|
|
||||||
setButton(BUTTON_SUBMIT, context.getString(R.string.wifi_save), mListener);
|
setButton(BUTTON_SUBMIT, context.getString(R.string.wifi_save), mListener);
|
||||||
setButton(DialogInterface.BUTTON_NEGATIVE,
|
setButton(DialogInterface.BUTTON_NEGATIVE,
|
||||||
context.getString(R.string.wifi_cancel), mListener);
|
context.getString(R.string.wifi_cancel), mListener);
|
||||||
|
|
||||||
if (mWifiConfig != null) {
|
if (mWifiConfig != null) {
|
||||||
mSsid.setText(mWifiConfig.SSID);
|
mSsid.setText(mWifiConfig.SSID);
|
||||||
|
if (mWifiConfig.apBand == 0) {
|
||||||
|
mChannel2G.setChecked(true);
|
||||||
|
} else {
|
||||||
|
mChannel5G.setChecked(true);
|
||||||
|
}
|
||||||
|
|
||||||
mSecurity.setSelection(mSecurityTypeIndex);
|
mSecurity.setSelection(mSecurityTypeIndex);
|
||||||
if (mSecurityTypeIndex == WPA2_INDEX) {
|
if (mSecurityTypeIndex == WPA2_INDEX) {
|
||||||
mPassword.setText(mWifiConfig.preSharedKey);
|
mPassword.setText(mWifiConfig.preSharedKey);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user