Mobile Application Penetration Testing
上QQ阅读APP看书,第一时间看更新

Understanding application states

When getting ready to assess iOS apps, it is important to understand application states. There are various app states in iOS. Apple allows only one state at a time. These states changes according to user or system actions.

For example, suppose you press the Home key and a text message (SMS) comes in, the currently running app changes its state to the background.

The following are the different states in iOS:

  • Not running: The app will be in this state before it is started and after it is terminated or aborted.
  • Inactive: An app in the inactive state is still running in the foreground but will not receive any events or alerts. For example, if you are browsing a website in Safari and receive an SMS and switch over to the SMS app, Safari is in the inactive state until it is reopened.
  • Active: When an app icon is clicked, it goes into the active state and will run in the foreground and actively receive events.
  • Background: In this state, apps run in the background. This means that apps will execute code without user interaction. For example, your Facebook app provides notification alerts as soon as you connect to the Internet without even opening the app through a mechanism called background execution.
  • Suspended: Apps that have not been used for a long time and are not performing any tasks will enter the suspended state but still be available in memory.