此代码不起作用。
我已经包含了<uses-permission android:name="android.permission.SEND_SMS"/>
在 list 中。
public class MainActivity extends AppCompatActivity {
Button send;
EditText phoneNo;
EditText sms;
SmsManager smsManager;
void sendMe(View view){
sendMessage();
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void sendMessage() {
phoneNo = (EditText) findViewById(R.id.PhoneNo);
sms = (EditText) findViewById(R.id.sms);
String Number = phoneNo.getText().toString();
String message = sms.getText().toString();
try {
smsManager = SmsManager.getDefault();
smsManager.sendTextMessage(Number, "Number", message, null, null);
Toast.makeText(this,"SMS SEND", Toast.LENGTH_SHORT).show();
}catch(Exception e){
Toast.makeText(this, "SMS FAILED", Toast.LENGTH_SHORT).show();
}
}
}
最佳答案
您还没有发布异常,所以我不能 100% 确定,但我假设此 iis 由于此调用中的第二个参数而失败:
smsManager.sendTextMessage(Number, "Number", message, null, null);
第二个参数是短信中心的电话号码。一般来说,除非您使用自定义 SMSC,否则您只需提供 null
作为第二个参数即可使用默认 SMSC。
关于java - 短信管理器不工作。我还在 list 中包含了许可,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56785381/