Delphi android 按包名判断是否安装了App


本文整理自网络,侵删。

 
有个需求,想判断手机里是否安装指定的app,没找到现成的代码,参考Delphi代码实现了一个,当返回空串时,表示没有安装app。

function GetVersionString(APackageName:string): string;
//uses Androidapi.JNI.GraphicsContentViewText,Androidapi.Helpers,androidapi.jni.javatypes;
var
  PackageInfo: JPackageInfo;
  PackageManager: JPackageManager;
  AppContext: JContext;
begin
  AppContext := TAndroidHelper.Context;
  if AppContext <> nil then
  begin
    PackageManager := AppContext.getPackageManager;
    if PackageManager <> nil then
    begin
      try
        PackageInfo := AppContext.getPackageManager.getPackageInfo(StringToJString(APackageName), 0);
      except
        Exit(string.Empty);
      end;

      if PackageInfo <> nil then
         Exit(JStringToString(PackageInfo.versionName));

    end;
  end;
  Result := string.Empty;
end;

调用代码:

if GetVersionString('com.kinglandsoft.xmyt')='' then
begin
//没有安装app
...
end

https://www.cnblogs.com/kinglandsoft/p/12389276.html

相关阅读 >>

Delphi 的按位运算详解

tstringgrid 添加鼠标拖动功能

Delphi获取图片的真实类型

Delphi 随机字符3

Delphi树的一些操作

Delphi memo1 高亮行的范围

Delphi 7zip 示例调用7z.dll 压缩及解压.7z文件

Delphi禁止用户切换任务

Delphi tdirectory.tfilterpredicate

Delphi 判断字符是否是数字

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



打赏

取消

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

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

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

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

评论

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