android默认打开方式修改_setcontenttype方法

android默认打开方式修改_setcontenttype方法android打开文件,intent的使用

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

今天做项目遇到了下载更新APP后自动安装的功能,也就是说当下载之后打开该Apk文件。我们可以通过intent的setDataAndType方法实现,这里列举出更多的打开方式:

我的具体代码实现片段是:

Intent intent = new Intent(Intent.ACTION_VIEW);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
intent.setDataAndType(Uri.fromFile(new File(filePath)),"application/vnd.android.package-archive");
startActivity(intent);

filePath是该文件的绝对路径。

uri要换为你要打开的文件绝对路径,类型是”android.net.Uri“ 参考博主:Android 文件打开方式_关中一叶的专栏-CSDN博客_android 打开文件

1.打开所有文件类型

Intent intent = new Intent();    
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);    
intent.setAction(android.content.Intent.ACTION_VIEW);
intent.setDataAndType(uri,"*/*");

2.打开apk文件

Intent intent = new Intent();    
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);    
intent.setAction(android.content.Intent.ACTION_VIEW);    
intent.setDataAndType(uri,"application/vnd.android.package-archive"); 

3.打开Video文件

Intent intent = new Intent("android.intent.action.VIEW");  
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);  
intent.setDataAndType(uri, "video/*");

4.打开audio文件

Intent intent = new Intent("android.intent.action.VIEW");  
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
intent.setDataAndType(uri, "audio/*"); 

5.打开HTML文件

Uri uri2 = Uri.parse(uri).buildUpon().encodedAuthority("com.android.htmlfileprovider").scheme("content").encodedPath(param ).build();  
Intent intent = new Intent("android.intent.action.VIEW");  
intent.setDataAndType(uri2, "text/html");

6.打开Image文件

Intent intent = new Intent("android.intent.action.VIEW");  
intent.addCategory("android.intent.category.DEFAULT");  
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
intent.setDataAndType(uri, "image/*");

7.打开PPT文件

Intent intent = new Intent("android.intent.action.VIEW");     
intent.addCategory("android.intent.category.DEFAULT");     
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);    
intent.setDataAndType(uri, "application/vnd.ms-powerpoint");

8.打开Excel文件

Intent intent = new Intent("android.intent.action.VIEW");     
intent.addCategory("android.intent.category.DEFAULT");     
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);     
intent.setDataAndType(uri, "application/vnd.ms-excel");

9.打开word文件

Intent intent = new Intent("android.intent.action.VIEW");     
intent.addCategory("android.intent.category.DEFAULT");     
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);intent.setDataAndType(uri, "application/msword");

10.打开CHM文件

Intent intent = new Intent("android.intent.action.VIEW");     
intent.addCategory("android.intent.category.DEFAULT");     
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);intent.setDataAndType(uri, "application/x-chm");

11.打开文本文件

Intent intent = new Intent("android.intent.action.VIEW");     
intent.addCategory("android.intent.category.DEFAULT");     
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setDataAndType(uri1, "text/plain");

12.打开PDF文件

Intent intent = new Intent("android.intent.action.VIEW");     
intent.addCategory("android.intent.category.DEFAULT");     
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setDataAndType(uri, "application/pdf");

有关Intent的知识请移步博客:基础总结篇之九:Intent应用详解_LiuHe-CSDN博客

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/182067.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • C#开发面试题_程序员面试题精选100题

    C#开发面试题_程序员面试题精选100题注明:经过本人面试的经历和在网上的资料整理出来的100道比较常见的C#面试题,想当初面试公司虽然不是很多,第一次找工作用了近两周的时间面试了二十多家公司,成功的不到十家,最后选择了一家大型的软件公司干了两个月就走人了。后来又找了一周工作,面试了十一家公司,成功9家。现在已经在公司工作了快两年的时间了。以下的面试题也是自己曾经做过的,希望能帮助更多的同行找到满意的工作!!!1..NET和C#有

    2022年8月25日
    8
  • 贴片电阻符号表示_怎样识别贴片电阻的阻值

    贴片电阻符号表示_怎样识别贴片电阻的阻值1、贴片电阻阻值和精度贴片电阻本体颜色为黑色,电阻体上一般标注为白色数字(小型电阻无标识,称无印字贴片电阻),如图4所示。贴片电阻在电路板上的元件序列号(常称位号)为R(如R1、R2等)。贴片电阻的基本参数有标称阻值、额定功率、误差级别、最高电压、温度系数等,但在实际使用中,只需关注标称阻值和额定功率值这两项参数就可以了。主要有三位表示和四位表示两种方法三位表示:前2位数字分别为十位、个位值,称为有效数值,第3位数字是10的X次方,误差值在+-%5。…

    2022年8月21日
    5
  • IDEA的基本使用:让你的IDEA有飞一般的感觉[通俗易懂]

    IDEA的基本使用:让你的IDEA有飞一般的感觉[通俗易懂]1.设置maven在File->settings->搜索maven Mavanhomedirectory–设置maven安装包的bin文件夹所在的位置 Usersettingsfile–设置setting文件所在的位置 Localrepository–设置本地仓库的2.IDEA设置代码行宽度在File->settings->E…

    2022年7月21日
    81
  • 定制CentOS5.6系统

    定制CentOS5.6系统

    2021年8月13日
    54
  • windows10 安装密钥_安装了pycharm还需要安装anaconda

    windows10 安装密钥_安装了pycharm还需要安装anaconda前言Python环境配置,有很多种组合方式,但是比较流行的是:Anaconda+Pycharm.第一部分:下载及安装Anaconda1.下载Anaconda安装包,官网下载地址:https://www.anaconda.com/download/选择64-bit的python3.7下载安装Anaconda下载后的文件为.exe文件,双击该文件进入安装界面。  2.1、依次…

    2022年8月29日
    2
  • 根治Windows 2003操作系统登录及关机麻烦

    根治Windows 2003操作系统登录及关机麻烦

    2021年8月4日
    63

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号