Giter Site home page Giter Site logo

codeideal / update_app_k Goto Github PK

View Code? Open in Web Editor NEW

This project forked from mofada/flutter_update_app

0.0 0.0 1.0 53.06 MB

flutter app update

License: MIT License

Kotlin 22.76% Swift 4.78% Objective-C 1.54% Dart 20.14% Ruby 4.91% C++ 38.51% C 3.73% Batchfile 3.63%

update_app_k's Introduction

This is a variant lib from update_app, for fix some bugs.
Bug Fix :

  • fix ios appstore Hard-coded jump link Template, Convert to full link parameters

Update the app, pass in the updated address, and update the app. 更新app, 传入更新的地址, 进行app更新

The Android part is implemented using DownloadManager. If the file has been downloaded, install it directly. Android部分使用DownloadManager实现.若文件已下载, 则直接安装.

The Ios section does not support external updates, skip the App Store. Ios部分不支持外部更新, 跳转App Store.

Experience demo(体验Demo)

download apk(下载APK)

screen

How to use(如何使用)

import 'package:update_app/update_app.dart';

/// Download the app and update
///
/// appleId: This is the app id of the app store, used to jump to the app store
/// url: This is the URL to download the apk file
/// title: Android download the title displayed in the notification bar, generally use the file name, or like this `update version 1.6`
/// description: Android download the description displayed in the notification bar, similar to the subtitle
///
/// @return `-1` -> `download failed`, `0` -> `There is a current apk locally, and the download is successful`, other (int) -> `downloadId`
var downloadId = await
UpdateApp.updateApp(url: "apkPath", appleId:"375380948", title:"通知标题", description:"通知描述");

/// Query apk download progress
///
/// downloadId: [updateApp] 返回的downloadId
///
/// @return [DownloadProcess]
/// current: Currently downloaded length
/// count: Total length
/// status: [ProcessState]
///         STATUS_PENDING: [ProcessState.STATUS_PENDING](https://developer.android.com/reference/android/app/DownloadManager#STATUS_PENDING)
///         STATUS_RUNNING: [ProcessState.STATUS_RUNNING](https://developer.android.com/reference/android/app/DownloadManager#STATUS_RUNNING)
///         STATUS_PAUSED: [ProcessState.STATUS_PAUSED](https://developer.android.com/reference/android/app/DownloadManager#STATUS_PAUSED)
///         STATUS_SUCCESSFUL: [ProcessState.STATUS_SUCCESSFUL](https://developer.android.com/reference/android/app/DownloadManager#STATUS_SUCCESSFUL)
///         STATUS_FAILED: [ProcessState.STATUS_FAILED](https://developer.android.com/reference/android/app/DownloadManager#STATUS_FAILED)
var process = await
UpdateApp.downloadProcess(downloadId: downloadId);

Document

UpdateApp.updateApp

Params

appleId - This is the app id of the app store, used to jump to the app store
url - This is the URL to download the apk file
title - Android download the title displayed in the notification bar, generally use the file name description - Android download the description displayed in the notification bar, similar to the subtitle

Return

-1 -> download failed
0 -> There is a current apk locally, and the download is successful
other (int) -> downloadId

UpdateApp.downloadProcess

Params

downloadId - [updateApp] 返回的downloadId

Return

[DownloadProcess]
current: Currently downloaded length
count: Total length
status: [ProcessState]
STATUS_PENDING: ProcessState.STATUS_PENDING
STATUS_RUNNING: ProcessState.STATUS_RUNNING
STATUS_PAUSED: ProcessState.STATUS_PAUSED
STATUS_SUCCESSFUL: ProcessState.STATUS_SUCCESSFUL
STATUS_FAILED: ProcessState.STATUS_FAILED

Features(特点)

Android part(Android部分)

  1. Download using DownloadManager
    使用DownloadManager进行下载
  2. Monitor download completion broadcast
    监听下载完成广播
  3. Adapt Android 6.0 Runtime Permissions Files are stored in the app directory, no need to apply for runtime permissions
    适配Android 6.0运行时权限 文件存储在app目录, 不需要申请运行时权限
  4. Adapt Android 7.0FileProvider
    适配Android 7.0FileProvider
  5. Adapt Android 8.0 installation permissions
    适配Android 8.0安装权限

Adapt [Android 9.0 Network Security Configuration] (https://developer.android.com/training/articles/security-config)
适配Android 9.0网络安全配置

IOS section(IOS部分)

  1. Jump to the app store 跳转应用商店

update_app_k's People

Contributors

mofada avatar randomqqn avatar codeideal avatar

Forkers

ceeyang

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.