---
description: Capacitor plugin to read SIM card and carrier information such as carrier name, country code, MCC, and MNC on Android.
title: Capacitor SIM Plugin for Android - Capawesome
image: https://capawesome.io/docs/assets/images/social/sdks/capacitor/sim.png
---

<!doctype html> 

[Skip to content ](#capacitor-sim-plugin) 

[🔐 Introducing the **Capacitor Vault** plugin — store secrets behind biometrics or a device passcode. ](/blog/announcing-the-capacitor-vault-plugin/) 

* [ SDKs ](/docs/sdks/)
* [ Formbricks ](/docs/sdks/capacitor/formbricks/)
* [ Geocoder ](/docs/sdks/capacitor/geocoder/)
* [ Google Sign-In ](/docs/sdks/capacitor/google-sign-in/)
* [ Grafana Faro ](/docs/sdks/capacitor/grafana-faro/)
* [ Gyroscope ](/docs/sdks/capacitor/gyroscope/)
* [ In-App Browser ](/docs/sdks/capacitor/in-app-browser/)
* [ Install Referrer ](/docs/sdks/capacitor/install-referrer/)
* [ Keep Awake ](/docs/sdks/capacitor/keep-awake/)
* [ libSQL ](/docs/sdks/capacitor/libsql/)
* [ Live Update ](/docs/sdks/capacitor/live-update/)
* [ Localization ](/docs/sdks/capacitor/localization/)
* [ Mail Composer ](/docs/sdks/capacitor/mail-composer/)
* [ Managed Configurations ](/docs/sdks/capacitor/managed-configurations/)
* [ Maps Launcher ](/docs/sdks/capacitor/maps-launcher/)
* [ Media Session ](/docs/sdks/capacitor/media-session/)
* [ ML Kit ](/docs/sdks/capacitor/mlkit/)
* [ Navigation Bar ](/docs/sdks/capacitor/navigation-bar/)
* [ NFC ](/docs/sdks/capacitor/nfc/)
* [ Node.js ](/docs/sdks/capacitor/nodejs/)
* [ OAuth ](/docs/sdks/capacitor/oauth/)
* [ Passkeys ](/docs/sdks/capacitor/passkeys/)
* [ Password Autofill ](/docs/sdks/capacitor/password-autofill/)
* [ Pedometer ](/docs/sdks/capacitor/pedometer/)
* [ Photo Editor ](/docs/sdks/capacitor/photo-editor/)
* [ PixLive ](/docs/sdks/capacitor/pixlive/)
* [ PostHog ](/docs/sdks/capacitor/posthog/)
* [ Printer ](/docs/sdks/capacitor/printer/)
* [ Privacy Screen ](/docs/sdks/capacitor/privacy-screen/)
* [ Purchases ](/docs/sdks/capacitor/purchases/)
* [ RealtimeKit ](/docs/sdks/capacitor/realtimekit/)
* [ Root Detection ](/docs/sdks/capacitor/root-detection/)
* [ Screen Brightness ](/docs/sdks/capacitor/screen-brightness/)
* [ Screen Orientation ](/docs/sdks/capacitor/screen-orientation/)
* [ Screenshot ](/docs/sdks/capacitor/screenshot/)
* [ Secure Preferences ](/docs/sdks/capacitor/secure-preferences/)
* [ Shake ](/docs/sdks/capacitor/shake/)
* [ Silent Mode ](/docs/sdks/capacitor/silent-mode/)
* SIM [ SIM ](/docs/sdks/capacitor/sim/)
* [ Configuration ](#configuration)
* [ Usage ](#usage)
* [ API ](#api)
* [ Type Aliases ](#type-aliases)
* [ Changelog ](#changelog)
* [ License ](#license)
* [ SMS Composer ](/docs/sdks/capacitor/sms-composer/)
* [ Speech Recognition ](/docs/sdks/capacitor/speech-recognition/)
* [ Speech Synthesis ](/docs/sdks/capacitor/speech-synthesis/)
* [ Share Target ](/docs/sdks/capacitor/share-target/)
* [ Square Mobile Payments ](/docs/sdks/capacitor/square-mobile-payments/)
* [ SQLite ](/docs/sdks/capacitor/sqlite/)
* [ Superwall ](/docs/sdks/capacitor/superwall/)
* [ Thermal State ](/docs/sdks/capacitor/thermal-state/)
* [ Torch ](/docs/sdks/capacitor/torch/)
* [ Vault ](/docs/sdks/capacitor/vault/)
* [ Volume ](/docs/sdks/capacitor/volume/)
* [ Wallet ](/docs/sdks/capacitor/wallet/)
* [ Wifi ](/docs/sdks/capacitor/wifi/)
* [ Zip ](/docs/sdks/capacitor/zip/)
* [ Cordova ](/docs/sdks/cordova/)
* [ Cloud ](/docs/cloud/)
* [ Integrations ](/docs/cloud/live-updates/integrations/)
* Concepts
* Reference
* [ Troubleshooting ](/docs/cloud/live-updates/troubleshooting/)
* [ FAQ ](/docs/cloud/live-updates/faq/)
* [ Native Builds ](/docs/cloud/native-builds/)
* [ Set Up Environments ](/docs/cloud/native-builds/environments/)
* [ Overwrite Native Configurations ](/docs/cloud/native-builds/native-configurations/)
* [ Auto-Increment Build Numbers ](/docs/cloud/native-builds/auto-incrementing-build-numbers/)
* [ Configure the Web Build Script ](/docs/cloud/native-builds/web-build-script/)
* [ Build from a Monorepo ](/docs/cloud/native-builds/monorepo/)
* [ Use pnpm, Yarn, or bun ](/docs/cloud/native-builds/package-managers/)
* [ Install Private npm Packages ](/docs/cloud/native-builds/npm-private-registry/)
* [ Override the Java Version ](/docs/cloud/native-builds/override-java-version/)
* [ Custom iOS Provisioning Profiles ](/docs/cloud/native-builds/custom-ios-provisioning-profiles/)
* [ Build without Git ](/docs/cloud/native-builds/build-without-git/)
* [ Access Git Behind a Firewall ](/docs/cloud/native-builds/firewall-access/)
* [ Integrations ](/docs/cloud/native-builds/integrations/)
* Reference
* [ Troubleshooting ](/docs/cloud/native-builds/troubleshooting/)
* [ FAQ ](/docs/cloud/native-builds/faq/)
* [ App Store Publishing ](/docs/cloud/app-store-publishing/)
* [ Submit a Build ](/docs/cloud/app-store-publishing/submit-a-build/)
* [ Submit Automatically After a Build ](/docs/cloud/app-store-publishing/submit-automatically/)
* [ Troubleshooting ](/docs/cloud/app-store-publishing/troubleshooting/)
* [ FAQ ](/docs/cloud/app-store-publishing/faq/)
* [ Automations ](/docs/cloud/automations/)
* [ Reference ](/docs/cloud/automations/reference/)
* [ Troubleshooting ](/docs/cloud/automations/troubleshooting/)
* [ FAQ ](/docs/cloud/automations/faq/)
* [ Assist ](/docs/cloud/assist/)
* [ CLI ](/docs/cloud/cli/)
* APIs and SDKs
* [ Webhooks ](/docs/cloud/webhooks/)
* [ Integrations ](/docs/cloud/integrations/)
* Account
* [ Organization ](/docs/cloud/organizations/)
* [ Two-Factor Enforcement ](/docs/cloud/organizations/two-factor-authentication/)
* [ Audit Logs ](/docs/cloud/organizations/audit-logs/)
* [ Billing ](/docs/cloud/organizations/billing/)
* [ License Keys ](/docs/cloud/license-keys/)
* [ AI ](/docs/ai/)
* [ Insiders ](/docs/insiders/)
* [ Billing & Plans ](/docs/insiders/billing-and-plans/)
* [ FAQ ](/docs/insiders/faq/)
* [ License ](https://capawesome.io/legal/eula/)
* [ Support ](/docs/support/)
* [ Contributing ](/docs/contributing/)
* Contributing code
* [ Code of Conduct ](/docs/contributing/code-of-conduct/)
* [ Questions ](https://docs.github.com/en/discussions/collaborating-with-your-community-using-discussions/participating-in-a-discussion#creating-a-discussion)
* [ Blog ](/blog/)
* Categories

* [ Configuration ](#configuration)
* [ Usage ](#usage)
* [ API ](#api)
* [ Type Aliases ](#type-aliases)
* [ Changelog ](#changelog)
* [ License ](#license)

# Capacitor SIM Plugin[¶](#capacitor-sim-plugin "Permanent link")

Capacitor plugin for reading SIM card and carrier information.

[ ![Deliver Live Updates to your Capacitor app with Capawesome Cloud](../../../assets/external/cloud.capawesome.io/assets/banners/cloud-build-and-deploy-capacitor-apps.69628c3f.png) ](https://cloud.capawesome.io/) 

## Features[¶](#features "Permanent link")

* 📇 **SIM cards**: Read information about the SIM cards installed on the device.
* 🔀 **Multi-SIM**: Supports devices with multiple SIM slots.
* 🌐 **Carrier details**: Read carrier name, country code, MCC and MNC.
* 🔒 **Permissions**: Built-in handling of the required runtime permission.
* 🔁 **Up-to-date**: Always supports the latest Capacitor version.

Missing a feature? Just [open an issue](https://github.com/capawesome-team/capacitor-plugins/issues) and we'll take a look!

## Newsletter[¶](#newsletter "Permanent link")

Stay up to date with the latest news and updates about the Capawesome, Capacitor, and Ionic ecosystem by subscribing to our [Capawesome Newsletter](https://cloud.capawesome.io/newsletter/).

## Compatibility[¶](#compatibility "Permanent link")

| Plugin Version | Capacitor Version | Status         |
| -------------- | ----------------- | -------------- |
| 0.x.x          | \>=8.x.x          | Active support |

## Installation[¶](#installation "Permanent link")

You can use our **AI-Assisted Setup** to install the plugin. Add the [Capawesome Skills](https://github.com/capawesome-team/skills) to your AI tool using the following command:

`[](#%5F%5Fcodelineno-0-1)npx skills add capawesome-team/skills --skill capacitor-plugins
`

Then use the following prompt:

`` [](#%5F%5Fcodelineno-1-1) Use the `capacitor-plugins` skill from `capawesome-team/skills` to install the `@capawesome/capacitor-sim` plugin in my project.
 ``

If you prefer **Manual Setup**, install the plugin by running the following commands and follow the platform-specific instructions below:

`[](#%5F%5Fcodelineno-2-1)npm install @capawesome/capacitor-sim
[](#%5F%5Fcodelineno-2-2)npx cap sync
`

This plugin is only available on **Android**. On iOS and Web, all methods reject as unimplemented (see [iOS](#ios) below).

### Android[¶](#android "Permanent link")

The `READ_PHONE_STATE` permission is declared in the plugin's `AndroidManifest.xml` and is merged into your app automatically. You must request it at runtime via the `requestPermissions(...)` method before calling `getSimCards(...)`.

### iOS[¶](#ios "Permanent link")

Reading SIM card and carrier information is **not supported** on iOS. Apple deprecated the `CTCarrier` APIs of the Core Telephony framework with iOS 16, and they return placeholder values (e.g. `"--"` and `65535`) on iOS 16.4 and later. Because there is no reliable system API left, all methods reject as unimplemented on iOS.

## Configuration[¶](#configuration "Permanent link")

No configuration required for this plugin.

## Usage[¶](#usage "Permanent link")

`[](#%5F%5Fcodelineno-3-1)import { Sim } from '@capawesome/capacitor-sim';
[](#%5F%5Fcodelineno-3-2)
[](#%5F%5Fcodelineno-3-3)const checkPermissions = async () => {
[](#%5F%5Fcodelineno-3-4)  const { readSimCards } = await Sim.checkPermissions();
[](#%5F%5Fcodelineno-3-5)  return readSimCards;
[](#%5F%5Fcodelineno-3-6)};
[](#%5F%5Fcodelineno-3-7)
[](#%5F%5Fcodelineno-3-8)const requestPermissions = async () => {
[](#%5F%5Fcodelineno-3-9)  const { readSimCards } = await Sim.requestPermissions();
[](#%5F%5Fcodelineno-3-10)  return readSimCards;
[](#%5F%5Fcodelineno-3-11)};
[](#%5F%5Fcodelineno-3-12)
[](#%5F%5Fcodelineno-3-13)const getSimCards = async () => {
[](#%5F%5Fcodelineno-3-14)  const { simCards } = await Sim.getSimCards();
[](#%5F%5Fcodelineno-3-15)  return simCards;
[](#%5F%5Fcodelineno-3-16)};
`

## API[¶](#api "Permanent link")

* [checkPermissions()](#checkpermissions)
* [getSimCards()](#getsimcards)
* [requestPermissions()](#requestpermissions)
* [Interfaces](#interfaces)
* [Type Aliases](#type-aliases)

### checkPermissions()[¶](#checkpermissions "Permanent link")

`[](#%5F%5Fcodelineno-4-1)checkPermissions() => Promise<PermissionStatus>
`

Check the permission to read the SIM cards.

Only available on Android.

**Returns:** `Promise<[PermissionStatus](#permissionstatus)>`

**Since:** 0.1.0

---

### getSimCards()[¶](#getsimcards "Permanent link")

`[](#%5F%5Fcodelineno-5-1)getSimCards() => Promise<GetSimCardsResult>
`

Get information about the SIM cards installed on the device.

On devices with multiple SIM slots, all active SIM cards are returned.

Only available on Android.

**Returns:** `Promise<[GetSimCardsResult](#getsimcardsresult)>`

**Since:** 0.1.0

---

### requestPermissions()[¶](#requestpermissions "Permanent link")

`[](#%5F%5Fcodelineno-6-1)requestPermissions() => Promise<PermissionStatus>
`

Request the permission to read the SIM cards.

Only available on Android.

**Returns:** `Promise<[PermissionStatus](#permissionstatus)>`

**Since:** 0.1.0

---

### Interfaces[¶](#interfaces "Permanent link")

#### PermissionStatus[¶](#permissionstatus "Permanent link")

| Prop             | Type                                | Description                                    | Since |
| ---------------- | ----------------------------------- | ---------------------------------------------- | ----- |
| **readSimCards** | [PermissionState](#permissionstate) | The permission state of reading the SIM cards. | 0.1.0 |

#### GetSimCardsResult[¶](#getsimcardsresult "Permanent link")

| Prop         | Type        | Description                            | Since |
| ------------ | ----------- | -------------------------------------- | ----- |
| **simCards** | SimCard\[\] | The SIM cards installed on the device. | 0.1.0 |

#### SimCard[¶](#simcard "Permanent link")

| Prop                  | Type            | Description                                                                                                                                                                       | Since |
| --------------------- | --------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----- |
| **carrierName**       | string \| null  | The name of the carrier. Returns null if the carrier name is not available.                                                                                                       | 0.1.0 |
| **displayName**       | string \| null  | The user-editable display name of the SIM card. Returns null if the display name is not available.                                                                                | 0.1.0 |
| **isEmbedded**        | boolean \| null | Whether the SIM card is an embedded SIM (eSIM). Returns null if the information is not available.                                                                                 | 0.1.0 |
| **isoCountryCode**    | string \| null  | The two-letter ISO 3166-1 country code of the carrier. Returns null if the country code is not available.                                                                         | 0.1.0 |
| **mobileCountryCode** | string \| null  | The Mobile Country Code (MCC) of the carrier. Returns null if the mobile country code is not available.                                                                           | 0.1.0 |
| **mobileNetworkCode** | string \| null  | The Mobile Network Code (MNC) of the carrier. Returns null if the mobile network code is not available.                                                                           | 0.1.0 |
| **phoneNumber**       | string \| null  | The phone number associated with the SIM card. This value is often empty because carriers do not reliably store the phone number on the SIM card. In that case, null is returned. | 0.1.0 |
| **slotIndex**         | number          | The index of the SIM slot on the device.                                                                                                                                          | 0.1.0 |

### Type Aliases[¶](#type-aliases "Permanent link")

#### PermissionState[¶](#permissionstate "Permanent link")

`'prompt' | 'prompt-with-rationale' | 'granted' | 'denied'`

## Changelog[¶](#changelog "Permanent link")

See [CHANGELOG.md](https://github.com/capawesome-team/capacitor-plugins/blob/main/packages/sim/CHANGELOG.md).

## License[¶](#license "Permanent link")

See [LICENSE](https://github.com/capawesome-team/capacitor-plugins/blob/main/packages/sim/LICENSE).

July 7, 2026 

Back to top

```json
{"@context": "https://schema.org", "@graph": [{"@type": "TechArticle", "@id": "https://capawesome.io/docs/sdks/capacitor/sim/#article", "headline": "Capacitor SIM Plugin for Android", "name": "Capacitor SIM Plugin for Android", "description": "Capacitor plugin to read SIM card and carrier information such as carrier name, country code, MCC, and MNC on Android.", "inLanguage": "en", "url": "https://capawesome.io/docs/sdks/capacitor/sim/", "mainEntityOfPage": "https://capawesome.io/docs/sdks/capacitor/sim/", "author": {"@type": "Organization", "name": "Capawesome", "url": "https://capawesome.io", "logo": {"@type": "ImageObject", "url": "https://capawesome.io/assets/images/logo.svg"}}, "publisher": {"@type": "Organization", "name": "Capawesome", "url": "https://capawesome.io", "logo": {"@type": "ImageObject", "url": "https://capawesome.io/assets/images/logo.svg"}}, "about": {"@id": "https://capawesome.io/docs/sdks/capacitor/sim/#software"}}, {"@type": "SoftwareSourceCode", "@id": "https://capawesome.io/docs/sdks/capacitor/sim/#software", "name": "Capacitor SIM Plugin for Android", "description": "Capacitor plugin to read SIM card and carrier information such as carrier name, country code, MCC, and MNC on Android.", "url": "https://capawesome.io/docs/sdks/capacitor/sim/", "programmingLanguage": "TypeScript", "runtimePlatform": "Capacitor", "codeRepository": "https://github.com/capawesome-team", "author": {"@type": "Organization", "name": "Capawesome", "url": "https://capawesome.io", "logo": {"@type": "ImageObject", "url": "https://capawesome.io/assets/images/logo.svg"}}, "publisher": {"@type": "Organization", "name": "Capawesome", "url": "https://capawesome.io", "logo": {"@type": "ImageObject", "url": "https://capawesome.io/assets/images/logo.svg"}}}]}
```
