[登录活动]
我是Android应用开发的新手。 我正在开发Android应用程序。 用户可以使用电子邮件ID或手机号码登录facebook登录。 我们如何知道用户输入的电子邮件或移动设备。 请帮我。 验证是他们的任何验证框架在android api中工作,如密码,电子邮件ID移动无模式匹配器等请帮帮我。
<EditText
android:layout_width="wrap_content"
android:layout_height="50dp"
android:inputType="text"
android:ems="10"
android:id="@+id/etUserName"
android:layout_marginTop="90dp"
android:hint="Enter Email id/Mobile no"
android:textColorHint="#4d060505"
android:background="@drawable/edittext_bg"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:layout_alignParentStart="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
android:gravity="center">
<requestFocus/>
</EditText>
<EditText
android:layout_width="wrap_content"
android:layout_height="50dp"
android:inputType="textPassword"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:ems="10"
android:id="@+id/etPwd"
android:hint="Password"
android:textColorHint="#4d060505"
android:layout_marginBottom="5dp"
android:layout_marginTop="10dp"
android:background="@drawable/edittext_bg"
android:layout_below="@+id/etUserName"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
android:gravity="center"/>
这段代码非常适合我。 根据你的建议我试了一下。
if(isEmailValid(loginname)){
Toast.makeText(getApplicationContext(), "Email", Toast.LENGTH_LONG).show();
}else if(isValidMobileNumber(loginname)){
Toast.makeText(getApplicationContext(), "mobileNo", Toast.LENGTH_LONG).show();
}else{
Toast.makeText(getApplicationContext(), "Enter Email or Mobile No", Toast.LENGTH_LONG).show();
}
答案 0 :(得分:3)
尝试电子邮件
boolean isEmailValid(CharSequence email) {
return android.util.Patterns.EMAIL_ADDRESS.matcher(email).matches();
}
如果您的Edittext
值返回true,则其电子邮件地址为移动电话号码
答案 1 :(得分:2)
您可以使用它来检查输入是否是电子邮件:
public static boolean isEmailValid(CharSequence email) {
return android.util.Patterns.EMAIL_ADDRESS.matcher(email).matches();
}
答案 2 :(得分:1)
通过这两种方法我解决了这个问题
public static boolean isPhoneNumberValid(String phoneNoWithConCode, String countryCode)
{
PhoneNumberUtil phoneUtil = PhoneNumberUtil.getInstance();
try
{
Phonenumber.PhoneNumber numberProto = phoneUtil.parse(phoneNoWithConCode, countryCode);
return phoneUtil.isValidNumber(numberProto);
}
catch (NumberParseException e)
{
System.err.println("NumberParseException was thrown: " + e.toString());
}
return false;
}
public static boolean isEmailValid(String email){
return Patterns.EMAIL_ADDRESS.matcher(email).matches();
}
逐个调用这两种方法,如
if(isPhoneNumberValid(.. , ..))
{
//write your mobile no logic here
}else if(isEmailValid(..)
{
//write you email logic here
}
答案 3 :(得分:0)
首先来自getText
的{{1}}并设置正确的验证,以便检查电子邮件和手机号码,如下所示:
editText
答案 4 :(得分:0)
这是我在项目中使用的内容
private static boolean isValidPhoneNumber(String mobile) {
String regEx = "^[0-9]{11,12}$";
return mobile.matches(regEx);
}
private boolean isValidEmaillId(String email){
return Pattern.compile("^(([\\w-]+\\.)+[\\w-]+|([a-zA-Z]{1}|[\\w-]{2,}))@"
+ "((([0-1]?[0-9]{1,2}|25[0-5]|2[0-4][0-9])\\.([0-1]?"
+ "[0-9]{1,2}|25[0-5]|2[0-4][0-9])\\."
+ "([0-1]?[0-9]{1,2}|25[0-5]|2[0-4][0-9])\\.([0-1]?"
+ "[0-9]{1,2}|25[0-5]|2[0-4][0-9])){1}|"
+ "([a-zA-Z]+[\\w-]+\\.)+[a-zA-Z]{2,4})$").matcher(email).matches();
}
您可以使用if else逻辑来验证活动中的移动电话或电子邮件