目前我正在开发一个应用程序,如果按钮的状态在一段时间内没有变化,该应用程序涉及自动向个人发送SMS的动作。简单地说,如果说有一个名为send(当前状态=关闭)的按钮,并且我将其保留15分钟而不更改状态,应用程序将自动向我发送短信。请注意,虽然应用程序已关闭或用户在主屏幕中,但状态的时间仍在计算中,并且仍然能够自动执行操作。请帮助我,任何参考文献都表示赞赏。
答案 0 :(得分:0)
在活动中获取一些全局变量:
int time_in_minutes=15;
Thread th;
boolean ifPressed=false;
boolean loop=true;
启动Activity时,启动后台线程:
th=new Thread(new Runnable()
public void run()
{
while(loop)
{
for(int i=0;i<time_in_milliseconds;i++)
{
if(ifPressed)
break;
else
Thread.sleep(time_in_milliseconds);
}
if(i==time_in_milliseconds)
{
sendSMS();
loop=false;
}
else
{
ifPressed=false;
loop=true;
}
}
}
);
th.start();
最后,按下发送按钮时,将ifPressed变量设为true。