打开后缀.apk的文件。即启动安装程序。

//apkFilePath 文件路径

public void installAPK(String apkFilePath) {

// 创建URI

Uri uri = Uri.fromFile(new File(apkFilePath));

Intent intent = new Intent(Intent.ACTION_VIEW);

// 设置Uri和类型

intent.setDataAndType(uri, "application/vnd.android.package-archive");

// 运行安装

mContext.startActivity(intent);

}

/**

* 打开多种类型文件

* @param path 文件路径

* @param type 文件类型

*/

public void openText(String path , int type){

Intent intent = new Intent(Intent.ACTION_VIEW);

intent.addCategory(Intent.CATEGORY_DEFAULT);

intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

Uri uri = Uri.fromFile(new File(path ));

//推断文件类型

if (FILE_TYPE_PPT == type) {

intent.setDataAndType(uri, "application/vnd.ms-powerpoint");

} else if (FILE_TYPE_WORD == type) {

intent.setDataAndType(uri, "application/msword");

} else if(FILE_TYPE_EXCEL == type){

intent.setDataAndType(uri, "application/vnd.ms-excel");

} else if(FILE_TYPE_TXT == type){

intent.setDataAndType(uri, "text/plain");

} else if(FILE_TYPE_PDF == type){

intent.setDataAndType(uri, "application/pdf");

} else if(FILE_TYPE_HTML == type){

Uri htmluri = Uri.parse(path).buildUpon().encodedAuthority("com.android.htmlfileprovider")

.scheme("content").encodedPath(path).build();

intent.setDataAndType(htmluri, "text/html");

}

try {

activity.startActivity(intent);

} catch (Exception e) {

Toast.makeText(mContext, "设备中没有安装支持该格式的程序", Toast.LENGTH_SHORT).show();

}

}

打开多媒体类型

intent.setDataAndType(uri, "audio/*"); //音频

intent.setDataAndType(uri, "video/*"); //视频

intent.setDataAndType(uri, "image/*"); //图片

intent.setDataAndType(uri, "application/x-chm"); //打开chm文件

推断文件名称是否是某种类型的后缀

private boolean check(final String name, final String[] extensions) {

for (String end : extensions) {

if (name.toLowerCase().endsWith(end)) {

return true;

}

}

return false;

}

/设置类型

if (check(name, ".apk")){

file.setType(FILE_TYPE_APK);

} else if(check(name, ".pdf")){

file.setType(FILE_TYPE_PDF);

} else if(check(name,

getStringArray(R.array.ppt_filter))){

file.setType(FILE_TYPE_PPT);

}

...................

array.ppt_filter:

.ppt

.pptx

//依据包名卸载apk

private void uninstallPkg(String pkg) {

Uri packageURI = Uri.parse("package:"+pkg);

Intent uninstallIntent = new Intent(Intent.ACTION_DELETE, packageURI);

startActivity(uninstallIntent);

//也能够用这样的方法卸载

// getPackageManager().deletePackage(pkg, null, 0);

}

//获取设备存储路径(sd卡,usb)

Environment.getExternalStorageDirectory();

Environment.getExternalStorageDirectory().getParent();

