如何通过意图调用android(带线程)中的应用程序

时间:2012-06-29 18:10:56

标签: android multithreading android-intent

我对Android很新,此时我在我的ShoplistActivity上调用barcodeSCanner,就像这样:

Intent barcode = new Intent(ShopListActivity.this, BarcodeActivity.class);
startActivityForResult(barcode,0);

然后在我的BarcodeActivity上我有这样的事情:

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

        switch (requestCode) {
        case IntentIntegrator.REQUEST_CODE: {
            if (resultCode != RESULT_CANCELED) {
                IntentResult scanResult = IntentIntegrator.parseActivityResult(
                        requestCode, resultCode, data);

                if (scanResult != null) {

                    try {
                        setContentView(R.layout.automatico);

                        editForEAN = (EditText) findViewById(R.id.EditEAN);
                        txt_EAN = scanResult.getContents();
                        editForEAN.setText(txt_EAN);

                    } catch (Exception e) {
                        Toast.makeText(getBaseContext(), e.getMessage(),
                                Toast.LENGTH_LONG).show();
                    }


                    }

            }
        }
            break;
        }
    }

现在我的问题是,我希望用线程实现一种关闭BarcodeScanner的方法,如果它没有在5s中使用,尝试使用Handler而没有成功..

1 个答案:

答案 0 :(得分:0)

为何关闭它? Android应用不需要关闭。如果用户启动您的应用程序,然后去其他地方,您不在乎。您需要保存状态,并准备在用户回来时重新激活。

从本质上讲,Android UX是“无退出按钮”。你的应用程序一直运行,直到系统抛出它为其他东西腾出空间。唯一的例外是正在进行的任务,如音频播放和后台服务。在这些情况下,您应该为用户提供停止播放或卸载服务的方法,但不需要停止整个应用程序。