手機(jī)短信java代碼 安卓發(fā)送短信代碼

如何用Java實現(xiàn)短信自動發(fā)送功能?

Java實現(xiàn)短信自動發(fā)送功能主要是用httpclient實現(xiàn)的,要有發(fā)短信的端口。

呼和浩特網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)!從網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)等網(wǎng)站項目制作,到程序開發(fā),運營維護(hù)。創(chuàng)新互聯(lián)公司2013年成立到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運維經(jīng)驗,來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)。

1、硬件設(shè)備是一個3G網(wǎng)卡;

2、軟件方面需要sun提過的java底層通信common包;

3、此外還需要第三方庫SMSLib,這個是開源項目,主要用于實現(xiàn)java發(fā)短信的功能;

主要代碼如下:

HttpClient?client?=?new?HttpClient();

PostMethod?post?=?new?PostMethod(

"");

post.addRequestHeader("Content-Type",

"application/x-www-form-urlencoded;charset=utf-8");//?在頭文件中設(shè)置轉(zhuǎn)碼

NameValuePair[]?data?=?{?new?NameValuePair("sname",?"*****"),

new?NameValuePair("spwd",?"*****"),

new?NameValuePair("scorpid",?"*****"),

new?NameValuePair("sprdid",?"*****"),

new?NameValuePair("sdst",?"*****"),

new?NameValuePair("smsg",?"*****")?};

post.setRequestBody(data);

client.executeMethod(post);

Header[]?headers?=?post.getResponseHeaders();

int?statusCode?=?post.getStatusCode();

System.out.println("statusCode:"?+?statusCode);

for?(Header?h?:?headers)?{

System.out.println(h.toString());

}

String?result?=?new?String(post.getResponseBodyAsString().getBytes("utf-8"));

System.out.println(result);

post.releaseConnection();

Java源程序(.java文件)——java字節(jié)碼文件(.class文件)——由解釋執(zhí)行器(java.exe)將字節(jié)碼文件加載到j(luò)ava虛擬機(jī)(jvm)——字節(jié)碼文件(.class)就會在java虛擬機(jī)中執(zhí)行。

Java是一門面向?qū)ο缶幊陶Z言,不僅吸收了C++語言的各種優(yōu)點,還摒棄了C++里難以理解的多繼承、指針等概念,因此Java語言具有功能強(qiáng)大和簡單易用兩個特征。Java語言作為靜態(tài)面向?qū)ο缶幊陶Z言的代表,極好地實現(xiàn)了面向?qū)ο罄碚摚试S程序員以優(yōu)雅的思維方式進(jìn)行復(fù)雜的編程? ?。

Java具有簡單性、面向?qū)ο?、分布式、健壯性、安全性、平臺獨立與可移植性、多線程、動態(tài)性等特點? 。Java可以編寫桌面應(yīng)用程序、Web應(yīng)用程序、分布式系統(tǒng)和嵌入式系統(tǒng)應(yīng)用程序等

java發(fā)送手機(jī)短信

package?com.winhands.quartz;

import?java.io.PrintWriter;

import?java.io.StringWriter;

import?java.io.UnsupportedEncodingException;

import?java.util.ArrayList;

import?java.util.Date;

import?java.util.HashMap;

import?java.util.List;

import?org.slf4j.Logger;

import?org.slf4j.LoggerFactory;

import?com.winhands.base.service.BaseService;

import?com.winhands.util.BaseConstant;

import?com.winhands.web.dict.entity.DictCommon;

import?com.winhands.web.xfhf.entity.SmsOutBox;

import?com.winhands.web.xfhf.entity.SmsVisit;

import?com.winhands.web.xfhf.entity.TaskInfo;

