У меня есть действие, которое ведет себя так: сканер штрих-кода вызывается через объект IntentIntegrator, он считывает URI.Затем я хочу передать полученный URI в объект, называемый JunctionInterface, через его метод connect ().
private URI uri=null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
IntentIntegrator integrator = new IntentIntegrator(this);
integrator.initiateScan();
if(uri!=null) {
JunctionInterface.connect(JunctionInterface.JX,this, uri);
}
}
public void onActivityResult(int requestCode, int resultCode, Intent intent) {
IntentResult scanResult = IntentIntegrator.parseActivityResult(requestCode, resultCode, intent);
if (scanResult != null) {
try {
uri=new URI(scanResult.getContents());
} catch (URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
Когда я отлаживаю, я вижу, что uri четко извлекается при вызове uri = new URI (scanResult.getContents ()).К сожалению, JunctionInterface.connect () не срабатывает.Еще хуже, когда я пытаюсь поместить что-то столь же простое, как int i = 0, после integrator.initiateScan () (который в основном использует activity.startActivityForResult (intentScan, REQUEST_CODE)), приложение принудительно закрывается.дело с этим кодом?Есть ли способ исправить это и заставить его вести себя так, как я хочу?Спасибо.