Android活动backstack

时间:2016-01-10 13:03:48

标签: android android-manifest onactivityresult back-stack

我有ScanActivity标记在android manifest noHistory=true

<activity
     android:name=".ScanActivity"
     android:noHistory="true"/>

prblem来自ScanActivity我想在此处致电ProductActivity

public void onActivityResult(int requestCode, int resultCode, Intent intent) {
        IntentResult scanResult = IntentIntegrator.parseActivityResult(requestCode, resultCode, intent);
        if (scanResult != null) {
            String result = scanResult.getContents();
            if(result != null && result.length() > 0){
                Intent productIntent = new Intent(this, ProductActivity.class);
                productIntent.putExtra("barcode", result);
                startActivity(productIntent);
            }
        }
    }

但是因为我将noHistory=true添加到扫描活动onActivityResult永远不会被调用。如果我设置noHistory=false一切正常。问题在哪里?

1 个答案:

答案 0 :(得分:1)

根据文件:

  

值“true”表示活动不会留下历史记录。它不会保留在任务的活动堆栈中,因此用户将无法返回该任务。在这种情况下,如果您为此活动的结果启动另一个活动,则永远不会调用onActivityResult()。