2011-09-21 84 views
3

我想我的android应用程序能够通过蓝牙,电子邮件,wifi直接等共享文件(标准共享方法)。我想将我的数据解析为带有自定义扩展名的文件,并通过蓝牙等共享方式发送。收件人应该能够打开文件,然后我的应用程序启动并处理文件。在互联网上搜索和总结,有没有人知道任何有关这个教程的好网站?或者也许有关于这个话题的任何阅读材料Android定制文件扩展

回答

4

哈!我最初似乎在这次搜索中干了些事,但我的坚持终于拉开了。

Android intent filter: associate app with file extension

所以,他们做了什么就在这里被设置在manifest.xml文件,使您的应用程序打开这些类型的文件的intent-filter。在你的情况,我会怀疑你的代码会是这个样子

<intent-filter android:icon="drawable resource" 
       android:label="string resource" 
       android:priority="integer"> 
    <action android:name="android.intent.action.VIEW" /> 
    <category android:name="android.intent.category.DEFAULT" /> 
    <data android:scheme="file" /> 
    <data android:host="*" /> 
    <data android:pathPattern=".*\\.CUSTOM_FILE_EXTENSION" /> 
</intent-filter> 

我相信,文件浏览器将能够获得从意向代码的那部分显示的图标。但我不知道太多关于这一点,所以不要引用我就可以了:P

编辑:此意图过滤器应该去活动/服务/接收器将要处理自定义文件里面用户正在打开。

+0

嗨鲍勃,谢谢你的意见。对不起,但是你把它放在活动/服务/接收器中是什么意思? –

+0

哦,我只是指Android Manifest文件中的位置。对不起,当我写回应时,我有点昏昏欲睡,所以我没有注意到我的“clarifaction”是多么的不清楚。 :D http://developer.android.com/guide/topics/manifest/manifest-intro.html多数民众赞成那将告诉你在哪里把东西放在清单文件中的页面 – Bob

+2

我遇到了问题实现这一点。如果我将此代码粘贴到清单的主要活动标记中,并将其更改为我的自定义扩展名,请使用root explorer转到具有该自定义扩展名的文件...在其上执行任何操作......思考? – Nick