# Alarms
Device's alarms management.
# Manifest Declaration
You need to declare the use of this API in the manifest's features
member:
{"name": "system.alarm"}
# Module Import
Before using this service in a component, you need to import the module in the script section of the UX document.
import alarm from '@system.alarm'
Or
let alarm = require("@system.alarm")
# Methods
This service has the following methods:
# getProvider()
Get information about the service provider, usually, the device vendor.
# Arguments
This method does not have arguments.
# Return
This method returns a string
with the identifier of the service provide. Empty if there is no provider available.
Example:
let provider = alarm.getProvider()
// provider = huawei
# setAlarm({hour,minute,message,vibrate,days,ringtone,success,fail,complete})
Set an alarm.
This method sets an alarm in the device. A warning dialog will be displayed, asking the user for confirmation.
# Arguments
This method requires an object
with the following attributes:
hour
(number
). Mandatory attribute with the alarm time (in hours). The range of the value is0
-23
.minute
(number
). Mandatory attribute with the alarm time (in minutes). The range of the value is0
-59
.message
(string
). Optional attribute with the name of the alarm (up to 200 characters).vibrate
(boolean
). Optional flag that indicates whether to enable vibration (true
, by default) or not (false
).days
(array<number>
). Optional attribute with the recurring pattern of the alarm. The alarm does not repeat by default. For example,[0,1,2,3,4,5,6]
repeats the alarm every day,[0,1,2,3,4]
only weekdays,[0,6]
repeats the alarm on Monday and Sunday.ringtone
(string
). Optional attribute with the ringtone. The file path may be a data file path or an in-app resource.success
(function()
). Optional callback function for success.fail
(function()
). Optional callback function for failure.complete
(function()
). Optional callback function on completion, regardless success or failure of the call.
Example:
<script>
import alarm from '@system.alarm'
export default {
onReady () {
alarm.setAlarm({
hour: 6,
minute: 0,
message: 'Wake me up!!',
vibrate: true,
days: [0,1,2,3,4],
ringtone: '/Common/audio/ding.m4a',
success() {
console.log('Success!')
},
fail(erromsg, errocode) {
console.error(`Set alarm failed, msg: ${erromsg} code: ${errocode}`)
},
complete() {
console.log('Done!' )
}
})
},
}
</script>
The system will show a confirmation dialog like the following.
