1e41f4b71Sopenharmony_ci# Ability Subsystem Changelog 2e41f4b71Sopenharmony_ci 3e41f4b71Sopenharmony_ci## cl.ability.1 Auto Startup Related APIs in ApplicationContext Are Deleted 4e41f4b71Sopenharmony_ci 5e41f4b71Sopenharmony_ci**Access Level** 6e41f4b71Sopenharmony_ci 7e41f4b71Sopenharmony_ciPublic API 8e41f4b71Sopenharmony_ci 9e41f4b71Sopenharmony_ci**Reason for Change** 10e41f4b71Sopenharmony_ci 11e41f4b71Sopenharmony_ciAccording to security and privacy requirements, APIs related to auto startup in **ApplicationContext** are deleted. Applications cannot proactively set the auto startup status. 12e41f4b71Sopenharmony_ci 13e41f4b71Sopenharmony_ci**Change Impact** 14e41f4b71Sopenharmony_ci 15e41f4b71Sopenharmony_ciThis change is a non-compatible change. If your code uses the involved APIs, delete them. 16e41f4b71Sopenharmony_ci 17e41f4b71Sopenharmony_ci**API Level** 18e41f4b71Sopenharmony_ci 19e41f4b71Sopenharmony_ci11 20e41f4b71Sopenharmony_ci 21e41f4b71Sopenharmony_ci**Change Since** 22e41f4b71Sopenharmony_ci 23e41f4b71Sopenharmony_ciOpenHarmony SDK 4.1.6.5 24e41f4b71Sopenharmony_ci 25e41f4b71Sopenharmony_ci**Key API/Component Changes** 26e41f4b71Sopenharmony_ci 27e41f4b71Sopenharmony_ci```js 28e41f4b71Sopenharmony_ci on(type: 'abilityAutoStartup', callback: AutoStartupCallback): void; 29e41f4b71Sopenharmony_ci off(type: 'abilityAutoStartup', callback?: AutoStartupCallback): void; 30e41f4b71Sopenharmony_ci setAutoStartup(info: AutoStartupInfo, callback: AsyncCallback<void>): void; 31e41f4b71Sopenharmony_ci setAutoStartup(info: AutoStartupInfo): Promise<void>; 32e41f4b71Sopenharmony_ci cancelAutoStartup(info: AutoStartupInfo, callback: AsyncCallback<void>): void; 33e41f4b71Sopenharmony_ci cancelAutoStartup(info: AutoStartupInfo): Promise<void>; 34e41f4b71Sopenharmony_ci isAutoStartup(info: AutoStartupInfo, callback: AsyncCallback<boolean>): void; 35e41f4b71Sopenharmony_ci isAutoStartup(info: AutoStartupInfo): Promise<boolean>; 36e41f4b71Sopenharmony_ci``` 37e41f4b71Sopenharmony_ci 38e41f4b71Sopenharmony_ci- Before change: 39e41f4b71Sopenharmony_ci 40e41f4b71Sopenharmony_ci ```js 41e41f4b71Sopenharmony_ci /** 42e41f4b71Sopenharmony_ci * Register the listener that watches for current application auto startup state. 43e41f4b71Sopenharmony_ci * 44e41f4b71Sopenharmony_ci * @param { 'abilityAutoStartup' } type - Indicates the type of event. 45e41f4b71Sopenharmony_ci * @param { AutoStartupCallback } callback - Auto startup callback. 46e41f4b71Sopenharmony_ci * @throws { BusinessError } 401 - The parameter check failed. 47e41f4b71Sopenharmony_ci * @syscap SystemCapability.Ability.AbilityRuntime.Core 48e41f4b71Sopenharmony_ci * @StageModelOnly 49e41f4b71Sopenharmony_ci * @since 11 50e41f4b71Sopenharmony_ci */ 51e41f4b71Sopenharmony_ci on(type: 'abilityAutoStartup', callback: AutoStartupCallback): void; 52e41f4b71Sopenharmony_ci 53e41f4b71Sopenharmony_ci /** 54e41f4b71Sopenharmony_ci * Unregister listener that watches for current application auto startup state. 55e41f4b71Sopenharmony_ci * 56e41f4b71Sopenharmony_ci * @param { 'abilityAutoStartup' } type - Indicates the type of event. 57e41f4b71Sopenharmony_ci * @param { AutoStartupCallback } [callback] - Auto startup callback. 58e41f4b71Sopenharmony_ci * @throws { BusinessError } 401 - The parameter check failed. 59e41f4b71Sopenharmony_ci * @syscap SystemCapability.Ability.AbilityRuntime.Core 60e41f4b71Sopenharmony_ci * @StageModelOnly 61e41f4b71Sopenharmony_ci * @since 11 62e41f4b71Sopenharmony_ci */ 63e41f4b71Sopenharmony_ci off(type: 'abilityAutoStartup', callback?: AutoStartupCallback): void; 64e41f4b71Sopenharmony_ci 65e41f4b71Sopenharmony_ci /** 66e41f4b71Sopenharmony_ci * Set current application auto startup state. 67e41f4b71Sopenharmony_ci * 68e41f4b71Sopenharmony_ci * @param { AutoStartupInfo } info - The application info. 69e41f4b71Sopenharmony_ci * @param { AsyncCallback<void> } callback - The callback of setAutoStartup. 70e41f4b71Sopenharmony_ci * @throws { BusinessError } 401 - The parameter check failed. 71e41f4b71Sopenharmony_ci * @syscap SystemCapability.Ability.AbilityRuntime.Core 72e41f4b71Sopenharmony_ci * @StageModelOnly 73e41f4b71Sopenharmony_ci * @since 11 74e41f4b71Sopenharmony_ci */ 75e41f4b71Sopenharmony_ci setAutoStartup(info: AutoStartupInfo, callback: AsyncCallback<void>): void; 76e41f4b71Sopenharmony_ci 77e41f4b71Sopenharmony_ci /** 78e41f4b71Sopenharmony_ci * Set current application auto startup state. 79e41f4b71Sopenharmony_ci * 80e41f4b71Sopenharmony_ci * @param { AutoStartupInfo } info - The application info. 81e41f4b71Sopenharmony_ci * @returns { Promise<void> } The promise returned by the function. 82e41f4b71Sopenharmony_ci * @throws { BusinessError } 401 - The parameter check failed. 83e41f4b71Sopenharmony_ci * @syscap SystemCapability.Ability.AbilityRuntime.Core 84e41f4b71Sopenharmony_ci * @StageModelOnly 85e41f4b71Sopenharmony_ci * @since 11 86e41f4b71Sopenharmony_ci */ 87e41f4b71Sopenharmony_ci setAutoStartup(info: AutoStartupInfo): Promise<void>; 88e41f4b71Sopenharmony_ci 89e41f4b71Sopenharmony_ci /** 90e41f4b71Sopenharmony_ci * Cancel current application auto startup state. 91e41f4b71Sopenharmony_ci * 92e41f4b71Sopenharmony_ci * @param { AutoStartupInfo } info - The application info. 93e41f4b71Sopenharmony_ci * @param { AsyncCallback<void> } callback - The callback of cancelAutoStartup. 94e41f4b71Sopenharmony_ci * @throws { BusinessError } 401 - The parameter check failed. 95e41f4b71Sopenharmony_ci * @syscap SystemCapability.Ability.AbilityRuntime.Core 96e41f4b71Sopenharmony_ci * @StageModelOnly 97e41f4b71Sopenharmony_ci * @since 11 98e41f4b71Sopenharmony_ci */ 99e41f4b71Sopenharmony_ci cancelAutoStartup(info: AutoStartupInfo, callback: AsyncCallback<void>): void; 100e41f4b71Sopenharmony_ci 101e41f4b71Sopenharmony_ci /** 102e41f4b71Sopenharmony_ci * Cancel current application auto startup state. 103e41f4b71Sopenharmony_ci * 104e41f4b71Sopenharmony_ci * @param { AutoStartupInfo } info - The application info. 105e41f4b71Sopenharmony_ci * @returns { Promise<void> } The promise returned by the function. 106e41f4b71Sopenharmony_ci * @throws { BusinessError } 401 - The parameter check failed. 107e41f4b71Sopenharmony_ci * @syscap SystemCapability.Ability.AbilityRuntime.Core 108e41f4b71Sopenharmony_ci * @StageModelOnly 109e41f4b71Sopenharmony_ci * @since 11 110e41f4b71Sopenharmony_ci */ 111e41f4b71Sopenharmony_ci cancelAutoStartup(info: AutoStartupInfo): Promise<void>; 112e41f4b71Sopenharmony_ci 113e41f4b71Sopenharmony_ci /** 114e41f4b71Sopenharmony_ci * Check if the current application is auto startup state. 115e41f4b71Sopenharmony_ci * 116e41f4b71Sopenharmony_ci * @param { AutoStartupInfo } info - The application info. 117e41f4b71Sopenharmony_ci * @param { AsyncCallback<boolean> } callback - The callback of isAutoStartup. 118e41f4b71Sopenharmony_ci * @throws { BusinessError } 401 - The parameter check failed. 119e41f4b71Sopenharmony_ci * @syscap SystemCapability.Ability.AbilityRuntime.Core 120e41f4b71Sopenharmony_ci * @StageModelOnly 121e41f4b71Sopenharmony_ci * @since 11 122e41f4b71Sopenharmony_ci */ 123e41f4b71Sopenharmony_ci isAutoStartup(info: AutoStartupInfo, callback: AsyncCallback<boolean>): void; 124e41f4b71Sopenharmony_ci 125e41f4b71Sopenharmony_ci /** 126e41f4b71Sopenharmony_ci * Check if the current application is auto startup state. 127e41f4b71Sopenharmony_ci * 128e41f4b71Sopenharmony_ci * @param { AutoStartupInfo } info - The application info. 129e41f4b71Sopenharmony_ci * @returns { Promise<boolean> } The promise returned by the function. 130e41f4b71Sopenharmony_ci * @throws { BusinessError } 401 - The parameter check failed. 131e41f4b71Sopenharmony_ci * @syscap SystemCapability.Ability.AbilityRuntime.Core 132e41f4b71Sopenharmony_ci * @StageModelOnly 133e41f4b71Sopenharmony_ci * @since 11 134e41f4b71Sopenharmony_ci */ 135e41f4b71Sopenharmony_ci isAutoStartup(info: AutoStartupInfo): Promise<boolean>; 136e41f4b71Sopenharmony_ci ``` 137e41f4b71Sopenharmony_ci 138e41f4b71Sopenharmony_ci**Adaptation Guide** 139e41f4b71Sopenharmony_ci 140e41f4b71Sopenharmony_ciDelete the involved APIs from your code. 141e41f4b71Sopenharmony_ci 142e41f4b71Sopenharmony_ci 143e41f4b71Sopenharmony_ci## cl.ability.2 Permission for Using AutoStartupInfo Is Changed 144e41f4b71Sopenharmony_ci 145e41f4b71Sopenharmony_ci**Access Level** 146e41f4b71Sopenharmony_ci 147e41f4b71Sopenharmony_ciPublic API 148e41f4b71Sopenharmony_ci 149e41f4b71Sopenharmony_ci**Reason for Change** 150e41f4b71Sopenharmony_ci 151e41f4b71Sopenharmony_ciAfter the APIs related to auto startup in **ApplicationContext** are deleted, **AutoStartupInfo** is not available for third-party applications and is changed to a system API. 152e41f4b71Sopenharmony_ci 153e41f4b71Sopenharmony_ci**Change Impact** 154e41f4b71Sopenharmony_ci 155e41f4b71Sopenharmony_ciThis change is a non-compatible change. If your code uses the involved APIs, delete them. 156e41f4b71Sopenharmony_ci 157e41f4b71Sopenharmony_ci**API Level** 158e41f4b71Sopenharmony_ci 159e41f4b71Sopenharmony_ci11 160e41f4b71Sopenharmony_ci 161e41f4b71Sopenharmony_ci**Change Since** 162e41f4b71Sopenharmony_ci 163e41f4b71Sopenharmony_ciOpenHarmony SDK 4.1.6.5 164e41f4b71Sopenharmony_ci 165e41f4b71Sopenharmony_ci**Key API/Component Changes** 166e41f4b71Sopenharmony_ci 167e41f4b71Sopenharmony_ci```js 168e41f4b71Sopenharmony_ci AutoStartupInfo { 169e41f4b71Sopenharmony_ci bundleName: string; 170e41f4b71Sopenharmony_ci moduleName?: string; 171e41f4b71Sopenharmony_ci abilityName: string; 172e41f4b71Sopenharmony_ci abilityTypeName?: string; 173e41f4b71Sopenharmony_ci } 174e41f4b71Sopenharmony_ci``` 175e41f4b71Sopenharmony_ci 176e41f4b71Sopenharmony_ci- Before change: 177e41f4b71Sopenharmony_ci 178e41f4b71Sopenharmony_ci ```js 179e41f4b71Sopenharmony_ci /** 180e41f4b71Sopenharmony_ci * Bundle name 181e41f4b71Sopenharmony_ci * 182e41f4b71Sopenharmony_ci * @type { string } 183e41f4b71Sopenharmony_ci * @syscap SystemCapability.Ability.AbilityRuntime.Core 184e41f4b71Sopenharmony_ci * @StageModelOnly 185e41f4b71Sopenharmony_ci * @since 11 186e41f4b71Sopenharmony_ci */ 187e41f4b71Sopenharmony_ci bundleName: string; 188e41f4b71Sopenharmony_ci 189e41f4b71Sopenharmony_ci /** 190e41f4b71Sopenharmony_ci * Module name 191e41f4b71Sopenharmony_ci * 192e41f4b71Sopenharmony_ci * @type { ?string } 193e41f4b71Sopenharmony_ci * @syscap SystemCapability.Ability.AbilityRuntime.Core 194e41f4b71Sopenharmony_ci * @StageModelOnly 195e41f4b71Sopenharmony_ci * @since 11 196e41f4b71Sopenharmony_ci */ 197e41f4b71Sopenharmony_ci moduleName?: string; 198e41f4b71Sopenharmony_ci 199e41f4b71Sopenharmony_ci /** 200e41f4b71Sopenharmony_ci * Ability Name 201e41f4b71Sopenharmony_ci * 202e41f4b71Sopenharmony_ci * @type { string } 203e41f4b71Sopenharmony_ci * @syscap SystemCapability.Ability.AbilityRuntime.Core 204e41f4b71Sopenharmony_ci * @StageModelOnly 205e41f4b71Sopenharmony_ci * @since 11 206e41f4b71Sopenharmony_ci */ 207e41f4b71Sopenharmony_ci abilityName: string; 208e41f4b71Sopenharmony_ci 209e41f4b71Sopenharmony_ci /** 210e41f4b71Sopenharmony_ci * Ability Type Name 211e41f4b71Sopenharmony_ci * 212e41f4b71Sopenharmony_ci * @type { ?string } 213e41f4b71Sopenharmony_ci * @syscap SystemCapability.Ability.AbilityRuntime.Core 214e41f4b71Sopenharmony_ci * @StageModelOnly 215e41f4b71Sopenharmony_ci * @since 11 216e41f4b71Sopenharmony_ci */ 217e41f4b71Sopenharmony_ci abilityTypeName?: string; 218e41f4b71Sopenharmony_ci ``` 219e41f4b71Sopenharmony_ci 220e41f4b71Sopenharmony_ci- After change: 221e41f4b71Sopenharmony_ci 222e41f4b71Sopenharmony_ci ```js 223e41f4b71Sopenharmony_ci /** 224e41f4b71Sopenharmony_ci * Bundle name 225e41f4b71Sopenharmony_ci * 226e41f4b71Sopenharmony_ci * @type { string } 227e41f4b71Sopenharmony_ci * @syscap SystemCapability.Ability.AbilityRuntime.Core 228e41f4b71Sopenharmony_ci * @systemapi 229e41f4b71Sopenharmony_ci * @StageModelOnly 230e41f4b71Sopenharmony_ci * @since 11 231e41f4b71Sopenharmony_ci */ 232e41f4b71Sopenharmony_ci bundleName: string; 233e41f4b71Sopenharmony_ci 234e41f4b71Sopenharmony_ci /** 235e41f4b71Sopenharmony_ci * Module name 236e41f4b71Sopenharmony_ci * 237e41f4b71Sopenharmony_ci * @type { ?string } 238e41f4b71Sopenharmony_ci * @syscap SystemCapability.Ability.AbilityRuntime.Core 239e41f4b71Sopenharmony_ci * @systemapi 240e41f4b71Sopenharmony_ci * @StageModelOnly 241e41f4b71Sopenharmony_ci * @since 11 242e41f4b71Sopenharmony_ci */ 243e41f4b71Sopenharmony_ci moduleName?: string; 244e41f4b71Sopenharmony_ci 245e41f4b71Sopenharmony_ci /** 246e41f4b71Sopenharmony_ci * Ability Name 247e41f4b71Sopenharmony_ci * 248e41f4b71Sopenharmony_ci * @type { string } 249e41f4b71Sopenharmony_ci * @syscap SystemCapability.Ability.AbilityRuntime.Core 250e41f4b71Sopenharmony_ci * @systemapi 251e41f4b71Sopenharmony_ci * @StageModelOnly 252e41f4b71Sopenharmony_ci * @since 11 253e41f4b71Sopenharmony_ci */ 254e41f4b71Sopenharmony_ci abilityName: string; 255e41f4b71Sopenharmony_ci 256e41f4b71Sopenharmony_ci /** 257e41f4b71Sopenharmony_ci * Ability Type Name 258e41f4b71Sopenharmony_ci * 259e41f4b71Sopenharmony_ci * @type { ?string } 260e41f4b71Sopenharmony_ci * @syscap SystemCapability.Ability.AbilityRuntime.Core 261e41f4b71Sopenharmony_ci * @systemapi 262e41f4b71Sopenharmony_ci * @StageModelOnly 263e41f4b71Sopenharmony_ci * @since 11 264e41f4b71Sopenharmony_ci */ 265e41f4b71Sopenharmony_ci abilityTypeName?: string; 266e41f4b71Sopenharmony_ci ``` 267e41f4b71Sopenharmony_ci 268e41f4b71Sopenharmony_ci**Adaptation Guide** 269e41f4b71Sopenharmony_ci 270e41f4b71Sopenharmony_ciMake sure the APIs are only invoked by system applications. 271e41f4b71Sopenharmony_ci 272e41f4b71Sopenharmony_ciThe code snippet is as follows: 273e41f4b71Sopenharmony_ci 274e41f4b71Sopenharmony_ci```ts 275e41f4b71Sopenharmony_ciimport AutoStartupManager from '@ohos.app.ability.autoStartupManager'; 276e41f4b71Sopenharmony_ciimport { BusinessError } from '@ohos.base'; 277e41f4b71Sopenharmony_ci 278e41f4b71Sopenharmony_citry { 279e41f4b71Sopenharmony_ci AutoStartupManager.setApplicationAutoStartup({ 280e41f4b71Sopenharmony_ci bundleName: 'com.example.autostartupapp', 281e41f4b71Sopenharmony_ci abilityName: 'EntryAbility' 282e41f4b71Sopenharmony_ci }).then((data: void) => { 283e41f4b71Sopenharmony_ci console.info('====> setApplicationAutoStartup data: ' + JSON.stringify(data)); 284e41f4b71Sopenharmony_ci }).catch((err: BusinessError) => { 285e41f4b71Sopenharmony_ci console.info('====> setApplicationAutoStartup err: ' + JSON.stringify(err)); 286e41f4b71Sopenharmony_ci }); 287e41f4b71Sopenharmony_ci} catch (err) { 288e41f4b71Sopenharmony_ci console.info('====> setApplicationAutoStartup throw err: ' + JSON.stringify(err)); 289e41f4b71Sopenharmony_ci} 290e41f4b71Sopenharmony_ci``` 291e41f4b71Sopenharmony_ci 292e41f4b71Sopenharmony_ci 293e41f4b71Sopenharmony_ci## cl.ability.3 Permission for Using AutoStartupCallback Is Changed 294e41f4b71Sopenharmony_ci**Access Level** 295e41f4b71Sopenharmony_ci 296e41f4b71Sopenharmony_ciPublic API 297e41f4b71Sopenharmony_ci 298e41f4b71Sopenharmony_ci**Reason for Change** 299e41f4b71Sopenharmony_ci 300e41f4b71Sopenharmony_ciAfter the APIs related to auto startup in **ApplicationContext** are deleted, **AutoStartupCallback** is not available for third-party applications and is changed to a system API. 301e41f4b71Sopenharmony_ci 302e41f4b71Sopenharmony_ci**Change Impact** 303e41f4b71Sopenharmony_ci 304e41f4b71Sopenharmony_ciThis change is a non-compatible change. If your code uses the involved APIs, delete them. 305e41f4b71Sopenharmony_ci 306e41f4b71Sopenharmony_ci**API Level** 307e41f4b71Sopenharmony_ci 308e41f4b71Sopenharmony_ci11 309e41f4b71Sopenharmony_ci 310e41f4b71Sopenharmony_ci**Change Since** 311e41f4b71Sopenharmony_ci 312e41f4b71Sopenharmony_ciOpenHarmony SDK 4.1.6.5 313e41f4b71Sopenharmony_ci 314e41f4b71Sopenharmony_ci**Key API/Component Changes** 315e41f4b71Sopenharmony_ci 316e41f4b71Sopenharmony_ci- Involved API: 317e41f4b71Sopenharmony_ci 318e41f4b71Sopenharmony_ci ```js 319e41f4b71Sopenharmony_ci onAutoStartupOn(info: AutoStartupInfo): void; 320e41f4b71Sopenharmony_ci onAutoStartupOff(info: AutoStartupInfo): void; 321e41f4b71Sopenharmony_ci ``` 322e41f4b71Sopenharmony_ci 323e41f4b71Sopenharmony_ci- Before change: 324e41f4b71Sopenharmony_ci 325e41f4b71Sopenharmony_ci ```js 326e41f4b71Sopenharmony_ci /** 327e41f4b71Sopenharmony_ci * When the application's auto startup state is set to on, this function is called. 328e41f4b71Sopenharmony_ci * 329e41f4b71Sopenharmony_ci * @param { AutoStartupInfo } info - Auto startup info. 330e41f4b71Sopenharmony_ci * @syscap SystemCapability.Ability.AbilityRuntime.Core 331e41f4b71Sopenharmony_ci * @StageModelOnly 332e41f4b71Sopenharmony_ci * @since 11 333e41f4b71Sopenharmony_ci */ 334e41f4b71Sopenharmony_ci onAutoStartupOn(info: AutoStartupInfo): void; 335e41f4b71Sopenharmony_ci 336e41f4b71Sopenharmony_ci /** 337e41f4b71Sopenharmony_ci * When the application's auto startup state is set to off, this function is called. 338e41f4b71Sopenharmony_ci * 339e41f4b71Sopenharmony_ci * @param { AutoStartupInfo } info - Auto startup info. 340e41f4b71Sopenharmony_ci * @syscap SystemCapability.Ability.AbilityRuntime.Core 341e41f4b71Sopenharmony_ci * @StageModelOnly 342e41f4b71Sopenharmony_ci * @since 11 343e41f4b71Sopenharmony_ci */ 344e41f4b71Sopenharmony_ci onAutoStartupOff(info: AutoStartupInfo): void; 345e41f4b71Sopenharmony_ci ``` 346e41f4b71Sopenharmony_ci 347e41f4b71Sopenharmony_ci- After change: 348e41f4b71Sopenharmony_ci 349e41f4b71Sopenharmony_ci ```js 350e41f4b71Sopenharmony_ci /** 351e41f4b71Sopenharmony_ci * When the application's auto startup state is set to on, this function is called. 352e41f4b71Sopenharmony_ci * 353e41f4b71Sopenharmony_ci * @param { AutoStartupInfo } info - Auto startup info. 354e41f4b71Sopenharmony_ci * @syscap SystemCapability.Ability.AbilityRuntime.Core 355e41f4b71Sopenharmony_ci * @systemapi 356e41f4b71Sopenharmony_ci * @StageModelOnly 357e41f4b71Sopenharmony_ci * @since 11 358e41f4b71Sopenharmony_ci */ 359e41f4b71Sopenharmony_ci onAutoStartupOn(info: AutoStartupInfo): void; 360e41f4b71Sopenharmony_ci 361e41f4b71Sopenharmony_ci /** 362e41f4b71Sopenharmony_ci * When the application's auto startup state is set to off, this function is called. 363e41f4b71Sopenharmony_ci * 364e41f4b71Sopenharmony_ci * @param { AutoStartupInfo } info - Auto startup info. 365e41f4b71Sopenharmony_ci * @syscap SystemCapability.Ability.AbilityRuntime.Core 366e41f4b71Sopenharmony_ci * @systemapi 367e41f4b71Sopenharmony_ci * @StageModelOnly 368e41f4b71Sopenharmony_ci * @since 11 369e41f4b71Sopenharmony_ci */ 370e41f4b71Sopenharmony_ci onAutoStartupOff(info: AutoStartupInfo): void; 371e41f4b71Sopenharmony_ci ``` 372e41f4b71Sopenharmony_ci 373e41f4b71Sopenharmony_ci**Adaptation Guide** 374e41f4b71Sopenharmony_ci 375e41f4b71Sopenharmony_ciMake sure the APIs are only invoked by system applications. 376e41f4b71Sopenharmony_ci 377e41f4b71Sopenharmony_ciThe code snippet is as follows: 378e41f4b71Sopenharmony_ci 379e41f4b71Sopenharmony_ci```ts 380e41f4b71Sopenharmony_ciimport AutoStartupManager from '@ohos.app.ability.autoStartupManager'; 381e41f4b71Sopenharmony_ciimport common from '@ohos.app.ability.common'; 382e41f4b71Sopenharmony_ci 383e41f4b71Sopenharmony_citry { 384e41f4b71Sopenharmony_ci AutoStartupManager.on('systemAutoStartup', { 385e41f4b71Sopenharmony_ci onAutoStartupOn(data: common.AutoStartupInfo) { 386e41f4b71Sopenharmony_ci console.info('===> autostartupmanager onAutoStartupOn data: ' + JSON.stringify(data)); 387e41f4b71Sopenharmony_ci }, 388e41f4b71Sopenharmony_ci onAutoStartupOff(data: common.AutoStartupInfo) { 389e41f4b71Sopenharmony_ci console.info('===> autostartupmanager onAutoStartupOff data: ' + JSON.stringify(data)); 390e41f4b71Sopenharmony_ci } 391e41f4b71Sopenharmony_ci }); 392e41f4b71Sopenharmony_ci} catch (err) { 393e41f4b71Sopenharmony_ci console.info('===> autostartupmanager on throw err: ' + JSON.stringify(err)); 394e41f4b71Sopenharmony_ci} 395e41f4b71Sopenharmony_ci``` 396