判断android活动是否已打开"for result"

CQM*_*CQM 1 android bundle android-intent android-activity

在某些情况下,我希望我的活动(活动A)setResult和其他时间我想要我的活动,startActivity并在调用完成时调用一些参数.

我可以通过启动这一活动一与一些捆绑PARAMATERS,如果该参数存在,那么解决这个问题setResult别人startActivity,但现在我很好奇,如果有无论如何要检查它是如何在第一时间启动了意向

有没有办法确定我的活动A是否已开始结果?

dym*_*meh 5

调用getCallingActivity()将返回调用您的活动的活动startActivityForResult(...).如果getCallingActivity()为null,您可以假设您的活动正常启动(无预期结果)

getCallingActivity文档

防爆.

ComponentName callingComponent = getCallingActivity();

if (callingComponent == null) // result not expected
{
    Intent intent = new Intent(this, ActivityB.class);
    // set your intent extras here
    startActivity(intent);
} else { //result expected
    Intent intent = new Intent();
    // set your intent extras here
    setResult(RESULT_OK, intent);
    finish();
}
Run Code Online (Sandbox Code Playgroud)