delphi xe8开发安卓程序:访问服务器上的配置文件

(1)弄一个服务器,放个配置文件上去

我用的xampp ,在htdocs的目录里面放了/delphi/json/ver.txt

内容如下

{
"URL": "http://qqe2.com",
"Description": "hello json of delphi",
"Version": 123

}

 

(2)在xe8创建一个工程

在form1上添加 button1,memo1

(3)代码如下

unit Unit1;

interface

uses
System.SysUtils, System.Types, System.UITypes, System.Classes,
System.Variants,
FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.ScrollBox,
FMX.Memo, FMX.Controls.Presentation, FMX.StdCtrls,
// add
System.IOUtils, System.JSON, System.Net.HttpClient ;

type TForm1 = class(TForm)Button1: TButton;
Memo1:
TMemo;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
function CheckVer: Boolean;
end;

var
Form1: TForm1;
FCheckURL, FServerVersion, FDescription, FInstallFileUrl: string;

implementation

{$R *.fmx}
{$R *.LgXhdpiPh.fmx ANDROID}

procedure TForm1.Button1Click(Sender: TObject);
begin
if CheckVer then
begin
Memo1.lines.add(FServerVersion);
Memo1.lines.add(FDescription);
Memo1.lines.add(FInstallFileUrl);
end;
end;

function TForm1.CheckVer: Boolean;
var
LocalVersion: string;
hc: THTTPClient;
ss: TStringStream;
jo: TJsonObject;
begin

hc := THTTPClient.Create;
ss := TStringStream.Create;
try

hc.Get(FCheckURL, ss);

jo := TJsonObject.ParseJSONValue(ss.DataString) as TJsonObject;
try
FServerVersion := jo.GetValue('Version').Value;
FDescription := jo.GetValue('Description').Value;
FInstallFileUrl := jo.GetValue('URL').Value;
finally
jo.Free;
end;

finally
hc.Free;
ss.Free;
end;

result := true;

end;

procedure TForm1.FormCreate(Sender: TObject);
begin
FCheckURL := 'http://localhost/delphi/json/ver.txt';
end;

end.

(4)运行结果如下

 

(5)修改服务器地址,为了安卓调试

我是挂了一部手机,因此,服务器地址就不能写localhost了,必须改为开发机的真实IP

我的ip是 192.168.1.127 ,你可以通过cmd命令行模式执行 ipconfig查看,或者其他什么方法自己熟练就行

修改代码里面服务器上配置文件的地址,

FCheckURL := 'http://192.168.1.127/delphi/json/ver.txt';

(6)手机运行

调整视图为手机

 

运行结果手机截图, 

如果你的手机半天不显示,最后异常了,看下你的开发机防火墙是不是开着,关了就好了。

posted on 2016-12-26 12:25  rulioo  阅读(658)  评论(1)    收藏  举报

导航