捕获不支持的操作

时间:2013-09-06 04:09:08

标签: java android

有一次,我的应用需要打开一个电子邮件客户端。

我发出打开它的意图,一切正常。

但是当用户没有安装电子邮件客户端时,他们会收到“不支持的操作”错误消息。

有没有办法捕获用户何时收到该错误,以便我可以给他们一个指向他们安装gmail的对话框?

2 个答案:

答案 0 :(得分:1)

我认为这只发生在官方的Android模拟器上;出于某种原因,他们将活动解析为ComponentName emailApp = intent.resolveActivity(getPackageManager()); ComponentName unsupportedAction = ComponentName.unflattenFromString("com.android.fallback/.Fallback"); boolean hasEmailApp = emailApp != null && !emailApp.equals(unsupportedAction); 活动,这显示了这个神秘的消息。

您可以通过运行以下代码来捕获此方案:

{{1}}

答案 1 :(得分:-1)

使用

怎么样?
Intent i = new Intent(Intent.ACTION_SEND);
                i.setType("text/plain");
                i.putExtra(Intent.EXTRA_EMAIL, new String[] { email });
                i.putExtra(Intent.EXTRA_SUBJECT, "Delivery Confirmation");
                i.putExtra(Intent.EXTRA_TEXT, emailcontent + "\n\n\n" + sign);
                try {
                    startActivity(Intent.createChooser(i, "Send mail"));
                } catch (android.content.ActivityNotFoundException ex) {
                    //Here you can show alerts
                }