am 0f41b49d
: Add install support for WIFI UID
* commit '0f41b49d1f33e86ec4e7004f009c074b68a90be6': Add install support for WIFI UID
This commit is contained in:
@@ -29,6 +29,7 @@
|
|||||||
<uses-permission android:name="android.permission.ACCESS_WIMAX_STATE" />
|
<uses-permission android:name="android.permission.ACCESS_WIMAX_STATE" />
|
||||||
<uses-permission android:name="android.permission.CHANGE_WIMAX_STATE" />
|
<uses-permission android:name="android.permission.CHANGE_WIMAX_STATE" />
|
||||||
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
|
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
|
||||||
|
<uses-permission android:name="com.android.certinstaller.INSTALL_AS_USER" />
|
||||||
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
|
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
|
||||||
<uses-permission android:name="android.permission.INTERNET" />
|
<uses-permission android:name="android.permission.INTERNET" />
|
||||||
<uses-permission android:name="android.permission.CLEAR_APP_USER_DATA" />
|
<uses-permission android:name="android.permission.CLEAR_APP_USER_DATA" />
|
||||||
|
@@ -1274,6 +1274,8 @@
|
|||||||
<string name="wifi_scan_always_available">Scanning always available</string>
|
<string name="wifi_scan_always_available">Scanning always available</string>
|
||||||
<!-- Checkbox summary for option to toggle scan always available setting -->
|
<!-- Checkbox summary for option to toggle scan always available setting -->
|
||||||
<string name="wifi_scan_always_available_summary">Let Google\'s location service and other apps scan for networks, even when Wi-Fi is off</string>
|
<string name="wifi_scan_always_available_summary">Let Google\'s location service and other apps scan for networks, even when Wi-Fi is off</string>
|
||||||
|
<!-- Preference title for option to install certificates -->
|
||||||
|
<string name="wifi_install_credentials">Install certificates</string>
|
||||||
<string name="wifi_scan_notify_text_location_on">To improve location accuracy and for other purposes, Google and other apps may scan for nearby networks, even when Wi-Fi is off. If you don\'t want this to happen, go to Advanced > Scanning always available.</string>
|
<string name="wifi_scan_notify_text_location_on">To improve location accuracy and for other purposes, Google and other apps may scan for nearby networks, even when Wi-Fi is off. If you don\'t want this to happen, go to Advanced > Scanning always available.</string>
|
||||||
<string name="wifi_scan_notify_text_location_off">Apps may scan for nearby networks, even when Wi-Fi is off. If you don\'t want this to happen, go to Advanced > Scanning always available.</string>
|
<string name="wifi_scan_notify_text_location_off">Apps may scan for nearby networks, even when Wi-Fi is off. If you don\'t want this to happen, go to Advanced > Scanning always available.</string>
|
||||||
<!-- Wifi scan always mode checkbox text -->
|
<!-- Wifi scan always mode checkbox text -->
|
||||||
|
@@ -53,6 +53,11 @@
|
|||||||
android:entryValues="@array/wifi_frequency_band_values"
|
android:entryValues="@array/wifi_frequency_band_values"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
|
<Preference
|
||||||
|
android:key="install_credentials"
|
||||||
|
android:title="@string/wifi_install_credentials"
|
||||||
|
android:persistent="false" />
|
||||||
|
|
||||||
<CheckBoxPreference
|
<CheckBoxPreference
|
||||||
android:key="suspend_optimizations"
|
android:key="suspend_optimizations"
|
||||||
android:title="@string/wifi_suspend_optimizations"
|
android:title="@string/wifi_suspend_optimizations"
|
||||||
|
@@ -17,6 +17,7 @@
|
|||||||
package com.android.settings.wifi;
|
package com.android.settings.wifi;
|
||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
import android.content.Intent;
|
||||||
import android.net.wifi.WifiInfo;
|
import android.net.wifi.WifiInfo;
|
||||||
import android.net.wifi.WifiManager;
|
import android.net.wifi.WifiManager;
|
||||||
import android.net.wifi.WifiWatchdogStateMachine;
|
import android.net.wifi.WifiWatchdogStateMachine;
|
||||||
@@ -27,6 +28,7 @@ import android.preference.Preference;
|
|||||||
import android.preference.PreferenceScreen;
|
import android.preference.PreferenceScreen;
|
||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
import android.provider.Settings.Global;
|
import android.provider.Settings.Global;
|
||||||
|
import android.security.Credentials;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
import android.widget.Toast;
|
import android.widget.Toast;
|
||||||
@@ -46,6 +48,7 @@ public class AdvancedWifiSettings extends SettingsPreferenceFragment
|
|||||||
private static final String KEY_SLEEP_POLICY = "sleep_policy";
|
private static final String KEY_SLEEP_POLICY = "sleep_policy";
|
||||||
private static final String KEY_POOR_NETWORK_DETECTION = "wifi_poor_network_detection";
|
private static final String KEY_POOR_NETWORK_DETECTION = "wifi_poor_network_detection";
|
||||||
private static final String KEY_SCAN_ALWAYS_AVAILABLE = "wifi_scan_always_available";
|
private static final String KEY_SCAN_ALWAYS_AVAILABLE = "wifi_scan_always_available";
|
||||||
|
private static final String KEY_INSTALL_CREDENTIALS = "install_credentials";
|
||||||
private static final String KEY_SUSPEND_OPTIMIZATIONS = "suspend_optimizations";
|
private static final String KEY_SUSPEND_OPTIMIZATIONS = "suspend_optimizations";
|
||||||
|
|
||||||
private WifiManager mWifiManager;
|
private WifiManager mWifiManager;
|
||||||
@@ -94,6 +97,13 @@ public class AdvancedWifiSettings extends SettingsPreferenceFragment
|
|||||||
scanAlwaysAvailable.setChecked(Global.getInt(getContentResolver(),
|
scanAlwaysAvailable.setChecked(Global.getInt(getContentResolver(),
|
||||||
Global.WIFI_SCAN_ALWAYS_AVAILABLE, 0) == 1);
|
Global.WIFI_SCAN_ALWAYS_AVAILABLE, 0) == 1);
|
||||||
|
|
||||||
|
Intent intent=new Intent(Credentials.INSTALL_AS_USER_ACTION);
|
||||||
|
intent.setClassName("com.android.certinstaller",
|
||||||
|
"com.android.certinstaller.CertInstallerMain");
|
||||||
|
intent.putExtra(Credentials.EXTRA_INSTALL_AS_UID, android.os.Process.WIFI_UID);
|
||||||
|
Preference pref = findPreference(KEY_INSTALL_CREDENTIALS);
|
||||||
|
pref.setIntent(intent);
|
||||||
|
|
||||||
CheckBoxPreference suspendOptimizations =
|
CheckBoxPreference suspendOptimizations =
|
||||||
(CheckBoxPreference) findPreference(KEY_SUSPEND_OPTIMIZATIONS);
|
(CheckBoxPreference) findPreference(KEY_SUSPEND_OPTIMIZATIONS);
|
||||||
suspendOptimizations.setChecked(Global.getInt(getContentResolver(),
|
suspendOptimizations.setChecked(Global.getInt(getContentResolver(),
|
||||||
|
@@ -819,7 +819,7 @@ public class WifiConfigController implements TextWatcher,
|
|||||||
private void loadCertificates(Spinner spinner, String prefix) {
|
private void loadCertificates(Spinner spinner, String prefix) {
|
||||||
final Context context = mConfigUi.getContext();
|
final Context context = mConfigUi.getContext();
|
||||||
|
|
||||||
String[] certs = KeyStore.getInstance().saw(prefix);
|
String[] certs = KeyStore.getInstance().saw(prefix, android.os.Process.WIFI_UID);
|
||||||
if (certs == null || certs.length == 0) {
|
if (certs == null || certs.length == 0) {
|
||||||
certs = new String[] {unspecifiedCert};
|
certs = new String[] {unspecifiedCert};
|
||||||
} else {
|
} else {
|
||||||
|
Reference in New Issue
Block a user