Ser*_*ier 3 android background alarmmanager android-volley
我使用Volley库连接我的应用程序中的服务器.现在,我还必须每5分钟在后台发送请求,当应用程序未运行时(由用户杀死).我该怎么办?有了后台服务AlarmManager(谷歌表示它不是网络运营的好选择)或其他什么?
或者SyncAdapter可能会有用吗?
您可以在服务类中使用带有scheduleAtFixedRate的TimerTask 来实现这一点,这里是Service类的一个示例,您可以使用它
public class ScheduledService extends Service
{
private Timer timer = new Timer();
@Override
public IBinder onBind(Intent intent)
{
return null;
}
@Override
public void onCreate()
{
super.onCreate();
timer.scheduleAtFixedRate(new TimerTask() {
@Override
public void run() {
sendRequestToServer(); //Your code here
}
}, 0, 5*60*1000);//5 Minutes
}
@Override
public void onDestroy()
{
super.onDestroy();
}
}
Run Code Online (Sandbox Code Playgroud)
您可以使用sendRequestToServer方法连接服务器.这是该服务的明确声明.
<service android:name=".ScheduledService" android:icon="@drawable/icon" android:label="@string/app_name" android:enabled="true"/>
Run Code Online (Sandbox Code Playgroud)
要从MainActivity启动服务,
// use this to start and trigger a service
Intent i= new Intent(context, ScheduledService.class);
context.startService(i);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9966 次 |
| 最近记录: |