【问题标题】:Delphi Firemonkey ios Background FetchDelphi Firemonkey ios 后台获取
【发布时间】:2014-08-01 19:39:02
【问题描述】:

我正在尝试使用 delphi Firemonkey 开发一个 iphone 应用程序。如果有新数据发送通知,我需要每 x 分钟下载一个 xml 并处理它。如果应用程序正在使用中,这很容易,但是当应用程序处于后台时,我找不到使用此过程的方法....

请帮帮我...

Tnx 很多...但我不能这样做.... 这是我最简单但不起作用的代码……我的错误是什么???

procedure TForm1.Button1Click(Sender: TObject);
var
  IdHTTP1 : TIdHTTP;
  MyFile          : TFileStream;
  Notification: TNotification;
  UIApp : UIApplication;
begin
  UIApp := TUIApplication.Wrap(TUIApplication.OCClass.sharedApplication);
  UIApp.setIdleTimerDisabled(True);

  TThread.CreateAnonymousThread(procedure ()
  var
I: Integer;
Total: Integer;
  begin
Total := 0;

while true do
  begin

    // Carico l'XML
    MyFile:= TFileStream.Create(TPath.GetDocumentsPath + TPath.DirectorySeparatorChar+'listticket',fmCreate);

    IdHTTP1 := TIdHTTP.Create(nil);
    IdHTTP1.Get('http://www.google.com', MyFile);
    IdHTTP1.Free;
    MyFile.Free;

  end;

sleep(5*60*1000);

TThread.Synchronize (TThread.CurrentThread,
  procedure ()
  begin
  end);
  end).Start;
end;

【问题讨论】:

    标签: ios delphi background firemonkey


    【解决方案1】:

    【讨论】:

    • 好吧 tnx 很多,但是当应用程序在后台时我找不到执行命令的能力。我打开应用程序,我登录,我按下主页按钮,这里我的应用程序继续执行过程10秒...然后停止!!!我使用了 UIBackgroundModeslocation 但是当应用程序处于后台时没有更多事件。 tnx 很多
    • 在工作线程中进行下载,并在该线程运行时禁用空闲计时器,或者至少在应用程序处于后台时禁用。您没有使用 GPS,因此 location 不是您应用的合适后台模式,请尝试使用 fetch 代替:“该应用会定期从网络下载和处理少量内容。”
    • Tnx 很多......但我不能这样做......这是我最简单的代码不起作用......我的错误是什么???我在第一次发布了我的代码...... TNX A LOT
    • 与其说它不起作用,不如解释一下它实际上做了什么,以及它与您的预期有何不同。
    • 哦,是的,对不起!!它在前台世界客户端完美!但是当应用程序进入后台时,它会停止下载这个文件!!!这是一个演示文件,在工作应用程序中它是一个发送 xml 的 php 页面!下载后,文件应该被处理,如果发生变化,它应该发送通知!!!当应用程序进入后台时,这个线程会被处理 10 秒,然后停止执行!!这是我的第一个应用程序,不是用于重新分发的应用程序,但它对于从我的服务器下载和处理数据非常有用!!!
    猜你喜欢
    • 1970-01-01
    • 2022-06-23
    • 1970-01-01
    • 1970-01-01
    • 2020-12-26
    • 1970-01-01
    • 1970-01-01
    • 2014-05-15
    • 1970-01-01
    相关资源
    最近更新 更多