ionic3项目版本更新下载
2018-02-07 16:38
169 查看
/** * 获得当前app版本号,如0.01 * @description 对应/config.xml中version的值 * @returns {Promise<string>} */ getVersionNumber(): Promise<string> { return new Promise((resolve) => { this.appVersion.getVersionNumber().then((value: string) => { this.currentVersion = value; resolve(value); }).catch(err => { console.log('getVersionNumber:' + err); }); }); }
alertCtrlMethod() { this.alertCtrl.create({ title: '升级', subTitle: '发现新版本,是否立即升级?', buttons: [{ text: '取消' }, { text: '确定', handler: () => { this.downloadApp(); } } ] }).present(); } /** * 下载安装app */ downloadApp() { if (true) { let alert = this.alertCtrl.create({ title: '下载进度:0%', enableBackdropDismiss: false, buttons: ['后台下载'] }); alert.present(); const fileTransfer: FileTransferObject = this.transfer.create(); const apk = this.file.externalRootDirectory + 'mesnac.apk'; fileTransfer.download(APK_DOWNLOAD, apk).then(() => { this.fileOpener.open(apk, 'application/vnd.android.package-archive'); }); fileTransfer.onProgress((event: ProgressEvent) => { let num = Math.floor(event.loaded / event.total * 100); if (num === 100) { alert.dismiss(); } else { let title = document.getElementsByClassName('alert-title')[0]; title && (title.innerHTML = '下载进度:' + num + '%'); } }); } }
webAPI接口部分:
public class DownloadController : ApiController
{
/// <summary>
/// 实现的方法很简单,其中就是读取服务器的指定路径文件流,将其做为返回的HttpResponseMessage的Content
/// </summary>
public HttpResponseMessage GetApkFile()
{
try
{
var FilePath = System.Web.Hosting.HostingEnvironment.MapPath(@"~/apk/android-armv7-debug.apk");
var stream = new FileStream(FilePath, FileMode.Open);
HttpResponseMessage response = new HttpResponseMessage(HttpStatusCode.OK);
response.Content = new StreamContent(stream);
response.Content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");
response.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment")
{
FileName = "android.apk"
};
return response;
}
catch
{
return new HttpResponseMessage(HttpStatusCode.NoContent);
}
}
}相关原文链接:https://www.jianshu.com/p/a41223a0b6a2;
http://blog.csdn.net/u014742815/article/details/52537093;
相关文章推荐
- ionic学习使用笔记(一) 版本更新及创建项目时遇到的问题解决
- maven项目中依赖的jar包更新后, 本地项目无法下载对应版本的原因之一
- lkmusic项目改进版本之WebAudio版本支持音乐可视化 已更新至github 欢迎下载
- DateChooser控件发布ASP.NET 2.0新版(我的ASP.NET 2.0控件开发书的第二个阶段项目)[请大家一定注意版本的更新,下载最新版]
- ionic 检测版本更新,Android版,IOS在浏览器打开下载页面。
- 【Ionic】Ionic实现iOS与Android端代码『热更新』与Android升级下载功能 ( v1.3.x版本 )
- ionic3 实现app版本更新下载并打开进行安装
- [置顶] android studio导入别人的项目或者更新后Gradle版本不匹配无法下载导致的错误
- lkmusic项目WebAudio版本支持音乐可视化 已更新至github 欢迎下载
- Github 下载项目的某一分支版本
- eclipse 项目修改和更新项目,回退版本,解决分支的冲突的办法
- git 创建新项目,下载工程,合并和更新工程简单应用记录
- 【版本更新】Aspose.Slides V17.10发布 | 支持免费下载
- Android版本更新下载提示对话框
- 升级ionic版本后,创建新项目报Error Initializing app错误解决
- Ionic 项目升级ionic版本后运行报错
- Android----- 版本更新和 服务器下载新版本APK并安装
- Android——Tomcat版本更新下载+头像照片上传到Tomcat
- 相册批量下载版本更新 V4.1 支持 谷歌相册,支持yupoo(又拍网)
- cocos2dx 3.x版本 openssl 更新的问题 最后又3.x版本最新的libs下载地址