欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android開發(fā)實(shí)現(xiàn)文件關(guān)聯(lián)方法介紹

 更新時(shí)間:2017年10月30日 11:14:02   作者:魚頭小丸子的博客  
這篇文章主要介紹了Android開發(fā)實(shí)現(xiàn)文件關(guān)聯(lián)方法介紹,具有一定參考價(jià)值,需要的朋友樂意了解下。

Android開發(fā)實(shí)現(xiàn)文件關(guān)聯(lián)方法,做一個(gè)項(xiàng)目的時(shí)候,需要點(diǎn)擊文件打開我們自己的app。首先講一下點(diǎn)擊普通文件打開app的方法,只需要三行代碼,在app啟動(dòng)活動(dòng)里加一個(gè)過濾器。

      <intent-filter>
        <category android:name="android.intent.category.LAUNCHER">
      </category></action></intent-filter>
      <intent-filter>
        <category android:name="android.intent.category.DEFAULT">
        <data android:mimetype="*/*">
      </data></category></action></intent-filter>
</activity>

*/*即所有文件的意思,但是很多時(shí)候我們并不是需要所有的文件,這個(gè)時(shí)候就要學(xué)習(xí)一樣mineType了。

一、mineType

mineType媒體類型,一般是[type]/[subtype]格式。

1.type

Text:用于標(biāo)準(zhǔn)化地表示的文本信息,文本消息可以是多種字符集和或者多種格式的;
Multipart:用于連接消息體的多個(gè)部分構(gòu)成一個(gè)消息,這些部分可以是不同類型的數(shù)據(jù);
Application:用于傳輸應(yīng)用程序數(shù)據(jù)或者二進(jìn)制數(shù)據(jù);
Message:用于包裝一個(gè)E-mail消息;
Image:用于傳輸靜態(tài)圖片數(shù)據(jù);
Audio:用于傳輸音頻或者音聲數(shù)據(jù);
Video:用于傳輸動(dòng)態(tài)影像數(shù)據(jù),可以是與音頻編輯在一起的視頻數(shù)據(jù)格式。

2.subtype主要用法

text/plain(純文本)
text/html(HTML文檔)
application/xhtml+xml(XHTML文檔)
image/gif(GIF圖像)
image/jpeg(JPEG圖像)
image/png(PNG圖像)
video/mpeg(MPEG動(dòng)畫)
application/octet-stream(任意的二進(jìn)制數(shù)據(jù))
application/pdf(PDF文檔)
application/msword(Microsoft Word文件)
multipart/alternative(HTML郵件的HTML形式和純文本形式,相同內(nèi)容使用不同形式表示)
application/x-www-form-urlencoded(使用HTTP的POST方法提交的表單)
multipart/form-data(同上,但主要用于表單提交時(shí)伴隨文件上傳的場(chǎng)合)

3.例子

text/xml

4.筆記

一些基本的文件已經(jīng)能夠關(guān)聯(lián),但是有一些自定義的文件無法關(guān)聯(lián),如.pac文件。這個(gè)時(shí)候需要學(xué)習(xí)一下第二部分自定義文件關(guān)聯(lián)。

二、data標(biāo)簽

<data android:host="string" android:mimetype="string" android:path="string" android:pathpattern="string" android:pathprefix="string" android:port="string" android:scheme="string"></data>

1.scheme

這個(gè)屬性用于設(shè)定URI的scheme部分。它是給指定URI設(shè)置的最基本的屬性,至少要給過濾器設(shè)置一個(gè)scheme屬性,否則,其他的URI屬性就沒有意義了。scheme屬性值沒有”:”符號(hào)結(jié)尾(如,file,而不是file: )

2.host

URI授權(quán)的主機(jī)部分。

3.port

定義URI授權(quán)的端口部分。

host和port的使用都依賴于scheme。

4.mintype

前面已講過。

5.path

path指定一個(gè)完整的路徑。

6.PathPrefix

PathPrefix屬性只指定了部分路徑,它會(huì)跟Intent對(duì)象中的路徑初始部分匹配。

7.pathPattern

重點(diǎn)來了,pathPattern屬性指定一個(gè)要跟Intent對(duì)象中的路徑進(jìn)行匹配的完整路徑,但是這個(gè)路徑中可以包含下列通配符:

7.1. 星號(hào)(*)通配符,路徑中的*星號(hào)代表任意多個(gè)星號(hào)之前的那個(gè)字符,如a*,可跟a、aa、aaa、aaaa、...字符串匹配。

7.2. 點(diǎn)跟星號(hào)的組合(.*)通配符,它可以跟任意字符串進(jìn)行匹配,如.*pac,可以跟abpac、cpac、pac、dssf.pac、…等字符串匹配。

三、例子

本人需要點(diǎn)擊的文件是一個(gè)這樣的文件:

1.文件路徑:/storage/emulated/0/Android/data/包名/files/files/Omega4040_00.00.4002_Nor.pac
2.文件名:Omega4040_00.00.4002_Nor.pac
3.代碼:

  <intent-filter>
    <category android:name="android.intent.category.LAUNCHER">
  </category></action></intent-filter>
  <intent-filter>
    <category android:name="android.intent.category.DEFAULT">
    <category android:name="android.intent.category.BROWSABLE">
    <data android:scheme="file">
    <data android:mimetype="*/*">
    <data android:host="*">
    <data android:pathpattern=".*pac">
  </data></data></data></data></category></category></action></intent-filter>
</activity>

總結(jié)

以上就是本文關(guān)于Android開發(fā)實(shí)現(xiàn)文件關(guān)聯(lián)方法介紹的全部?jī)?nèi)容,希望對(duì)大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站:Android分包MultiDex策略詳解等,有什么問題可以隨時(shí)留言,小編會(huì)及時(shí)回復(fù)大家的。

相關(guān)文章

最新評(píng)論