-
Notifications
You must be signed in to change notification settings - Fork 23
Fix/issue 581 #635
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
base: develop
Are you sure you want to change the base?
Fix/issue 581 #635
Conversation
|
Thanks for the pull request, @IvanStepanok! This repository is currently maintained by Once you've gone through the following steps feel free to tag them in a comment and let them know that your changes are ready for engineering review. 🔘 Get product approvalIf you haven't already, check this list to see if your contribution needs to go through the product review process.
🔘 Provide contextTo help your reviewers and other members of the community understand the purpose and larger context of your changes, feel free to add as much of the following information to the PR description as you can:
🔘 Get a green buildIf one or more checks are failing, continue working on your changes until this is no longer the case and your build turns green. Where can I find more information?If you'd like to get more details on all aspects of the review process for open source pull requests (OSPRs), check out the following resources: When can I expect my changes to be merged?Our goal is to get community contributions seen and reviewed as efficiently as possible. However, the amount of time that it takes to review and merge a PR can vary significantly based on factors such as:
💡 As a result it may take up to several weeks or months to complete a review and merge your PR. |
|
Hi team! Noticed this PR with work on the associated bug. Wanted to flag that this issue is cross platform; the Android version of this ticket can be found here: openedx/openedx-app-android#458 |
|
Hi @IvanStepanok! Is this pull request still in progress? |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## develop #635 +/- ##
========================================
Coverage ? 0
========================================
Files ? 0
Lines ? 0
Branches ? 0
========================================
Hits ? 0
Misses ? 0
Partials ? 0 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Yes, we want to merge it after the current scope of work (Course Home tab and video navigation). |
bbf301b to
786fa30
Compare
| request.timeoutInterval = verificationTimeout | ||
| do { | ||
| let (_, response) = try await URLSession.shared.data(for: request) | ||
| if let http = response as? HTTPURLResponse, (200..<400).contains(http.statusCode) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What happens on 401..405 responses? As example 404 is a "not found" response, not a connection issues. Also 500...599 is a server response.
Address issue #581
Problem:
Even when the device is connected to a network (e.g., via Wi-Fi), there might be no actual internet access. In such cases, the app continuously tries to fetch data, leading to a poor user experience.
Solution:
After confirming network availability, we send a request to our server. If no successful response is received within 15 seconds, we assume there is no internet access and switch the app to offline mode. This internet reachability check is performed every time we detect network availability, but no more frequently than once every 30 seconds.
Examples:
Old connectivity
Old.Connectivity.mov
New connectivity
New.Connectivity.mov