Opened 3 years ago

Closed 3 years ago

Last modified 3 years ago

#4100 closed change (fixed)

Add memory pressure indication in devbuilds

Reported by: pavelz Assignee:
Priority: P2 Milestone: Adblock-Browser-for-iOS-1.5.0
Module: Adblock-Browser-for-iOS Keywords:
Cc: pavelz Blocked By:
Blocking: #4124 Platform: Adblock Browser for iOS
Ready: yes Confidential: no
Tester: Scheer Verified working: yes
Review URL(s):

Description (last modified by mario)

Background

ABB is still performing slightly worse than other UIWebView based browsers. This results in ABB being more prone to crashing due to memory pressure. In order to get a better understanding of which situations cause higher memory pressure, we'd like to introduce an indicator, which visualises the memory consumption in real time.
As this function is for testing purpose only, we will exclude this feature in App Store versions and only include it in development builds.

What to change

Only show the functions/elements below in development builds.
Use the standard iOS control style for any control/element described below.

1. Settings

1.1 Settings overview
Add a new settings item to the "General" group as shown in this screenshot.

Settings item text: Devbuild Settings
Click event: Display the new "Devbuild Settings" screen as described under 1.2

1.2 Devbuild Settings
Add a new settings group called "Memory Pressure" to the new "Devbuild Settings" screen as shown in this screenshot.

Settings group text: Memory Pressure

Add a new switch called "Show Memory Pressure Indication" to the new "Memory Pressure" group in the "Devbuild Settings" screen as shown in this screenshot

Switch control text: Show Memory Pressure Indication
Default state: Unchecked
Checked event: Display the memory pressure indication while browsing as described under 2.
Unchecked event: Do not display the memory pressure indication while browsing as described under 2.
Save state: Changing the checked state will be saved and persists upon restart

2. Memory Pressure Indicator

If the "Show Memory Pressure Indication" switch (as described under 1.2) is checked, show the memory pressure indicator within the settings bar as shown in this screenshot with the following anntributes:

Text: Memory pressure: <n>MB/<m>MB where <n> is replaced by the currently used memory and <m> is replaced by the maximum memory. Both figures in MB.
Color: Standard grey
Position: bottom, center

Remark for testers

You can use this stress test to drive the memory usage of ABB into Gigabytes.

Attachments (5)

pressure-indicator_abb-settings.PNG (70.1 KB) - added by mario 3 years ago.
pressure-indicator_overlay.PNG (200.0 KB) - added by mario 3 years ago.
pressure-indicator_devbuild-settings.PNG (40.3 KB) - added by mario 3 years ago.
pressure-indicator_devbuild-settings_switch.PNG (40.4 KB) - added by mario 3 years ago.
pressure-indicator_devbuild-settings_group.PNG (40.4 KB) - added by mario 3 years ago.

Download all attachments as: .zip

Change History (18)

comment:1 Changed 3 years ago by mario

  • Description modified (diff)
  • Priority changed from Unknown to P2
  • Summary changed from Memory pressure indication to Add memory pressure indication in devbuilds

Changed 3 years ago by mario

Changed 3 years ago by mario

comment:2 Changed 3 years ago by mario

  • Cc pavelz added
  • Description modified (diff)

comment:3 Changed 3 years ago by mario

  • Description modified (diff)

Changed 3 years ago by mario

comment:4 Changed 3 years ago by mario

  • Description modified (diff)

comment:5 Changed 3 years ago by mario

  • Blocking 4124 added

comment:6 Changed 3 years ago by mario

  • Ready set

comment:7 Changed 3 years ago by mario

  • Description modified (diff)

comment:8 Changed 3 years ago by mario

  • Description modified (diff)

comment:10 Changed 3 years ago by pavelz

  • Resolution set to fixed
  • Status changed from new to closed

comment:11 Changed 3 years ago by mario

  • Milestone set to Adblock-Browser-for-iOS-1.4.0

comment:12 Changed 3 years ago by mario

  • Milestone changed from Adblock-Browser-for-iOS-1.4.0 to Adblock-Browser-for-iOS-next

comment:13 Changed 3 years ago by scheer

  • Tester changed from Unknown to Scheer
  • Verified working set
  • The new settings item 'Devbuild Settings' has been added to the 'General' group.
  • A new setting group called "Memory Pressure" has been added to the "Devbuild Settings" screen.
  • The 'Show Memory Pressure Indication' switch is now added to the new 'Memory Pressure' group.
  • Default state: The option remains unchecked.
  • Checked event: The memory pressure is shown while browsing as described under 2.
  • Unchecked event: No memory pressure indicator is shown while browsing.
  • Save state: Changing the checked state is saved and persists upon restart.

ABB 1.5.0 (1066)
iPhone 6s Plus
iOS 9.3.1

Last edited 3 years ago by scheer (previous) (diff)
Note: See TracTickets for help on using tickets.