android打开各种文件格式,笔记-Android中打开各种格式的文件(apk、word、excel、ppt、pdf、音视频、图片等)...相关推荐

  1. 微信阅读原文直接打开浏览器_微信打开网址添加在浏览器中打开提示

    使用 http://mp.weixin.qq.com/mp/redirect?url=http://caibaojian.com/test.apk#weixin.qq.com#wechat_redir ...

  2. 微信打开网址添加在浏览器中打开提示遮罩

    原文链接:http://caibaojian.com/weixin-tip.html 使用微信打开网址时,无法在微信内打开常用下载软件,手机APP等.网上流传的各种微信打开下载链接,微信已更新基本失效 ...

  3. 如何在谷歌Chrome新版浏览器中打开并编辑Word/Excel/PPT等Office文档?(视频演示)

    如何在谷歌Chrome新版浏览器中打开并编辑Word/Excel/PPT等Office文档?

  4. Windows 10 Word Excel PPT文件打开速度缓慢解决办法

      最近,发现Excel打开速度越来越慢,会在一定程度上影响工作效率.因此尝试对此加以解决.其中,本文所给方法对于Word/Excel/PPT文件均适用.   首先,在打开时,观察是哪一项加载项加载速 ...

  5. php word excel转pdf文件怎么打开,php office文件(word/excel/ppt)转pdf文件,pptpdf

    php office文件(word/excel/ppt)转pdf文件,pptpdf 把代码放到了github上,点击进入 前阶段有个项目用到了线上预览功能, 关于预览office文件实现核心就是,把o ...

  6. vba 保存word里面的图片_笔记7 【office精华课】一套课程学会Word+Excel+PPT(一)【Word】(2020年第37周 周五)...

    [office精华课] <一套课程学会Word+Excel+PPT> 课程目录:(总时长合计:28:56:25) =================================== [ ...

  7. 转:intellij idea如何右键新建文件中添加jsp格式的文件【初学者适用】

    转载:https://blog.csdn.net/weixin_43970743/article/details/84983066 版权声明:如果对您有所帮助,那就随手分享帮助更多人吧! https: ...

  8. java全文检索word中的内容_搜索引擎时对WORD,EXCEL,PDF,POWERPOINT文件全文检索的总结...

    搜索引擎时对WORD,EXCEL,PDF,POWERPOINT文件全文检索的总结 (2012-02-12 16:31:59) 标签: pdf文档 幻灯片 pdf文件 全文检索 控件 it JAVA读取 ...

  9. word/excel/ppt软件中删除一堆多余的加载项

    以excel为例. 第一步,先试试管理员身份运行软件,然后在"选项"-"转到COM加载项"中删除它就行了. 第二步,还不行的话(我的就是,删完过段时间发现它又在 ...

最新文章

  1. RabbitMQ历史
  2. window.onload和jquery中$(function(){ })的区别
  3. 文件系统vs对象存储——选型和趋势
  4. CodeForces - 1526D Kill Anton(模拟)
  5. h5球的立体效果_使用HTML5 Canvas 2D直角坐标系实现三维球体效果
  6. java android 五子棋游戏_基于Android平台五子棋游戏最终版.doc
  7. 【AtCoder010】A - Addition(奇偶)
  8. html5shiv源码,前端开发必配置:html5shiv.js和respond.min.js的作用说明!
  9. html面中select下拉框回显,select下拉框数据回显
  10. 101 200 之间的素数
  11. Python网络爬虫模块介绍:fake-useragent模块快速生成User-Agent信息
  12. Type-C扩展坞自适应供电专利维权案例
  13. C++数论库:NTL
  14. 京东api接入的几个坑(宙斯) 转载
  15. 域管理:windows server分发与分配软件
  16. ...$wux.toast_如何解决Toast#handleShow()的WindowManager.BadTokenException?
  17. ad绘制箭头_上传单张/多张图片并绘制箭头
  18. vue项目引入彩色iconfont图标
  19. 基于TR069协议管理平台(XACS)多场景解决方案之二《TR069运维平台(XACS Plus)》
  20. 解决windows未识别的网络问题

热门文章

  1. 翻斗式雨量计的组成与工作原理
  2. 字句解 (易經大意 韓長庚)
  3. 【EXE PE】了解pe段--PE结构详解
  4. golang web 服务器 request 与 response 处理
  5. 买卖股票的最佳时间含手续费的代码实现
  6. 【阿里聚安全·移动安全周刊】移动裸奔时代,手机已成为隐私的监视器
  7. 2021AAPM大赛第一名技术报告Designing an Iterative Network for Fanbeam-CTwith Unknown Geometry 阅读笔记
  8. 录屏的知识片段的记录与理解
  9. NR基础篇上——均值滤波、高斯滤波、双边滤波、NLM
  10. python实现堆栈_Python堆栈实现计算器