我使用以下代码进行电话号码验证.但我收到以下错误.我无法继续前进.帮助我们推进它.
class PhoneNumberValidation: Validation {
let PHONE_REGEX = "^\\d{3}-\\d{3}-\\d{4}$"
func validate(value: String) -> (Bool, ValidationErrorType) {
if let phoneTest = NSPredicate(format: "SELF MATCHES %@", PHONE_REGEX) {
if phoneTest.evaluateWithObject(value) {
return (true, .NoError)
}
return (false, .PhoneNumber)
}
return (false, .PhoneNumber)
}
}
Run Code Online (Sandbox Code Playgroud)
错误:swift:15:28:条件绑定中的绑定值必须是Optional类型
为了找到信号强度,我在我的项目中进行了以下更改,因此如果信号强度良好,我将提出API请求.如果不好,我们会提示用户关于互联网连接.但是此代码仅适用于单个SIM卡设备,不适用于双卡而不能获得辅助SIM卡的"ASU"和"dBm"值.任何人都知道如何检测双卡的信号强度.
我的项目minSdkVersion = 16,targetSdkVersion = 23
您的参考代码.
Mainactivity.java
Thread t1 = new Thread()
{
public void run()
{
Intent service1 = new Intent(HomeScreen.this, SignalService.class);
startService(service1);
}
};
Run Code Online (Sandbox Code Playgroud)
SignalService.Java
public class SignalService extends Service {
private static final String TAG = "SignalService" ;
private TelephonyManager mTelephonyManager;
private PhoneStateListener mPhoneStateListener;
@Override
public IBinder onBind(Intent intent) {
return null;
}
@Override
public void onCreate() {
mTelephonyManager = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
mPhoneStateListener = new PhoneStateListener(){
public static final int INVALID = Integer.MAX_VALUE;
public int signalStrengthDbm …Run Code Online (Sandbox Code Playgroud)