Merge "Add WiFi Enterprise restrictions check for WiFi Configuration Addition"
This commit is contained in:
@@ -26,8 +26,10 @@ import androidx.annotation.DrawableRes;
|
||||
import androidx.preference.Preference;
|
||||
import androidx.preference.PreferenceViewHolder;
|
||||
|
||||
import com.android.internal.annotations.VisibleForTesting;
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.wifi.dpp.WifiDppUtils;
|
||||
import com.android.settingslib.wifi.WifiEnterpriseRestrictionUtils;
|
||||
|
||||
/**
|
||||
* The Preference for users to add Wi-Fi networks in WifiSettings
|
||||
@@ -37,6 +39,8 @@ public class AddWifiNetworkPreference extends Preference {
|
||||
private static final String TAG = "AddWifiNetworkPreference";
|
||||
|
||||
private final Drawable mScanIconDrawable;
|
||||
@VisibleForTesting
|
||||
boolean mIsAddWifiConfigAllow;
|
||||
|
||||
public AddWifiNetworkPreference(Context context) {
|
||||
super(context);
|
||||
@@ -47,6 +51,8 @@ public class AddWifiNetworkPreference extends Preference {
|
||||
setTitle(R.string.wifi_add_network);
|
||||
|
||||
mScanIconDrawable = getDrawable(R.drawable.ic_scan_24dp);
|
||||
mIsAddWifiConfigAllow = WifiEnterpriseRestrictionUtils.isAddWifiConfigAllowed(context);
|
||||
updatePreferenceForRestriction();
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -73,4 +79,12 @@ public class AddWifiNetworkPreference extends Preference {
|
||||
}
|
||||
return buttonIcon;
|
||||
}
|
||||
|
||||
@VisibleForTesting
|
||||
void updatePreferenceForRestriction() {
|
||||
if (!mIsAddWifiConfigAllow) {
|
||||
setEnabled(false);
|
||||
setSummary(R.string.not_allowed_by_ent);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -36,6 +36,7 @@ import androidx.fragment.app.FragmentManager;
|
||||
import com.android.internal.annotations.VisibleForTesting;
|
||||
import com.android.settings.R;
|
||||
import com.android.settingslib.core.lifecycle.HideNonSystemOverlayMixin;
|
||||
import com.android.settingslib.wifi.WifiEnterpriseRestrictionUtils;
|
||||
|
||||
/**
|
||||
* When apps send a new intent with a WifiConfiguration list extra to Settings APP. Settings APP
|
||||
@@ -55,6 +56,8 @@ public class AddAppNetworksActivity extends FragmentActivity {
|
||||
final Bundle mBundle = new Bundle();
|
||||
@VisibleForTesting
|
||||
IActivityManager mActivityManager = ActivityManager.getService();
|
||||
@VisibleForTesting
|
||||
boolean mIsAddWifiConfigAllow;
|
||||
|
||||
@Override
|
||||
protected void onCreate(@Nullable Bundle savedInstanceState) {
|
||||
@@ -71,6 +74,8 @@ public class AddAppNetworksActivity extends FragmentActivity {
|
||||
window.setGravity(Gravity.BOTTOM);
|
||||
window.setLayout(WindowManager.LayoutParams.MATCH_PARENT,
|
||||
WindowManager.LayoutParams.WRAP_CONTENT);
|
||||
|
||||
mIsAddWifiConfigAllow = WifiEnterpriseRestrictionUtils.isAddWifiConfigAllowed(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -85,6 +90,10 @@ public class AddAppNetworksActivity extends FragmentActivity {
|
||||
|
||||
@VisibleForTesting
|
||||
protected boolean showAddNetworksFragment() {
|
||||
if (!mIsAddWifiConfigAllow) {
|
||||
Log.d(TAG, "Not allowed by Enterprise Restriction");
|
||||
return false;
|
||||
}
|
||||
String packageName = getCallingAppPackageName();
|
||||
if (TextUtils.isEmpty(packageName)) {
|
||||
Log.d(TAG, "Package name is null");
|
||||
|
Reference in New Issue
Block a user