今天,简单讲讲android里如何将自己的app添加进入文件的打开方式。

最近因为换租房的原因,状态很不好。今天尝试写点android的代码的内容。其实很简单,我们只需在AndroidManifest.xml做一些修改,然后进行处理即可。

如何让自己的软件出现在打开方式的列表中呢? 通过设置AndroidManifest.xml文件即可:

<activity android:name=".MainActivity" android:label="@string/app_name" android:launchMode="singleTask" android:screenOrientation="portrait"><intent-filter><action android:name="android.intent.action.MAIN" /><category android:name="android.intent.category.LAUNCHER" /></intent-filter><intent-filter><action android:name="android.intent.action.VIEW"></action><category android:name="android.intent.category.DEFAULT"></category><data android:mimeType="text/plain"></data></intent-filter>
</activity>

添加第二个<intent-filter>,这样你的应用程序就会出现在默认打开列表了

注意需要将mimeType修改成你需要的类型,文本文件当然就是:text/plain

还有其它常用的如:

  • text/plain(纯文本)

  • text/html(HTML文档)

  • application/xhtml+xml(XHTML文档)

  • image/gif(GIF图像)

  • image/jpeg(JPEG图像)【PHP中为:image/pjpeg】

  • image/png(PNG图像)【PHP中为:image/x-png】

  • video/mpeg(MPEG动画)

  • application/octet-stream(任意的二进制数据)

  • application/pdf(PDF文档)

  • application/msword(Microsoft Word文件)

  • message/rfc822(RFC 822形式)

  • multipart/alternative(HTML邮件的HTML形式和纯文本形式,相同内容使用不同形式表示)

  • application/x-www-form-urlencoded(使用HTTP的POST方法提交的表单)

  • multipart/form-data(同上,但主要用于表单提交时伴随文件上传的场合)

注册之后,当点击文档的打开方式时,就会在弹出的应用程序里有我们注册的app,然后只需接收数据进行处理即可。具体接收的代码如下:

Intent intent = getIntent();String action = intent.getAction();
if(intent.ACTION_VIEW.equals(action))
{Log.v(intent.getDataString());}

"intent.getDataString()"返回的就是所点击的文件路径,但是这里会有编码的问题,需要用decode处理一下:

Intent intent = getIntent();
String action = intent.getAction();
if (intent1.ACTION_VIEW.equals(action)) {Uri uri = intent.getData();String str = Uri.decode(uri.getEncodedPath());}

str就是正确的路径

简单讲讲,其实将app注册进入文件的打开方式里,就是添加intent-filter,其中action 为"android.intent.action.VIEW",是打开文件时android会发送的广播,然后根据自己处理的文件类型设置mimeType,比如文本文件当然就是:text/plain。具体的上面都很清楚。关于mimeType,多用途互联网邮件扩展MIMEMultipurpose Internet Mail Extensions)是一个互联网标准,这个我会专门写一篇博客进行讲解。

android 将app添加进入文件的打开方式就讲完了。

就这么简单



android 将app添加进入文件的打开方式相关推荐

  1. Intellij IDEA如何修改文件的打开方式,创建文件添加后缀名无效!始终默认text文件打开

    分享一个在使用IEEA创建文件的时候遇到的一个小坑 今天在使用freeMark的时候遇到一个小坑,就是在idea里面创建文件的时候忘加后缀名,当你将错误的文件删除之后! 之后无论如何修改文件名创建文件 ...

  2. ubuntu创建可执行图标、设置文件默认打开方式

    下面以在ubuntu上安装CAJVIewer为例进行介绍 1 准备工作 1.1 下载可执行程序 https://download.cnki.net/CAJViewer-x86_64-buildubun ...

  3. 通过Powershell修改文件默认打开方式

    修改原理 详情: Windows下通过注册表修改某个类型文件的默认打开方式和文件图标 脚本详情: Github:Change_default_programs.ps1 描述: 至少在Windows10 ...

  4. 扩展名 文件类型 打开方式 ..

    扩展名 文件类型 打开方式 .. 2010年10月30日 --------------------------------------------------------------------- 扩 ...

  5. python文件默认打开方式修改_pycharm修改文件的默认打开方式的步骤

    有时我们用pycharm打开某个文件的时候,默认的打开方式是不正确的,那么如何设置呢?下面小编给大家分享一下. 首先我们点击File菜单,然后选择Setting,如下图所示 接着找到Editor下面的 ...

  6. 修改文件默认打开方式

    对着文件右击->属性 打开方式点击更改 这样就可以修改某一类文件的打开方式

  7. 以下选项不是python打开方式的是-关于文件的打开方式,以下选项中描述正确的是...

    [简答题]请说明狭义.广义的客户的涵义.为什么客户关系管理中客户只研究企业的下游客户? [填空题]仅查阅<重庆市建设工程费用定额>(CQFYDE-2018)中的"工程费用标准&q ...

  8. ai文件如何打开及常见文件的打开方式

    ai文件如何打开?用什么软件可以打开?   用什么软件打开比较清晰些? 用Adobe Illustrator可以打开,用photoshop也可以打开 adobe illustrator ,photos ...

  9. windows .exe 文件默认打开方式变成记事本的解决方法

    windows .exe 文件默认打开方式变成记事本的解决方法 如果cmd.exe打不开,先将默认打开方式切换成cmd.exe 如果用户选择了默认的模式,会在注册表中写一个UserChoice的注册信 ...

最新文章

  1. 2022-2028年中国鸡血石产业市场研究及前瞻分析报告
  2. [转] linux下.tar .gz .tgz .bz2 .bz等解、压包命令详解
  3. Spring boot优点
  4. ASP.NET 网速慢时候按钮禁止重复提交
  5. 当我谈 HTTP 时,我谈些什么?
  6. 超微服务器 旧系统盘 新服务器,超微服务器做系统
  7. android高德地图绘制多边形_exlive1.0BS网上查车完善电子围栏:行政区域、多边形、规划线路...
  8. SQL语句拼接常加 where 1=1 的原因
  9. 六逻辑层次 职业规划案例_我如何在六个月内改变职业并找到了一名开发人员...
  10. 广义表head tail 运算_双链表实现LRU缓存淘汰策略
  11. pytorch保存.pth文件
  12. linux下编译运行驱动
  13. 双线性插值(超级易懂的)
  14. 4S综合管理系统源码 汽车美容4S店管理服务源码
  15. Java图像处理——美颜相机项目核心
  16. 电脑与手机竟然还能这样传文件!
  17. 当你心情不好的时候,看看这几句话。。。
  18. 未来流行遛机器狗,也许能解决城市宠物背后的矛盾
  19. java--for循环执行的顺序
  20. 西安,已达 100 %。

热门文章

  1. poj3525(二分+半平面判定)
  2. 二战字节跳动成功上岸,准备了小半年,拿27k也算不上很高吧~
  3. Android中删除EditText中内容时报SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length
  4. checkv的基本使用
  5. 美国的做法致芯片市值持续暴跌5000亿美元,美国芯片则祈求中国买更多芯片
  6. 1111111111111111111111111111
  7. Android源码编译及替换成自己编译的linux内核
  8. 在职研究生计算机专业好考么,湖南在职研究生计算机专业好考不
  9. Python课程第二天作业
  10. 24点计算器问题[C++实现]