Designing for Adverse Network and Temperature Conditions

Description: World-class apps deliver a great user experience, even in the most strenuous environments. Learn how to use Xcode to simulate adverse network and temperature conditions. Put your app through its paces and get a firsthand view of how it performs. Hear about best practices that you can adopt to respond to challenging conditions.

Pro-tip to boost test setup

  • Add IS_UNIT_TESTING environment variable
  • Ensure only unneeded functionality is skipped for unit testing
func application(
	_ application: UIApplication, 
	didFinishLaunchingWithOptions opts: ...
) -> Bool {
	let isUnitTesting = ProcessInfo.processInfo.environment["IS_UNIT_TESTING"] == "YES" 
	if !isUnitTesting { 
		// Do UI-related setup, which can be skipped when testing
	}
	return true 
}

Thermal State Behavior Example from iOS

Missing anything? Corrections? Contributions are welcome 😃

Related

Written by

Federico Zanetello

Federico Zanetello

iOS Engineer with strong passion for Swift, minimalism, and design. When he’s not busy automating things, he can be found writing at FIVE STARS and/or playing with the latest shiny toys.