1  下载功能

//下载apkprivate void downloadApk(String apkUrl) throws PackageManager.NameNotFoundException {Uri uri = Uri.parse(apkUrl);DownloadManager downloadManager = (DownloadManager) getSystemService(DOWNLOAD_SERVICE);DownloadManager.Request request = new DownloadManager.Request(uri);// 设置允许使用的网络类型,这里是移动网络和wifi都可以request.setAllowedNetworkTypes(request.NETWORK_MOBILE | request.NETWORK_WIFI);//设置是否允许漫游request.setAllowedOverRoaming(true);//设置文件类型MimeTypeMap mimeTypeMap = MimeTypeMap.getSingleton();String mimeString = mimeTypeMap.getMimeTypeFromExtension(MimeTypeMap.getFileExtensionFromUrl(apkUrl));request.setMimeType(mimeString);//在通知栏中显示request.setNotificationVisibility(request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);request.setTitle("download...");request.setVisibleInDownloadsUi(true);//sdcard目录下的download文件夹request.setDestinationInExternalPublicDir("/download", "SanjuScanApp_Android.apk");// 将下载请求放入队列downloadManager.enqueue(request);}

2  设置接收广播

public class InstallReceiver extends BroadcastReceiver {// 安装下载接收器@Overridepublic void onReceive(Context context, Intent intent) {if (intent.getAction().equals(DownloadManager.ACTION_DOWNLOAD_COMPLETE)) {installApk(context);}}// 安装Apkprivate void installApk(Context context) {try {Intent i = new Intent(Intent.ACTION_VIEW);String filePath = Environment.getExternalStorageDirectory().getAbsolutePath() + "/download/SanjuScanApp_Android.apk";i.setDataAndType(Uri.parse("file://" + filePath), "application/vnd.android.package-archive");i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);context.startActivity(i);} catch (Exception e) {e.printStackTrace();}}
}

3  注册广播(AndroidManifest.xml的receiver节点)

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"package="com.example.tyler.myapplication"><uses-permission android:name="android.permission.INTERNET" /><uses-permission android:name="android.permission.VIBRATE" /><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /><application><activityandroid:name=".LoginActivity"</activity><receiverandroid:name="com.example.tyler.HelperTool.InstallReceiver"><intent-filter><action android:name="android.intent.action.DOWNLOAD_COMPLETE" /></intent-filter></receiver></application>

Android app下载并安装相关推荐

  1. Android Studio下载、安装、配置及连接真机开发第一个App ——入门选手快进

      最近的安卓测试给我心态搞蹦了,问也没人问,难受简直了!又是一轮自学之路(说实话这一路上教会我一个很大的道理就是一定要有愿意帮助你的老师,还有自己的自觉,一样也不能少.前者没有的话只能后者补了呜呜呜 ...

  2. Android Studio下载及安装3.0版本

    今天,继续简单讲讲Android studio3.0如何安装. 之前写过Android studio的安装,那个是Android 2.2.3版本,这次由于导入3.0项目,所以重新安装了Android ...

  3. Android 4.4环境搭建——Android SDK下载与安装

    学习开发Android应用程序,须要下载安装Android SDK.在Android的官方站点的二级域名http://developer.android.com/index.html中.能够下载到完整 ...

  4. Android Studio下载与安装

    文章目录 Android Studio下载与安装 一.进入官网,选择下载 二.双击打开 三.开始安装 四.配置信息 五.修改SDK位置 六.创建项目 七.创建手机模拟器 八.下载其它版本 Androi ...

  5. Android SDK下载与安装(仅支持jdk1.8及以下)

    1.Android SDK下载与安装(仅支持jdk1.8及以下) 1.Android SDK下载 下载地址:https://www.androiddevtools.cn/最新版 2.Android S ...

  6. 微图App下载与安装教程

    <微图App>是<水经微图>的移动端,是作为数据采集和数据云同步必不可少的应用,该APP支持在Android和iOS系统上运行,暂时仅推出了Andriod版,后续会推出iOS版 ...

  7. Android中下载、安装和卸载(原)

    应用场景:在检查版本更新的时候经常需要从服务器端下载然后安装到手机中 使用工具: XUtils,这个开源的框架真的是需要花大把时间去阅读和理解的,十分有用的,on the way ! fighting ...

  8. Android Studio电脑上怎么下载-Android Studio下载和安装图文教程[超详细]

    安装 Android Studio 只需轻松点击几下,即可完成 Android Studio 的设置. 首先,请务必下载最新版本的 Android Studio. Windows 如需在 Window ...

  9. go android app下载地址,goPro安卓app下载

    goPro安卓app下载地址免费提供给大家,goPro是一款功能强大的运动摄像机软件,不仅支持极限拍照,还有视频直播功能,稳定性更强,更有超多拍摄技巧可以免费学习哦! 软件介绍 GoPro是一款功能非 ...

最新文章

  1. 关于Webview带参访问服务器
  2. 段式存储、页式存储。
  3. 【杂谈】从CV小白到人脸表情识别专栏作者,我与有三AI的故事
  4. 第四范式AI转型合伙人招聘进行时
  5. 关于An association from the tablea refers to an unmapped classB
  6. 【Elasticsearch】Elasticsearch的数据类型 (text、keyword、date、object、geo等)
  7. 机器学习实践指南(五)—— GD/SGD/MSGD 伪代码演示
  8. 推荐几个代码自动生成器,神器
  9. 小米路由插件二维码2020_打造5G时代的AIoT智能互联 小米路由AX3600评测
  10. Unity3d随机数生成
  11. js判断数组中是否包含某个元素
  12. Can‘t Update No tracked branch configured for branch
  13. 关于a标签的hover问题
  14. mysql同步大师_Mysql 同步大师(MySQLSync)
  15. 可以过滤网页中广告的插件Adblock Plus
  16. 北京社保开户需要的手续及流程
  17. SQL中的布尔型变量
  18. SCRIPT5: 拒绝访问
  19. 一步一步了解区块链技术
  20. 防止 云端软件 下载完毕立即解压

热门文章

  1. 齐鲁师范学院计算机专业在那个校区,齐鲁师范学院有几个校区及校区地址
  2. 力荐 75种jquery特效 一键下载 用过挺好的
  3. 你真的会做小程序按钮吗?看了字节35K前端的样式设计,悟了
  4. pc电源改可调_是否可以从PC上关闭计算机显示器的电源?
  5. 仪表放大器的PCB布局-运放
  6. AD620-仪表放大器-快速上手使用
  7. [考研]考研倒计时第5天
  8. 通过IP如何找到对应的MAC地址的
  9. 手撕神经网络(2)—— 将基本组件搭建成躯干
  10. HIve 删除乱码分区