Я нашел эту реализацию полезной, показывает лучшую клавиатуру и ограничивает ввод символов.
<EditText
android:inputType="phone"
android:digits="1234567890"
...
/>
Кроме того, вы можете использовать android:maxLength
для ограничения максимального количества чисел.
Для этого программно:
editText.setInputType(InputType.TYPE_CLASS_PHONE);
KeyListener keyListener = DigitsKeyListener.getInstance("1234567890");
editText.setKeyListener(keyListener);