Opened on 01/02/2017 at 06:14:56 PM
Closed on 03/16/2017 at 04:06:21 PM
Last modified on 10/08/2019 at 05:50:25 PM
#4766 closed change (fixed)
An alert popup to inform user about application exit
Reported by: | pavelz | Assignee: | |
---|---|---|---|
Priority: | P2 | Milestone: | Adblock-Browser-for-iOS-1.5.2 |
Module: | Adblock-Browser-for-iOS | Keywords: | |
Cc: | mario, lisabielik, shikitita | Blocked By: | |
Blocking: | #4672 | Platform: | Adblock Browser for iOS |
Ready: | yes | Confidential: | no |
Tester: | Rraceanu | Verified working: | yes |
Review URL(s): |
Description (last modified by mario)
Background
The new functionality of reporting non critical errors #4672 enabled proper reporting of one specific kind of *critical* errors, and that is a failure to initialize on app startup. The app actually should not continue operating - it's missing vital parts.
However, #4672 wasn't originally intended to report critical errors but only non-crashing errors. Due to the fact, that we happen to be able to catch said critical error on runtime, we need to display a more specific notification/error and ask the user to restart ABB.
What to change
When the app fails bootstrapping (app startup initialization) display a notification based on the user's error report settings:
- If the option "Always Send" (Settings -> Crash Reporting) is selected
- Display no notification
- If the option "Ask Me" (Settings -> Crash Reporting) is selected
- Display a notification with the following content
- Headline: Adblock Browser
- Text: Unable to start browser.
- Button 1: Send Report
- Button 2: Don't Send
- If "Button 1" is clicked, send a crash event and close the notification
- If "Button 2" is clicked, close the notification
- Display a notification with the following content
- If the option "Don't send" (Settings -> Crash Reporting) is selected
- Display no notification
After the notification has been closed (or in case it wasn't shown as per point 1. and 3.), display this error message on the splash screen as specified in this style guide. Text:
- Headline: Uh-oh!
- 2nd headline: Something went wrong.
- Text: A critical error prevented Adblock Browser from starting. Follow the steps below to quit the app and try again.
- Bullet point 1: Double-tap the Home button.
- Bullet point 2: Swipe up on Adblock Browser to quit the app.
- Bullet point 3: Restart Adblock Browser.
Assets
Attachments (6)
Change History (36)
comment:1 Changed on 01/02/2017 at 06:18:10 PM by pavelz
Changed on 01/02/2017 at 10:08:00 PM by pavelz
How the alert could look like
comment:2 Changed on 01/02/2017 at 10:09:33 PM by pavelz
Seeing the screenshot, the beginning of message wording could be different. Saying "Adblock Browser" in title and then immediately "Browser failed" feels somewhat redundant.
comment:4 Changed on 01/09/2017 at 02:19:00 PM by pavelz
SCREEN SHOT 1 OBSOLETE
After some discussion with @mario, this alert should be the only one displayed. Which means that it should show the applicable error reporting options, preventing the need for displaying the former error reporting selection per #4672. New proposal:
Title stays "Adblock Browser"
Message should be more friendly, something along "Oops, the browser cannot start properly and will close now"
The rest varies by already set HockeyApp reporting option:
- Option "Always Send"
-> Additional sentence in the message "The issue was reported to developers."
-> Button "Close"
- Option "Ask me"
-> No additional sentence
-> Two buttons of the same phrasing as crash reporting per #4672
"Send Report", "Don't send"
do not display "Always send" as it actually changes the user's sending preference - a controlled shutdown is considered a rare event
- Option "Don't send"
-> Technically should not display anything and shutdown right away. But Appstore may reject an app with such unwarranted closing
http://stackoverflow.com/a/12242357
so the same screen as with option 2. is considered. Not displaying "Always send" makes even more sense here.
comment:6 Changed on 01/11/2017 at 05:10:43 PM by lisabielik
Title: Adblock Browser
Message: Unable to start browser. The app will now close.
Additional sentence: This issue has been reported to developers.
comment:7 Changed on 01/12/2017 at 09:20:14 AM by mario
- Description modified (diff)
- Priority changed from Unknown to P2
- Ready set
Thanks, Lisa. Updated the description. Ready from our side.
comment:8 Changed on 01/25/2017 at 02:19:12 PM by pavelz
The UI of closing the app will have to be changed to user-initiated. I.e. the user will have to close the app through swiping in iOS app listing, we can just kindly ask the user to do so. Now the texting challenge:
Title: (stays the same) Adblock Browser
Main message (stays the same): Unable to start browser.
Additional sentence for option 1 above (stays the same):
This issue has been reported to developers.
Button: Close
Additional sentence for option 2 above (already established for HA crash handling):
Would you like to send a report to fix the problem?
Buttons: Send / Don't Send
Additional sentence for option 3 above: (PROPOSAL, to be polished)
You disabled report sending, please consider letting us know error code ABCDEFGH.
Button: Close
Following will be an overlay of the browser splash screen (which is the point of bootstrap failure) with a text, which asks the user kindly to click iPhone Home button and kill the app by swiping in app listing. TEXTING REQUIRED HERE.
Changed on 02/02/2017 at 09:02:12 PM by pavelz
Screencast of the failure exit screen
Changed on 02/03/2017 at 08:40:55 AM by mario
comment:10 Changed on 02/03/2017 at 08:41:20 AM by mario
- Description modified (diff)
comment:11 Changed on 02/03/2017 at 08:42:11 AM by mario
- Description modified (diff)
Changed on 02/03/2017 at 11:46:39 AM by mario
Changed on 02/03/2017 at 11:46:47 AM by mario
comment:12 Changed on 02/03/2017 at 11:47:43 AM by mario
- Description modified (diff)
Changed on 02/03/2017 at 04:42:56 PM by pavelz
Screencast of the completed exit screen
comment:13 follow-up: ↓ 15 Changed on 02/03/2017 at 04:45:51 PM by pavelz
Regarding bootstrap3 screencast, i have configured ABB to "Don't send crashes & errors", which means that it shows the request for contacting developers in other way, per Option 3. Consider the texting per proposal in Comment #8
comment:14 Changed on 02/06/2017 at 10:27:02 AM by mario
- Description modified (diff)
comment:15 in reply to: ↑ 13 Changed on 02/06/2017 at 10:29:37 AM by mario
Replying to pavelz:
Regarding bootstrap3 screencast, i have configured ABB to "Don't send crashes & errors", which means that it shows the request for contacting developers in other way, per Option 3. Consider the texting per proposal in Comment #8
At this point the user has actively decided not to send us reports. Regular crash reporting notifications aren't even shown if this option is selected. Thus we should IMHO handle it the same and respect the user's decision not to send us reports. Which also means not prompting him to send us a report via email or the like.
comment:16 Changed on 02/06/2017 at 10:36:20 AM by mario
- Description modified (diff)
comment:17 Changed on 02/06/2017 at 02:52:15 PM by mario
- Description modified (diff)
comment:18 Changed on 02/06/2017 at 02:57:08 PM by lisabielik
- Description modified (diff)
comment:19 Changed on 02/06/2017 at 04:40:37 PM by pavelz
While i was finalising the translation body, i realized one thing: if the error/crash option "Don't send" is not supposed to yield any popup, presumably because the regular error reporting does not yield, per change at comment 16, the option "Always Send" should not either! Hence Option 1 of this change description does not apply the same way as option 3. @mario agree?
comment:20 Changed on 02/06/2017 at 06:55:52 PM by mario
- Description modified (diff)
Removed the first notification from the scope of this issue in order to align the notification logic with the crash report logic: Only prompt the user to send a report if the default value "Always ask" is configured in the user's crash/error reporting settings.
comment:21 Changed on 02/08/2017 at 01:08:27 PM by mario
- Milestone set to Adblock-Browser-for-iOS-next
- Ready set
This hasn't landed yet, but it needs to be included in 1.5.2.
Thus I'm already adding the milestone in order to communicate the intended changes before feature freeze.
comment:22 Changed on 02/08/2017 at 02:30:31 PM by pavelz
- Resolution set to fixed
- Status changed from new to closed
comment:23 Changed on 02/14/2017 at 09:42:54 AM by scheer
- Resolution fixed deleted
- Status changed from closed to reopened
- Tester changed from Unknown to Scheer
'What to Change' section 2-a.-ii. 'Text'. States that the text should read 'Unable to start browser.' Actually, it states, 'Unable to start browser. Would you like to send a report to fix the problem?'. As discussed, the text is incorrect.
ly.
comment:24 Changed on 02/14/2017 at 04:34:13 PM by pavelz
- Resolution set to fixed
- Status changed from reopened to closed
comment:25 Changed on 02/15/2017 at 09:41:00 AM by scheer
- Resolution fixed deleted
- Status changed from closed to reopened
Please see the bold text below that outline the current issue.
- When the option "Always Send" (Settings -> Crash Reporting) is selected no notification is shown and the error is still sent. (Currently, due to SDK issues, the error is sent some 15 seconds after the option is selected and the app still active.)
- When the option "Ask Me After a Crash or Error" (Settings -> Crash Reporting) is selected a notification with the following content is displayed. (Currently, due to SDK issues, the error is sent some 15 seconds after the option is selected and the app still active.)
Headline: Adblock Browser
Text: Unable to start browser.
Button 1: Send Report
Button 2: Don't Send
If "Button 1" is clicked, send a crash event and close the notification
If "Button 2" is clicked, close the notification
- When the option "Don't send" (Settings -> Crash Reporting) is selected no notification is displayed.
- After the notification has been closed (or in case it wasn't shown as per point 1. and 3.), the error message on the splash screen as specified in this style guide is shown. The Bold 'Current Text' section below currently does not display the correct sentence in-app. Text:
Headline: Uh-oh!
2nd headline: Something went wrong.
Current Text Reads 'A critical error prevented Adblock Browser from starting. Follow these instructions to quit the app and try again.'
Correct Text: A critical error prevented Adblock Browser from starting. Follow the steps below to quit the app and try again.
Bullet point 1: Double-tap the Home button.
Bullet point 2: Swipe up on Adblock Browser to quit the app.
Bullet point 3: Restart Adblock Browser.
comment:26 Changed on 02/15/2017 at 09:55:58 AM by pavelz
Alright, the wording is really off. Unfortunately it already flies in translation. Offload to next version?
comment:27 Changed on 02/22/2017 at 01:20:16 PM by mario
- Cc shikitita added
@lisabielik, @shikitita,
See two comments above. Unfortunately a slightly different variation of the string stated above landed in the application:
A critical error prevented Adblock Browser from starting. Follow these instructions to quit the app and try again.
instead of
A critical error prevented Adblock Browser from starting. Follow the steps below to quit the app and try again.
We could easily change the English original, but I fear the translations won't be on point then. Tamara, how do the translations of this string read? If you're fine with them, I'd suggest that we fix the English version manually.
comment:28 Changed on 03/16/2017 at 04:06:21 PM by mario
- Resolution set to fixed
- Status changed from reopened to closed
comment:29 Changed on 04/25/2017 at 10:02:29 AM by rraceanu
- Tester changed from Scheer to Rraceanu
- Verified working set
Verified working with correct text in place:
Iphone 6
iOS 9.1
ABB 1.5.2-dev (1507)
comment:30 Changed on 06/07/2019 at 02:46:37 AM by suneel
spam
@lisabielik alert texting proposal
Title: "Adblock Browser"
(it's a good practice to link critical alerts clearly to a specific app)
Message: "Browser failed starting up and will close now. The issue was reported if you allowed it."
(this refers to step 1 of required actions which should have happened before this alert)
Button: "Close"
(it should not say anything regularly cheerful like "OK" or "Got it", as there is nothing cheering about app failure)