【代码案例】HarmonyOS 鸿蒙Next 发短信案例
【代码案例】HarmonyOS 鸿蒙Next 发短信案例 HarmonyOS Next应用开发案例(持续更新中……)
本案例完整代码,请访问:https://gitee.com/harmonyos-cases/cases/tree/master/CommonAppDevelopment/feature/sendmessage
本案例已上架 HarmonyOS NEXT 开源组件市场,如需获取或移植该案例,可安装此插件。开发者可使用插件获取鸿蒙组件,添加到业务代码中直接编译运行。
介绍
本示例介绍如何在应用中调起系统短信,通过startAbility
接口中的指定号码并调起系统的发送短信页面。
使用说明
- 点击发短信案例。
- 点击按钮"快捷发送短信"。
- 调起系统短信页面,并将短信发送人与内容回填到系统短信中。
实现思路
- 本案例通过
startAbility
接口中的指定号码并调起系统的发送短信页面。
// TODO:知识点:通过调用元能力startAbility接口指定号码并跳转到发送短信页面
gotoMessage(contactInfo: Array<Contact>, msg: string) {
let context = getContext(this) as common.UIAbilityContext;
// 通过指定的abilityName和bundleName拉起短信服务,并通过页面传入的want参数中填入短信内容与短信接收人的号码。
let want: Want = {
bundleName: 'com.ohos.mms',
abilityName: 'com.ohos.mms.MainAbility',
parameters: {
contactObjects: JSON.stringify(contactInfo),
pageFlag: 'conversation',
content: msg // 这里填写短信内容
},
};
context.startAbilityForResult(want).then((data) => {
logger.info(`Success` + JSON.stringify(data));
}).catch((err: BusinessError) => {
logger.error(`Failed to startAbility. Code: ${err.code}, message: ${err.message}`);
});
}
- 点击页面"快捷发送短信"按钮时,通过指定的
abilityName
和bundleName
拉起短信服务,并通过页面传入的want
参数中填入发送的内容与短信接收人的号码,从而实现在应用内实现跳转到短信编辑的功能,并且携带编辑内容和收件人号码。
Button($r('app.string.send_message_quickly_sent_message'))
.onClick(() => {
let contactInfo: Array<Contact> = [];
let number = this.number;
let msg = this.msg;
// 这里填入发送的联系人名字和号码
contactInfo.push(new Contact("xx安全团队", number))
// 点击时,将短信接收人的号码与短信内容传参给系统短信
this.gotoMessage(contactInfo, msg);
})
高性能知识点
不涉及
工程结构 & 模块类型
sendmessage // har类型
|---
| |---
| | MessageView.ets // 视图层-主页
模块依赖
- har包-common库中UX标准
- [@ohos/routermodule(动态路由)](https://gitee.com/harmonyos-cases/cases/blob/master/CommonAppDevelopment/feature/routermodule)
参考资料
更多关于【代码案例】HarmonyOS 鸿蒙Next 发短信案例的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
请问楼主下载通用案例代码,运行在模拟器时报错如下,发现图片编辑实现马赛克效果的代码例子,找不到动态路由。麻烦能修复一下吗?
更多关于【代码案例】HarmonyOS 鸿蒙Next 发短信案例的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在HarmonyOS(鸿蒙)系统中,实现发短信的功能通常涉及调用系统的短信服务API。以下是一个简化的示例代码,用于展示如何在鸿蒙系统中发送短信。请注意,实际开发中可能需要根据具体需求和环境进行调整。
// 引入必要的模块
import sms from '@ohos.multimedia.sms';
// 发送短信的函数
function sendSms(phoneNumber, message) {
sms.sendTextMessage(phoneNumber, null, message, null, (err, messageId) => {
if (err) {
console.error('发送短信失败:', err);
} else {
console.log('短信发送成功, ID:', messageId);
}
});
}
// 示例调用
const phoneNumber = '1234567890'; // 替换为目标手机号
const message = '这是一条测试短信';
sendSms(phoneNumber, message);
在这个例子中,sms.sendTextMessage
方法用于发送文本短信。它接受几个参数:目标电话号码、服务中心地址(通常传null
使用默认服务中心)、短信内容以及一个回调函数,用于处理发送结果。回调函数中的err
参数表示是否发生错误,messageId
表示短信的唯一标识符(如果发送成功)。
请注意,实际应用中需要处理用户隐私和数据安全,确保在发送短信前已获得用户的明确授权。此外,不同设备或版本的鸿蒙系统可能对短信API的实现有所差异,开发者需根据实际情况进行调整。
如果问题依旧没法解决请联系官网客服,官网地址是 https://www.itying.com/category-93-b0.html,