最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Android实现静默安装的两种方法
时间:2017-04-27 编辑:简简单单 来源:一聚教程网
前言
一般情况下,Android系统安装apk会出现一个安装界面,用户可以点击确定或者取消来进行apk的安装。 但在实际的项目需求中,有一种需求,就是希望apk在后台安装(不出现安装界面的提示),这种安装方式称为静默安装。下面这篇文章就给大家介绍了两种方法来实现,下面来一起看看吧。
1、root权限静默安装实现
实现实际使用的是su pm install -r filePath命令。
核心代码如下:
代码如下 | 复制代码 |
protectedstaticvoidexcuteSuCMD() { Process process =null; OutputStream out =null; InputStream in =null; String currentTempFilePath ="/sdcard/QQ.apk"; try{ // 请求root process = Runtime.getRuntime().exec("su"); out = process.getOutputStream(); // 调用安装 out.write(("pm install -r "+ currentTempFilePath +"\n").getBytes()); in = process.getInputStream(); intlen =0; byte[] bs =newbyte[256]; while(-1!= (len = in.read(bs))) { String state =newString(bs,0, len); if(state.equals("Success\n")) { //安装成功后的操作 } } }catch(IOException e) { e.printStackTrace(); }catch(Exception e) { e.printStackTrace(); }finally{ try{ if(out !=null) { out.flush(); out.close(); } if(in !=null) { in.close(); } }catch(IOException e) { e.printStackTrace(); } } } |
2、非root权限提示用户安装,代码如下:
代码如下 | 复制代码 |
publicstaticvoidopenFile() { // 核心是下面几句代码 if(!isHasfile()) { downLoadFile(url); } Intent intent =newIntent(); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.setAction(android.content.Intent.ACTION_VIEW); intent.setDataAndType( Uri.fromFile(newFile("/sdcard/update/updata.apk")), "application/vnd.android.package-archive"); mContext.startActivity(intent); } |
-
上一个: 微博故事申请内侧方法 申请地址
-
下一个: 新浪微博故事怎么发布 微博故事使用详情
相关文章
- Android模拟器 Genymotion 安装使用【图解教程】 07-05
- 用于Android App安全检测Drozer工具安装使用教程 02-05
- Android设备如何安装完整的shell工具BusyBox 02-05
- 安装android sdk提示找不到JDK 06-21
- Android SDK安装图文教程 01-14
- sora软件价格介绍 02-22