Delphi XE6开发的AndRoid应用实现在线升级完成后自动安装apk代码(加说明)

文章转自http://www.dfwlt.com/forum.php?mod=viewthread&tid=445

介绍

现在很多应用如果有更新后会自动下载并自动进行安装,这样可以让使用者最早的发现应用更新,下面的代码介绍了如果进行下载,下载完成后并且自动进行安装apk,下面是具体的一个函数。

  1. function OpenFile(const URL: string; const DisplayError: Boolean = False): Boolean;
  2. {$IFDEF ANDROID}
  3. var Intent: JIntent;
  4. begin 
  5.   Intent:=TJIntent.Create;
  6.   Intent.addFlags(TJIntent.JavaClass.FLAG_ACTIVITY_NEW_TASK);
  7.   Intent.setAction(TJIntent.JavaClass.ACTION_VIEW);
  8.   Intent.setDataAndType(TJnet_Uri.JavaClass.parse(StringToJString(URL)),
  9.   StringToJString('application/vnd.android.package-archive'));
  10.   try
  11.     SharedActivity.startActivity(Intent);
  12.     exit(true);
  13.   except
  14.     on e: Exception do
  15.     begin
  16.       if DisplayError then ShowMessage('Error: ' + e.Message);
  17.       exit(false);
  18.     end;
  19.   end;
  20. end;
  21. {$IFDEF}
复制代码

函数说明,有两个参
1:URL='file://'+apk文件路径
需引用单元:
  1. {$IFDEF ANDROID}
  2.   FMX.Helpers.Android, Androidapi.JNI.GraphicsContentViewText,
  3.   Androidapi.JNI.Net, Androidapi.JNI.JavaTypes;
  4. {$IFDEF}
复制代码

2: DisplayError是否显示错误信息。

猜你喜欢

转载自blog.csdn.net/weixin_42168423/article/details/80384218