我沒有一個真正的Android設備,所以我現在正在使用模擬器來進行我的所有開發,而mailto:web鏈接真的不支持Android設備2.1及更低版本? 2.2的作品,但每次我點擊1.6或2.1上的mailto:
鏈接,我都會得到[不支持的動作]對話框。任何有真實設備的人都想測試一下嗎?mailto:Android中不支持的鏈接?
回答
你必須自己處理的WebViewClient
public class MyWebViewClient extends WebViewClient {
Activity mContext;
public MyWebViewClient(Activity context){
this.mContext = context;
}
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if(url.startsWith("mailto:")){
MailTo mt = MailTo.parse(url);
Intent i = new Intent(Intent.ACTION_SEND);
i.setType("text/plain");
i.putExtra(Intent.EXTRA_EMAIL, new String[]{mt.getTo()});
i.putExtra(Intent.EXTRA_SUBJECT, mt.getSubject());
i.putExtra(Intent.EXTRA_CC, mt.getCc());
i.putExtra(Intent.EXTRA_TEXT, mt.getBody());
mContext.startActivity(i);
view.reload();
return true;
}
view.loadUrl(url);
return true;
}
}
在你的活動你保持一個參考MyWebViewClient
並將其與setWebViewClient(mWebClient)
分配給您的webview
。
關於此解決方案的一個小警告:該方法始終返回true,它告訴WebView「我們的WebViewClient的實現處理所有事情」 - 這可能會導致重定向的邊緣情況出現問題,例如在JavaScript中使用'location.replace()' 。而不是'view.loadUrl(url);返回true;'你可以輸入'return false;'來實現相同的效果而不會引入錯誤。看到我在[這個答案的另一個問題]更長的解釋(http://stackoverflow.com/a/14335335/241456) – daniel 2013-01-15 10:12:48
一個更簡單的方法是:
if(url.startsWith("mailto:")){
Intent intent = Intent.parseUri(url, Intent.URI_INTENT_SCHEME);
view.getContext().startActivity(intent);
}
'如果(MailTo.isMailTo(url)){// ...' – SK9 2013-09-04 15:05:51
- 1. 不支持鏈接到'Gtk.Box.new'
- 2. 不支持Youtube鏈接
- 3. mupdf中的內部鏈接支持
- 4. 新澤西鏈接支持
- 5. Spotify oEmbed支持短鏈接
- 6. Android Compat支持庫鏈接
- 7. jQuery GalleryView支持鏈接/ href
- 8. vxworks中是否支持符號鏈接?
- 9. IE10不支持iframe中的樣式錶鏈接
- 10. 支持Python界面的鏈接速度
- 11. jOOQ是否支持鏈接的SQL Server?
- 12. Speedbump支持mailto鏈接的外部鏈接
- 13. 支持html5-video-tag,但是mime-type不支持 - 給出替代鏈接
- 14. mailto:在android中不支持空白鏈接
- 15. Safari中不支持通過鏈接rel導入HTML?
- 16. jQuery Fancybox不支持鏈接在post方法中
- 17. 的Android的WebView loadDataWithBaseURL鏈接的href不支持
- 18. GWT鏈接器是否支持參數?
- 19. Mootools支持選擇器鏈接?
- 20. Windows支持鏈接系統調用嗎?
- 21. 的MacRuby 0.10 HotCocoa不支持的文件格式被鏈接(I386)
- 22. 我的var不支持區塊鏈API
- 23. 圖形API不支持的操作鏈接?
- 24. 添加基本的Spring Security支持後「鏈接不工作」
- 25. 點擊使用Robot Framework的鏈接不支持火狐
- 26. 在鏈接表上不支持的操作
- 27. CMake的Linux上:「目標平臺不支持動態鏈接」
- 28. SVN:符號鏈接不支持在此平臺上 - 的Windows 8.1
- 29. ITransactionLocal接口,不支持
- 30. 錯誤:在Lion下鏈接ocaml項目時不支持動態鏈接10.7
mailto鏈接在哪裏?在WebView中? – 2010-09-08 19:46:07
在使用10.0.2.2的移動瀏覽器中進入本地主機。 – Chamilyan 2010-09-09 01:40:13