Получение нулевого содержимого в scanresult с использованием zxing IntentIntegrator - PullRequest
0 голосов
/ 20 ноября 2018

Почему я получаю нулевой контент в onActivityResult после сканирования?

Не знаю, имеет ли это значение, но у меня есть тот же код в другом действии, написанном на Java, и он работает просто отлично.Я не получаю нулевой контент, когда использую это действие.

private fun onClickScan(view: View){
    IntentIntegrator(this).initiateScan()
}

override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
    if(resultCode == Activity.RESULT_OK) {
        val scanResult: IntentResult = IntentIntegrator.parseActivityResult(requestCode, resultCode, intent)
        if (scanResult != null) {
            val contents = scanResult.contents
            // contents is null 
        } else {
            super.onActivityResult(requestCode, resultCode, data)
        }
    }
}

enter image description here

Вот тот же код в Java, этот работает для меня,

public void onClick( View view )
{
    //SomeActivity.this - what could be the kotlin equivalent??? I'm passing 'this' in the kotlin version
    IntentIntegrator integrator = new IntentIntegrator(SomeScanActivity.this);
    integrator.initiateScan();
}

@Override
protected void onActivityResult( int requestCode, int resultCode, @Nullable Intent data )
{

    IntentResult result = IntentIntegrator.parseActivityResult( requestCode, resultCode, data );
    if(result != null) {
        String contents = result.getContents();
        if(contents != null)
        {
            // contents is not null
        }
    }
}
...