android-如何定期唤醒我的应用
作者:互联网
我想在Android中制作提醒功能.
我想在我的应用程序/活动未运行或用户界面不可见时启动它.
就像提醒一样,它会在所需时间唤醒应用程序.
我没有处理过任何类型的后台任务或服务,
所以我不知道该怎么办
或者我应该学习哪种类型的课程或演示?
任何人都可以通过演示或教程链接给我一些建议.
提前致谢.
解决方法:
嗨,使用以下代码.这就是服务.通过将挂起的Intent与警报管理器一起使用,您可以在需要的时间打开UI.
import java.util.Calendar;
import java.util.Timer;
import java.util.TimerTask;
import android.app.AlarmManager;
import android.app.PendingIntent;
import android.app.Service;
import android.content.Context;
import android.content.Intent;
import android.database.Cursor;
import android.os.Handler;
import android.os.IBinder;
import android.os.Message;
import android.util.Log;
public class ScheduleCheckService extends Service{
private Timer timer;
final int REFRESH=0;
Context context;
private PendingIntent pendingIntent;
@Override
public IBinder onBind(Intent intent) {
// TODO Auto-generated method stub
return null;
}
@Override
public void onCreate() {
// TODO Auto-generated method stub
super.onCreate();
context=this;
//==============================================
TimerTask refresher;
// Initialization code in onCreate or similar:
timer = new Timer();
refresher = new TimerTask() {
public void run() {
handler.sendEmptyMessage(0);
};
};
// first event immediately, following after 1 seconds each
timer.scheduleAtFixedRate(refresher, 0,1000);
//=======================================================
}
final Handler handler = new Handler() {
public void handleMessage(Message msg) {
switch (msg.what) {
case REFRESH:
//your code here
break;
default:
break;
}
}
};
void PendingIntentmethod()
{
Intent myIntent = new Intent(context, YOURCLASS.class);
pendingIntent = PendingIntent.getActivity(context, 0, myIntent, 0);
AlarmManager alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE);
Calendar calendar = Calendar.getInstance();
}
}
启动服务并在需要时停止服务,也不要忘记在清单文件中注册它.
标签:android-alarms,background-service,android,service 来源: https://codeday.me/bug/20191031/1973402.html