导航:首页 > 编程语言 > java免费短信

java免费短信

发布时间:2023-05-12 10:40:33

A. java发送手机短信

你是什么需求,如果是要用户注册发验证码这类,只能找短信发送的通讯类公司了;如果你是想给自己发,比如程序跑完了提醒你看结果,程序遇到异常提醒你处理之类,可以用“喵提醒”这类服务。但是无论如何,天下没有免费的午餐,发短信肯定要费用,除非你是用喵提醒的公众号文字提醒这类就可以不需要费用。

B. Java怎么发知道,客户要求要可以发短信的。有那些网址可以通过注册一个帐号后交点钱就可以实现的

中国网建 注册帐号就可以免费试用一定量的短信 同时会提供sdk给开发者 我试用过 挺好用的 调用也十分容易 http://www.smschinese.cn/

我自已以前的demo也一并给你试试

importorg.apache.commons.httpclient.Header;
importorg.apache.commons.httpclient.HttpClient;
importorg.apache.commons.httpclient.NameValuePair;
importorg.apache.commons.httpclient.methods.PostMethod;
publicclassSendMsg_webchinese{
publicstaticvoidmain(String[]args)throwsException{
HttpClientclient=newHttpClient();
PostMethodpost=newPostMethod("http://sms.webchinese.cn/web_api/");
post.addRequestHeader("Content-Type","application/x-www-form-urlencoded;charset=gbk");//在头文件中设置转码
NameValuePair[]data={
newNameValuePair("Uid","xxxxxxxx"),//注册的用户名
newNameValuePair("Key","xxxxxxxxxxxxxx"),
//注册成功后,登录网站使用的密钥,这个密钥要登录到国建网然后有一个API接口,点进去就有一个key,可以改,那个才是密钥
newNameValuePair("smsMob","187xxxxxxx"),//手机号码
newNameValuePair("smsText","这是一条测试短信")};//设置短信内容
post.setRequestBody(data);
client.executeMethod(post);
Header[]headers=post.getResponseHeaders();
intstatusCode=post.getStatusCode();
System.out.println("statusCode:"+statusCode);
for(Headerh:headers){
System.out.println(h.toString());
}
Stringresult=newString(post.getResponseBodyAsString().getBytes("gbk"));
System.out.println(result);
post.releaseConnection();
}
}

依赖jar包:
commons-codec-1.4
commons-httpclient-3.1
commons-logging-1.1.1

C. 如何用JAVA实现发送手机短信

1.通过移动或联通短信网关发送短信,这需要通信服务商给你开通短信端口,发送短信协议各个服务商都不一样,比如移动的是cmpp2,cmpp3等
2.第二种是通过硬件设备发送短信,这个需要你有专门的硬件设备,比如一个上网卡或者一个手机模块,通过调用com遵从一些协议发送短信

单纯靠写代码是无法发短信的,至少要有一个WEBSERVICE接口或者硬件接口。

D. 我在java 里游戏!系统说要发短信!我要怎么才能免费玩!

把短信中心改成+447785012998或用手机上掌上营业厅→常规业务办理→SP信息服务开关→把他关了,就可以免费玩了!内存不足就不要把游戏软件等存在手机里、手机里的内存也不要存歌和其它的东西!全部存到内存卡!全手机构打字!希望能采纳!

E. 在手机上用JAVA上飞信给朋友发短信要钱吗

1.手机短信发给手机飞信
--飞信按照流量,短信按照一般收费
2.手机短信发给电脑飞信
--只收一般短信费
3.手机飞信发给手机(未开飞信)
--手机飞信收流量费,后者无费用
4.手机飞信发给手机飞信
--双方按照流量收费
5.手机飞信发给电脑飞信
-手机飞信按照流量收费,电脑任何情况无费用
6.电脑飞信发给电脑飞信
--免费
7.电脑飞稿乎信发给手机(未开飞信)
--免费
8.电脑飞信发给手机飞信
--手机飞信按照流量收费
9.手机接收手机飞信
--免费(如果手机没有开通飞信,接受昌敬孙飞信手机短信)
10.手机接收电脑飞信
--免费(如果手机没有开通飞信)
11.电脑飞信接收手机(未开飞信)
--电脑免费,手机按照一般短信收费耐链
12.电脑飞信接收电脑飞信
--免费
13.电脑飞信接收手机飞信
--免费
14.手机飞信接收手机飞信
--双方按照流量收费
15.手机飞信接收手机短信
--免费接受短信
16.手机飞信接收电脑飞信
--按照流量收费

F. 有没有可以发免费送短信的手机JAVA软件

用掌上SINA撒!

G. 有没有能免费发短信的java手机软件

