delphi xe Android 判断自己程序是否是前台程序


本文整理自网络,侵删。

 

如果程序当前在前台,返回 True,否则返回 False。

 

function IsAppActive:Boolean;

var
  AList:JList;
  AProcess:JActivityManager_RunningAppProcessInfo;
  AName:JString;
  AIterator:JIterator;
begin
AList:=SharedActivityManager.getRunningAppProcesses;
AName:=SharedActivityContext.getPackageName;
Result:=False;
if Assigned(AList) then
  begin
  AIterator:=AList.iterator;
  while AIterator.hasNext do
    begin
    AProcess:=TJActivityManager_RunningAppProcessInfo.Wrap((AIterator.next as ILocalObject).GetObjectID);
    if AProcess.processName.equals(AName) then
      begin
      if AProcess.importance=TJActivityManager_RunningAppProcessInfo.JavaClass.IMPORTANCE_FOREGROUND then
        begin
        Result:=True;
        Break;
        end;
      end;
    end;
  end;
end;

相关阅读 >>

Delphi 进程保护

Delphi 实现文件上传下载

Delphi 链接文件名合并

Delphi 获得每个进程的cpu使用率

Delphi真正实现延时暂停功能

Delphi 执行一个外部程序,当外部程序结束后言主程序立即响应

Delphi 有关debughook

Delphi 常用函数单元 umyfunctions

Delphi 62 进制的简单实现

Delphi 全局变量 hinstance 到底是在什么时候赋值的?

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



打赏

取消

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

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

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

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

评论

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