# LoginFilter.UsernameFilterGMail

Added in[API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  
Deprecated in[API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  
Summary:[Ctors](https://developer.android.com/reference/android/text/LoginFilter.UsernameFilterGMail#pubctors)\|[Methods](https://developer.android.com/reference/android/text/LoginFilter.UsernameFilterGMail#pubmethods)\|[Inherited Methods](https://developer.android.com/reference/android/text/LoginFilter.UsernameFilterGMail#inhmethods)  

# LoginFilter.UsernameFilterGMail

*** ** * ** ***

[Kotlin](https://developer.android.com/reference/kotlin/android/text/LoginFilter.UsernameFilterGMail "View this page in Kotlin")\|Java

`
public
static


class
LoginFilter.UsernameFilterGMail
`  
`


``

extends `[LoginFilter](https://developer.android.com/reference/android/text/LoginFilter)`


``


`

|---|---|----------------------------------------------|
| [java.lang.Object](https://developer.android.com/reference/java/lang/Object) |||
| ↳ | [android.text.LoginFilter](https://developer.android.com/reference/android/text/LoginFilter) ||
|   | ↳ | android.text.LoginFilter.UsernameFilterGMail |

<br />

*** ** * ** ***

<br />

**This class was deprecated in API level 30.**   
Do not encode assumptions about Google account names into client applications.

This filter rejects characters in the user name that are not compatible with GMail account creation. It prevents the user from entering user names with characters other than \[a-zA-Z0-9.\].

## Summary

|                                                                         ### Public constructors                                                                          ||
|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------|---|
| ` `[UsernameFilterGMail](https://developer.android.com/reference/android/text/LoginFilter.UsernameFilterGMail#UsernameFilterGMail())`() `                             |
| ` `[UsernameFilterGMail](https://developer.android.com/reference/android/text/LoginFilter.UsernameFilterGMail#UsernameFilterGMail(boolean))`(boolean appendInvalid) ` |

|                                                                                    ### Public methods                                                                                    ||
|------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| ` boolean` | ` `[isAllowed](https://developer.android.com/reference/android/text/LoginFilter.UsernameFilterGMail#isAllowed(char))`(char c) ` Returns whether or not we allow character c. |

| ### Inherited methods |
|-----------------------|---|
| From class` `[android.text.LoginFilter](https://developer.android.com/reference/android/text/LoginFilter)` ` |-----------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | ` `[CharSequence](https://developer.android.com/reference/java/lang/CharSequence) | ` `[filter](https://developer.android.com/reference/android/text/LoginFilter#filter(java.lang.CharSequence,%20int,%20int,%20android.text.Spanned,%20int,%20int))`(`[CharSequence](https://developer.android.com/reference/java/lang/CharSequence)` source, int start, int end, `[Spanned](https://developer.android.com/reference/android/text/Spanned)` dest, int dstart, int dend) ` This method is called when the buffer is going to replace the range`dstart ... dend`of`dest`with the new text from the range`start ... end`of`source`. | | ` abstract boolean`                                                               | ` `[isAllowed](https://developer.android.com/reference/android/text/LoginFilter#isAllowed(char))`(char c) ` Returns whether or not we allow character c.                                                                                                                                                                                                                                                                                                                                                                                      | | ` void`                                                                           | ` `[onInvalidCharacter](https://developer.android.com/reference/android/text/LoginFilter#onInvalidCharacter(char))`(char c) ` Called whenever we encounter an invalid character.                                                                                                                                                                                                                                                                                                                                                              | | ` void`                                                                           | ` `[onStart](https://developer.android.com/reference/android/text/LoginFilter#onStart())`() ` Called when we start processing filter.                                                                                                                                                                                                                                                                                                                                                                                                         | | ` void`                                                                           | ` `[onStop](https://developer.android.com/reference/android/text/LoginFilter#onStop())`() ` Called when we're done processing filter                                                                                                                                                                                                                                                                                                                                                                                                          | ||
| From class` `[java.lang.Object](https://developer.android.com/reference/java/lang/Object)` ` |--------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | ` `[Object](https://developer.android.com/reference/java/lang/Object)          | ` `[clone](https://developer.android.com/reference/java/lang/Object#clone())`() ` Creates and returns a copy of this object.                                                                                                                                                      | | ` boolean`                                                                     | ` `[equals](https://developer.android.com/reference/java/lang/Object#equals(java.lang.Object))`(`[Object](https://developer.android.com/reference/java/lang/Object)` obj) ` Indicates whether some other object is "equal to" this one.                                           | | ` void`                                                                        | ` `[finalize](https://developer.android.com/reference/java/lang/Object#finalize())`() ` Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.                                                          | | ` final `[Class](https://developer.android.com/reference/java/lang/Class)`<?>` | ` `[getClass](https://developer.android.com/reference/java/lang/Object#getClass())`() ` Returns the runtime class of this`Object`.                                                                                                                                                | | ` int`                                                                         | ` `[hashCode](https://developer.android.com/reference/java/lang/Object#hashCode())`() ` Returns a hash code value for the object.                                                                                                                                                 | | ` final void`                                                                  | ` `[notify](https://developer.android.com/reference/java/lang/Object#notify())`() ` Wakes up a single thread that is waiting on this object's monitor.                                                                                                                            | | ` final void`                                                                  | ` `[notifyAll](https://developer.android.com/reference/java/lang/Object#notifyAll())`() ` Wakes up all threads that are waiting on this object's monitor.                                                                                                                         | | ` `[String](https://developer.android.com/reference/java/lang/String)          | ` `[toString](https://developer.android.com/reference/java/lang/Object#toString())`() ` Returns a string representation of the object.                                                                                                                                            | | ` final void`                                                                  | ` `[wait](https://developer.android.com/reference/java/lang/Object#wait(long,%20int))`(long timeoutMillis, int nanos) ` Causes the current thread to wait until it is awakened, typically by being*notified* or*interrupted*, or until a certain amount of real time has elapsed. | | ` final void`                                                                  | ` `[wait](https://developer.android.com/reference/java/lang/Object#wait(long))`(long timeoutMillis) ` Causes the current thread to wait until it is awakened, typically by being*notified* or*interrupted*, or until a certain amount of real time has elapsed.                   | | ` final void`                                                                  | ` `[wait](https://developer.android.com/reference/java/lang/Object#wait())`() ` Causes the current thread to wait until it is awakened, typically by being*notified* or*interrupted*.                                                                                             | ||
| From interface` `[android.text.InputFilter](https://developer.android.com/reference/android/text/InputFilter)` ` |--------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | ` abstract `[CharSequence](https://developer.android.com/reference/java/lang/CharSequence) | ` `[filter](https://developer.android.com/reference/android/text/InputFilter#filter(java.lang.CharSequence,%20int,%20int,%20android.text.Spanned,%20int,%20int))`(`[CharSequence](https://developer.android.com/reference/java/lang/CharSequence)` source, int start, int end, `[Spanned](https://developer.android.com/reference/android/text/Spanned)` dest, int dstart, int dend) ` This method is called when the buffer is going to replace the range`dstart ... dend`of`dest`with the new text from the range`start ... end`of`source`. | ||

## Public constructors

### UsernameFilterGMail

Added in[API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  

```
public UsernameFilterGMail ()
```

<br />

<br />

### UsernameFilterGMail

Added in[API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  

```
public UsernameFilterGMail (boolean appendInvalid)
```

<br />

<br />

|            Parameters             ||
|-----------------|------------------|
| `appendInvalid` | `boolean` <br /> |

## Public methods

### isAllowed

Added in[API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  

```
public boolean isAllowed (char c)
```

Returns whether or not we allow character c. Subclasses must override this method.

<br />

|     Parameters     ||
|-----|---------------|
| `c` | `char` <br /> |

|      Returns      ||
|-----------|--------|
| `boolean` | <br /> |