Я пытался создать простое приложение, способное к установке аварийного сигнала системы. Но хотя я вижу, что предупреждение набора в корректное время в конечном счете перечисляет под моим индикатором часов (на рабочем столе), это не уведомляет меня вообще.
Если я создаю новое предупреждение в минуту, важную для предыдущего предупреждения, в то время как старый все еще видим, в конечном счете перечисляют, старый внезапно уведомляет меня (уведомление + звук). Я не играю ни с какими списками аварийных сигналов, я только хочу, чтобы одно предупреждение было установлено за один раз, но я хочу смочь сбросить предупреждение, которое происходит. Это хорошо работает, снова пока текущее время не равняется времени аварийного сигнала (округленный к минутам), когда удаление предупреждения логически не работает, поскольку это - формат времени, "вторник 17.09.2013 10:56:00" (секунды всегда для обнуления), таким образом, это уже передается в течение той минуты, но это все еще видимо, в конечном счете перечисляют (хорошо, это принадлежит той минуте), и это уведомляет меня, если я поставил новый будильник (это - то, что я не понимаю).
Таким образом подвести итог его:
Даже пример в сети Разработчика Ubuntu не работает: http://developer.ubuntu.com/api/qml/sdk-14.10/Ubuntu.Components.Alarm/
Вот мой частично измененный код, страдающий от той же ошибки:
import QtQuick 2.3
import Ubuntu.Components 1.1
import Ubuntu.Components.Pickers 0.1
MainView {
objectName: "mainView"
applicationName: "com.ubuntu.developer.username.alarmtest"
useDeprecatedToolbar: false
width: units.gu(100)
height: units.gu(75)
Page {
title: i18n.tr("Simple")
Alarm{
id: alarm
onStatusChanged: {
if(status == Alarm.Ready) {
button.text = "Set Alarm";
}
}
}
Column {
spacing: units.gu(1)
Row {
spacing: units.gu(1)
Label {
id: date
text: "Date:"
anchors.verticalCenter: parent.verticalCenter
}
DatePicker {
id: datePicker
date: new Date()
mode: "Hours|Minutes"
onDateChanged: {
var pickerDate = datePicker.date;
pickerDate.setSeconds(0);
datePicker.date = pickerDate;
}
}
Button {
id: button
text: "Set Alarm";
onClicked: {
if ((alarm.operation > Alarm.NoOperation) && (alarm.operation < Alarm.Reseting)) {
reset();
}
else {
alarm.date = new Date(datePicker.date);
alarm.message = "My alarm";
alarm.save();
if (alarm.error != Alarm.NoError)
print("Error saving alarm, code: " + alarm.error + " at time " + alarm.date);
text = "Unset Alarm";
}
}
}
}
}
}
}
И мой вопрос, действительно ли нормально, что это не работает, или я делаю что-то не так? Большое спасибо за любую справку, поскольку я в настоящее время полностью теряюсь в здесь. Я исследовал материал предупреждения приложения для часов запаса, пытаясь изменить официальный пример кода, и он не помог - он никогда не работает на меня. На настольной Ubuntu 14.10 это - багги и на моем планшете Ubuntu мои замораживания приложения, если я пытаюсь поставить новый будильник после того, как старый был завершен или удален.