赞
踩
本示例展示了电话服务中发送短信的功能。
中级
使用@ohos.telephony.sms接口展示了电话服务中发送短信的功能。
新建联系人 | 首页 | 短信页 |
---|---|---|
使用说明:
- entry/src/main/ets/
- |---pages
- | |---Index.ets // 首页
- | |---SendMessage.ets / 发送短信页
- |---common
- | |---AddDialog.ets // 添加联系人
- | |---TitleBar.ets // title
- |---model
- | |---Contact.ets // 联系人数据结构
- | |---DataSources.ets // 懒加载数据
- | |---DataTimeUtil.ets // 日期工具
- | |---Logger.ts // 日志工具
- | |---Message.ets // 短信数据结构
- | |---PermissionUtils.ets // 权限信息
- | |---SmsModel.ets // 封装短信类
- /*
- * Copyright (c) 2022 Huawei Device Co., Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-
-
- import sms from '@ohos.telephony.sms'
-
- import Logger from '../model/Logger'
-
-
-
- const TAG: string = `[SmsModel]`
-
-
-
- export default class SmsModel {
-
- async createMessage() {
-
- const specification = '3gpp'
-
- const pdu = [0x08, 0x91] // 以数组的形式显示协议数据单元(PDU),类型为number
-
- const shortMessage = await sms.createMessage(pdu, specification)
-
- Logger.info(`${TAG}, createMessageCallback: shortMessage = ${JSON.stringify(shortMessage)}`)
-
- return shortMessage
-
- }
-
-
-
- sendMessage(slotId, content, destinationHost, serviceCenter, destinationPort, handleSend, handleDelivery) {
-
- Logger.info(`${TAG}, sendMessage start ${slotId} ${content} ${destinationHost} ${serviceCenter} ${destinationPort}`)
-
- const options =
-
- {
-
- slotId: slotId,
-
- content: content,
-
- destinationHost: destinationHost,
-
- serviceCenter: serviceCenter,
-
- destinationPort: destinationPort,
-
- sendCallback(err, data) {
-
- Logger.info(`${TAG}, sendCallback: data = ${JSON.stringify(data)} err = ${JSON.stringify(err)}`)
-
- handleSend(err, data)
-
- },
-
- deliveryCallback(err, data) {
-
- Logger.info(`${TAG}, deliveryCallback: data = ${JSON.stringify(data)} err = ${JSON.stringify(err)}`)
-
- handleDelivery(err, data)
-
- }
-
- }
-
-
-
- sms.sendMessage(options)
-
- Logger.info(`${TAG}, sendMessage end`)
-
- }
-
-
-
- async getDefaultSmsSlotId() {
-
- const defaultSmsSlotId = await sms.getDefaultSmsSlotId()
-
- Logger.info(`${TAG}, getDefaultSmsSlotId: defaultSmsSlotId = ${defaultSmsSlotId}`)
-
- return defaultSmsSlotId
-
- }
-
-
-
- async setSmscAddr(slotId, smscAddr) {
-
- const serviceCenter = await sms.setSmscAddr(slotId, smscAddr)
-
- Logger.info(`${TAG}, setSmscAddr: serviceCenter = ${JSON.stringify(serviceCenter)}`)
-
- return serviceCenter
-
- }
-
-
-
- async getSmscAddr(slotId) {
-
- const serviceCenter = await sms.getSmscAddr(slotId)
-
- Logger.info(`${TAG}, getSmscAddr: serviceCenter = ${JSON.stringify(serviceCenter)}`)
-
- return serviceCenter
-
- }
-
- }
不涉及。
如需单独下载本工程,执行如下命令:
- git init
- git config core.sparsecheckout true
- echo code/BasicFeature/Telephony/Message/ > .git/info/sparse-checkout
- git remote add origin https://gitee.com/openharmony/applications_app_samples.git
- git pull origin master
最后呢,很多开发朋友不知道需要学习那些鸿蒙技术?鸿蒙开发岗位需要掌握那些核心技术点?为此鸿蒙的开发学习必须要系统性的进行。
而网上有关鸿蒙的开发资料非常的少,假如你想学好鸿蒙的应用开发与系统底层开发。你可以参考这份资料,少走很多弯路,节省没必要的麻烦。由两位前阿里高级研发工程师联合打造的《鸿蒙NEXT星河版OpenHarmony开发文档》里面内容包含了(ArkTS、ArkUI开发组件、Stage模型、多端部署、分布式应用开发、音频、视频、WebGL、OpenHarmony多媒体技术、Napi组件、OpenHarmony内核、Harmony南向开发、鸿蒙项目实战等等)鸿蒙(Harmony NEXT)技术知识点
如果你是一名Android、Java、前端等等开发人员,想要转入鸿蒙方向发展。可以直接领取这份资料辅助你的学习。下面是鸿蒙开发的学习路线图。
高清完整版请点击→《鸿蒙NEXT星河版开发学习文档》
针对鸿蒙成长路线打造的鸿蒙学习文档。话不多说,我们直接看详细资料鸿蒙(OpenHarmony )学习手册(共计1236页)与鸿蒙(OpenHarmony )开发入门教学视频,帮助大家在技术的道路上更进一步。
《鸿蒙 (OpenHarmony)开发学习视频》
《鸿蒙生态应用开发V2.0白皮书》
《鸿蒙 (OpenHarmony)开发基础到实战手册》
获取这份鸿蒙星河版学习资料,请点击→《鸿蒙NEXT星河版开发学习文档》
OpenHarmony北向、南向开发环境搭建
《鸿蒙开发基础》
ArkTS语言
安装DevEco Studio
运用你的第一个ArkTS应用
ArkUI声明式UI开发
.……
《鸿蒙开发进阶》
Stage模型入门
网络管理
数据管理
电话服务
分布式应用开发
通知与窗口管理
多媒体技术
安全技能
任务管理
WebGL
国际化开发
应用测试
DFX面向未来设计
鸿蒙系统移植和裁剪定制
……
《鸿蒙开发实战》
ArkTS实践
UIAbility应用
网络案例
……
获取这份鸿蒙星河版学习资料,请点击→《鸿蒙NEXT星河版开发学习文档》
鸿蒙—作为国家主力推送的国产操作系统。部分的高校已经取消了安卓课程,从而开设鸿蒙课程;企业纷纷跟进启动了鸿蒙研发。
并且鸿蒙是完全具备无与伦比的机遇和潜力的;预计到年底将有 5,000 款的应用完成原生鸿蒙开发,未来将会支持 50 万款的应用。那么这么多的应用需要开发,也就意味着需要有更多的鸿蒙人才。鸿蒙开发工程师也将会迎来爆发式的增长,学习鸿蒙势在必行!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。