Скрыть / показать приложение при подключении / отключении USB BroadcastReceiver - PullRequest
0 голосов
/ 23 октября 2018

Мое приложение имеет только MainActivity с ImageView.

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

1 Ответ

0 голосов
/ 24 октября 2018

Чтобы вывести ваше приложение на передний план, добавьте следующее к onReceive():

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

Это не приведет к запуску нового Activity, оно просто перенесет существующую задачу, содержащую ваше приложение, напередний план в любом состоянии, в котором он находился, когда он был перемещен в фоновый режим.

Кроме того, удалите вызов finish() из вашего BroadcastReceiver.finish() используется только на Activity.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...