在我的應用程序中,用戶可以設置一定的時間,我希望當時間達到設定的時間(基本上是一個鬧鐘)時,在屏幕上顯示通知,以確定應用程序當前是否正在運行。在android上運行鬧鐘的後臺服務?
我該如何去做這件事?
在我的應用程序中,用戶可以設置一定的時間,我希望當時間達到設定的時間(基本上是一個鬧鐘)時,在屏幕上顯示通知,以確定應用程序當前是否正在運行。在android上運行鬧鐘的後臺服務?
我該如何去做這件事?
沒有用進入一個長的答案,你顯然沒有搜索多...
http://developer.android.com/reference/android/app/AlarmManager.html
檢查現在,我已經更新了代碼。
這裏是CountDownTimer的代碼。 當時間完成時,它發送一個通知。 您可以在Service或正常活動中使用它。
public String ns = Context.NOTIFICATION_SERVICE;
public NotificationManager mNotificationManager;
Notification notification;
PendingIntent contentIntent;
Intent notificationIntent;
public class Main extends Activity{
private final long startTime = 50000;
private final long interval = 1000;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
int time=Integer.parseInt(editText.getText().toString());
time=time*1000;
startTime = time;
// place this code on button listener if you want.
countDownTimer = new MyTimer(startTime, interval);
}
}
public class MyTimer extends CountDownTimer
{
public MyTimer(long startTime, long interval)
{
super(startTime, interval);
}
@Override
public void onFinish()
{
mNotificationManager = (NotificationManager) getSystemService(ns);
notificationIntent = new Intent(this, MyActivity.class);
notificationIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
contentIntent = PendingIntent.getActivity(this, 0, notificationIntent, 0);
notification = new Notification(R.drawable.icon,"Time up..", System.currentTimeMillis());
notification.setLatestEventInfo(this, "CallingaCab", "YOUR TIME COMPLETED", contentIntent);
mNotificationManager.notify(0, notification);
startActivity(notificationIntent);
}
@Override
public void onTick(long millisUntilFinished)
{
//Perform what do you want on each tick.
}
}
}
請創建服務來擴展服務類,服務在後臺運行,並檢查你想要什麼。 here you can find service example。
如何從倒數計時器內開始活動? – molleman
什麼是傳入getSystemService的變量? NS? – molleman
現在檢查,我已經更新了代碼。 – Noby