使用AsyncTask进行服务

yos*_*i24 3 android android-service android-asynctask

我听说在服务中拥有异步任务并不好.

是真的有必要AsyncTask还是只是onStartCommand()

我想知道,因为我有一个ServiceAsyncTask由报警启动.它Service不止一次发布; 它应该只发射一次.

这可能是原因吗?

编辑:

以下是我设置闹钟的方法.

    String alarm = Context.ALARM_SERVICE;

    AlarmManager am = (AlarmManager)getSystemService(alarm);

    Intent Aintent = new Intent("REFRESH_THIS");
    PendingIntent pi = PendingIntent.getBroadcast(this, 0, Aintent, 0);
    Calendar calendar = Calendar.getInstance();
    calendar.add(Calendar.HOUR_OF_DAY, 9);
    calendar.add(Calendar.MINUTE, 0);
    calendar.add(Calendar.SECOND, 0);
    calendar.add(Calendar.MILLISECOND, 0);

    am.setRepeating(AlarmManager.RTC_WAKEUP,calendar.getTimeInMillis() , AlarmManager.INTERVAL_DAY, pi);
Run Code Online (Sandbox Code Playgroud)

Dha*_*dra 5

如果你想AsyncTask在服务中使用,没有坏事.如果你在服务中使用asynctask是好的,因为服务在主线程上运行,所以如果你从服务使用长进程,它可能会减慢你的UI.

您也可以创建Thread并在其中工作.