0

我对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 的方法,如果它没有在 5 秒内使用,尝试使用 Handler 没有成功。

4

1 回答 1

0

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

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

于 2012-06-29T21:50:44.980 回答