Можно ли вернуть значение при вызове широковещательной рассылки от adb? - PullRequest
0 голосов
/ 20 сентября 2019

Я разрабатываю программу в VB.NET, которая будет синхронизировать устройство Android через USB.

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

Проблема в том, что если я позвоню

adb shell am broadcast -a xx.xxx.xxxx.android.action.broadcast --es sync ""SYNC""

В любом случае, даже если BroadcastReceiver еще не был зарегистрирован в приложении или дажеесли приложение закрыто, верните

Broadcasting: Intent { act=xx.xxx.xxxx.android.action.broacast pkg=WE (has extras) }
Broadcast completed: result=0

Так что мне нужно убедиться, что пользователь получил это широковещательное сообщение, чтобы можно было каким-то образом отправить сообщение «return» на adb, когда устройство получило широковещательную передачу.?

вот мой BroadcastReceiver метод

private final BroadcastReceiver adbReceiver = new BroadcastReceiver() {
    @Override
    public void onReceive(Context context, Intent intent) {
        Bundle extras = intent.getExtras();
        if (extras != null) {
            if (extras.getString("sync") != null) {
                if (Alerts.dialogSync.isShowing()){
                    Alerts.txtSync.setTextColor(Color.parseColor("#E91E63"));
                    Alerts.txtSync.setText("Sincronizzo..");
                    Alerts.syncProgress.setColor(Color.parseColor("#E91E63"));
                    Alerts.close.setVisibility(View.GONE);
                }
            }else if (extras.getString("endsync") != null) {
                Alerts.dialogSync.dismiss();
                alertDeleteFile();
                unregisterReceiver(adbReceiver);
            }
        }
    }
};
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...