Intereting Posts

Mailto: ссылки не поддерживаются в Android?

У меня нет реального Android-устройства, поэтому я использую эмуляторы для всех своих разработок на данный момент, mailto: веб-ссылки действительно неподдерживаются на устройствах Android 2.1 и ниже? 2.2 работает, но каждый раз, когда я нажимаю на mailto: link на 1.6 или 2.1, я получаю диалог [неподдерживаемый действие]. Кто-нибудь с настоящим устройством хочет проверить это?

Solutions Collecting From Web of "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 и назначаете ее webview с помощью setWebViewClient(mWebClient) .

Проще было бы:

 if(url.startsWith("mailto:")){ Intent intent = Intent.parseUri(url, Intent.URI_INTENT_SCHEME); view.getContext().startActivity(intent); }