跨应用程序数据传输不起作用-为什么?

时间:2019-07-12 13:52:04

标签: java android cross-application

我需要从主应用程序(A)中启动其他应用程序(B)。我需要A等到在B应用程序中输入一些信息,然后再将我发送回A。

我用startActivityForResult()和onActivityResult()做id。 但是调试显示,使用方法startActivityForResult()之后,方法onActivityResult()恰好被调用,结果Intent中为空。

A:

@Override
    public void onClick(View v) {
        Intent intent = getPackageManager().getLaunchIntentForPackage("com.example.enteraccountnumber");
        startActivityForResult(intent, 1234);
    }


    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        if (data != null) {
            cardNumber = data.getStringExtra("cardNumber");
            Button button = findViewById(R.id.button);
            button.setText(cardNumber);

        }
    }

B:

    @Override
    public void onClick(View v) {
        EditText editText = findViewById(R.id.enterCardNumber);
        String cardNumber = editText.getText().toString();
        Intent result = new Intent();
        result.putExtra("cardNumber", cardNumber);
        setResult(RESULT_OK, result);
        finish();
    }

0 个答案:

没有答案