我为下载数据的目的服务,我要与广播重复接收和报警manager.How我打电话给我的目的服务?我试试这个,但没有工作....如何从广播接收器调用IntentService?
public class MyBroadcastReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Toast.makeText(context, "Don't panik but your time is up!!!!.",
Toast.LENGTH_LONG).show();
// Vibrate the mobile phone
Vibrator vibrator = (Vibrator)
context.getSystemService(Context.VIBRATOR_SERVICE);
vibrator.vibrate(500);
intent.setData(Uri.parse("http://www.mysite.net/LEDstate.txt"));
intent.putExtra("urlpath", "http://www.mysite.net/LEDstate.txt");
//startService(intent);
context.startService(new Intent(context, DownloadService.class));
}
公共类AlarmActivity扩展活动{
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void startAlert(View view) {
EditText text = (EditText) findViewById(R.id.time);
int i = Integer.parseInt(text.getText().toString());
Intent intent = new Intent(this, MyBroadcastReceiver.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(this.getApplicationContext(), 234324243, intent, 0);
AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
//alarmManager.set(AlarmManager.RTC_WAKEUP, System.currentTimeMillis()
// + (i * 1000),pendingIntent);
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis()
,(i*1000),pendingIntent);
// alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, calendar
// .getTimeInMillis(), intervals, pendingIntent);
Toast.makeText(this, "Alarm set in " + i + " seconds",
Toast.LENGTH_LONG).show();
}
你在这个类的'DownloadService'的清单中定义了什么? –
是清单是好的。我尝试转换vogella教程intentservice每x秒重播。 – antkan
你没试过@Zozokk的解决方案吗?它对我来说很好。 –