public?class?SmsSendSync?{

public?BaseService?baseService;

public?BaseService?baseServiceMas;

public?static?final?Logger?logger?=?LoggerFactory.getLogger(SmsSendSync.class);

//同步短信到mas機(jī)待發(fā)短信表

public?void?work()?{

//?任務(wù)ID?100001

//?首先查詢?nèi)蝿?wù)是否正在執(zhí)行

//?查詢列表

TaskInfo?taskInfo?=?new?TaskInfo();

taskInfo.setTask_id("100001");

try?{

taskInfo?=?(TaskInfo)?baseService.queryForObject("sms_send.queryTaskStatus",?taskInfo);

//如果狀態(tài)是處室狀態(tài)則執(zhí)行,否則此次任務(wù)不執(zhí)行

if?(BaseConstant.task_status_cs.equals(taskInfo.getTask_status()))?{

taskInfo.setTask_status(BaseConstant.task_status_zx);//設(shè)置任務(wù)執(zhí)行狀態(tài)為執(zhí)行

taskInfo.setTask_last_start_time(new?Date());//設(shè)置任務(wù)執(zhí)行開始時間

baseService.update("sms_send.updateTaskStatus",?taskInfo);//

//移動號碼庫

HashMapString,String?hashMap?=?new?HashMapString,String();

//134?、135、136、137、138、139、150、151、152、158、159、182、183、184。157、187、188

hashMap.put("134",?"134");

hashMap.put("135",?"135");

hashMap.put("136",?"136");

hashMap.put("137",?"137");

hashMap.put("138",?"138");

hashMap.put("139",?"139");

hashMap.put("150",?"150");

hashMap.put("151",?"151");

hashMap.put("152",?"152");

hashMap.put("157",?"157");

hashMap.put("158",?"158");

hashMap.put("159",?"159");

hashMap.put("182",?"182");

hashMap.put("183",?"183");

hashMap.put("184",?"184");

hashMap.put("187",?"187");

hashMap.put("188",?"188");

SmsVisit?smsSend?=?new?SmsVisit();

smsSend.setSms_status(BaseConstant.sms_status_csh);

List?list?=?baseService.queryForList("sms_send.queryForSmsTask",?smsSend);

List?smsMasList?=?new?ArrayList();

List?smsList?=?new?ArrayList();

if?(list?==?null||list.size()==0)?return;//?如果列表為空,沒有待辦任務(wù),則任務(wù)結(jié)束

for?(int?i?=?0;?i??list.size();?i++)?{

smsSend?=?(SmsVisit)?list.get(i);

//String?msg?=?messagecontent(smsSend);

String?msg?=?smsSend.getSpare_2();

if(hashMap.get(smsSend.getVisit_phone().substring(0,?3))!=null){

SmsOutBox?smsOutBox?=?new?SmsOutBox();

smsOutBox.setSismsid(smsSend.getP_id());

smsOutBox.setReqdeliveryreport(BaseConstant.NoReport);

smsOutBox.setApplicationid(BaseConstant.APPLICATIONID);

smsOutBox.setDestaddr(smsSend.getVisit_phone());

smsOutBox.setMsgfmt(BaseConstant.MSGFMT);

smsOutBox.setRequesttime(new?Date());

smsOutBox.setExtcode(smsSend.getExtccode());

smsOutBox.setSendmethod(BaseConstant.NoMsg);//?正常短信

smsOutBox.setMessagecontent(msg);

smsMasList.add(smsOutBox);

}else{

boolean?con?=?true;

String?lastMsg?=?msg;

int?xh?=0;

while(con){

lastMsg?=?msg.substring(0,msg.length()??55???55?:?msg.length());

msg?=?msg.substring(msg.length()??55???55?:?msg.length(),msg.length());

if?(msg.equals(""))?{

con?=?false;

}

SmsOutBox?smsOutBox?=?new?SmsOutBox();

smsOutBox.setSismsid(smsSend.getP_id()+(xh==0?"":xh));

xh++;

smsOutBox.setReqdeliveryreport(BaseConstant.NoReport);

smsOutBox.setApplicationid(BaseConstant.APPLICATIONID);

smsOutBox.setDestaddr(smsSend.getVisit_phone());

smsOutBox.setMsgfmt(BaseConstant.MSGFMT);

smsOutBox.setRequesttime(new?Date());

smsOutBox.setExtcode(smsSend.getExtccode());

smsOutBox.setSendmethod(BaseConstant.NoMsg);//?正常短信

smsOutBox.setMessagecontent(lastMsg);

smsMasList.add(smsOutBox);

}

}

SmsVisit?smsSendTemp?=?new?SmsVisit();

smsSendTemp.setP_id(smsSend.getP_id());?

//smsSendTemp.setSpare_2(msg);//短信內(nèi)容

smsSendTemp.setSms_status_time(new?Date());

smsSendTemp.setSms_status(BaseConstant.sms_status_yfswg);?

smsList.add(smsSendTemp);

}

baseService.insertBatch("sms_send.insertSmsOutBox",?smsMasList);//插入本地歷史記錄表

baseServiceMas.insertBatch("sms_mas.insertSmsOutBox",?smsMasList);//插入mas機(jī)待發(fā)送表

baseService.updateBatch("sms_send.updateSmsVisit",?smsList);//更新回訪記錄狀態(tài)

}

}?catch?(Exception?e)?{

e.printStackTrace();

//baseService.saveLog("同步短信到mas機(jī)待發(fā)短信表",?"100001",?"同步短信到mas機(jī)待發(fā)短信表錯誤");

logger.error("同步短信到mas機(jī)待發(fā)短信表錯誤",?getTrace(e));

}finally{

try?{

taskInfo.setTask_status(BaseConstant.task_status_cs);//設(shè)置任務(wù)執(zhí)行狀態(tài)為初始

taskInfo.setTask_last_end_time(new?Date());//設(shè)置任務(wù)執(zhí)行結(jié)束時間

taskInfo.setTask_status_desc("任務(wù)執(zhí)行結(jié)束");

baseService.update("sms_send.updateTaskStatus",?taskInfo);//

}?catch?(Exception?e2)?{

e2.printStackTrace();

//?TODO:?handle?exception

}

}

}

public?String?messagecontent(SmsVisit?smsSend){

//XX,您好!您于XX月XX日辦理XX業(yè)務(wù)(或XX,您好!XX大隊于XX月XX日對你單位進(jìn)行監(jiān)督檢查/行政處罰/火災(zāi)調(diào)查),現(xiàn)進(jìn)行滿意度回訪,請回復(fù)數(shù)字:1為滿意;2為基本滿意;3為不滿意。感謝您對消防工作的支持!回復(fù)免費。宿遷市公安消防支隊

//首先根據(jù)業(yè)務(wù)類型來判斷采用哪種模板?監(jiān)察

StringBuffer?msg?=?new?StringBuffer("");?

if(BaseConstant.jiancha.equals(smsSend.getVisit_deal_business_type())){

msg.append(smsSend.getVisit_name_cn())

???.append(",您好!")

???.append(smsSend.getVisit_deal_org_name())

???.append("于")

???.append(smsSend.getVisit_deal_time().substring(4,?6)).append("月")

???.append(smsSend.getVisit_deal_time().substring(6,?8)).append("日")

???.append("對你單位進(jìn)行").append(DictCommon.getEntryMap(BaseConstant.jiancha).get(smsSend.getVisit_deal_business()))

???.append(",現(xiàn)進(jìn)行滿意度回訪,請回復(fù)數(shù)字:1為滿意;2為基本滿意;3為不滿意。感謝您對消防工作的支持!");

}else?if(BaseConstant.yewu.equals(smsSend.getVisit_deal_business_type())){

msg.append(smsSend.getVisit_name_cn())

???.append(",您好!您于")

???.append(smsSend.getVisit_deal_time().substring(4,?6)).append("月")

???.append(smsSend.getVisit_deal_time().substring(6,?8)).append("日")

???.append("辦理").append(smsSend.getVisit_deal_business()).append("業(yè)務(wù),")

???.append("現(xiàn)進(jìn)行滿意度回訪,請回復(fù)數(shù)字:1為滿意;2為基本滿意;3為不滿意。感謝您對消防工作的支持!");

}

return?msg.toString();

}

public?BaseService?getBaseService()?{

return?baseService;

}

public?void?setBaseService(BaseService?baseService)?{

this.baseService?=?baseService;

}

public?BaseService?getBaseServiceMas()?{

return?baseServiceMas;

}

public?void?setBaseServiceMas(BaseService?baseServiceMas)?{

this.baseServiceMas?=?baseServiceMas;

}

public?static?void?main(String[]?args){

List?smsMasList?=?new?ArrayList();?

try?{

String?msg?=?"***,您好!*********于2015年5月2日對你單位進(jìn)行監(jiān)督檢查,現(xiàn)進(jìn)行滿意度回訪,請回復(fù)數(shù)字:1為滿意;2為基本滿意;3為不滿意。感謝您對消防工作的支持!";

SmsOutBox?smsOutBox?=?new?SmsOutBox();

smsOutBox.setSismsid("12344");

smsOutBox.setReqdeliveryreport(BaseConstant.NoReport);

smsOutBox.setApplicationid(BaseConstant.APPLICATIONID);

smsOutBox.setDestaddr("111");

smsOutBox.setMsgfmt(BaseConstant.MSGFMT);

smsOutBox.setRequesttime(new?Date());

smsOutBox.setExtcode("2222");

smsOutBox.setSendmethod(BaseConstant.NoMsg);//?正常短信

boolean?con?=?true;

String?lastMsg?=?msg;

while(con){

lastMsg?=?msg.substring(0,msg.length()??55???55?:?msg.length());

msg?=?msg.substring(msg.length()??55???55?:?msg.length(),msg.length());

if?(msg.equals(""))?{

con?=?false;

}

SmsOutBox?smOutBox_temp?=?new?SmsOutBox();?

smOutBox_temp?=?smsOutBox;

smOutBox_temp.setMessagecontent(lastMsg);

?

smsMasList.add(smOutBox_temp);

}

for(Object?o:smsMasList){

SmsOutBox?smsOutBox2?=?(SmsOutBox)o;

System.out.println(smsOutBox2.getMessagecontent());

}

}?catch?(Exception?e)?{

//?TODO?Auto-generated?catch?block

e.printStackTrace();

}

}

public?static?String?getTrace(Throwable?t)?{

StringWriter?stringWriter=?new?StringWriter();

PrintWriter?writer=?new?PrintWriter(stringWriter);

t.printStackTrace(writer);

StringBuffer?buffer=?stringWriter.getBuffer();

return?buffer.toString();

}

}

