Delphi Android 拨打电话


本文整理自网络,侵删。

 
Delphi Android电话
市场上有许多类型的移动设备应用程序,尤其是将来的应用程序。

我最近遇到的挑战之一是,一位客户问我,从他的应用程序中,用户可以拨打公司电话,也可以拨打电话。

在第一种情况下,我发现拨打电话需要CALL_PHONE权限,这是一个危险的权限(因为它可以通过拨打电话产生费用),因此需要Application用户的显式权限。(我们通过上面的链接向您展示了如何请求)

然后,该主题得以简化,因为Delphi为我们提供了一个处理Phone,FMX.PhoneDialer的单元。

电话示例
在下面的示例中,我们提出一个问题,以便用户知道将要进行呼叫,如果用户回答“是”,则进行呼叫。

Uses
  FMX.PhoneDialer;
 
private
  { Private declarations }
  PhoneDialerService: IFMXPhoneDialerService; // Servicio Phone Dialer
 
procedure PhoneCall;
begin
  if TPlatformServices.Current.SupportsPlatformService(IFMXDialogServiceASync, IInterface(ASyncService)) then
  begin
    ASyncService.MessageDialogAsync('要打电话吗?', TMsgDlgType.mtConfirmation,
      [TMsgDlgBtn.mbYes, TMsgDlgBtn.mbNo], TMsgDlgBtn.mbNo, 0,
      procedure(const AResult: TModalResult)
      begin
        case AResult of
          mrYES:
            begin
              if TPlatformServices.Current.SupportsPlatformService(IFMXPhoneDialerService, IInterface(PhoneDialerService)) then
                PhoneDialerService.Call('13500000000')
              else
                ShowMessage('不支持的电话.');
            end;
        end;
      end);
  end;
end;
请注意:如果您看到前面的示例,则在使用PhoneDialerService.Call方法('13500000000')进行呼叫之前,我们将检查Android版本是否支持该服务,并在TPlatformServices.Current.SupportsPlatformService所在行中对其进行检查(IFMXPhoneDialerService,IInterface(PhoneDialerService))然后。

我们知道,所有新版本的Android都支持这些服务,但请记住,仍有一些移动设备的版本确实很旧,

相关阅读 >>

Delphi android检查互联网连接

Delphi 检测鼠标键盘多久没有活动

Delphi setcurrentdir 设置当前文件夹路径

Delphi char数组、string和pchar的相互转换

如何在 Delphi 中静态链接 sqlite

Delphi xe intraweb 程序在iis下的发布详细教程

Delphi setformfullscreen()窗体全屏显示

Delphi [数据库连接字符串] access 连接字符串

Delphi shgetfileinfo函数获取任何文件大图标

Delphi changefileext 更改文件的后缀扩展名

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...