使用Twilio发送短信android

问题描述:

我想使用Twilio发送短信。我使用的是post中给出的代码。但我得到的答复代码是201而不是200.答案<?xml version='1.0' encoding='UTF-8'?>也很奇怪。代码或证书有错吗?使用Twilio发送短信android

private class AsyncTaskRunner extends AsyncTask<String, String, String> { 
 

 
     private String resp; 
 

 

 
     @Override 
 
     protected String doInBackground(String... params) { 
 

 
      try{ 
 
       String twilioSID="XYZ"; 
 
       String twilioSecret="ABC"; 
 

 

 

 
       String urlStr = "https://"+twilioSID+":"+twilioSecret+"@api.twilio.com/2010-04-01/Accounts/"+twilioSID+"/SMS/Messages"; 
 

 
       HttpClient httpclient = new DefaultHttpClient(); 
 
       HttpPost httppost = new HttpPost(urlStr); 
 
       String base64EncodedCredentials = "Basic " 
 
         + Base64.encodeToString(
 
         ("XYZ" + ":" + "ABC").getBytes(), 
 
         Base64.NO_WRAP); 
 

 

 
       httppost.setHeader("Authorization", base64EncodedCredentials); 
 

 

 
       List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(); 
 
       nameValuePairs.add(new BasicNameValuePair("From", "+12389234455")); 
 
       nameValuePairs.add(new BasicNameValuePair("To", "+918423664906")); 
 
       nameValuePairs.add(new BasicNameValuePair("Body", "Welcome to Twilio")); 
 

 
       httppost.setEntity(new UrlEncodedFormEntity(
 
         nameValuePairs)); 
 

 
       // Execute HTTP Post Request 
 
       HttpResponse response = httpclient.execute(httppost); 
 
       int status = response.getStatusLine().getStatusCode(); 
 
       System.out.println("sammy_response_code "+status); 
 
       HttpEntity entity = response.getEntity(); 
 
       if(entity != null){ 
 
        resp = EntityUtils.toString(entity); 
 
       } 
 

 

 
      }catch (Exception e){ 
 
       System.out.println("sammy_Exception "+e); 
 
      } 
 

 

 
      return resp; 
 
     } 
 

 
      @Override 
 
     protected void onPostExecute(String result) { 
 
      //pd.dismiss(); 
 
       System.out.println("sammy_response "+result); 
 

 
     } 
 

 

 

 

 

 

 
    }

+0

https://www.twilio.com/blog/2016/05/how-to-send-an-sms-from-android.html –

请波纹管检查所有:

201响应

  1. 这是不是 “要” 的电话号码是否正确?它总是值得检查...
  2. “To”手机是否有接待?如果没有,请尝试前往 的接待处,然后重试。
  3. “收件人”手机是否收到其他来源发送的短信? 尝试使用另一部手机向“手机”发送测试消息。
  4. 您正在发送漫游到国际的电话? Twilio目前无法支持SMS的国际漫游 。
  5. 是国家 或运营商的“请勿联系”列表中的“收件人”电话号码?例如,印度有一个特别严格的国家Do 非联系清单。在收到来自Twilio的SMS消息之前,“To”号码将需要从任何 Do Not Contact列表中删除。
  6. 您正在发送短信的国家是否有特殊的 前缀,用于发送短信?墨西哥和 阿根廷是这方面的例子。
  7. 终端号码的提供商是否过滤了它?某些运营商将 发送大量短信的黑名单号码。尝试从另一个Twilio长码发送 相同的消息。如果正确收到 ,您可能会遇到运营商的音量阈值。 查看此FAQ以获取更多信息。
  8. 尝试多次。尝试多次并没有什么坏处。再次尝试 通常是向自己证明和帮助您确保一切正确无误的最佳方式。一定要复制 SMS消息SID为每个未到达的尝试。

当我在URL后添加“.json”时,得到了回应。即使响应代码是201,响应即将到来。