我做一个短信定时发送的工具,利用service 在后台运行,但是我不懂怎么实现这样一个过程,有做过的朋友分享下经验或提供下代码,小生不甚感激。

解决方案 »

  1.   

    利用HttpConnection给后台发送过去就行了撒。。
      

  2.   

    利用TimerTask来定时。http://blog.csdn.net/ch_984326013/article/details/6704616
      

  3.   

    利用service 在后台运行……
    http://1225682794.iteye.com/blog/832768
      

  4.   

    一个service类,一个自定义广播,
    service中动态注册广播,并启动定时器,指定时间发送广播
    广播收到后,发送短信即可实现定时发送
      

  5.   

    如果要长时间的,例如几个小时触发的,有什么好的定时器么?用AlarmManager我试过,但是修改时间以后会有影响,有的定时器在手机睡下去以后是无效的, 有什么好的思路不?
      

  6.   

    sendBroadcast 加一个时间
    然后自己处理循环就好了
      

  7.   

    利用定时任务。
    final Timer timer = new Timer("retry", true);
    TimerTask task = new TimerTask() { @Override
    public void run() {
    int j = someMethod();
    if (1 == j) {
    timer.cancel();
    }
    }
    };
    timer.scheduleAtFixedRate(task, 600000, 600000);
      

  8.   

    或者还可以通过闹钟。
    // 实例化
    SharedPreferences shared = context.getSharedPreferences("OOXX",
    Context.MODE_WORLD_WRITEABLE);
    // 实例化Intent
    intent = new Intent();
    intent.setClass(context, Updater.class);
    // 实例化PendingIntent
    PendingIntent pend = PendingIntent.getBroadcast(context, 0, intent, 0); // 获得定时器实例
    AlarmManager alarm = (AlarmManager) context
    .getSystemService(Context.ALARM_SERVICE); long period = shared.getLong("period", 0);
    if (period == 0) {
    return;
    }
    long curr = shared.getLong("curr", System.currentTimeMillis());
    // 启用
    alarm.setRepeating(AlarmManager.RTC, curr, period, pend);
      

  9.   

    我也是的是这个方法,对于多个定时任务怎么办,是创建数组对象好,还是同一个对象执行多次scheduleAtFixedRate方法好?另外在手机睡眠状态时,它是否还能执行定时任务?