Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reload adb on the fly #331

Merged
merged 16 commits into from
Dec 25, 2023
Merged

Reload adb on the fly #331

merged 16 commits into from
Dec 25, 2023

Conversation

mlopatkin
Copy link
Owner

Fixes #197

Issue: n/a
It no longer attempts to handle service restarts.

Issue: #197
This is mostly to make sure AdbOpener can survive server instance
changes without much hassle.

Issue: #197
It is better suited for handling status changes that are not triggered
by any kind of loading.

Issue: #197
Instead, it is now possible to subscribe to device changes directly.
Issue: n/a
Prior to this commit, AdbDeviceList could only be obtained after ADB
initialization. However, the GlobalAdbDeviceList is already
independent of the ADB connection, it can be initialized without one and
get the connection later. Allowing to obtain the list without wait
greatly simplified the AdbOpener's wait-for-device flow, and made it
resilient to the adb failure. This is an important step to handle ADB
restarts properly.

As part of the implementation, AdbDataSourceFactory doesn't require ADB
to be obtained as well.

Issue: #197
The connection can then be re-established

Issue: #197
This gives an option for the user to restart a failed ADB connection
without restarting the whole app.

Issue: #197
@mlopatkin mlopatkin added this to the 0.22 milestone Dec 25, 2023
@mlopatkin mlopatkin self-assigned this Dec 25, 2023
@mlopatkin mlopatkin merged commit 9d3ea2e into master Dec 25, 2023
2 checks passed
@mlopatkin mlopatkin deleted the ml/197/reload-adb-on-the-fly branch December 25, 2023 19:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Reload ADB on the fly when the path to the executable changes
1 participant