工作需要,txt要能用Html查看器打开
方法1. txt格式的文件除了做txet/plain格式还做text/html格式上报intent
位置:frameworks/base/media/java/android/media/MediaFile.java
static {
addFileType("MP3", FILE_TYPE_MP3, "audio/mpeg", MtpConstants.FORMAT_MP3);
addFileType("M4A", FILE_TYPE_M4A, "audio/mp4", MtpConstants.FORMAT_MPEG);
addFileType("WAV", FILE_TYPE_WAV, "audio/x-wav", MtpConstants.FORMAT_WAV);
addFileType("AMR", FILE_TYPE_AMR, "audio/amr");
addFileType("AWB", FILE_TYPE_AWB, "audio/amr-wb");
//if (isWMAEnabled())
{
addFileType("WMA", FILE_TYPE_WMA, "audio/x-ms-wma", MtpConstants.FORMAT_WMA);
}
...
addFileType("TXT", FILE_TYPE_TEXT, "text/plain", MtpConstants.FORMAT_TEXT);
addFileType("TXT", FILE_TYPE_TEXT, "text/html", MtpConstants.FORMAT_TEXT); //add open txt by HtmlViewer
addFileType("HTM", FILE_TYPE_HTML, "text/html", MtpConstants.FORMAT_HTML);
addFileType("HTML", FILE_TYPE_HTML, "text/html", MtpConstants.FORMAT_HTML);
addFileType("PDF", FILE_TYPE_PDF, "application/pdf");
addFileType("DOC", FILE_TYPE_MS_WORD, "application/msword", MtpConstants.FORMAT_MS_WORD_DOCUMENT);
...
}
方法2. HtmlViewActivity接收“text/plain”类型的文件
<activity android:name="HTMLViewerActivity" android:label="HTMLViewer"
android:theme="@android:style/Theme.Light" >
<intent-filter>
<category android:name="android.intent.category.DEFAULT" />
<action android:name="android.intent.action.VIEW" />
<data android:scheme="file" />
<data android:scheme="content" />
<data android:mimeType="text/html"/>
<data android:mimeType="text/plain"/> //增加接受文本文件的类型
<data android:mimeType="application/xhtml+xml"/>
<data android:mimeType="application/vnd.wap.xhtml+xml"/>
</intent-filter>
</activity>