`
kevin2562
  • 浏览: 117704 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

android 关于程序升级问题

阅读更多
关于升级问题
用户可以从market上直接下载下来直接安装就可以了,会自动识别覆盖的,除非你把版本调低了

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="com.xx.xx" 包名
      android:versionCode="X" 版本号
      android:versionName="xxx"> 版本名

就是修改这个versionCode和versionName




代码安装apk
1. Intent i = new Intent(Intent.ACTION_VIEW);  
2. String filePath = "/sdcard/XXX.apk";  
3. i.setDataAndType(Uri.parse("file://" + filePath),"application/vnd.android.package-archive");  
4. context.startActivity(i);  

程序卸载
Intent intent = new Intent(Intent.ACTION_DELETE, uri);
intent.startActivity();


监听是否卸载成功
DeleteReceiver mDeleteReceiver = new DeleteReceiver();//自定义的广播接收类,接收到结果后的操作
  IntentFilter filter = new IntentFilter(
    Intent.ACTION_PACKAGE_DATA_CLEARED);
  filter.addAction(Intent.ACTION_PACKAGE_REMOVED);
  filter.addDataScheme("package");
  registerReceiver(mDeleteReceiver, filter); //注册广播和过滤

  Intent undeleteIntent = new Intent(Intent.ACTION_DELETE, packageURI);
  startActivity(undeleteIntent);

文件下载
DownloadProvider
DownloadProvider的权限级别改成 normal了就可以使用了 网上也有说明
首先要在AndroidManifest.xml中申请访问DownloadManager的权限
          <uses-permission android:name="android.permission.ACCESS_DOWNLOAD_MANAGER"/>
         添加一个下载任务:
         ContentValues values = new ContentValues();
         values.put(Downloads.URI, url);//指定下载地址
        values.put(Downloads.COOKIE_DATA, cookie);//如果下载Server需要cookie,设置cookie
        values.put(Downloads.VISIBILITY,Downloads.VISIBILITY_HIDDEN);//设置下载提示 是否在屏幕顶部显示
        values.put(Downloads.NOTIFICATION_PACKAGE, getPackageName());//设置下载完成之后回调的包名
        values.put(Downloads.NOTIFICATION_CLASS, DownloadCompleteReceiver.class.getName());//设置下载完成之后负责接收的Receiver,这个类要继承 BroadcastReceiver     
        values.put(Downloads.DESTINATION,save_path);//设置下载到的路径,这个需要在Receiver里 自行处理
        values.put(Downloads.TITLE,title);//设置下载任务的名称
        this.getContentResolver().insert(Downloads.CONTENT_URI, values);//将其插入到DownloadManager的数据库中,数据库会触发修改事件,启动下载任务


ContentValues values = new ContentValues();
        values.put("uri", uri.toString());
        values.put("useragent", "Mozilla/5.0 (Linux; U; Android 1.5; en-us; sdk Build/CUPCAKE) AppleWebKit/528.5+ (KHTML, like Gecko) Version/3.1.2 Mobile Safari/525.20.1");
        values.put("notificationpackage", getPackageName());
        values.put("notificationclass", "HelloWorld");
        values.put("visibility", 1);
        values.put("mimetype", mimetype);
        values.put("hint", filename);
        values.put("description", uri.getHost());
        values.put("total_bytes", 1349528);
        
        mResolver = getContentResolver();
        mResolver.insert(Uri.parse("content://downloads/download"), values);
分享到:
评论
4 楼 mapeijie888 2011-04-06  
Android平台面向开发者提供了DownloadManager这个服务(service),
可以用来完成下载,同时异步地得到下载进度的实时更新提示。
原生的浏览器,Android Market以及GMail等客户端都使用了该接口。
该接口也部分的提供了断点续传功能:如果在下载过程中遇到网络错误,
如信号中断等,DownloadManager会在网络恢复时尝试断点续传继续下载该文件。
但不支持由用户发起的暂停然后断点续传。
3 楼 kevin2562 2010-07-16  
Downloads这个类是有的,但是从应用程序无法调用,如果想要下载文件的话,必须自己学程序进行下载。
2 楼 rlc19851203 2010-07-15  
mResolver.query(Uri.parse("content://downloads/download"), null, null, null, null);
出错了, AndroidManifest.xml文件中我也加了权限的!
1 楼 rlc19851203 2010-07-15  
如何修改DownloadProvider的权限级别?
有Downloads这个类吗?

相关推荐

    Android程序如何升级.zip

    本文将深入探讨Android程序的升级机制,包括自动更新、手动更新、APK安装流程、版本管理以及如何处理用户数据。 1. **版本控制**:Android应用通常有版本代码(versionCode)和版本名称(versionName)。...

    Android OTA升级流程

    Android OTA(Over-The-Air)升级流程是智能手机中一种常见的无线更新机制,允许设备通过移动网络或Wi-Fi连接下载并安装新版本的系统或应用程序。这个过程不仅涉及软件更新,还涉及到确保更新的安全性和正确性。以下...

    Android-OTA升级流程资料

    OTA升级包的目录结构包括了几个重要的文件:系统升级包、应用程序升级包、配置文件等。 3.3 Recovery模式下的OTA升级流程 Recovery模式下的OTA升级流程可以分为三个阶段:下载升级包、安装升级包、恢复出厂设置。 ...

    Android应用程序的自动更新升级(自身升级、通过tomcat)-IT计算机-毕业设计.zip

    在Android应用程序的开发中,确保应用能够及时更新和升级是至关重要的,这有助于修复已知问题,增强功能,以及提供更好的用户体验。本项目名为“Android应用程序的自动更新升级(自身升级、通过tomcat)”,是一个...

    Android7.0版本升级安装

    本文将深入探讨Android 7.0版本升级安装的过程,以及在这个过程中可能出现的问题,特别是与SD卡相关的问题。 一、Android 7.0的新特性与升级流程 1. 多窗口支持:Android 7.0首次引入了多窗口功能,用户可以同时...

    android一键recovery升级程序实例

    本例将详细解释如何使用CWM Recovery进行一键升级Android设备的Recovery程序。 首先,我们需要理解什么是ClockworkMod Recovery。CWM Recovery是一个开源项目,由科林·凯利(Koushik Dutta)开发,它提供了一个...

    Android app升级程序

    在Android平台上,应用程序的升级是确保用户始终使用最新功能和修复安全漏洞的关键步骤。本教程将探讨Android应用的升级机制,以及如何实现一个简单的APP升级Demo。我们将关注以下几个核心知识点: 1. **APK文件与...

    Android应用程序的自动更新升级

    ### Android应用程序的自动更新升级 #### 一、引言 随着移动互联网的发展,应用程序更新成为提升用户体验、修复问题和引入新功能的重要手段。对于Android应用程序而言,具备版本检测和自动更新的功能不仅能够确保...

    Android自动升级程序

    在Android平台上,自动升级程序是实现应用程序无缝更新的关键技术,它允许用户在不离开应用或重新安装的情况下获取最新的软件版本。本Library应用专注于简化这一过程,使得开发者只需要编写少量的代码,就能为自己的...

    Android5.1升级工具

    这个工具通常包含了完整的系统镜像、升级脚本以及必要的驱动程序,以确保升级过程的顺利进行。下面将详细阐述Android 5.1及其升级工具的相关知识点: 1. **Android 5.1系统特性**:Android 5.1是Google在2015年发布...

    Delphi XE 10 android安卓APP程序自动升级代码

    网上找了一堆Delphi安卓APP程序自动升级方法都大多不太好用,有的需要配置WEB服务器,有的控制下载和升级管理麻烦,于是综合网上资料,根据项目需要整理了一个代码单元,可以直接调用,测试环境Delphi XE 10.3

    Android应用源码之程序如何升级.zip

    在Android平台上,应用程序的升级是开发者和用户都十分关心的话题。源码级别的理解有助于我们深入探究这一过程。本文将从Android应用的版本控制、更新机制、自动与手动升级流程、APK签名验证等方面,详细解析Android...

    Android应用程序的升级

    在整个升级过程中,开发者需要注意兼容性问题,确保新版本能正确地在不同Android版本和设备上运行。同时,考虑到用户体验,应该提供流畅的下载进度指示和错误处理机制。此外,为了保证数据安全,服务器端的APK文件应...

    android app自动升级demo

    在Android应用开发中,自动升级功能是一个非常重要的组成部分,它能确保用户始终使用最新、最安全的软件版本。"android app自动升级demo"是一个实践示例,它演示了如何实现这个功能。以下将详细讲解自动升级的核心...

    Android差分升级,补丁升级JAR

    **补丁升级**(Patch Update)与差分升级相似,也是针对应用程序更新的一种策略。它生成一个包含新旧版本差异的补丁,用户只需下载并应用这个补丁,即可完成更新。这种方法减少了用户的等待时间,提高了用户体验,并...

    android应用程序 宅男志全集

    《Android应用程序:宅男志全集》是一款专为Android用户设计的应用程序集合,包含了多个版本的宅男志及相关图库应用。这个应用合集显然深受宅文化爱好者的欢迎,其多版本的提供显示了开发者对产品不断更新和完善的...

    android美观实用的在线升级demo

    在Android应用开发中,"在线升级"是一个非常重要的功能,它允许用户无缝地获取应用的最新版本,提高用户体验并确保应用程序的安全性和稳定性。本篇将深入解析基于Android的美观实用在线升级Demo,帮助开发者理解并...

    eclipse在线更新升级到android5.0

    Eclipse 在线更新升级到 Android 5.0 是 Android 应用程序开发中常见的一种操作。该操作需要遵循一定的步骤,以确保正确地升级到 Android 5.0。 首先,需要填写升级地址,然后在 Packges 里 Reload,以确保升级到...

    android 数据库升级方法

    以下是关于如何在Android中进行数据库升级的详细说明: 1. **数据库版本管理**: - 每个数据库在创建时都会有一个版本号,这个版本号通常在继承自SQLiteOpenHelper的类中定义。例如,初始版本号为1。每次对数据库...

    Android 差分升级工具abspatch

    在提供的文件列表中,`androidBsdiffUpdate.exe.config`和`androidBsdiffUpdate.exe`是与abspatch相关的可执行文件,它们可能是用于处理Android差分升级的命令行工具或应用程序。`Server.INI`可能是一个配置文件,...

Global site tag (gtag.js) - Google Analytics