我需要在我的android应用程序中放入一个使用免费服务通过互联网发送免费短信的工具......
我看到许多应用程序都能够集成这些服务.. 我尝试了很多,但我没有发现任何有用的..
所以我问你......我如何使用uthsms.net
(例如)网关通过我的Android应用程序发送短信?
很抱歉这个通用问题..但我没有找到解决这个问题的任何起点。
提前致谢
我需要在我的android应用程序中放入一个使用免费服务通过互联网发送免费短信的工具......
我看到许多应用程序都能够集成这些服务.. 我尝试了很多,但我没有发现任何有用的..
所以我问你......我如何使用uthsms.net
(例如)网关通过我的Android应用程序发送短信?
很抱歉这个通用问题..但我没有找到解决这个问题的任何起点。
提前致谢
使用 Firebug 等工具查看单击网站上的按钮时发送的内容。我看到使用一些参数对 uthsms.net 进行了 POST-Request。您应该能够对您的应用程序执行相同的 POST。
这些是参数:
button: Send SMS
country: (some integer)
gateway: 0
hyderabad: your message
remLen: remaining length??
sindh: number to send sms to (without the +)
x: some integer
y: some integer
要在 Android 中发送此 POST 请求,请使用以下代码:
URL url = new URL("http://uthsms.net");
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
String data = URLEncoder.encode("button", "UTF-8") + "="
+ URLEncoder.encode("Send SMS", "UTF-8");
data += "&" + URLEncoder.encode("country", "UTF-8") + "="
+ URLEncoder.encode(country, "UTF-8");
data += "&" + URLEncoder.encode("gateway", "UTF-8") + "="
+ URLEncoder.encode("0", "UTF-8");
data += "&" + URLEncoder.encode("hyderabad", "UTF-8") + "="
+ URLEncoder.encode(message, "UTF-8");
data += "&" + URLEncoder.encode("remLen", "UTF-8") + "="
+ URLEncoder.encode(remLen, "UTF-8");
data += "&" + URLEncoder.encode("sindh", "UTF-8") + "="
+ URLEncoder.encode(number, "UTF-8");
data += "&" + URLEncoder.encode("x", "UTF-8") + "="
+ URLEncoder.encode("0", "UTF-8");
data += "&" + URLEncoder.encode("y", "UTF-8") + "="
+ URLEncoder.encode("0", "UTF-8");
conn.setDoOutput(true);
OutputStreamWriter wr = new OutputStreamWriter(
conn.getOutputStream());
wr.write(data);
wr.flush();
BufferedReader inStream = new BufferedReader(new InputStreamReader((conn.getInputStream())));
result = inStream.readLine();
inStream.close();
结果似乎是一个 html 文档。你应该在里面的某个地方找到成功消息,或者可能的错误。
试试GoogleVoice API
。它有文档,可以帮助您入门。