這與問題how to open an attachment with my applicacion from within the email app? (mime type, intent filter ...)有關,我認爲我已經解決了它,但事實並非如此。在android中註冊新的mime類型
我發現有些電子郵件客戶端(例如內置於電子郵件客戶端的Samsung Galaxy SII)不遵守sendIntent.setType()方法,並且在將附件添加到電子郵件時,它不會添加指定的MIME類型在setType方法中。其結果是,當電子郵件到達時我無法打開附件。
因此,爲了能夠從任何電子郵件客戶端打開附件,我認爲他們唯一的辦法就是創建一個與我的自定義擴展關聯的新MIME類型。
但我找不到任何方法來註冊一個新的MIME類型。我知道這可以通過一些應用程序來完成(ASTRO文件資源管理器),但我不知道在哪裏可以查找有關添加新的MIME類型的信息。
編輯(2012年10月1日) ASTRO文件資源管理器僅爲其進程添加MIME類型。它們不能在其流程之外被讀取,所以我沒有任何例子說明它的工作原理。
我一直在看MimeTypeMap源代碼,看起來它只使用一組預定義的MIME類型,你不能添加一個新的。
我嘗試使用反射(只是爲了檢查),並能夠添加一個MIME類型,但它只對我的進程可見,就好像我的進程有它自己的MimeTypeMap副本,所以電子郵件客戶端仍然不會打開附件。
有人可以幫忙嗎?
在此先感謝
我不認爲這是可能的。我試圖找回一些時間並放棄。這對我來說不是必要的。 – Ifor