连接/断开 USB BroadcastReceiver 时隐藏/取消隐藏应用程序

Hide / Unhide application when connect / disconnect USB BroadcastReceiver

我的应用程序只有 MainActivityImageView

BroadcastReceiver 有效。当我连接 USB 时显示 Toast 消息。

现在,我需要最小化我的应用程序并仅显示已连接 USB 电缆的应用程序。

BroadcastReceiver broadcast_reciever = new BroadcastReceiver() {

    @Override
    public void onReceive(Context arg0, Intent intent) {
        String action = intent.getAction();
        if (action.equals("usb_detect")) {
            Toast.makeText(arg0,"Atenção!",Toast.LENGTH_SHORT).show();
            finish();
            startActivity(getIntent());
            //startActivity(new Intent(Intent.ACTION_MAIN).addCategory(Intent.CATEGORY_LAUNCHER));
        }
    }
};

清单在这里:https://i.stack.imgur.com/sa3Pe.jpg

要将您的应用程序置于前台,请将以下内容添加到 onReceive()

Intent launchIntent = getPackageManager().
    getLaunchIntentForPackage("your.package.name");
startActivity(launchIntent);

这不会启动新的 Activity,它只会将包含您的应用程序的现有任务置于前台,无论它在移至后台时处于何种状态。

此外,从您的 BroadcastReceiver 中删除对 finish() 的调用。 finish() 仅用于 Activity