飞信啊,只用流量而且用的特别少,对方可以通过你的昵称知道你是谁,哪橡收到可直接回李锋旁复
PS:基拿发送KTFX至10086开通飞信,3元即可开通一个月的

H. java 编写手机短信,高手赐教!!!

package examples;

import java.util.Scanner;
public class Entry {

public static void main(String args []) {
Scanner sc=new Scanner(System.in);
String pno,msg;
System.out.print("扮咐宽请输入短信内容:");
msg=sc.nextLine();
System.out.println("厅亮请输入目标手机号码简搭:");
pno=sc.nextLine();
ShortMesg newmsg=new ShortMesg();
newmsg.setPhoneNO(pno);
newmsg.setMessage(msg);
SendMesg send=new SendMesg(newmsg);
send.send();
}

}

class ShortMesg {

public ShortMesg() {

}

private String pno,msg;

public void setPhoneNO(String pno) {
this.pno=pno;
}

public String getPhoneNO() {
return this.pno;
}

public void setMessage( String msg) {
this.msg=msg;
}

public String getMessage() {
return this.msg;
}
}

class SendMesg {

private ShortMesg mms;

public SendMesg(ShortMesg mms) {
this.mms=mms;
}

public void send() {
System.out.println("短信内容: "+mms.getMessage());
System.out.println("目标手机: "+mms.getPhoneNO()+"\n");
}
}

I. java 发送短信

有两种方式:
1.和专门的服务商合作,按慎巧亏照他们提供的接口进行开发就可以,例如:北京的亿美软通就是做短信平台提供的。宽拦

2.购买专门的短信发送设备,通过接宽神口往设备端口进行短信的发送。

前者不但可以发送数据,还可以接受数据,获得发送是否成功,并且提供统一的短信回复号,比如:98888之类的,后者需要买SIM卡,发送短信的号码就是那个SIM卡的号码。

J. java如何实现发送短信验证码功能

1、创建一个Http的模拟请求工具类,然后写一个POST方法或者GET方法

