Validação de número de telefone Android

Como verifico se um número de telefone é válido ou não? Tem o comprimento 13 (incluindo o caractere+ em frente)

Como faço isso

Tentei o seguinte:

String regexStr = "^[0-9]$";

String number=entered_number.getText().toString();  

if(entered_number.getText().toString().length()<10 || number.length()>13 || number.matches(regexStr)==false  ) {
    Toast.makeText(MyDialog.this,"Please enter "+"\n"+" valid phone number",Toast.LENGTH_SHORT).show();
    // am_checked=0;
}`

E eu também tentei isso:

public boolean isValidPhoneNumber(String number)
{
     for (char c : number.toCharArray())
     {
         if (!VALID_CHARS.contains(c))
         {
            return false;
         }
     }
     // All characters were valid
     return true;
}

Ambos não estão funcionand

Tipo de entrada:+ sign to be accepted and from 0-9 numbers and length b/w 10-13 and should not accept other characters

questionAnswers(12)

yourAnswerToTheQuestion