Android 文件关联详解2010-09-10 09:42这是网上被转载比较多的关于的描述:
首先说一下,AndroidManifest.xml文件:4 t% |. w" }, l1 p- m: V+ u0 B& H D
<?xml version="1.0" encoding="UTF-8"?>
<manifest android:versionCode="1" android:versionName="1.0"
package="com.openfiledialog" xmlns:android="http://schemas.android.com/apk/res/android">
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:label="@string/app_name" android:name=".MainActivity">
<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="*/*"></data>
</intent-filter>
</activity>
<activity android:name=".FileList"/>
</application>
<uses-sdk android:minSdkVersion="7"/>
</manifest>
& o# Y- i, O+ j( l# }+ d
注意,这里面有两组“intent-filter”。这里,实现文件关联主要是第二组在起作用。
k! Y2 U/ Z4 X) v( q“android:mimeType="*/*"”表示所有文件类型都和这个apk连接起来。只要在资源管理器中点击任何文件,都会弹出窗口问你用哪个软件打开,而其中必有本apk。
# a8 L+ K! r% E! I. W" `- P9 h如果写成“android:mimeType="image/jpg"”,则只关联jpg文件。
public class MainActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Intent intent = getIntent();
String action = intent.getAction();
if(intent.ACTION_VIEW.equals(action)){
TextView tv = (TextView)findViewById(R.id.tvText);
tv.setText(intent.getDataString());
}
}
}
注意其中的“ if(intent.ACTION_VIEW.equals(action))”,这里的ACTION_VIEW和前面的“android.intent.action.VIEW”是对应的。" i; t* e6 D8 J3 U- a% V" N: L
这里可选项很多,我就不一一介绍了,有兴趣的读者请自行察看相关文档——不是我不想介绍,而是因为我也不懂……' l2 e4 m, R% {2 l7 n3 x3 }
[4 U3 A ]6 i x: T
然后,通过“intent.getDataString()”就可以获取传进来的参数,也就是点击的文件名(包含路径,而且以file://开头)。
问题是我不明白我看完之后还是不明白怎么关联一般的文件,因为不明白什么是MIME类型。在强大的搜索帮助下终于找到关于MIME类型的详细解释:http://en.wikipedia.org/wiki/MIME_type#List_of_common_media_types这是WIKI上关于MIME类型的说明很详细。
举个例子如果我们想关联pdf文档直接将上面代码中<data android:mimeType="*/*"></data>中的"*/*"替换成"application/pdf"j即可。
另外,WIKI上还有一篇文章值得一读:http://en.wikipedia.org/wiki/URI_scheme。
分享到:
相关推荐
Android开发实现文件关联方法,做一个项目的时候,需要点击文件打开我们自己的app。首先讲一下点击普通文件打开app的方法,只需要三行代码,在app启动活动里加一个过滤器。 <category android:name=android....
文件系统中打开某种类型文件时,在打开应用列表中添加自己的应用,并在应用中获取该文件的信息,做出对应的操作
android-2.2 source文件 eclipse中绑定android源码的方法 1.下载android-2.2 source 2.解压放在android.jar所在目录的sources里即可 比如我android.jar所在目录为 D:\android-sdk-windows\platforms\android-8...
5)文件关联打开,列举文件所支持的打开方式给用户选择; 6)内嵌文件编辑器,更方便地打开文件,并可编辑保存为新文本; 7)设置主目录,更方便用户进入特定目录; 8)更快速地搜索文件:根据关键字或其它条件搜索目标...
无人机Android-UI布局文件与java文件关联.doc
Android的apk文件反编译后,甚多的资源和java文件无法对应,java文件中引用的资源id变成十进制数字。本文将反编译apk的java文件和资源文件重新关联引用对应,使得java文件能准确无误地重新引用资源文件。 (1)将反...
第一种方式:source attach 第二种方式:复制platform/frameworks/base/core/java到在AndroidSDK的安装目录下的platforms/android-12下新建sources目录 第三种方式:最全面但最复杂的一种,见文件里的方式
2.配置了Android工程关联其API源码: 右击目标工程,Build Path -> Configure Build Path -> Library选项下 -> Android 4.1 -> android.jar -> Source attachment --> Edit --> External Folder 选择这个文件目录C:...
树莓派+raspbian官方系统+添加了清华大学的源+samba4.6.7
出现这个原因,一般是因为android.jar包的Javadoc文件的关联属性没有设置好。 可以进行如下操作: 1,右击项目,选择 properties –> Java Build Path –> Libraries,展开Android相关类库的具体属性,下面有一个...
3)对于VISAT/WIN7的用户,运行之前先给APK安装助手执行文件(AndroidAgentApp.exe)管理员权限,否则会与APK文件关联失败。对于关联失败的用户仍然可以通过安装助手中的“打开APK”功能找到所需要安装的APK文件进行...
RE 文件管理器 Root Explorer:这个软件要说有多强大,小编也就说不清了,如果准确点来说的话,这个应该是手机 ROOT 后必备的一个手机管理软件,可以很方便的实现...– 设置特定文件类型的打开方式(相当于文件关联)
无法关联v4包的源码,把该文件放到和v4同目录下即可,里面内容根据自己情况修改
安卓4.3源代码 解压后 放在sdk-platforms-android-18文件夹下 通过eclipse和本jar文件关联,即可使用
文件里是android触屏摇杆控制蓝牙车的工程文件,关联博客为http://blog.csdn.net/lynx2/article/details/7190982
android-4.0 source文件 eclipse中绑定android源码的方法 1.下载android-4.0 source 2.解压放在android.jar所在目录的sources里即可(注意是sources而非source)。 比如我android.jar所在目录为 D:\android-sdk...
本工具执行安装后,直接在【鼠标右键】生成快捷键,自动关联APK、DEX、 Odex、Zip文件。只要在电脑任意非C盘根目录,【鼠标右键】点击相关文件,即 可编译操作。如,反编译APK及DEX文件,反编译后生成可编译的...
如何在Android系统手机上安装软件的三种方法 很多朋友初用安卓手机,可能都会比较陌生。...该程序会自动关联电脑中的apk程序,安装软件时只需双击apk安装文件即可。该程序会帮助你自动将软件安装到你的手机里。
12、Win8用户 需要注意一下,如果安装了手机助手,需要,手动关联APK文件 apk文件鼠标右键,【打开方式】-【选择默认程序】-【APK安装器】 13、其他小白问题,上QQ群(8023666)提问,不要单独Q我,谢谢! _________...