为AppInventor添加在线更新功能

在AppInventor应用上通过aix扩展,实现在线检测更新并自动下载安装包并安装的功能。

前言

当我们在开发一个APP项目时,总会更新迭代,在新版本中修复以前已知的bug或添加新功能。

但是我们不可能让用户重新下载一次安装包并安装更新,这样会大大降低用户更新的积极性。

这时候我们就需要给我们的APP加上在线检测更新并自动下载安装包并安装的功能。但是AppInventor默认的程序中不支持这项功能。

我们可以通过添加aix扩展的方式,实现这个功能。

所需扩展

  • Custom_Downloader

  • KIO4_Install

  • Dialogs

下载链接见文末

实现过程

首先在项目中添加扩展,并将其添加到屏幕上:

添加扩展.png

进入编程界面,我们需要先检测当前的版本是否为最新版本,这里通过读取TinyWebDB数据库实现:

检查版本.png

如果获取到的版本号高于本地App的版本号,则询问用户是否进行更新。

当用户确认更新后,我们调取扩展获得更新安装包的url,再进行下载:

下载更新.png

下载的同时,使用进度框显示下载进度:

显示进度.png

当下载完成时,调用扩展安装下载路径下的安装包:

调用安装.png

接下来需要用户进行同意,同意后即可成功安装更新。

同意安装.jpg

扩展功能

  1. 通过暂停和恢复开始下载;

  2. 在默认下载文件夹或自定义特定文件夹中下载文件;

  3. 自动文件名从下载 URL 获取;

  4. 显示下载文件的总大小;

  5. 显示当前下载进度大小;

  6. 自定义文件名;

  7. 下载完成后获取文件路径。

GIF演示.gif

全部代码块_1.png

全部代码块_2.png

扩展来源

Custom Downloader Extension For Kodular (Free) - Extensions - Kodular Community

Download Extension - yt.DeepHost.Custom_Download.aix (78.6 KB)

Download AIA FIle - Custom_Downloder_v2.aia (81.7 KB)

下载链接

Custom_Downloader

KIO4_Install