为什么扫描后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)
}
}
}
这是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
}
}
}