Android:自动取消一段时间或标志后的警报

时间:2012-09-19 13:50:10

标签: android android-alarms

由于我没有看到任何关于在不使用任何按钮的情况下取消警报或在onClick中调用的线程。我决定问这个问题,我也想提出这个问题,(因为它有点相互关联),关于在不同的触发时间内同时分配或调用警报,因为我已经读过如果你设置了另一个警报,它将停止上一次警报。但我不想要那个,我用不同的触发时间分配警报。 关于我的主要问题,如何停止/取消自动说,在一段时间内,即5分钟,或者如果它已经重复3次,那么它将自动停止报警。

2 个答案:

答案 0 :(得分:1)

由于没有人完全理解我的观点,我做了一些快速调整,发现我的逻辑完全不对,抱歉。我所做的是实现一个贪睡和解散功能,并且对于同时触发具有不同触发时间的警报,我只需要为requestCode制定不同的setRepeating(),同样适用于set()&lt ; - 如果打算使用此方法,requestCode将用于取消发出的正确警报,以及用于触发警报的意图的相同签名。

答案 1 :(得分:0)

你有正确的想法,我认为这是通过使用一个线程来完成的。然而,根据我的经验,我会做一个快速的工作(直到有人给出更好的答案)。也许你可以解决它。

我有一个天文台(如果你不想让用户看到它,有一种隐藏它的方法)

    Chrono = (Chronometer) findViewById(R.id.chronometer1);  //Defines chronometer in layout
            Chrono.start();                                  //Starts Chronometer
            while (!(Chrono.equals(chronoText))) {           /*starts a timer, until it reaches the desired time */
                chronoText = Chrono.getText().toString();    //gets chronometer time and displays it as a string
                if (chronoText.equals("05:00")) {  /*compares if the string is the same as your set time( i put in 5min as an example)*/
                     counter++;  //I explain the counter a outside the block   
                                 //right here is where you will call your method that stops alarm.
                    startActivity(intent);
                }

            }

对于重复闹钟,我会创建一个循环,然后你可以查看我扔在那里的计数器,看看过程重复了多少次。