Я работаю над SMS API, и он отлично работает в Интернете, но в приложении для Android появляется сообщение об ошибке: отправка SMS невозможна.Ответ, сгенерированный из этого API:
http://bulksms.mysmsmantra.com:8080/WebSMS/SMSAPI.jsp?username=bestfolio&password=12345678&sendername=AGPUBS&mobileno=913125603722&message=welcome
Вот моя активность отправки SMS
public class SmsSendActivity extends AsyncTask<String, Void, Void> {
private Context context;
private String mobile;
//private String SMS;
SmsSendActivity(Context context, String mobile, String SMS) {
this.context = context;
this.mobile = mobile;
// this.SMS = SMS;
}
@Override
protected Void doInBackground(String... strings) {
try {
// Construct data
String username = "username=" + "bestfolio";
String password = "&password=" + "12345678";
String sendername = "&sendername=" + "AGPUBS";
String mobileno = "&mobileno=" + URLEncoder.encode(strings[0], "UTF-8");
String message = "&message=" + URLEncoder.encode(strings[1], "UTF-8");
String url = "http://bulksms.mysmsmantra.com:8080/WebSMS/SMSAPI.jsp?";
// Send data
String data = username + password + sendername + mobileno + message;
Log.e("smsapi", url + data);
HttpURLConnection conn = (HttpURLConnection) new URL(url + data).openConnection();
conn.setDoOutput(true);
conn.setRequestMethod("POST");
conn.setRequestProperty("Content-Length", Integer.toString(data.length()));
conn.getOutputStream().write(data.getBytes("UTF-8"));
final BufferedReader rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
final StringBuffer stringBuffer = new StringBuffer();
String line;
while ((line = rd.readLine()) != null) {
Log.e("SMS", "" + line);
}
rd.close();
//return stringBuffer.toString();
} catch (Exception e) {
Log.e("Error is", "" + e);
}
return null;
}
@Override
protected void onPreExecute() {
super.onPreExecute();
}
@Override
protected void onPostExecute(Void aVoid) {
super.onPostExecute(aVoid);
}
}
Здесь я звоню этому классу
new SmsSendActivity(getApplicationContext(), mobile, thanksMessage).execute(mobile, thanksMessage);