如何在Android中使用Delphi XE5发送短信

rri*_*bas 17 delphi sms android firemonkey delphi-xe5

有谁知道如何让这个工作?我得到的最接近的是下面的代码,但没有成功.首先,当它告诉您需要SEND_SMS许可时,它会给您一些希望.但在您设置此权限后,没有任何反应!

uses
 Androidapi.JNI.JavaTypes;

procedure TForm1.Button1Click(Sender: TObject);
var
  smsManager: JSmsManager;
  smsTo, smsFrom: JString;
begin
  smsManager:= TJSmsManager.JavaClass.getDefault;
  smsTo:= StringToJString('552199999999'); //replace with the right destination number
  smsFrom:= StringToJString('552499999999'); //replace with the right originator number
  smsManager.sendTextMessage(smsTo, smsFrom, StringToJString(Edit1.Text), nil, nil);
end;
Run Code Online (Sandbox Code Playgroud)

mh *_*qia 12

尝试将空值(nil)传递给函数调用的scAddress参数sendTextMessage以使用当前的默认SMS中心:

uses
  Androidapi.JNI.JavaTypes, Androidapi.JNI.Telephony;

procedure TForm1.Button1Click(Sender: TObject);
var
  smsTo: JString;
  smsManager: JSmsManager;
begin
  smsManager := TJSmsManager.JavaClass.getDefault;
  smsTo := StringToJString('091...');
  smsManager.sendTextMessage(smsTo, nil, StringToJString('Test SMS'), nil, nil);
end;
Run Code Online (Sandbox Code Playgroud)