1# 电话子系统ChangeLog
2
3
4
5## cl.telephony.1 sms模块接口变更
6
7sendMessage接口作废弃处理,变更为sendShortMessage接口。
8
9**变更影响**
10
11从API version 10开始,sendMessage接口废弃。应用需要自行适配为sendShortMessage。接口功能不变。
12
13**关键的接口/组件变更**
14
15修改前的接口原型:
16
17```js
18function sendMessage(options: SendMessageOptions): void;
19```
20
21修改后的接口原型:
22
23```js
24function sendShortMessage(options: SendMessageOptions, callback: AsyncCallback<void>): void;
25function sendShortMessage(options: SendMessageOptions): Promise<void>;
26```
27
28
29
30**适配指导**
31
32使用变更后的接口,示例代码如下:
33
34```js
35import sms from '@ohos.telephony.sms';
36
37let sendCallback = function (err, data) {
38    console.log(`sendCallback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
39}
40let deliveryCallback = function (err, data) {
41    console.log(`deliveryCallback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
42}
43let slotId = 0;
44let content = '短信内容';
45let destinationHost = '+861xxxxxxxxxx';
46let serviceCenter = '+861xxxxxxxxxx';
47let destinationPort = 1000;
48let options = {slotId, content, destinationHost, serviceCenter, destinationPort, sendCallback, deliveryCallback};
49sms.sendShortMessage(options, (err) => {
50    console.log(`callback: err->${JSON.stringify(err)}`);
51});
52```
53
54```js
55import sms from '@ohos.telephony.sms';
56
57let sendCallback = function (err, data) {
58    console.log(`sendCallback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
59}
60let deliveryCallback = function (err, data) {
61    console.log(`deliveryCallback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
62}
63let slotId = 0;
64let content = '短信内容';
65let destinationHost = '+861xxxxxxxxxx';
66let serviceCenter = '+861xxxxxxxxxx';
67let destinationPort = 1000;
68let options = {slotId, content, destinationHost, serviceCenter, destinationPort, sendCallback, deliveryCallback};
69let promise = sms.sendShortMessage(options);
70promise.then(() => {
71    console.log(`sendShortMessage success`);
72}).catch(err => {
73    console.error(`sendShortMessage failed, promise: err->${JSON.stringify(err)}`);
74});
75
76```
77
78## cl.telephony.2 sim模块接口变更
79
80getSimTelephoneNumber接口权限变更,由ohos.permission.GET_TELEPHONY_STATE变更为ohos.permission.GET_PHONE_NUMBERS81
82**变更影响**
83
84从API version 10开始,getSimTelephoneNumber接口权限变更为ohos.permission.GET_PHONE_NUMBERS85
86应用需要修改为申请权限ohos.permission.GET_PHONE_NUMBERS。接口功能不变。
87
88**关键的接口/组件变更**
89
90修改前的接口原型:
91
92```js
93  @permission ohos.permission.GET_TELEPHONY_STATE
94  function getSimTelephoneNumber(slotId: number, callback: AsyncCallback<string>): void;
95
96  @permission ohos.permission.GET_TELEPHONY_STATE
97  function getSimTelephoneNumber(slotId: number): Promise<string>;
98```
99
100修改后的接口原型:
101
102```js
103  @permission ohos.permission.GET_PHONE_NUMBERS
104  function getSimTelephoneNumber(slotId: number, callback: AsyncCallback<string>): void;
105
106  @permission ohos.permission.GET_PHONE_NUMBERS
107  function getSimTelephoneNumber(slotId: number): Promise<string>;
108```
109
110
111
112**适配指导**
113
114使用变更后的接口,示例代码如下:
115
116module.json中申请权限需要更换或者添加ohos.permission.GET_PHONE_NUMBERS117
118```js
119"requestPermissions" : [
120    {
121        "name": "ohos.permission.GET_PHONE_NUMBERS",
122        "reason": "$string:GET_PHONE_NUMBERS"
123       }
124]
125```