跳过内容

开始使用

终端窗口
bun add @capgo/capacitor-sim
bunx cap sync
import { Sim } from '@capgo/capacitor-sim';

从设备的SIM卡中获取信息。

获取设备中安装的所有SIM卡的详细信息。 双卡设备返回两个SIM卡的信息。 在Android上,需要READ_PHONE_STATE权限。

import { Sim } from '@capgo/capacitor-sim';
const { simCards } = await SimPlugin.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}`);
});

检查SIM卡信息的访问权限。

检查应用是否有读取SIM卡数据的权限。 在Android上,检查READ_PHONE_STATE权限。 在iOS上,状态始终为已授权。 在Web上,状态始终为拒绝。

import { Sim } from '@capgo/capacitor-sim';
const status = await SimPlugin.checkPermissions();
if (status.readSimCard === 'granted') {
console.log('Permission granted');
} else {
console.log('Permission not granted');
}

请求SIM卡信息的访问权限。

提示用户授予读取SIM卡数据的权限。 在Android上,请求READ_PHONE_STATE权限。 在iOS上,状态始终为已授权,无需提示。 在Web上,状态始终为拒绝。

import { Sim } from '@capgo/capacitor-sim';
const status = await SimPlugin.requestPermissions();
if (status.readSimCard === 'granted') {
// Now you can call getSimCards()
const simCards = await SimPlugin.getSimCards();
}

类型参考

类型参考

GetSimCardsResult

获取SIM卡结果

.返回的结果

export interface GetSimCardsResult {
simCards: SimCard[];
}

PermissionStatus

权限状态

权限检查或请求的结果

export interface PermissionStatus {
readSimCard: PermissionState;
}

复制到剪贴板

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 在上游发生变化时,请重新同步。