android打开各种文件格式,笔记-Android中打开各种格式的文件(apk、word、excel、ppt、pdf、音视频、图片等)...
打开后缀.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、音视频、图片等)...相关推荐
- 微信阅读原文直接打开浏览器_微信打开网址添加在浏览器中打开提示
使用 http://mp.weixin.qq.com/mp/redirect?url=http://caibaojian.com/test.apk#weixin.qq.com#wechat_redir ...
- 微信打开网址添加在浏览器中打开提示遮罩
原文链接:http://caibaojian.com/weixin-tip.html 使用微信打开网址时,无法在微信内打开常用下载软件,手机APP等.网上流传的各种微信打开下载链接,微信已更新基本失效 ...
- 如何在谷歌Chrome新版浏览器中打开并编辑Word/Excel/PPT等Office文档?(视频演示)
如何在谷歌Chrome新版浏览器中打开并编辑Word/Excel/PPT等Office文档?
- Windows 10 Word Excel PPT文件打开速度缓慢解决办法
最近,发现Excel打开速度越来越慢,会在一定程度上影响工作效率.因此尝试对此加以解决.其中,本文所给方法对于Word/Excel/PPT文件均适用. 首先,在打开时,观察是哪一项加载项加载速 ...
- php word excel转pdf文件怎么打开,php office文件(word/excel/ppt)转pdf文件,pptpdf
php office文件(word/excel/ppt)转pdf文件,pptpdf 把代码放到了github上,点击进入 前阶段有个项目用到了线上预览功能, 关于预览office文件实现核心就是,把o ...
- vba 保存word里面的图片_笔记7 【office精华课】一套课程学会Word+Excel+PPT(一)【Word】(2020年第37周 周五)...
[office精华课] <一套课程学会Word+Excel+PPT> 课程目录:(总时长合计:28:56:25) =================================== [ ...
- 转:intellij idea如何右键新建文件中添加jsp格式的文件【初学者适用】
转载:https://blog.csdn.net/weixin_43970743/article/details/84983066 版权声明:如果对您有所帮助,那就随手分享帮助更多人吧! https: ...
- java全文检索word中的内容_搜索引擎时对WORD,EXCEL,PDF,POWERPOINT文件全文检索的总结...
搜索引擎时对WORD,EXCEL,PDF,POWERPOINT文件全文检索的总结 (2012-02-12 16:31:59) 标签: pdf文档 幻灯片 pdf文件 全文检索 控件 it JAVA读取 ...
- word/excel/ppt软件中删除一堆多余的加载项
以excel为例. 第一步,先试试管理员身份运行软件,然后在"选项"-"转到COM加载项"中删除它就行了. 第二步,还不行的话(我的就是,删完过段时间发现它又在 ...
最新文章
- RabbitMQ历史
- window.onload和jquery中$(function(){ })的区别
- 文件系统vs对象存储——选型和趋势
- CodeForces - 1526D Kill Anton(模拟)
- h5球的立体效果_使用HTML5 Canvas 2D直角坐标系实现三维球体效果
- java android 五子棋游戏_基于Android平台五子棋游戏最终版.doc
- 【AtCoder010】A - Addition(奇偶)
- html5shiv源码,前端开发必配置:html5shiv.js和respond.min.js的作用说明!
- html面中select下拉框回显,select下拉框数据回显
- 101 200 之间的素数
- Python网络爬虫模块介绍:fake-useragent模块快速生成User-Agent信息
- Type-C扩展坞自适应供电专利维权案例
- C++数论库:NTL
- 京东api接入的几个坑(宙斯) 转载
- 域管理:windows server分发与分配软件
- ...$wux.toast_如何解决Toast#handleShow()的WindowManager.BadTokenException?
- ad绘制箭头_上传单张/多张图片并绘制箭头
- vue项目引入彩色iconfont图标
- 基于TR069协议管理平台(XACS)多场景解决方案之二《TR069运维平台(XACS Plus)》
- 解决windows未识别的网络问题
热门文章
- 翻斗式雨量计的组成与工作原理
- 字句解 (易經大意 韓長庚)
- 【EXE PE】了解pe段--PE结构详解
- golang web 服务器 request 与 response 处理
- 买卖股票的最佳时间含手续费的代码实现
- 【阿里聚安全·移动安全周刊】移动裸奔时代,手机已成为隐私的监视器
- 2021AAPM大赛第一名技术报告Designing an Iterative Network for Fanbeam-CTwith Unknown Geometry 阅读笔记
- 录屏的知识片段的记录与理解
- NR基础篇上——均值滤波、高斯滤波、双边滤波、NLM
- python实现堆栈_Python堆栈实现计算器