Android--用DownLoadManager下载完成后启动安装

当我们用系统的服务DownLoadManager下载完成后,系统会发送一个广播,我们只需要注册一个广播,然后在广播里面写如一些相应的操作。

1、注册广播

completeReceiver = new CompleteReceiver();
        registerReceiver(completeReceiver,new IntentFilter(DownloadManager.ACTION_DOWNLOAD_COMPLETE));//注册广播

2、接收广播

//接收到这个广播
    class CompleteReceiver extends BroadcastReceiver{
        @Override
        public void onReceive(Context context, Intent intent) {

            openFile(intent, context);//启动安装
        }
    }

3、启动安装

//启动安装
    private void openFile(Intent intent,Context context){
        long myDownLoadId = intent.getLongExtra(DownloadManager.EXTRA_DOWNLOAD_ID,-1);  //拿到下载的Id
        SharedPreferences preferences = context.getSharedPreferences("downloadcomplete",0);
        long refence = preferences.getLong("refernece",0);
        if (refence == myDownLoadId){     //如果是我们下载完成后发送的广播消息,那么启动并安装
            DownloadManager downloadManager = (DownloadManager) context.getSystemService(Context.DOWNLOAD_SERVICE);
            Intent updateApk = new Intent(Intent.ACTION_VIEW);
            Uri downloadFileUri = downloadManager.getUriForDownloadedFile(myDownLoadId);
            updateApk.setDataAndType(downloadFileUri, "application/vnd.android.package-archive");
            updateApk.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
            context.startActivity(updateApk);
        }
    }
时间: 2024-10-29 04:50:55

Android--用DownLoadManager下载完成后启动安装的相关文章

Android实例-IdHTTP下载(并实现自动安装)(XE10+小米2)

http://www.cnblogs.com/FKdelphi/p/5416941.html Android实例-IdHTTP下载(并实现自动安装)(XE10+小米2) 相关资料: 1.群号 383675978 2.运行时提示"connection closed gracefully"错误原因与解决 http://www.delphifans.com/InfoView/Article_4588.html 3.编译时提示"[Exec Error] The command ...

Android实例-IdHTTP下载(并实现自动安装)

相关资料: 1.群号 383675978 2.运行时提示"connection closed gracefully"错误原因与解决 http://www.delphifans.com/InfoView/Article_4588.html 3.编译时提示"[Exec Error] The command ..... exited with code 1."错误原因不明,解决方法删除androidSDK,下载新版本的,引入新版本的SDK. 实例源码: 1 unit Un

Android 演示 DownloadManager 下载

本文内容 环境 项目结构 演示下载 参考资料 本文是 github 上 Trinea-common 和 Trinea-Demo 项目的一部分.(不知道此人攒了多久~ ) 假设,现在有个下载 apk 包的需求,你大概能想到什么? 下载本身: 下载进度: 期间还能取消: 由于网络不好或中断,下载失败,还要能重试: 因为下载的是 apk,下载完还要能提示安装更好,而且,很多手机管理 app,还能静默安装: 还能在手机通知栏看到下载提示: 这些就涉及到 android.app.DownloadManag

Java开发环境部署2.下载安装java jdk 2.1下载与安装 下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html 下载完后开始安装。注意,安装的路径不能变!!!反正笔者前两次改了安装路径都装不成。 JDK默认安装成功后,会在系统目录下出现两个文件夹,一个代表jdk,一个代表jre。

操作系统:win10 64biteclipse版本:Eclipse Mars (4.5),Eclipse IDE for Java EE DeveloperJava JDK版本:jdk-7u79-windows-x64SDK版本:24.4.1版ADT版本:23.0.4版 1.下载安装java jdk1.1下载与安装 下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html JDK默认安装成功后,会在系统目录下出

下载app后自动安装程序

其实很简单,只需要几行代码就好了,首先要到服务器下载apk,然后才能安装,当然不是傻子应该都知道,我这里用到的是Httputils去下载, 这里需要一些权限 <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <

Android SDK Manager下载失败后 更新列表的正确设置

1.运行SDK Manager. 2.Android SDK Manager"=>"Tools"=>"Options...",勾选"Others"中的"Force https://...sources to be fetched using http://..."选项.如下图所示: 下载SDK总是会出现如下错误: Failed to fetch URL http://dl-ssl.google.com/a

关于Android Studio的下载和安装的常见问题

博主最近在学习android开发,使用的都是Eclipse 最近逛博客的时候听说AndroidStudio是google发布的专门开发android的软件所以花了一天时间果断尝试了一下. 本人电脑配置:os:win7_32位 RAM2.41G(可用)  Android Studio的下载: 我是在Androidstudio中文组的官方网站上下载的的(http://www.android-studio.org/index.php/download/hisversion/169-androidstu

完整版linux下android源码下载、编译、模拟器启动运行

一.环境说明: 1.VMware版本:8.0.3 build-703057 2.liunx系统:Ubuntu10.10 3.jdk:sun-java6-jdk 二.Ubuntu 10.10更新源列表 由于??Ubuntu 10.10版本的源已经过期了,所以,需要对其进行更新,Ubuntu 10.10 已经发布了,下面提供更新源方法与更新源列表地址: 1.sudo gedit /etc/apt/sources.list     编辑你的源列表,将原来的内容全部删除,添加下面的源,复制到你的列表中,

在Ubuntu上下载、编译和安装Android最新源代码

文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/6559955 看完了前面说的几本书之后,对Linux Kernel和Android有一定的认识了,是不是心里蠢蠢欲动,想小试牛刀自己编译一把Android源代码了呢?一直习惯使用Windows系统,而Android源代码是不支持在Windows上编译上,于是决定使用虚拟机安装Ubuntu,然后下载.编译和安装Android源代码. 一. 环境准备