delphi android 短信,delphi xe5 android 开发实现手机打电话和发短信

其实都可以通过intent和URI调用系统功能.Windows程序员可以理解成是ShellExecute.这个是万金油.可以有调用各种功能.后面会介绍.

1.短信息.很简单

方法a.不使用Intent而是直接发短信. smsManager对应的Delphi代码应该是:

至于双卡双待用哪个卡来发送这些我没有详细研究,有兴趣的朋友可以研究下. 方法b.使用Intent启动系统的短信程序: 我猜以后这种方式会和电话一样会合并到TPlatformServices中.

2.电话

这段代码适用于iOS和Android. Android平台上实际上电话的封装就是系统的Intent方式调用.

扩展说一下,怎么使用Intent和Action.

简单封装了一个函数.可以使用Intent调用各种系统程序.大家理解成Windows的ShellExecute即可.

最后别忘了配置权限.Android程序是需要权限的.

另外补充一点,做Android开发最好还是有点java开发经验,这样对Android的体系可以有一个比较具体的了解,最起码知道调用的概念.其他平台同理. 先了解多各个平台的概念,然后用XE5开发.XE5解决的是实际工作的时候为了一套代码多个平台使用.

开发来电显示的Delphi控件包: 使用方法: (1) 下载控件包Component.zip (2) 先编译 CPortLib6.dpk ,已安装了CPortLib 控件组的可省略这一步骤 (3) 然后编译 TelePort.dpk ,并安装 (4) 安装完成后,在 kosenTools 控件页增加了一个控件:TeleComport (5) 使用示例请看 Project2.dpr 示例源程序: unit Unit2; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, CPort, TeleComportUnit; type TForm1 = class(TForm) TeleComport1: TTeleComport; Memo1: TMemo; Button1: TButton; Button2: TButton; Button3: TButton; Button4: TButton; Button5: TButton; procedure Button2Click(Sender: TObject); procedure Button1Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure TeleComport1Open(Sender: TObject); procedure TeleComport1Close(Sender: TObject); procedure TeleComport1Read(Sender: TObject; s: String; t: TDateTime); procedure Button4Click(Sender: TObject); procedure Button5Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button2Click(Sender: TObject); begin if TeleComport1.SetupPort then Memo1.Lines.Add(\'Port=\'+TeleComport1.Port); //设置来电管理器的连接端口,USB端口的设置为Port:=\"USB\" end; procedure TForm1.Button1Click(Sender: TObject); begin TeleComport1.Open; end; procedure TForm1.Button3Click(Sender: TObject); begin TeleComport1.Close; end; procedure TForm1.TeleComport1Open(Sender: TObject); begin if TeleComport1.JDConnected then begin Memo1.Lines.Add(\'Connected\'); //打开端口时读取来电管理器内缓存的号码 TeleComport1.ReadAllWhenOpen; end; end; procedure TForm1.TeleComport1Close(Sender: TObject); begin if not TeleComport1.JDConnected then Memo1.Lines.Add(\'not Connected\'); end; //有来电时触发此事件 //s为来电号码,t为来电时间 procedure TForm1.TeleComport1Read(Sender: TObject; s: String; t: TDateTime); begin Memo1.Lines.Add(s+F
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值