# AppUpdate **Repository Path**: rainzhu1212/appupdate ## Basic Information - **Project Name**: AppUpdate - **Description**: 一个简单、轻量、可随意定制的OpenHarmony版本更新库;A simple lightweight and customizable Android version update library - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 2 - **Created**: 2025-01-15 - **Last Updated**: 2025-01-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # AppUpdate ## 目录 * [效果图](#效果图) * [功能介绍](#功能介绍) * [集成](#集成) * [entry运行要求](#entry运行要求) * [使用说明](#使用说明) ### 效果图 ![overview](screenshot/ss_one.jpg) ![overview](screenshot/ss_two.jpg) ![overview](screenshot/ss_three.jpg) ![overview](screenshot/ss_four.jpg) ### 功能介绍 * [x] 支持后台下载 * [x] 支持强制更新 * [x] 支持显示进度 * [x] 支持自定义内置对话框样式 * [x] 支持取消下载(如果发送了通知栏消息,则会移除) * [x] 使用HttpURLConnection下载,未集成其他第三方框架 ### 集成 ##### 方法1: 直接使用har包 ``` 通过library生成har包,添加har包到要集成的libs文件夹内 在entry的gradle内添加如下代码 implementation fileTree(dir: 'libs', include: ['*.jar', '*.har']) ``` ##### 方法2: gradle依赖 ``` allprojects{ repositories{ mavenCentral() } } implementation 'com.gitee.archermind-ti:AppUpdate:1.0.0-beta' ``` ### 使用说明 1. 使用内置的对话框需要创建UpdateConfiguration ``` setNotifyId(int notifyId)设置通知栏消息id setHttpManager(BaseHttpDownloadManager httpManager)设置下载管理器 setEnableLog(boolean enableLog)设置是否输出日志信息 setOnDownloadListener(OnDownloadListener onDownloadListener)设置下载监听器 setJumpInstallPage(boolean jumpInstallPage)设置apk下载完成是否跳转至安装界面 setShowNotification(boolean showNotification)设置是否在通知栏显示信息 setForcedUpgrade(boolean forcedUpgrade)设置是否强制升级 setShowBgdToast(boolean showBgdToast)设置是否提示"正在后台下载新版本…" setDialogImage(int dialogImage)设置内置对话框背景图片资源id setDialogButtonColor(int dialogButtonColor)设置内置对话框按钮的颜色 setDialogButtonTextColor(int dialogButtonTextColor)设置内置对话框按钮文字的颜色 setDialogProgressBarColor(int dialogProgressBarColor)设置内置对话框强制更新时进度条和文字的颜色 setButtonClickListener(OnButtonClickListener onButtonClickListener)设置内置对话框按钮点击事件监听 setUsePlatform(boolean usePlatform)设置是否上报数据至平台(因为目前会配合[AppUpdate日志查询](http://azhong.tk:8088/app/)平台会产生一些网络数据,这些信息收集绝不用于任何恶意用途。 如果你不想使用,可以调用configration.setUsePlatform(false) ``` 2. 在绑定的控件的点击事件中创建DownloadManager ``` DownloadManager manager = DownloadManager.getInstance(getContext()); manager.setApkName("ESFileExplorer.apk") .setApkUrl(url) .setSmallIcon(ResourceTable.Media_ic_launcher) .download(); ``` ### 遗留问题 目前无安装应用的权限配置,所以未实现打开应用安装。