短信不是你想發(fā)??想發(fā)就能發(fā),是收費的,我們公司是租用的移動MAS平臺的短信發(fā)送接收平臺,上面那是和一個和mas同步的一個小程序,租用別人的mas平臺是收費的,平臺有很多自己選擇,有發(fā)送接口可以調(diào),發(fā)送內(nèi)容自己提供

編寫一個短信編輯與發(fā)送界面Java程序

圖形界面效果圖

參考代碼

import?java.awt.*;

import?java.awt.event.*;

import?javax.swing.*;

//窗口繼承JFrame,?實現(xiàn)了ActionListener接口

public?class?MsgFrame?extends?JFrame?implements?ActionListener?{

private?JTextField?tf;

private?JTextArea?ta;

private?JButton?jbSend;

private?static?final?String?TIPS="短信內(nèi)容不能為空";

public?MsgFrame()?{

ta?=?new?JTextArea();

ta.setText(TIPS);

ta.setEditable(false);

add(ta);

tf?=?new?JTextField(20);

JLabel?jl?=?new?JLabel("短信編輯");

jbSend?=?new?JButton("發(fā)送");

jbSend.addActionListener(this);

JPanel?jps=new?JPanel();

jps.add(jl);

jps.add(tf);

jps.add(jbSend);

add(jps,BorderLayout.SOUTH);

setSize(386,?280);//大小

setLocationRelativeTo(null);//居中

setTitle("發(fā)送短信窗口");

setDefaultCloseOperation(EXIT_ON_CLOSE);

}

public?static?void?main(String[]?args)?{

SwingUtilities.invokeLater(new?Runnable()?{

public?void?run()?{

new?MsgFrame().setVisible(true);//創(chuàng)建窗口并設(shè)置可見

}

});

}

@Override

public?void?actionPerformed(ActionEvent?e)?{

JButton?jb=(JButton)?e.getSource();

if(jbSend==jb){//當(dāng)發(fā)送按鈕被點擊時,進(jìn)行處理

String?text=tf.getText().trim();

if(text.isEmpty()){

JOptionPane.showMessageDialog(this,?TIPS);//如果內(nèi)容為空,那么提示

}else{

ta.append("\r\n"+text);//如果內(nèi)容不為空,那么添加到文本域

tf.setText("");//發(fā)送完成,清空文本框的內(nèi)容

}

}

}

}

java 編寫手機(jī)短信,高手賜教!!!

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("請輸入短信內(nèi)容:");

msg=sc.nextLine();

System.out.println("請輸入目標(biāo)手機(jī)號碼:");

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("短信內(nèi)容: "+mms.getMessage());

System.out.println("目標(biāo)手機(jī): "+mms.getPhoneNO()+"\n");

}

}

分享文章:手機(jī)短信java代碼 安卓發(fā)送短信代碼
文章位置:http://muchs.cn/article14/hjsgde.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站建設(shè)、云服務(wù)器小程序開發(fā)網(wǎng)站維護(hù)、關(guān)鍵詞優(yōu)化、網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)