はじめに
このプラグインのインストール手順と完全なMarkdownガイドを含むセットアッププロンプトをコピー
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-sim`
Run the required Capacitor sync/update step after installation.
Read this markdown guide for the full setup steps: https://raw.githubusercontent.com/Cap-go/website/refs/heads/main/apps/docs/src/content/docs/docs/plugins/sim/getting-started.mdx
Use that guide for platform-specific steps, native file edits, permissions, config changes, imports, and usage setup.
If that guide references other docs pages, read them too.
インストール
「Install」セクションAIアシストセットアップを使ってプラグインをインストールできます。以下のコマンドで、お使いのAIツールに Capgo スキルを追加してください:
bunx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-plugins次に、以下のプロンプトを使用します:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-sim` plugin in my project.手動セットアップを希望する場合は、以下のコマンドでプラグインをインストールし、下記のプラットフォーム別の手順に従ってください:
bun add @capgo/capacitor-simbunx cap syncインポート
「Import」セクションimport { Sim } from '@capgo/capacitor-sim';クイックスタート
「Quick start」セクションimport { Sim } from '@capgo/capacitor-sim';
const { simCards } = await Sim.getSimCards();simCards.forEach((sim, index) => { console.log(`SIM ${index + 1}:`); console.log(` Carrier: ${sim.carrierName}`); console.log(` Country: ${sim.isoCountryCode}`); console.log(` MCC: ${sim.mobileCountryCode}`); console.log(` MNC: ${sim.mobileNetworkCode}`);});例: checkPermissions
「例: checkPermissions」という見出しのセクションimport { Sim } from '@capgo/capacitor-sim';
const status = await Sim.checkPermissions();if (status.readSimCard === 'granted') { console.log('Permission granted');} else { console.log('Permission not granted');}例: requestPermissions
「例: requestPermissions」という見出しのセクションimport { Sim } from '@capgo/capacitor-sim';
const status = await Sim.requestPermissions();if (status.readSimCard === 'granted') { // Now you can call getSimCards() const simCards = await Sim.getSimCards();}よくある落とし穴
「Common pitfalls」セクション- 権限:呼び出す
checkPermissions()その後requestPermissions()必要に応じて行います。 - ネイティブ同期: 実行
bunx cap syncプラグインのアップグレード後。 - 信頼できる情報源: 信頼する
src/definitions.tsGitHub リポジトリ内に
API の概要
「API 概要」セクションgetSimCards
「getSimCards」セクションデバイスのSIMカード情報を取得します。
デバイスに装着されているすべてのSIMカードの詳細を取得します。 デュアルSIMデバイスでは、両方のSIMカードの情報を返します。 AndroidではREAD_PHONE_STATE権限が必要です。
import { Sim } from '@capgo/capacitor-sim';
const { simCards } = await Sim.getSimCards();simCards.forEach((sim, index) => { console.log(`SIM ${index + 1}:`); console.log(` Carrier: ${sim.carrierName}`); console.log(` Country: ${sim.isoCountryCode}`); console.log(` MCC: ${sim.mobileCountryCode}`); console.log(` MNC: ${sim.mobileNetworkCode}`);});checkPermissions
「checkPermissions」セクションSIMカード情報へのアクセス権限を確認します。
アプリにSIMカードデータの読み取り権限があるか確認します。 AndroidではREAD_PHONE_STATE権限を確認します。 iOSでは、ステータスは常に許可されます。 Webでは、ステータスは常に拒否されます。
import { Sim } from '@capgo/capacitor-sim';
const status = await Sim.checkPermissions();if (status.readSimCard === 'granted') { console.log('Permission granted');} else { console.log('Permission not granted');}requestPermissions
「requestPermissions」セクションSIMカード情報へのアクセス権限をリクエストします。
ユーザーにSIMカードデータの読み取り権限を許可するよう促します。 AndroidではREAD_PHONE_STATE権限をリクエストします。 iOSでは、プロンプトを表示せずに常に許可されます。 Webでは、ステータスは拒否されたままとなります。
import { Sim } from '@capgo/capacitor-sim';
const status = await Sim.requestPermissions();if (status.readSimCard === 'granted') { // Now you can call getSimCards() const simCards = await Sim.getSimCards();}型リファレンス
「型リファレンス」セクションGetSimCardsResult
「GetSimCardsResult」セクションによって返される結果。
export interface GetSimCardsResult { simCards: SimCard[];}PermissionStatus
「PermissionStatus」セクション権限チェックまたはリクエストの結果。
export interface PermissionStatus { readSimCard: PermissionState;}SimCard
「SimCard」セクションSIMカードの説明。
export interface SimCard { /** * Android only: Phone number for this SIM slot, when available. * * @since 1.0.0 */ number?: string;
/** * Android only: Unique subscription identifier. * * @since 1.1.0 */ subscriptionId?: string;
/** * Android only: Physical SIM slot index for this subscription. * * @since 1.1.0 */ simSlotIndex?: number;
/** * iOS only: Indicates whether the carrier supports VoIP. * * @since 1.0.0 */ allowsVOIP?: boolean;
/** * Display name of the cellular service provider. * * On iOS 16.4+ the system may return placeholder values such as `--`. * See https://github.com/jonz94/capacitor-sim/issues/8 for details. * * @since 1.0.0 */ carrierName: string;
/** * ISO 3166-1 alpha-2 country code of the service provider. * * On iOS 16.4+ the system may return an empty string or `--`. * See https://github.com/jonz94/capacitor-sim/issues/8 for details. * * @since 1.0.0 */ isoCountryCode: string;
/** * Mobile Country Code (MCC) of the service provider. * * On iOS 16.4+ the system may return placeholder values such as `65535`. * See https://github.com/jonz94/capacitor-sim/issues/8 for details. * * @since 1.0.0 */ mobileCountryCode: string;
/** * Mobile Network Code (MNC) of the service provider. * * On iOS 16.4+ the system may return placeholder values such as `65535`. * See https://github.com/jonz94/capacitor-sim/issues/8 for details. * * @since 1.0.0 */ mobileNetworkCode: string;}信頼できる情報源
「信頼できる情報源」セクションこのページはプラグインの src/definitions.tsから生成されています。上流で公開 API が変更されたら、sync を再実行してください。
Getting Started から続ける
「Getting Started からの続き」セクション以下を使用している場合: はじめに ダッシュボードと API の操作を計画するには、以下と連携してください @capgo/capacitor-sim の使用方法 @capgo/capacitor-sim でネイティブ機能を使用する場合、 API の概要 API Overview の実装の詳細については、 はじめに Introduction の実装の詳細については、 API キー API Keys の実装の詳細については、 デバイス Devices の実装の詳細については。