我正在创建一个应用程序,其中我要求用户可以向其他用户发送消息,但是在发送消息时他看不到用户编号,并且消息应该通过网络发送。就像在队长打电话给客户时一样客户接到不是由 Careem 队长打来的公司电话。我已经在应用程序中看到并尝试了文本本地(Sms 网关),但我得到了成功的 toast,但没有发送消息。我创建了一个帐户并创建了一个 Api 密钥这是类的代码:
public class MainActivity extends AppCompatActivity {
private EditText editTextTo, editTextMessage;
RelativeLayout activity_main;
Button button;
private RequestQueue requestQueue;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
activity_main = (RelativeLayout) findViewById(R.id.activity_main);
editTextTo = (EditText) findViewById(R.id.editTextTo);
editTextMessage = (EditText) findViewById(R.id.editTextMessage);
button = (Button) findViewById(R.id.btn);
requestQueue = Volley.newRequestQueue(this);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
try {
// Construct data
String apiKey = "apikey=" + "syKXFnvCg9I-TNtZZUIeseWZX5g*************";
String message = "&message=" + editTextMessage.getText().toString();
String sender = "&sender=" + "Jims Autos";
String numbers = "&numbers=" + editTextTo.getText().toString();
// Send data
HttpURLConnection conn = (HttpURLConnection) new URL("https://api.txtlocal.com/send/?").openConnection();
String data = apiKey + numbers + message + sender;
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) {
Toast.makeText(MainActivity.this, line.toString(), Toast.LENGTH_LONG).show();
}
rd.close();
} catch (Exception e) {
Toast.makeText(MainActivity.this, e.getMessage(), Toast.LENGTH_SHORT).show();
}
}
});
StrictMode.ThreadPolicy st = new StrictMode.ThreadPolicy.Builder().build();
StrictMode.setThreadPolicy(st);
}
}
但我只收到这条祝酒消息。我正在上传图片:
其次,我不能真正理解这项服务,根据我在本文中的本地内容,它也从 sim 而不是网络发送消息给我的要求是我不必为此消息服务设置 sim。应该通过发送消息net 或某些网络没有 sim 应该用于此服务,我必须为此服务购买一些在线套餐。所以我的问题是这可能,如果是的话,我怎么能这样做从网络发送消息。我从昨天开始搜索,但找不到这样做的方法。注意:请不要给出我已经使用过的短信管理器的想法,我的要求完全不同 谢谢