转载自: http://blog.csdn.net/lovexieyuan520/article/details/9250099

在android软件开发中,总是需要更新版本,所以当有新版本开发的时候,就需要软件有自动更新的功能,让用户无需自己去手动更新方便用户
具体的过程网上有很多我就不多说,现提供一些链接供大家参考

http://www.cnblogs.com/wainiwann/archive/2012/03/12/2391810.html

http://blog.csdn.net/android_tutor/article/details/7015986

以上两篇文章都实现了android程序自动更新功能,网友可以参考。

现在讲一下我遇到的问题,我也是按照以上方法去实现的,发现以下的问题

1。当下载完以后,安装的时候,系统显示正在安装,然后就没有,回到了主页,没有显示安装成功的界面,让用户不知所措。

2.。出现“install_failed_already_exists”这个错误。

3。出现“INSTALL_FAILED_VERSION_DOWNGRADE”这个错误。

纠结了一天多终于找到答案了。

对于第一个问题,原来在按装程序的时候我用的代码是如下:

  1. Intent intent = new Intent(Intent.ACTION_VIEW);
  2. intent.setDataAndType(Uri.parse("file://xxxx.apk"), "application/vnd.android.package-archive");
  3. context.startActivity(intent);

这在android4.0以前的系统中没有什么问题,但是在android4.0及其以后的系统中就不显示安装成功的界面,应该添加一句:

  1. intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

才会出现安装成功的界面。

对于第二个问题,先前已经安装过这个程序,悄可能需要先卸载再重新安装。

第三个问题是你当前程序的版本低于已经安装过和版本号,所以卸载再安装。

还有如果一个问题就是,如果你两个版本的签名文件不一样的话,也会出现第二问题,而且用户在自动更新的时候会报第二个错误,所以在做自动更新的时,要使用同份签名证书,这个切记。

android自动更新程序,安装完以后就什么都没有了,没有出现安装成功的界面的问题的更多相关文章

  1. winform自动更新程序实现

    一.问题背景 本地程序在实际项目使用过程中,因为可以操作电脑本地的一些信息,并且对于串口.OPC.并口等数据可以方便的进行收发,虽然现在软件行业看着动不动都是互联网啊啥的,大有Web服务就是高大上的感 ...

  2. C#.Net版本自动更新程序及3种策略实现

    C#.Net版本自动更新程序及3种策略实现 C/S程序是基于客户端和服务器的,在客户机编译新版本后将文件发布在更新服务器上,然后建立一个XML文件,该文件列举最新程序文件的版本号及最后修改日期.如程序 ...

  3. winform 通用自动更新程序

    通用自动更新程序 主要功能: 1. 可用于 C/S 程序的更新,集成到宿主主程序非常简单和配置非常简单,或不集成到主程序独立运行. 2. 支持 HTTP.FTP.WebService等多种更新下载方式 ...

  4. C#之tcp自动更新程序

    .NETTCP自动更新程序有如下几步骤: 第一步:服务端开启监听 ServiceHost host; private void button1_Click(object sender, EventAr ...

  5. ASP.NET网站版本自动更新程序及代码[转]

    1.自动更新程序主要负责从服务器中获取相应的更新文件,并且把这些文件下载到本地,替换现有的文件.达到修复Bug,更新功能的目的.用户手工点击更新按钮启动更新程序.已测试.2.环境VS2008,采用C# ...

  6. WPF自动更新程序

    WPF AutoUpdater 描述: WPF+MVVM实现的自动更新程序 支持更新包文件验证(比较文件MD5码) 支持区分x86与x64程序的更新 支持更新程序的版本号 支持执行更新策略 截图: 使 ...

  7. C# WINFORM的自动更新程序

    自动更新程序AutoUpdate.exe https://git.oschina.net/victor596jm/AutoUpdate.git 1.获取源码 http://git.oschina.ne ...

  8. .Net自动更新程序GeneralUpdate,适用于wpf,winfrom,控制台应用

    什么是GeneralUpdate: GeneralUpdate是基于.net framwork4.5.2开发的一款(c/s应用)自动升级程序. 第一个版本叫Autoupdate(原博客: WPF自动更 ...

  9. 7、NFC技术:让Android自动运行程序

    用于描述NDEF格式数据的两个重要的类 NdefMessage:描述NDEF格式的信息 NdefRecord:描述NDEF信息的一个信息段  NdefMessage和NdefRecord是Androi ...

随机推荐

  1. linux文件系统模拟

    #include "stdio.h" #include <stdlib.h> //#include <conio.h> #include <strin ...

  2. TortoiseGit-创建分支、合并分支

    第一步:创建本地分支 点击右键选择TortoiseGit,选择Create Branch-,在Branch框中填写新分支的名称(若选中"switch to new branch"则 ...

  3. 转<<C#集合Dictionary中按值的降序排列

    转载地址:http://blog.sina.com.cn/s/blog_5c5bc9070100pped.html C#集合Dictionary中按值的降序排列 static void Main(st ...

  4. Entity Framework Repository模式

    Repository模式之前 如果我们用最原始的EF进行设计对每个实体类的“C(增加).R(读取).U(修改).D(删除)”这四个操作. 第一个:先来看看查询,对于实体类简单的查询操作,每次都是这样的 ...

  5. [BZOJ2502]清理雪道

    [BZOJ2502]清理雪道 试题描述 滑雪场坐落在FJ省西北部的若干座山上. 从空中鸟瞰,滑雪场可以看作一个有向无环图,每条弧代表一个斜坡(即雪道),弧的方向代表斜坡下降的方向. 你的团队负责每周定 ...

  6. Matlab实现线性回归和逻辑回归: Linear Regression & Logistic Regression

    原文:http://blog.csdn.net/abcjennifer/article/details/7732417 本文为Maching Learning 栏目补充内容,为上几章中所提到单参数线性 ...

  7. hiho #1283 hiho密码 [Offer收割]编程练习赛3

    #1283 : hiho密码 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 小Ho根据最近在密码学课上学习到的知识,开发出了一款hiho密码,这款密码的秘钥是这样生成的 ...

  8. 中位数与第K小元素

    算法实际上是模仿快速排序算法设计出来的,其基本思想也是对输入数组进行递归划分,与快速排序不同的是,它只对划分出来的子数组之一进行递归处理: int randompartition(int a[],in ...

  9. MySQL 索引详解大全

    什么是索引? 1.索引 索引是表的目录,在查找内容之前可以先在目录中查找索引位置,以此快速定位查询数据.对于索引,会保存在额外的文件中. 2. 索引,是数据库中专门用于帮助用户快速查询数据的一种数据结 ...

  10. Android中自定义Activity和Dialog的位置大小背景和透明度等demo

    1.自定义Activity显示样式 先在res/values下建colors.xml文件,写入: <?xml version="1.0" encoding="utf ...