精华内容
下载资源
问答
  • java 软件开发短 信定时发送 java软件 可以直接移植到手机
  • 本篇文章介绍了使用PHP免费发送定时短信的实例,可以定时发送短信到手机上,有需要的朋友可以了解一下。
  • 主要介绍了Android编程实现定时发短信功能,结合实例形式较为详细的分析了Android定时发送短信功能的相关原理、实现方法与注意事项,需要的朋友可以参考下
  • spring提供的定时发送邮件功能一直深受广大web开发者的喜爱,这篇文章主要介绍了Spring+quartz实现定时发送邮件功能实例,有兴趣的可以了解一下。
  • 本程序主要实现了Android下的定时任务,发送短信,获取天气预报,主要实现核心功能,界面比较粗陋
  • 短信发送功能,C#服务实现定时短信发送功能
  • MTK 7.1 定时发送短信

    2018-09-21 13:26:02
    MTK 7.1 定时发送短信.
  • 经常邮件的朋友都知道,邮箱有个特殊功能,可以设定邮件发送时间,定时发送,这个功能是怎么实现的呢?接下来,小编给大家分享.NET实现定时发送邮件的代码,有需要的朋友可以参考下
  • 定时发短信

    2014-10-06 14:54:56
    就是一个定时发短信的小demo,调用本地数据库
  • 阿里云API定时发送短信(小记)

    千次阅读 2018-11-12 14:49:07
    定时任务的代码: import com.google.gson.Gson; import com.jianke.bid.common.SMSUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Lazy;...
    定时任务的代码:
    
    import com.google.gson.Gson;
    import com.jianke.bid.common.SMSUtils;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.context.annotation.Lazy;
    import org.springframework.scheduling.annotation.Scheduled;
    import org.springframework.stereotype.Component;
    
    import java.text.DateFormat;
    import java.text.SimpleDateFormat;
    import java.util.Date;
    import java.util.HashMap;
    import java.util.List;
    import java.util.Map;
    
    /**
     * 定时器
     */
    @Component
    @Lazy(value=false)
    public class TaskService {
    
       @Autowired
       private Gson gson;
    
       /**
        *@Description
        */
       @Scheduled( cron = "0 0 * * * ?")//网上有cron表达式在线生成器,可定义执行的时间
       public void sendSMSMsgTask() {
          System.out.println("定时任务执行开始-----------"+ DateFormatUtils.toDateDoDateFormat(new Date()));
           //获取短信模版
          String messageTemplate = "XXXX";
          //发送的手机
          String phoneNum = "135XXXXXXXX";
          //短信模版里需要展示的内容
          Map<String, String> paramsMap = new HashMap<>();
          
          DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
          //发布时间
          paramsMap.put("publishtime", "XXXX-XX-XX");
          
          paramsMap.put("name", "XXX");
          
          paramsMap.put("num", "XXX");
          SMSUtils.SendSMS(phoneNum , messageTemplate, gson.toJson(paramsMap) );
           
          System.out.println("定时任务执行完成-----------"+DateFormatUtils.toDateDoDateFormat(new Date()));
       }
    }

     

    SMSUtils工具代码:

    import com.aliyuncs.dysmsapi.model.v20170525.SendSmsRequest;
    import com.aliyuncs.dysmsapi.model.v20170525.SendSmsResponse;
    import com.aliyuncs.http.MethodType;
    import com.aliyuncs.profile.DefaultProfile;
    import com.aliyuncs.profile.IClientProfile;
    public class SMSUtils {
        /**
         * 发送短信
         * 功能描述:<br/>
         * @param phoneNumber
         * @param templateCode
         * @param paramString
         * @return 短信内容
         */
        @SuppressWarnings("unused")
        public static int SendSMS(String phoneNumber,String templateCode,String paramString){
    
            // 设置超时时间-可自行调整
            System.setProperty("sun.net.client.defaultConnectTimeout", "10000");
            System.setProperty("sun.net.client.defaultReadTimeout", "10000");
            // 初始化ascClient需要的几个参数
            final String product = "Dysmsapi";// 短信API产品名称(短信产品名固定,无需修改)
            final String domain = "dysmsapi.aliyuncs.com";// 短信API产品域名(接口地址固定,无需修改)
            // 替换成你的AK
            final String accessKeyId = "XXXXXX";// 你的accessKeyId
            final String accessKeySecret = "XXXXXX";// 你的accessKeySecret
            // 初始化ascClient,暂时不支持多region(请勿修改)
            IClientProfile profile = DefaultProfile.getProfile("cn-hangzhou", accessKeyId, accessKeySecret);
            try {
                DefaultProfile.addEndpoint("cn-hangzhou", "cn-hangzhou", product, domain);
            } catch (ClientException e1) {
    
                e1.printStackTrace();
            }
            IAcsClient acsClient = new DefaultAcsClient(profile);
            // 组装请求对象
            SendSmsRequest request = new SendSmsRequest();
            // 使用post提交
            request.setMethod(MethodType.POST);
            // 必填:待发送手机号。支持以逗号分隔的形式进行批量调用,批量上限为1000个手机号码,批量调用相对于单条调用及时性稍有延迟,验证码类型的短信推荐使用单条调用的方式
            request.setPhoneNumbers(phoneNumber);
            // 必填:短信签名-可在短信控制台中找到
            request.setSignName("XXXXXX");
            // 必填:短信模板-可在短信控制台中找到
            request.setTemplateCode(templateCode);
            // 可选:模板中的变量替换JSON串,如模板内容为"亲爱的${name},您的验证码为${code}"时,此处的值为
            // 友情提示:如果JSON中需要带换行符,请参照标准的JSON协议对换行符的要求,比如短信内容中包含\r\n的情况在JSON中需要表示成\\r\\n,否则会导致JSON在服务端解析失败
            // request.setTemplateParam("{\"name\":\"Tom\", \"code\":\"123\"}");
            request.setTemplateParam(paramString);
            // 可选-上行短信扩展码(扩展码字段控制在7位或以下,无特殊需求用户请忽略此字段)
            // request.setSmsUpExtendCode("90997");
            // 可选:outId为提供给业务方扩展字段,最终在短信回执消息中将此值带回给调用者
            // request.setOutId("yourOutId");
            // 请求失败这里会抛ClientException异常
            SendSmsResponse sendSmsResponse;
            try {
                sendSmsResponse = acsClient.getAcsResponse(request);
                if (sendSmsResponse.getCode() != null && sendSmsResponse.getCode().equals("OK")) {
                    // 请求成功
                    return 0;
                }
            } catch (ClientException e) {
    
                e.printStackTrace();
            }
            // 获取返回结果
            return 1;
        }

     

    springboot 启动定时器代码:

    import org.slf4j.Logger;
    import org.slf4j.LoggerFactory;
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    import org.springframework.boot.builder.SpringApplicationBuilder;
    import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
    import org.springframework.context.annotation.ComponentScan;
    import org.springframework.scheduling.annotation.EnableScheduling;//spring 自带定时器
    
    /**
     * 应用模块名称
     *
     * @author Administrator
     */
    @SpringBootApplication
    @EnableScheduling
    @ComponentScan("your project")
    public class XxxWebApplication extends SpringBootServletInitializer {
    
        private static final Logger LOGGER = LoggerFactory.getLogger(XxxWebApplication.class);
    
        public static void main(String[] args) {
            LOGGER.info("正在启动用户中心服务......");
            SpringApplication.run(XxxWebApplication.class, args);
            // todo 检查相关配置是否完整
    
            LOGGER.info("服务已启动完成......");
        }
    
        @Override
        protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
            return application.sources(XXXWebApplication.class);
        }
    
    }

     

    展开全文
  • 安卓手机定时发送短信 ,多条短信同时发布.zip,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
  • Spring Boot定时发送短信

    千次阅读 2019-01-16 22:13:17
    Spring Boot定时发送短信的两种方式 不少项目中估计都有遇到定时发送这个梗,我也遇到了,页面中下拉框选项有立即发送以及定时发送,立即发送就不用说了,定时发送可以讲一下,定时的方式有很多种,Java自带的定时器...

    Spring Boot定时发送短信的两种方式

    不少项目中估计都有遇到定时发送这个梗,我也遇到了,页面中下拉框选项有立即发送以及定时发送,立即发送就不用说了,定时发送可以讲一下,定时的方式有很多种,Java自带的定时器,Spring的定时器,大致讲一下我做的时候思路

    1. Java自带的定时器

    java.util包里的Timer,它也可以实现定时任务但是功能过于单一所有使用很少,而还有一个类ScheduledExecutorService可以基本满足定时任务中的需求

    首先要创建一个线程,这里实现了Runnable接口,自己写run方法

    public class MessageJob implements Runnable {
    
        private static final Logger LOGGER = LoggerFactory.getLogger(MessageJob.class);
    
        private static volatile ConcurrentHashMap<String, String> idMapping = new ConcurrentHashMap<>();
    
        private static volatile ConcurrentHashMap<String, MessageJob> cache = new ConcurrentHashMap<>();
    
        private volatile AtomicBoolean canceled = new AtomicBoolean(false);
        /** 任务id */
        private String jobId;
        /** 短信id */
        private String messageId;
    
        private UserDTO userDTO;
    
        private String title;
    
        private String context;
    
        private String phone;
    
        public MessageJob(String messageId, UserDTO UserDTO, String title, String context, String phone) {
            this.jobId = GeneratorIDFactory.generatorUUID();
            this.messageId = messageId;
            this.userDTO = UserDTO;
            this.title = title;
            this.context = context;
            this.phone = phone;
            //取消并清除上一次任务
            cancelAndClearLastJobIfExist();
            //缓存本次任务
            cacheThisJob();
        }
    
        /**
         * 取消并清除上一次任务
         */
        private void cancelAndClearLastJobIfExist() {
            if (StringUtil.isNotEmpty(idMapping.get(messageId))) {
                MessageJob lastJob = cache.get(idMapping.get(messageId));
                if (null != lastJob) {
                    lastJob.cancelJob();
                    cache.remove(idMapping.get(messageId));
                    idMapping.remove(messageId);
                }
            }
        }
    
        @Override
        public void run() {
            //判断任务是否被取消
            if (!canceled.get()) {
                SendMessageUtil sendMessageUtil = (SendMessageUtil) SpringContextUtil.getBean("sendMessageUtil");
                MsgMessageService msgMessageService = (MsgMessageService) SpringContextUtil.getBean("msgMessageService");
                //发送
                try {
                    sendMessageUtil.sendMessage(userDTO, title, context, phone);
                    LOGGER.info("线程已启动");
                    MsgMessage message = new MsgMessage();
                    message.setState(1);
                    message.setId(messageId);
                    msgMessageService.update(message);
                    LOGGER.info("短信状态已更新");
                } catch (ServiceException e) {
                    LOGGER.error("线程出现问题::" + e.getMessage(), e);
                }
                //从缓存中清理本任务
                clear();
            }
        }
    
        /**
         * 缓存本次任务
         */
        private void cacheThisJob() {
            //id映射
            idMapping.put(this.messageId, this.jobId);
            //短信发送任务缓存
            cache.put(this.jobId, this);
        }
    
        /**
         * 取消任务
         */
        public void cancelJob() {
            this.canceled.set(true);
        }
    
        /**
         * 清理缓存
         */
        public void clear() {
            idMapping.remove(messageId);
            cache.remove(this.jobId);
        }
    
    }
    

    模拟了缓存,以及队列,jobId是UUID自动生成,防止ID重复,一个短信ID对应一个jobId,一个jobId对应一个线程的方式,确保线程分布执行,不干扰

    这么做的意义在于,可在定时发送日期还没到时取消发送短信,一个短信发送时间经过编辑后可清空上一次任务新建一个线程,调用代码如下

    ScheduledExecutorService service = new ScheduledThreadPoolExecutor(10, new BasicThreadFactory.Builder().namingPattern("scheduled-pool-%d").daemon(true).build());
    MessageJob job = new MessageJob(msgMessage.getId(), sender, "短信通知", messagecontent, phones);
    long delay = msgMessage.getSendertime().getTime() - System.currentTimeMillis();
    service.schedule(job, delay, TimeUnit.MILLISECONDS);
    

    delay是短信发送的时间减去当前时间的毫秒,让定时器在规定时间后执行这个线程发送短信

    2. Spring的定时器注解

    Spring Boot定时器就不介绍了,也很方便简单,在启动类上加上注解@EnableScheduling就可以了

    这种方式比较适用于在项目中,短信的所有信息都存在数据里里的情况下,根据type来区分是定时发送还是立即发送,state来区别是已发送还是未发送;这个定时器只需要读取出所有状态是未发送并且是定时发送的数据库数据,并且发送时间是小于当前时间的

    select * from message where type = 2 and state = 2 and send_time <= now();
    

    举例,有一条短信是2019-1-17 22:05:00要发送的,定时任务一直在开启,到17号22点05分00秒的时候的时候这个now()就是当前时间,<=正好查到这条数据,那就表示到了该发送的时间,将短信发送出去

    @Component
    public class MessageJobTwo {
    
        private static final Logger logger = LoggerFactory.getLogger(MessageJobTwo.class);
    
        @Autowired
        private MsgMessageMapper messageMapper;
    
        @Autowired
        private MsgMessagemapperService msgMessagemapperService;
    
        @Autowired
        private SendMessageUtil sendMessageUtil;
    
        @Value("${message.isopen}")
        private boolean isOpen;
    
        /**
         * 每隔两秒定时查询小于等于当前时间的并且为未发送定时的数据
         * 对数据进行发送并且更改短信状态
         */
        @Scheduled(cron = "*/2 * * * * ?")
        public void sendMessageJob(){
            if (isOpen) {
                logger.info("开始执行-----短信定时任务");
                MsgMessageDTO msgMessageDTO = new MsgMessageDTO();
                msgMessageDTO.setType(2);
                msgMessageDTO.setState(2);
                msgMessageDTO.setSendertime(new Date());
                Map<String, Object> params = new HashMap<>(16);
                params.put("condition", msgMessageDTO);
                List<MsgMessageDTO> messageList = messageMapper.messageList(params);
    
                for (MsgMessageDTO messageDTO : messageList) {
                    String phones = selectPhone(messageDTO.getId());
                    sendMessageUtil.sendMessage(null, "短信通知", messageDTO.getMessagecontent(), phones);
                    logger.info("短信发送成功---------");
                    MsgMessage message = new MsgMessage();
                    message.setState(1);
                    message.setId(messageDTO.getId());
                    messageMapper.update(message);
                    logger.info("短信状态修改完成---------");
                }
            }
        }
    
        /**
         * 查询接收用户,拼接成字符串
         * @param messageId
         * @return
         */
        private String selectPhone(String messageId){
            Condition condition = new Condition(MsgMessagemapper.class);
            condition.createCriteria().andEqualTo("messageid", messageId);
            List<MsgMessagemapper> byCondition = msgMessagemapperService.findByCondition(condition);
            StringBuilder builder = new StringBuilder();
            for (MsgMessagemapper msgMessagemapper : byCondition) {
                builder.append(msgMessagemapper.getReceivephone()).append(",");
            }
            builder.deleteCharAt(builder.length() - 1);
            return builder.toString();
        }
    }
    

    结语

    第二种方式比较方便,是不需要调用,项目启动之后会根据cron表达式里的时间进行操作,定时在查询,查出有符合要求的数据就进行发送。

    第一种方式也可以,是异步多线程,第二种是单线程,看需求选择。

    展开全文
  • E4A定时短信短信发送接口,本身自带的短信发送有提示,可以使用这个没有提示的
  • android 定时发送短信 (新)

    热门讨论 2012-05-18 13:52:48
    android 定时发送短信(新) android 手机定时发送短信程序,支持2.2以上版本。功能:即时发送短信定时发送短信,取消定时发送,拨号,自动搜索联系人,此次修补上次出现的bug。
  • android 定时发送短信

    2012-05-17 17:56:03
    android 手机定时发送短信程序,支持2.2以上版本。功能:即时发送短信定时发送短信,取消定时发送,拨号,自动搜索联系人等
  • 安卓定时发送短信

    2015-10-27 17:36:49
    可通过APP定时发送短信,实现导入选择联系人+修改定时内容+删除+已定时列表
  • 安卓手机定时发送短信 手机助手 防盗,多条短信同时发布,还可以取消,同时还有自动拨号等功能
  • Android例子源码可以定时批量发送短信短信时光机是一个可以自定义定时批量短信发送例子源码(类似于短信时光机),编辑的短信可以一键选择多个联系人进行定时发送,批量发送祝福短信这种情况在节假日是普遍存在的...
  • 需求: 每晚8点自动获取天气预报短信,并发给...如果使用自己电脑、树莓派等,得购买短信模块,并且得确保应用程序能定时运行,比较消耗资源。 最好在云服务上操作,功能实现如下: 1、获取天气,阿里云气象API: ...

    需求:

    每晚8点自动获取天气预报短信,并发给功能机用户

    实现:

    如果使用自己电脑、树莓派等,得购买短信模块,并且得确保应用程序能定时运行,比较消耗资源。

    最好在云服务上操作,功能实现如下:

    1、获取天气,阿里云气象API:

    https://market.aliyun.com/products/57126001/cmapi014302.html?spm=5176.2020520132.101.2.6c067218xi6efI#sku=yuncode830200000

    (总免费额度:10000次, 6个月有效)

    2、发送短信,腾讯短信:

    https://cloud.tencent.com/document/product/382/55981

    (总的免费额度:200条,每千条50元,有效期2年)

    3、定时发送,腾讯云函数SCF:

    https://cloud.tencent.com/document/product/583#null

    (每月免费额度:100万次、40万GBs)

    注意事项

    发送短信需要,需要申请“签名”,最简便的方式是,申请公众号方式,只需要身份证验证即可,公众号名称最好采用中文名。

    参考

    实践篇:无服务器云函数 SCF+API网关+第三方天气api接口(实现天气查询功能) - 云+社区 - 腾讯云

    天气查询-API文档-开发指南-Web服务 API | 高德地图API

    展开全文
  • android定时发送短信

    2013-12-04 22:33:00
    android中定时发送短信,帮助你解决忘记重要的短信....
  • Android定时发送短信功能实现

    千次阅读 2017-07-04 09:07:52
    现在好多手机都自带定时发短信,但是感觉定时发送这个功能里面有结合alarm和广播两部分内容,所以小小记录一下。 首先,定时发短信无非就是“定时”和“发短信”两部分,那么分开来看。 第一部分:发短信 很简单...

    现在好多手机都自带定时发短信,但是感觉定时发送这个功能里面有结合alarm和广播两部分内容,所以小小记录一下。

    首先,定时发短信无非就是“定时”和“发短信”两部分,那么分开来看。

    第一部分:发短信

    很简单,定时发短信肯定不是到时间了再弹出短信编辑界面,所以那种方法就不说了,在此只记录直接发方法。

    SmsManager manager = SmsManager.getDefault();
    
    List<String> divideContents = manager.divideMessage(content);
    
    for (String text : divideContents) {
    
    manager.sendTextMessage(tel, null, text, null, null);
    
    }

     

     

     

     

    核心得代码只有这几行。divideMessage(String msg)方法主要是发短信是有字数限制的,这是用来divide你短信内容用的。最关键的是这个方法

     

    sendTextMessage(tel, null, text, null, null)

    一共5个参数,第一,三参数一看就知道,一个是手机号一个是发送的文本,第二个参数是短信中心服务号码, 这里设置为null (我也没设过值,短信也可以正常发),最后两个参数比较重要,PendingIntent类型,用来监听短信是否发送成功和对方是否接收成功的,直接看代码。

    String SENT_SMS_ACTION = "SENT_SMS_ACTION";
    String DELIVERED_SMS_ACTION = "DELIVERED_SMS_ACTION";
    
    Intent sentIntent = new Intent(SENT_SMS_ACTION);
    Intent deliverIntent = new Intent(DELIVERED_SMS_ACTION);
    
    PendingIntent sentPI = PendingIntent.getBroadcast(context, 0, sentIntent, 0);
    PendingIntent deliverPI = PendingIntent.getBroadcast(context, 0, deliverIntent, 0);
    
    context.registerReceiver(sentBroadcast, new IntentFilter(SENT_SMS_ACTION));
    context.registerReceiver(receiveSMS, new IntentFilter(DELIVERED_SMS_ACTION));

    context就不说了,sentBroadcast和receiveSMS是两个广播(其实不说也能看出来。。),在这就可以做你想做的处理了。

       private BroadcastReceiver sentBroadcast = new BroadcastReceiver() {
            @Override
            public void onReceive(Context context, Intent intent) {
                switch (getResultCode()) {
                    case Activity.RESULT_OK:
                        Utils.showToast(context, "短信发送成功");
                        break;
                    case SmsManager.RESULT_ERROR_GENERIC_FAILURE:
                        Utils.showToast(context, "RESULT_ERROR_GENERIC_FAILURE");
                        break;
                    case SmsManager.RESULT_ERROR_RADIO_OFF:
                        Utils.showToast(context, "RESULT_ERROR_RADIO_OFF");
                        break;
                    case SmsManager.RESULT_ERROR_NULL_PDU:
                        Utils.showToast(context, "RESULT_ERROR_NULL_PDU");
                        break;
                    case SmsManager.RESULT_ERROR_NO_SERVICE:
                        Utils.showToast(context, "RESULT_ERROR_NO_SERVICE");
                        break;
                }
            }
        };
        private BroadcastReceiver receiveSMS = new BroadcastReceiver() {
            @Override
            public void onReceive(Context context, Intent intent) {
                Utils.showToast(context, "收信人已经成功接收");
            }
        };

    上面代码很清楚了就不多说了。这部分就是发短信的部分。下面开始讲“定时”部分。

    第二部分:定时

    最最关键的一行代码

     
    mAlarmManager.set(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), mTimedMessagePendingIntent);

    挨个部分看下,mAlarmManager:在Android系统中,闹钟和唤醒功能都是由Alarm Manager Service(ALMS)控制并管理的。他本身是一个服务,是通过AlarmManager这个辅助类来跟我们程序打交道的,这个mAlarmManager就是AlarmManager的一个对象

    mAlarmManager = (AlarmManager)context.getSystemService(Context.ALARM_SERVICE); = (AlarmManager)context.getSystemService(Context.ALARM_SERVICE);

    set方法作为设置一次性闹钟的方法其中的参数我们来挨个看一下。

    第一个参数:一共有四个值,这四个值分为两类,这两类决定了第二个参数的写法。

    1)  RTC_WAKEUP 
    2)  RTC 
    3)  ELAPSED_REALTIME_WAKEUP 
    4)  ELAPSED_REALTIME

    带RTC的两个参数是以1970.1.1这个日期为基准,第二个参数的时间是以这个UTC时间为基准;

    带ELAPSED的两个参数是以SystemClock.elapsedRealtime()这个时间为基准;

    带WAKEUP的两个参数是在系统休眠的状态下,仍可以唤醒系统而实现闹钟的功能。

    第二个参数:需要配合第一个参数进行使用

    第二个参数一定是在基准时间基础之上你想设置让它闹钟的时间。以RTC打个比方,你通过System.currentTimeMillis()这个方法得到了一个值,比如说是10000(就是打个比方。。)那么这个时候你在第二个参数位置假设给70000,那么就是说闹钟会在1分钟之后生效(1分钟60000毫秒)。知道第二个参数是什么意思就好了,一般这个位置直接填你想让它几点响就行calendar.getTimeInMillis(),calendar就是你想让他在几年几月几日几点几分响的这个时间。

    第三个参数:与广播联系起来的重要参数

    第三个参数是一个PendingIntent

            Intent intent = new Intent(this, AlarmBroadcastReceiver.class);
            intent.setAction("alarmBroadcastReceiverAction");
            intent.putExtra("content", content);
            intent.putExtra("telephone", telephone);
            PendingIntent mTimedMessagePendingIntent = PendingIntent.getBroadcast(this, 0, intent, 0);PendingIntent mTimedMessagePendingIntent = PendingIntent.getBroadcast(this, 0, intent, 0);

    具体什么是PendingIntent,参考这篇文章,本文不细说了。有了以上的几个部分,一整合基本就可以实现闹钟的功能了,至于BroadcastReceiver怎么弄这个就很简单了,本文也不在赘述。

    展开全文
  • Python-每天定时发消息

    2018-08-07 23:00:07
    基于python; 每天可以给指定人消息; 可以每天整点定时
  • Android例子源码可以定时批量发送短信短信时光机是一个可以自定义定时批量短信发送例子源码(类似于短信时光机),编辑的短信可以一键选择多个联系人进行定时发送,批量发送祝福短信这种情况在节假日是普遍存在的...
  • 短信定时连续发送

    千次阅读 2017-02-23 09:57:54
    //N为发送的个数 c为设置发送的个数  N = 0;  break;  }  N++;  smsManager.sendTextMessage(n, null, m, mSendPI, null/*deliveredPI*/);  try {  Thread.sleep(timeInterval*2000);  /...
  • android 定时发送短信源码

    热门讨论 2012-05-17 19:13:53
    android 定时发送短信源码
  • 定时短信发送

    2012-02-23 16:07:22
    android平台下的短信定时发送程序,可以进行短信接收发送,以及定时发送的功能
  • C#定时发送短信.pdf

    2020-06-17 22:04:36
    6/17/2020 C# Windows C# Windows服务循环发送手机短信 服务循环发送手机短信 :2010 11 19 发布日期:2010 年 11月 19 日 发布日期 年 月 日 所谓 Windows 后台服务,即后台自动运行的程序,一般随操作系统启动而启动,...
  • 这次我们使用短信,每天早上六点向女朋友发送短信 爱她 就每天早上六点告诉他今天的天气,再来句情话或者小故事 当然你也可以定时晚上发送 睡前小故事 参考文档 https://uniapp.dcloud.io/uniCloud/READ.
  • 工作需要,就自己封装了一个较为简单方便易使用的发送短信工具类 工作需要,就自己封装了一个较为简单方便易使用的发送短信工具类

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 17,652
精华内容 7,060
关键字:

如何设置短信定时发送