Вы можете использовать startActivityForResult
метод:
Родительская активность:
final int BARCODE_ACTIVITY_REQUEST_CODE = 1
private void startBarcodeScannerActivityForResult() {
Intent intent = new Intent(this, BarcodeActivity.class);
startActivityForResult(i, BARCODE_ACTIVITY_REQUEST_CODE);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == BARCODE_ACTIVITY_REQUEST_CODE) {
if(resultCode == Activity.RESULT_OK){
String barcode = data.getStringExtra("barcode");
}
}
}
Активность со штрих-кодом
private void handleDecodeInternally(Result rawResult, ResultHandler resultHandler, Bitmap barcode) {
String barcode = resultHandler.getDisplayContents().toString();
Intent returnIntent = new Intent();
returnIntent.putExtra("barcode",barcode);
setResult(Activity.RESULT_OK,returnIntent);
finish();
}
Подробнее о startActivityForResult
: https://developer.android.com/reference/android/app/Activity