-
Notifications
You must be signed in to change notification settings - Fork 41
fix: audio recording and playing crashes [WPB-16687] [WPB-16835] #3955
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
fix: audio recording and playing crashes [WPB-16687] [WPB-16835] #3955
Conversation
|
Codecov ReportAttention: Patch coverage is
❌ Your patch check has failed because the patch coverage (32.25%) is below the target coverage (80.00%). You can increase the patch coverage or adjust the target coverage. Additional details and impacted files@@ Coverage Diff @@
## release/candidate #3955 +/- ##
=====================================================
- Coverage 45.93% 45.91% -0.03%
=====================================================
Files 492 492
Lines 17163 17175 +12
Branches 2859 2862 +3
=====================================================
+ Hits 7884 7886 +2
- Misses 8482 8492 +10
Partials 797 797
Continue to review full report in Codecov by Sentry.
🚀 New features to boost your workflow:
|
Built wire-android-staging-compat-pr-3955.apk is available for download |
PR Submission Checklist for internal contributors
The PR Title
SQPIT-764
The PR Description
What's new in this PR?
This PR contains fixes for two issues related to recording and playing audio messages:
https://wearezeta.atlassian.net/browse/WPB-16687
https://wearezeta.atlassian.net/browse/WPB-16835
Issues
The app crashes when attempting to send an audio recording for the second time because the user played the 1st recording before sending it.
The app crashes when attempting to play an audio message after sending it.
Causes (Optional)
MediaPlayer
being released after closing or sending a message so it cannot be reused againMediaPlayer
is not initialisedSolutions
MediaPlayer
after sending or closing, it can be reused then (the same instance is persisted as long as the view model exists)abandonExclusive
function to abandonexclusiveFocusRequest
and not regularfocusRequest
Testing
How to Test
Steps to Reproduce:
1
-record an audio message
-play the recording before sending it
-send the audio message
-attempt to make another audio recording
2
-record an audio message
-send it
-attempt to play it from the audio message cell
Attachments (Optional)
record-play-send-and-record-again.mp4
play_after_uploading.mp4
PR Post Submission Checklist for internal contributors (Optional)
PR Post Merge Checklist for internal contributors
References
feat(conversation-list): Sort conversations by most emojis in the title #SQPIT-764
.