Added in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels) Summary: [Constants](https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#constants) \| [Inherited Constants](https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#inhconstants) \| [Fields](https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#lfields) \| [Methods](https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#pubmethods) \| [Inherited Methods](https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#inhmethods)

# NetworkRegistrationInfo

*** ** * ** ***


`
public

final

class
NetworkRegistrationInfo
`


`

extends https://developer.android.com/reference/java/lang/Object


`

`


implements

https://developer.android.com/reference/android/os/Parcelable


`

|---|---|
| [java.lang.Object](https://developer.android.com/reference/java/lang/Object) ||
| ↳ | android.telephony.NetworkRegistrationInfo |

<br />

*** ** * ** ***

Description of a mobile network registration info

## Summary

| ### Constants ||
|---|---|
| `int` | `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#DOMAIN_CS` Circuit switched domain |
| `int` | `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#DOMAIN_CS_PS` Applicable to both CS and PS Domain |
| `int` | `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#DOMAIN_PS` Packet switched domain |
| `int` | `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#DOMAIN_UNKNOWN` Unknown / Unspecified domain |
| `int` | `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#NR_STATE_CONNECTED` The device is camped on an LTE cell that supports E-UTRA-NR Dual Connectivity(EN-DC) and also connected to at least one 5G cell as a secondary serving cell. |
| `int` | `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#NR_STATE_NONE` The device isn't camped on an LTE cell or the LTE cell doesn't support E-UTRA-NR Dual Connectivity(EN-DC). |
| `int` | `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#NR_STATE_NOT_RESTRICTED` The device is camped on an LTE cell that supports E-UTRA-NR Dual Connectivity(EN-DC) and both the use of dual connectivity with NR(DCNR) is not restricted and NR is supported by the selected PLMN. |
| `int` | `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#NR_STATE_RESTRICTED` The device is camped on an LTE cell that supports E-UTRA-NR Dual Connectivity(EN-DC) but either the use of dual connectivity with NR(DCNR) is restricted or NR is not supported by the selected PLMN. |
| `int` | `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#SERVICE_TYPE_DATA` Data service |
| `int` | `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#SERVICE_TYPE_EMERGENCY` Emergency service |
| `int` | `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#SERVICE_TYPE_EMERGENCY_SMS` Emergency SMS service |
| `int` | `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#SERVICE_TYPE_MMS` MMS service |
| `int` | `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#SERVICE_TYPE_SMS` SMS service |
| `int` | `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#SERVICE_TYPE_UNKNOWN` Unknown service |
| `int` | `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#SERVICE_TYPE_VIDEO` Video service |
| `int` | `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#SERVICE_TYPE_VOICE` Voice service |

| ### Inherited constants |
|---|
| From interface `https://developer.android.com/reference/android/os/Parcelable` |---|---| | `int` | `https://developer.android.com/reference/android/os/Parcelable#CONTENTS_FILE_DESCRIPTOR` Descriptor bit used with `https://developer.android.com/reference/android/os/Parcelable#describeContents()`: indicates that the Parcelable object's flattened representation includes a file descriptor. | | `int` | `https://developer.android.com/reference/android/os/Parcelable#PARCELABLE_WRITE_RETURN_VALUE` Flag for use with `https://developer.android.com/reference/android/os/Parcelable#writeToParcel(android.os.Parcel,%20int)`: the object being written is a return value, that is the result of a function such as "`Parcelable someFunction()`", "`void someFunction(out Parcelable)`", or "`void someFunction(inout Parcelable)`". | |

| ### Fields ||
|---|---|
| ` public static final https://developer.android.com/reference/android/os/Parcelable.Creator<https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo>` | `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#CREATOR` |

| ### Public methods ||
|---|---|
| ` int` | ` https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#describeContents()() ` Describe the kinds of special objects contained in this Parcelable instance's marshaled representation. |
| ` boolean` | ` https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#equals(java.lang.Object)(https://developer.android.com/reference/java/lang/Object o) ` Indicates whether some other object is "equal to" this one. |
| ` int` | ` https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#getAccessNetworkTechnology()() ` |
| ` https://developer.android.com/reference/java/util/List<https://developer.android.com/reference/java/lang/Integer>` | ` https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#getAvailableServices()() ` |
| ` https://developer.android.com/reference/android/telephony/CellIdentity` | ` https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#getCellIdentity()() ` Require `https://developer.android.com/reference/android/Manifest.permission#ACCESS_FINE_LOCATION`, otherwise return null. |
| ` int` | ` https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#getDomain()() ` |
| ` https://developer.android.com/reference/java/lang/String` | ` https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#getRegisteredPlmn()() ` Get the PLMN-ID for this Network Registration, also known as the RPLMN. |
| ` int` | ` https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#getRejectCause()() ` Get the 3GPP/3GPP2 reason code indicating why registration failed. |
| ` int` | ` https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#getTransportType()() ` |
| ` int` | ` https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#hashCode()() ` Returns a hash code value for the object. |
| ` boolean` | ` https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#isNetworkRegistered()() ` |
| ` boolean` | ` https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#isNetworkRoaming()() ` |
| ` boolean` | ` https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#isNetworkSearching()() ` |
| ` boolean` | ` https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#isNonTerrestrialNetwork()() ` Get whether the network is a non-terrestrial network. |
| ` boolean` | ` https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#isRegistered()() ` *This method was deprecated in API level 34. Use `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#isNetworkRegistered()`, which is not affected by any carrier config or resource overlay, instead.* |
| ` boolean` | ` https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#isRoaming()() ` *This method was deprecated in API level 34. Use `https://developer.android.com/reference/android/telephony/TelephonyDisplayInfo#isRoaming()` instead.* |
| ` boolean` | ` https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#isSearching()() ` *This method was deprecated in API level 34. Use `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#isNetworkRegistered()`, which is not affected by any carrier config or resource overlay, instead.* |
| ` https://developer.android.com/reference/java/lang/String` | ` https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#toString()() ` Returns a string representation of the object. |
| ` void` | ` https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#writeToParcel(android.os.Parcel,%20int)(https://developer.android.com/reference/android/os/Parcel dest, int flags) ` Flatten this object in to a Parcel. |

| ### Inherited methods |
|---|---|
| From class ` https://developer.android.com/reference/java/lang/Object ` |---|---| | ` https://developer.android.com/reference/java/lang/Object` | ` https://developer.android.com/reference/java/lang/Object#clone()() ` Creates and returns a copy of this object. | | ` boolean` | ` https://developer.android.com/reference/java/lang/Object#equals(java.lang.Object)(https://developer.android.com/reference/java/lang/Object obj) ` Indicates whether some other object is "equal to" this one. | | ` void` | ` 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 https://developer.android.com/reference/java/lang/Class<?>` | ` https://developer.android.com/reference/java/lang/Object#getClass()() ` Returns the runtime class of this `Object`. | | ` int` | ` https://developer.android.com/reference/java/lang/Object#hashCode()() ` Returns a hash code value for the object. | | ` final void` | ` https://developer.android.com/reference/java/lang/Object#notify()() ` Wakes up a single thread that is waiting on this object's monitor. | | ` final void` | ` https://developer.android.com/reference/java/lang/Object#notifyAll()() ` Wakes up all threads that are waiting on this object's monitor. | | ` https://developer.android.com/reference/java/lang/String` | ` https://developer.android.com/reference/java/lang/Object#toString()() ` Returns a string representation of the object. | | ` final void` | ` 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` | ` 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` | ` 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 ` https://developer.android.com/reference/android/os/Parcelable ` |---|---| | ` abstract int` | ` https://developer.android.com/reference/android/os/Parcelable#describeContents()() ` Describe the kinds of special objects contained in this Parcelable instance's marshaled representation. | | ` abstract void` | ` https://developer.android.com/reference/android/os/Parcelable#writeToParcel(android.os.Parcel,%20int)(https://developer.android.com/reference/android/os/Parcel dest, int flags) ` Flatten this object in to a Parcel. | ||

## Constants

### DOMAIN_CS

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

```
public static final int DOMAIN_CS
```

Circuit switched domain

<br />

Constant Value:

1
(0x00000001)


### DOMAIN_CS_PS

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

```
public static final int DOMAIN_CS_PS
```

Applicable to both CS and PS Domain

<br />

Constant Value:

3
(0x00000003)


### DOMAIN_PS

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

```
public static final int DOMAIN_PS
```

Packet switched domain

<br />

Constant Value:

2
(0x00000002)


### DOMAIN_UNKNOWN

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

```
public static final int DOMAIN_UNKNOWN
```

Unknown / Unspecified domain

<br />

Constant Value:

0
(0x00000000)


### NR_STATE_CONNECTED

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

```
public static final int NR_STATE_CONNECTED
```

The device is camped on an LTE cell that supports E-UTRA-NR Dual Connectivity(EN-DC) and
also connected to at least one 5G cell as a secondary serving cell.

<br />

Constant Value:

3
(0x00000003)


### NR_STATE_NONE

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

```
public static final int NR_STATE_NONE
```

The device isn't camped on an LTE cell or the LTE cell doesn't support E-UTRA-NR
Dual Connectivity(EN-DC).

<br />

Constant Value:

0
(0x00000000)


### NR_STATE_NOT_RESTRICTED

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

```
public static final int NR_STATE_NOT_RESTRICTED
```

The device is camped on an LTE cell that supports E-UTRA-NR Dual Connectivity(EN-DC) and both
the use of dual connectivity with NR(DCNR) is not restricted and NR is supported by the
selected PLMN.

<br />

Constant Value:

2
(0x00000002)


### NR_STATE_RESTRICTED

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

```
public static final int NR_STATE_RESTRICTED
```

The device is camped on an LTE cell that supports E-UTRA-NR Dual Connectivity(EN-DC) but
either the use of dual connectivity with NR(DCNR) is restricted or NR is not supported by
the selected PLMN.

<br />

Constant Value:

1
(0x00000001)


### SERVICE_TYPE_DATA

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

```
public static final int SERVICE_TYPE_DATA
```

Data service

<br />

Constant Value:

2
(0x00000002)


### SERVICE_TYPE_EMERGENCY

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

```
public static final int SERVICE_TYPE_EMERGENCY
```

Emergency service

<br />

Constant Value:

5
(0x00000005)


### SERVICE_TYPE_EMERGENCY_SMS

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

```
public static final int SERVICE_TYPE_EMERGENCY_SMS
```

Emergency SMS service

<br />

Constant Value:

7
(0x00000007)


### SERVICE_TYPE_MMS

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

```
public static final int SERVICE_TYPE_MMS
```

MMS service

<br />

Constant Value:

6
(0x00000006)


### SERVICE_TYPE_SMS

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

```
public static final int SERVICE_TYPE_SMS
```

SMS service

<br />

Constant Value:

3
(0x00000003)


### SERVICE_TYPE_UNKNOWN

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

```
public static final int SERVICE_TYPE_UNKNOWN
```

Unknown service

<br />

Constant Value:

0
(0x00000000)


### SERVICE_TYPE_VIDEO

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

```
public static final int SERVICE_TYPE_VIDEO
```

Video service

<br />

Constant Value:

4
(0x00000004)


### SERVICE_TYPE_VOICE

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

```
public static final int SERVICE_TYPE_VOICE
```

Voice service

<br />

Constant Value:

1
(0x00000001)


## Fields

### CREATOR

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

```
public static final Creator<NetworkRegistrationInfo> CREATOR
```

<br />

<br />

## Public methods

### describeContents

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

```
public int describeContents ()
```

Describe the kinds of special objects contained in this Parcelable
instance's marshaled representation. For example, if the object will
include a file descriptor in the output of `https://developer.android.com/reference/android/os/Parcelable#writeToParcel(android.os.Parcel,%20int)`,
the return value of this method must include the
`https://developer.android.com/reference/android/os/Parcelable#CONTENTS_FILE_DESCRIPTOR` bit.

<br />

| Returns ||
|---|---|
| `int` | a bitmask indicating the set of special object types marshaled by this Parcelable object instance. Value is either `0` or - `https://developer.android.com/reference/android/os/Parcelable#CONTENTS_FILE_DESCRIPTOR` |

### equals

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

```
public boolean equals (Object o)
```

Indicates whether some other object is "equal to" this one.


The `equals` method implements an equivalence relation
on non-null object references:

- It is *reflexive*: for any non-null reference value `x`, `x.equals(x)` should return `true`.
- It is *symmetric*: for any non-null reference values `x` and `y`, `x.equals(y)` should return `true` if and only if `y.equals(x)` returns `true`.
- It is *transitive*: for any non-null reference values `x`, `y`, and `z`, if `x.equals(y)` returns `true` and `y.equals(z)` returns `true`, then `x.equals(z)` should return `true`.
- It is *consistent*: for any non-null reference values `x` and `y`, multiple invocations of `x.equals(y)` consistently return `true` or consistently return `false`, provided no information used in `equals` comparisons on the objects is modified.
- For any non-null reference value `x`, `x.equals(null)` should return `false`.


An equivalence relation partitions the elements it operates on
into *equivalence classes*; all the members of an
equivalence class are equal to each other. Members of an
equivalence class are substitutable for each other, at least
for some purposes.

<br />

| Parameters ||
|---|---|
| `o` | `Object`: This value may be `null`. <br /> |

| Returns ||
|---|---|
| `boolean` | `true` if this object is the same as the obj argument; `false` otherwise. <br /> |

### getAccessNetworkTechnology

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

```
public int getAccessNetworkTechnology ()
```

<br />

<br />

| Returns ||
|---|---|
| `int` | The access network technology network type.. Value is one of the following: - `https://developer.android.com/reference/android/telephony/TelephonyManager#NETWORK_TYPE_UNKNOWN` - `https://developer.android.com/reference/android/telephony/TelephonyManager#NETWORK_TYPE_GPRS` - `https://developer.android.com/reference/android/telephony/TelephonyManager#NETWORK_TYPE_EDGE` - `https://developer.android.com/reference/android/telephony/TelephonyManager#NETWORK_TYPE_UMTS` - `https://developer.android.com/reference/android/telephony/TelephonyManager#NETWORK_TYPE_CDMA` - `https://developer.android.com/reference/android/telephony/TelephonyManager#NETWORK_TYPE_EVDO_0` - `https://developer.android.com/reference/android/telephony/TelephonyManager#NETWORK_TYPE_EVDO_A` - `https://developer.android.com/reference/android/telephony/TelephonyManager#NETWORK_TYPE_1xRTT` - `https://developer.android.com/reference/android/telephony/TelephonyManager#NETWORK_TYPE_HSDPA` - `https://developer.android.com/reference/android/telephony/TelephonyManager#NETWORK_TYPE_HSUPA` - `https://developer.android.com/reference/android/telephony/TelephonyManager#NETWORK_TYPE_HSPA` - `https://developer.android.com/reference/android/telephony/TelephonyManager#NETWORK_TYPE_IDEN` - `https://developer.android.com/reference/android/telephony/TelephonyManager#NETWORK_TYPE_EVDO_B` - `https://developer.android.com/reference/android/telephony/TelephonyManager#NETWORK_TYPE_LTE` - `https://developer.android.com/reference/android/telephony/TelephonyManager#NETWORK_TYPE_EHRPD` - `https://developer.android.com/reference/android/telephony/TelephonyManager#NETWORK_TYPE_HSPAP` - `https://developer.android.com/reference/android/telephony/TelephonyManager#NETWORK_TYPE_GSM` - `https://developer.android.com/reference/android/telephony/TelephonyManager#NETWORK_TYPE_TD_SCDMA` - `https://developer.android.com/reference/android/telephony/TelephonyManager#NETWORK_TYPE_IWLAN` - `https://developer.android.com/reference/android/telephony/TelephonyManager#NETWORK_TYPE_NR` |

### getAvailableServices

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

```
public List<Integer> getAvailableServices ()
```

<br />

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/util/List<https://developer.android.com/reference/java/lang/Integer>` | List of available service types. This value cannot be `null`. Value is one of the following: - `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#SERVICE_TYPE_UNKNOWN` - `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#SERVICE_TYPE_VOICE` - `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#SERVICE_TYPE_DATA` - `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#SERVICE_TYPE_SMS` - `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#SERVICE_TYPE_VIDEO` - `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#SERVICE_TYPE_EMERGENCY` - `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#SERVICE_TYPE_MMS` - `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#SERVICE_TYPE_EMERGENCY_SMS` |

### getCellIdentity

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

```
public CellIdentity getCellIdentity ()
```

Require `https://developer.android.com/reference/android/Manifest.permission#ACCESS_FINE_LOCATION`, otherwise return null.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/telephony/CellIdentity` | The cell information. <br /> |

### getDomain

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

```
public int getDomain ()
```

<br />

<br />

| Returns ||
|---|---|
| `int` | The network domain. Value is one of the following: - `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#DOMAIN_UNKNOWN` - `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#DOMAIN_CS` - `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#DOMAIN_PS` - `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#DOMAIN_CS_PS` |

### getRegisteredPlmn

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

```
public String getRegisteredPlmn ()
```

Get the PLMN-ID for this Network Registration, also known as the RPLMN.

If the device is registered, this will return the registered PLMN-ID. If registration
has failed, then this will return the PLMN ID of the last attempted registration. If the
device is not registered, or if is registered to a non-3GPP radio technology, then this
will return null.

See 3GPP TS 23.122 for further information about the Registered PLMN.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/lang/String` | the registered PLMN-ID or null. <br /> |

### getRejectCause

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

```
public int getRejectCause ()
```

Get the 3GPP/3GPP2 reason code indicating why registration failed.

Returns the reason code for non-transient registration failures. Typically this method will
only return the last reason code received during a network selection procedure. The reason
code is system-specific; however, the reason codes for both 3GPP and 3GPP2 systems are
largely equivalent across generations.

<br />

| Returns ||
|---|---|
| `int` | registration reject cause if available, otherwise 0. Depending on `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#getAccessNetworkTechnology()`, the values are defined in 3GPP TS 24.008 10.5.3.6 for WCDMA/UMTS, 3GPP TS 24.301 9.9.3.9 for LTE/EPS, 3GPP 24.501 Annex A for NR/5GS, or 3GPP2 A.S0001 6.2.2.44 for CDMA. <br /> |

### getTransportType

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

```
public int getTransportType ()
```

<br />

<br />

| Returns ||
|---|---|
| `int` | The transport type. Value is one of the following: - `https://developer.android.com/reference/android/telephony/AccessNetworkConstants#TRANSPORT_TYPE_WWAN` - `https://developer.android.com/reference/android/telephony/AccessNetworkConstants#TRANSPORT_TYPE_WLAN` |

### hashCode

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

```
public int hashCode ()
```

Returns a hash code value for the object. This method is
supported for the benefit of hash tables such as those provided by
`https://developer.android.com/reference/java/util/HashMap`.


The general contract of `hashCode` is:

- Whenever it is invoked on the same object more than once during an execution of a Java application, the `hashCode` method must consistently return the same integer, provided no information used in `equals` comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application.
- If two objects are equal according to the `https://developer.android.com/reference/java/lang/Object#equals(java.lang.Object)` method, then calling the `hashCode` method on each of the two objects must produce the same integer result.
- It is *not* required that if two objects are unequal according to the `https://developer.android.com/reference/java/lang/Object#equals(java.lang.Object)` method, then calling the `hashCode` method on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hash tables.

<br />

<br />

| Returns ||
|---|---|
| `int` | a hash code value for this object. <br /> |

### isNetworkRegistered

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

```
public boolean isNetworkRegistered ()
```

<br />

<br />

| Returns ||
|---|---|
| `boolean` | `true` if registered on roaming or home network, `false` otherwise. (This value is not affected by any carrier config or resource overlay override). <br /> |

### isNetworkRoaming

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

```
public boolean isNetworkRoaming ()
```

<br />

<br />

| Returns ||
|---|---|
| `boolean` | `true` if registered on roaming network. (This value is not affected by any carrier config or resource overlay override). <br /> |

### isNetworkSearching

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

```
public boolean isNetworkSearching ()
```

<br />

<br />

| Returns ||
|---|---|
| `boolean` | `true` if searching for service, `false` otherwise. (This value is not affected by any carrier config or resource overlay override). <br /> |

### isNonTerrestrialNetwork

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

```
public boolean isNonTerrestrialNetwork ()
```

Get whether the network is a non-terrestrial network.

<br />

| Returns ||
|---|---|
| `boolean` | `true` if network is a non-terrestrial network else `false`. <br /> |

### isRegistered

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

```
public boolean isRegistered ()
```


**This method was deprecated
in API level 34.**   

Use `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#isNetworkRegistered()`, which is not affected by any carrier config or
resource overlay, instead.

<br />

<br />

| Returns ||
|---|---|
| `boolean` | `true` if registered on roaming or home network. Note this value can be affected by the carrier config override. <br /> |

### isRoaming

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

```
public boolean isRoaming ()
```


**This method was deprecated
in API level 34.**   

Use `https://developer.android.com/reference/android/telephony/TelephonyDisplayInfo#isRoaming()` instead.

<br />

<br />

| Returns ||
|---|---|
| `boolean` | `true` if registered on roaming network overridden by config. Note this value can be affected by the carrier config override. <br /> |

### isSearching

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

```
public boolean isSearching ()
```


**This method was deprecated
in API level 34.**   

Use `https://developer.android.com/reference/android/telephony/NetworkRegistrationInfo#isNetworkRegistered()`, which is not affected by any carrier config or
resource overlay, instead.

<br />

<br />

| Returns ||
|---|---|
| `boolean` | `true` if searching for service, `false` otherwise. <br /> |

### toString

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

```
public String toString ()
```

Returns a string representation of the object.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/lang/String` | This value cannot be `null`. <br /> |

### writeToParcel

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

```
public void writeToParcel (Parcel dest, 
                int flags)
```

Flatten this object in to a Parcel.

<br />

| Parameters ||
|---|---|
| `dest` | `Parcel`: The Parcel in which the object should be written. This value cannot be `null`. <br /> |
| `flags` | `int`: Additional flags about how the object should be written. May be 0 or `https://developer.android.com/reference/android/os/Parcelable#PARCELABLE_WRITE_RETURN_VALUE`. Value is either `0` or a combination of the following: - `https://developer.android.com/reference/android/os/Parcelable#PARCELABLE_WRITE_RETURN_VALUE` |