O alarme QML do Ubuntu não está funcionando corretamente

1

Estou tentando criar um aplicativo simples capaz de definir o alarme do sistema. Mas, embora eu possa ver o alarme definido no momento correto na lista de eventos sob o indicador do meu relógio (na área de trabalho), ele não me notifica de forma alguma.

Se eu criar um novo alarme no minuto relevante para o alarme anterior enquanto o antigo ainda estiver visível na lista de eventos , o antigo de repente me notifica (notificaton + sound). Não estou jogando com nenhuma lista de alarmes, quero apenas que um alarme seja definido por vez, mas quero poder cancelar o alarme que está em andamento. Ele funciona bem, novamente até que a hora atual seja igual à hora do alarme (arredondada para minutos) quando a remoção do alarme logicamente não funcionar, já que o formato da hora é "Tue 2013-09-17 10:56:00" (segundos sempre a zero ), então já passou durante esse minuto, mas ainda é visível na lista de eventos (ok, pertence a esse minuto) e me notifica se eu definir um novo alarme (é isso que Eu não entendo).

Então, para resumir:

  • Configurar um alarme não funciona corretamente, posso vê-lo na lista, mas ele não me notifica (nem mesmo quando o minuto passa, ele simplesmente desaparece da lista de eventos ).
  • Se o tempo for igual ao horário atual (em minutos) e se eu definir um novo alarme nesse horário, o antigo despertará e me notificará.
    • Outra coisa estranha é que, quando faço isso, há uma data completa para o antigo alarme de reprodução na lista de eventos , como "10:56" ou "09-17": 56 ", enquanto se eu definir um novo alarme, apenas o tempo sem data é exibido, como" 10:56 ".

Mesmo o exemplo na Web do desenvolvedor do Ubuntu não funciona: link

Aqui está o meu código parcialmente modificado sofrendo o mesmo erro:

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";
                        }
                    }
                }
            }
        }
    }
}

E minha pergunta é: é normal que não funcione ou estou fazendo algo errado? Muito obrigado por qualquer ajuda como estou atualmente completamente perdido aqui. Eu estava explorando o material de alarme de estoque, tentando modificar o código de exemplo oficial e isso não ajudou - nunca funciona para mim. No desktop Ubuntu 14.10 é buggy e no meu Ubuntu Tablet meu aplicativo congela se eu tentar definir um novo alarme após o antigo foi concluído ou removido.

    
por zubozrout 16.11.2014 / 10:28

0 respostas