电子邮件意图成功发送或按键按下方法



我有一个工作电子邮件意向。此外,请注意,我完成了之前的所有后台活动,并在按下键时重新启动它们。

我有两个问题

当用户不发送电子邮件并按下"后退"按钮时,我的应用程序会因暂停完成方法而关闭当用户发送电子邮件时,仍然没有打开最后一个活动。

我认为我在启动活动以获取结果时犯了一个错误。是否可以通过意图解决问题并打开以前的活动。(在本例中为Old.class)任何帮助我们都将不胜感激。我的代码

public void onClick(View v) {
        // TODO Auto-generated method stub
        getdata();
        String message = message
                ;
        final Intent emailIntent = new Intent(
                android.content.Intent.ACTION_SEND);
        emailIntent.setType("plain/text");
        emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL,
                new String[] { "google@gmail.com" });
        emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT,
                "subject");
        emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, message);
        startActivityForResult(Intent.createChooser(emailIntent, "Send mail..."),1);
    }
    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        // TODO Auto-generated method stub
        super.onActivityResult(requestCode, resultCode, data);
        Intent Act2Intent = new Intent(New.this, Old.class);
        startActivity(Act2Intent);
    }
    @Override
    protected void onPause() {
        // TODO Auto-generated method stub
        super.onPause();
        finish();
    }
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if (keyCode == KeyEvent.KEYCODE_BACK) {
            Intent Act2Intent = new Intent(New.this, Older.class);
            startActivity(Act2Intent);
            finish();
            return true;
        }
        return false;
    }
    @Override
    public void onStop() {
        super.onStop();
        EasyTracker.getInstance(this).activityStop(this);
    }

您不能finish()活动onPause(),因为文档说pause()在stop()之后。如果您在onPause()上完成了(),那么onStop()将根本不起作用。检查android活动生命周期。

所以你可以这样尝试:

@Override
protected void onPause() {
    super.onPause();
if(!isActivate)
    finish();
}

否则从CCD_ 4移除CCD_ 3。

相关内容

最新更新