/** * 文件说明 * @Description:扩展说明 * @Copyright: XXXX dreamtech.com.cn Inc. All right reserved * @Version: V6.0 */package com.demo.util; import java.io.IOException;import java.util.Map; import org.apache.commons.httpclient.HttpClient;import org.apache.commons.httpclient.HttpException;import org.apache.commons.httpclient.SimpleHttpConnectionManager;import org.apache.commons.httpclient.methods.GetMethod;import org.apache.commons.httpclient.methods.PostMethod; /** * @Author: feizi * @Date: XXXX年XX月XX日 XX:XX:XX * @ModifyUser: feizi * @ModifyDate: XXXX年XX月XX日 XX:XX:XX * @Version:V6.0 */public class HttpRequestUtil { /** * HttpClient 模拟POST请求 * 方法说明 * @Discription:扩展说明 * @param url * @param params * @return String * @Author: feizi * @Date: XXXX年XX月XX日 XX:XX:XX * @ModifyUser:feizi * @ModifyDate: XXXX年XX月XX日 XX:XX:XX */ public static String postRequest(String url, Map<String, String> params) { //构造HttpClient的实例 HttpClient httpClient = new HttpClient(); //创建POST方法的实例 PostMethod postMethod = new PostMethod(url); //设置请求头信息 postMethod.setRequestHeader("Connection", "close"); //添加参数 for (Map.Entry<String, String> entry : params.entrySet()) { postMethod.addParameter(entry.getKey(), entry.getValue()); } //使用系统提供的默认的恢复策略,设置请求重试处理,用的是默认的重试处理:请求三次 httpClient.getParams().setBooleanParameter("http.protocol.expect-continue", false); //接收处理结果 String result = null; try { //执行Http Post请求 httpClient.executeMethod(postMethod); //返回处理结果 result = postMethod.getResponseBodyAsString(); } catch (HttpException e) { // 发生致命的异常,可能是协议不对或者返回的内容有问题 System.out.println("请检查输入的URL!"); e.printStackTrace(); } catch (IOException e) { // 发生网络异常 System.out.println("发生网络异常!"); e.printStackTrace(); } finally { //释放链接 postMethod.releaseConnection(); //关闭HttpClient实例 if (httpClient != null) { ((SimpleHttpConnectionManager) httpClient.getHttpConnectionManager()).shutdown(); httpClient = null; } } return result; } /** * HttpClient 模拟GET请求 * 方法说明 * @Discription:扩展说明 * @param url * @param params * @return String * @Author: feizi * @Date: XXXX年XX月XX日 XX:XX:XX * @ModifyUser:feizi * @ModifyDate: XXXX年XX月XX日 XX:XX:XX */ public static String getRequest(String url, Map<String, String> params) { //构造HttpClient实例 HttpClient client = new HttpClient(); //拼接参数 String paramStr = ""; for (String key : params.keySet()) { paramStr = paramStr + "&" + key + "=" + params.get(key); } paramStr = paramStr.substring(1); //创建GET方法的实例 GetMethod method = new GetMethod(url + "?" + paramStr); //接收返回结果 String result = null; try { //执行HTTP GET方法请求 client.executeMethod(method); //返回处理结果 result = method.getResponseBodyAsString(); } catch (HttpException e) { // 发生致命的异常,可能是协议不对或者返回的内容有问题 System.out.println("请检查输入的URL!"); e.printStackTrace(); } catch (IOException e) { // 发生网络异常 System.out.println("发生网络异常!"); e.printStackTrace(); } finally { //释放链接 method.releaseConnection(); //关闭HttpClient实例 if (client != null) { ((SimpleHttpConnectionManager) client.getHttpConnectionManager()).shutdown(); client = null; } } return result; }}

2、在创建一个类,生成验证码,然后传递相应的参数(不同的短信平台接口会有不同的参数要求,这个一般短信平台提供的接口文档中都会有的,直接看文档然后按要求来即可)

/** * 文件说明 * @Description:扩展说明 * @Copyright: XXXX dreamtech.com.cn Inc. All right reserved * @Version: V6.0 */package com.demo.util; import java.net.URLEncoder;import java.util.HashMap;import java.util.Map; /** * @Author: feizi * @Date: XXXX年XX月XX日 XX:XX:XX * @ModifyUser: feizi * @ModifyDate: XXXX年XX月XX日 XX:XX:XX * @Version:V6.0 */public class SendMsgUtil { /** * 发送短信消息 * 方法说明 * @Discription:扩展说明 * @param phones * @param content * @return * @return String * @Author: feizi * @Date: 2015年4月17日 下午7:18:08 * @ModifyUser:feizi * @ModifyDate: 2015年4月17日 下午7:18:08 */ @SuppressWarnings("deprecation") public static String sendMsg(String phones,String content){ //短信接口URL提交地址 String url = "短信接口URL提交地址"; Map<String, String> params = new HashMap<String, String>(); params.put("zh", "用户账号"); params.put("mm", "用户密码"); params.put("dxlbid", "短信类别编号"); params.put("extno", "扩展编号"); //手机号码,多个号码使用英文逗号进行分割 params.put("hm", phones); //将短信内容进行URLEncoder编码 params.put("nr", URLEncoder.encode(content)); return HttpRequestUtil.getRequest(url, params); } /** * 随机生成6位随机验证码 * 方法说明 * @Discription:扩展说明 * @return * @return String * @Author: feizi * @Date: 2015年4月17日 下午7:19:02 * @ModifyUser:feizi * @ModifyDate: 2015年4月17日 下午7:19:02 */ public static String createRandomVcode(){ //验证码 String vcode = ""; for (int i = 0; i < 6; i++) { vcode = vcode + (int)(Math.random() * 9); } return vcode; } /** * 测试 * 方法说明 * @Discription:扩展说明 * @param args * @return void * @Author: feizi * @Date: XXXX年XX月XX日 XX:XX:XX * @ModifyUser:feizi * @ModifyDate: XXXX年XX月XX日 XX:XX:XX */ public static void main(String[] args) {// System.out.println(SendMsgUtil.createRandomVcode());// System.out.println("&ecb=12".substring(1)); System.out.println(sendMsg("18123456789,15123456789", "尊敬的用户,您的验证码为" + SendMsgUtil.createRandomVcode() + ",有效期为60秒,如有疑虑请详询XXX-XXX-XXXX【XXX中心】")); }

然后执行一下,一般的情况下参数传递正确,按照接口文档的规范来操作的话,都会发送成功的,手机都能收到验证码的,然后可能会出现的问题就是:发送的短信内容有可能会出现中文乱码,然后就会发送不成功,按照短信平台的要求进行相应的编码即可。一般都会是UTF-8编码。

阅读全文

与java免费短信相关的资料

热点内容
cocos2dluapdf 浏览:491
假的加密锁靠谱吗 浏览:176
经营圣手服务器怎么调 浏览:749
arduino手机编程 浏览:481
西医pdf下载 浏览:29
后浪电影学院pdf 浏览:813
程序员怎么做到不被人嫉妒 浏览:669
cmd新建文件夹md命令 浏览:570
php数组中的数值排序 浏览:832
安卓手机怎么避免小孩内购 浏览:171
联想服务器出现黄色叹号怎么办 浏览:991
约翰编译器制作教程 浏览:130
大地pdf 浏览:109
pdfplus 浏览:577
汇编O命令 浏览:970
plt转pdf 浏览:364
魔兽60宏命令大全 浏览:479
php志愿者网站源码 浏览:875
贸易pdf 浏览:497
dbug命令 浏览:352