178d5efdfea790529ed9a0591256de91685a925e3Fan Zhang/* 278d5efdfea790529ed9a0591256de91685a925e3Fan Zhang * Copyright (C) 2017 The Android Open Source Project 378d5efdfea790529ed9a0591256de91685a925e3Fan Zhang * 478d5efdfea790529ed9a0591256de91685a925e3Fan Zhang * Licensed under the Apache License, Version 2.0 (the "License"); 578d5efdfea790529ed9a0591256de91685a925e3Fan Zhang * you may not use this file except in compliance with the License. 678d5efdfea790529ed9a0591256de91685a925e3Fan Zhang * You may obtain a copy of the License at 778d5efdfea790529ed9a0591256de91685a925e3Fan Zhang * 878d5efdfea790529ed9a0591256de91685a925e3Fan Zhang * http://www.apache.org/licenses/LICENSE-2.0 978d5efdfea790529ed9a0591256de91685a925e3Fan Zhang * 1078d5efdfea790529ed9a0591256de91685a925e3Fan Zhang * Unless required by applicable law or agreed to in writing, software 1178d5efdfea790529ed9a0591256de91685a925e3Fan Zhang * distributed under the License is distributed on an "AS IS" BASIS, 1278d5efdfea790529ed9a0591256de91685a925e3Fan Zhang * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1378d5efdfea790529ed9a0591256de91685a925e3Fan Zhang * See the License for the specific language governing permissions and 1478d5efdfea790529ed9a0591256de91685a925e3Fan Zhang * limitations under the License. 1578d5efdfea790529ed9a0591256de91685a925e3Fan Zhang */ 1678d5efdfea790529ed9a0591256de91685a925e3Fan Zhang 1778d5efdfea790529ed9a0591256de91685a925e3Fan Zhangpackage com.android.settings.wifi; 1878d5efdfea790529ed9a0591256de91685a925e3Fan Zhang 1978d5efdfea790529ed9a0591256de91685a925e3Fan Zhangimport android.text.TextUtils; 2078d5efdfea790529ed9a0591256de91685a925e3Fan Zhang 2178d5efdfea790529ed9a0591256de91685a925e3Fan Zhangpublic class WifiUtils { 2278d5efdfea790529ed9a0591256de91685a925e3Fan Zhang 2378d5efdfea790529ed9a0591256de91685a925e3Fan Zhang private static final int SSID_ASCII_MIN_LENGTH = 1; 2478d5efdfea790529ed9a0591256de91685a925e3Fan Zhang private static final int SSID_ASCII_MAX_LENGTH = 32; 2578d5efdfea790529ed9a0591256de91685a925e3Fan Zhang private static final int PASSWORD_MIN_LENGTH = 8; 2678d5efdfea790529ed9a0591256de91685a925e3Fan Zhang private static final int PASSWORD_MAX_LENGTH = 63; 2778d5efdfea790529ed9a0591256de91685a925e3Fan Zhang 2878d5efdfea790529ed9a0591256de91685a925e3Fan Zhang 2978d5efdfea790529ed9a0591256de91685a925e3Fan Zhang public static boolean isSSIDTooLong(String ssid) { 3078d5efdfea790529ed9a0591256de91685a925e3Fan Zhang if (TextUtils.isEmpty(ssid)) { 3178d5efdfea790529ed9a0591256de91685a925e3Fan Zhang return false; 3278d5efdfea790529ed9a0591256de91685a925e3Fan Zhang } 3378d5efdfea790529ed9a0591256de91685a925e3Fan Zhang return ssid.length() > SSID_ASCII_MAX_LENGTH; 3478d5efdfea790529ed9a0591256de91685a925e3Fan Zhang } 3578d5efdfea790529ed9a0591256de91685a925e3Fan Zhang 3678d5efdfea790529ed9a0591256de91685a925e3Fan Zhang public static boolean isSSIDTooShort(String ssid) { 3778d5efdfea790529ed9a0591256de91685a925e3Fan Zhang if (TextUtils.isEmpty(ssid)) { 3878d5efdfea790529ed9a0591256de91685a925e3Fan Zhang return true; 3978d5efdfea790529ed9a0591256de91685a925e3Fan Zhang } 4078d5efdfea790529ed9a0591256de91685a925e3Fan Zhang return ssid.length() < SSID_ASCII_MIN_LENGTH; 4178d5efdfea790529ed9a0591256de91685a925e3Fan Zhang } 4278d5efdfea790529ed9a0591256de91685a925e3Fan Zhang 4378d5efdfea790529ed9a0591256de91685a925e3Fan Zhang public static boolean isPasswordValid(String password) { 4478d5efdfea790529ed9a0591256de91685a925e3Fan Zhang if (TextUtils.isEmpty(password)) { 4578d5efdfea790529ed9a0591256de91685a925e3Fan Zhang return false; 4678d5efdfea790529ed9a0591256de91685a925e3Fan Zhang } 4778d5efdfea790529ed9a0591256de91685a925e3Fan Zhang final int length = password.length(); 4878d5efdfea790529ed9a0591256de91685a925e3Fan Zhang return length >= PASSWORD_MIN_LENGTH && length <= PASSWORD_MAX_LENGTH; 4978d5efdfea790529ed9a0591256de91685a925e3Fan Zhang } 5078d5efdfea790529ed9a0591256de91685a925e3Fan Zhang} 51