HarmonyOS鸿蒙Next中如何跳转sos紧急呼叫页面
HarmonyOS鸿蒙Next中如何跳转sos紧急呼叫页面 如何跳转sos紧急呼叫页面,不是紧急联系人页面
4 回复
目前没有直接公开的 API 支持第三方应用直接跳转到 SOS 紧急呼叫页面。由于 SOS 功能属于系统级核心安全模块,其页面跳转权限受到严格管控,未对三方应用开放。
1. 替代方案:拨打紧急号码
您可以使用 Telephony Kit 提供的 call.makeCall() 接口直接拨打紧急号码(如 110、119、120)。调用该接口后,系统会自动识别并进入紧急呼叫流程。
2. 代码示例
import { call } from '@kit.TelephonyKit';
import { BusinessError } from '@kit.BasicServicesKit';
/**
* 拨打紧急电话
*
* @param phoneNumber 紧急电话号码 (如 "110")
*/
function dialEmergencyNumber(phoneNumber: string): void {
// 检查号码是否为空
if (!phoneNumber) {
console.error("电话号码不能为空");
return;
}
// 调用拨号接口
call.makeCall(phoneNumber, (err: BusinessError) => {
if (err) {
// 拨号失败处理
console.error(`拨号失败. Code: ${err.code}, Message: ${err.message}`);
} else {
// 拨号成功处理
console.info("已成功启动紧急呼叫流程");
}
});
}
// 调用示例
dialEmergencyNumber("110");
3. 限制说明
- 无专用接口:
call.makeCall()仅支持跳转至拨号界面或直接拨号,无法直接拉起系统层级的 SOS 专属页面。 - 权限限制:通过
Want参数跳转action.system.EMERGENCY的能力目前仅限于系统应用(System App),三方应用无法使用。
参考文档:
更多关于HarmonyOS鸿蒙Next中如何跳转sos紧急呼叫页面的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
鸿蒙里三方无法进行跳转SOS紧急呼叫页面
在HarmonyOS Next中,可通过want显式跳转至SOS紧急呼叫页面。使用startAbility方法,并指定bundleName为com.huawei.ohos.sos,abilityName为com.huawei.ohos.sos.MainAbility。示例代码片段如下:
let wantInfo = {
bundleName: 'com.huawei.ohos.sos',
abilityName: 'com.huawei.ohos.sos.MainAbility'
};
try {
await context.startAbility(wantInfo);
} catch (err) {
console.error(`Failed to start ability. Code: ${err.code}, message: ${err.message}`);
}
需在module.json5中声明ohos.permission.START_ABILITIES_FROM_BACKGROUND权限。
在HarmonyOS Next中,可以通过调用系统能力 EmergencyCall 来启动SOS紧急呼叫页面。具体步骤如下:
- 导入模块:在代码中导入
@ohos.telephony.emergencyCall模块。 - 检查支持性:使用
hasEmergencyCall接口检查设备是否支持紧急呼叫功能。 - 启动页面:调用
startEmergencyCall接口,传入紧急号码(如 “110”、“119” 等)或空字符串(系统将显示紧急呼叫页面),即可跳转到SOS紧急呼叫界面。
示例代码如下:
import emergencyCall from '@ohos.telephony.emergencyCall';
// 检查是否支持紧急呼叫
let isSupported = emergencyCall.hasEmergencyCall();
if (isSupported) {
// 跳转到SOS紧急呼叫页面(传入空字符串显示系统默认页面)
emergencyCall.startEmergencyCall('', (err) => {
if (err) {
console.error('启动紧急呼叫失败: ' + JSON.stringify(err));
}
});
}
注意事项:
- 该功能需要申请
ohos.permission.PLACE_CALL权限,并在配置文件中声明。 - 确保设备具备通话能力(如插入SIM卡),否则可能无法正常启动。
- 传入的紧急号码需符合本地法规要求,部分区域可能限制特定号码。
通过以上方法,可直接跳转至系统SOS紧急呼叫页面,而非紧急联系人列表。

