The iPhone — Other Apps

Gabriel Peal
7 min readMar 9, 2023
This is part 4 of my detailed breakdown of Android and iOS in 2023. To return to the beginning, click here.

Chrome and Safari

I use Chrome on my laptop and Android phones but I decided to try mobile Safari.

Bottom Bar

I have to admit, I am a fan of the controversial bottom bar on iOS. I generally find it to be intuitive and easy to use with one hand. I actually miss this now that I’m back on Chrome on Android. The gesture to drag it up to reveal the tab switcher is delightful.

Embedded Safari is limited

Many apps that link to websites choose to embed a Safari preview within the app so you aren’t forced to switch to Safari and then tap the tiny little navigation button in the status bar. Unfortunately, due to Apple’s app sandboxing, the embedded Safari doesn’t share data with the Safari app which means that you have to log in to whatever site you’re browsing again. If you decide to switch to full safari partway through browsing or filling out a form, you will lose all of your progress.

Android has something called Chrome Custom Tabs. These tabs utilize black magic to embed the actual Chrome process and renderer into the calling app in a way that retains your entire Chrome experience with the same privacy guarantees that apps typically give you. If you want to switch to the full web browser experience, you tap a button, and the entire UI around the webpage swaps from the original app to full Chrome without interrupting your browsing experience.

Apps can even tell Chrome pre-load pages to make things feel even more responsive.

Tab groups

I organize my mobile browsing into two or three tab groups. Chrome on Android and Safari on iOS supports them but, oddly, Chrome on iOS does not. This was one of the reasons I stuck with Safari on iOS.

Safari blocks all domains individually during downtime

Twitter is my doom-scrolling Achilles heel. For that reason, I set up Downtime to prevent me from using it before 10 am. Downtime lets you set a discrete list of apps that you are allowed to use during certain hours. However, iOS treats every single domain as its own blocked entity and there are no settings to change it. That means that if you don’t actually want limits on Safari, when you visit website A, you have to click ignore and then you have to do it again when you visit website B. I have no need or interest in setting limits on mobile safari yet I have to go through this process every single day.

No undo closed tab

If you accidentally swipe away a tab in Safari, there is no ability to undo it or figure out what you just swiped away.

Maps

Apple Maps was no match for Google Maps when it first launched but it is clear that Apple has poured a huge amount of effort into it since. Today, there are some things it still struggles with but it has leap-frogged Google Maps in a few key areas.

Map Tiles

Apple Maps (left) vs Google Maps (right)

Apple Maps map tiles are beautiful. In cities that have been updated (such as San Francisco), the subtle building outlines that turn 3D when you tilt are stunning Their street markings for things like crosswalks and parking zones are also clearly superior.

Voice turn-by-turn directions

Apple also wins this one. Google Maps still usually says things like “Turn left in 1000 feet” and occasionally uses ad-based guidance like “turn left at the Taco Bell” which I find offputting. On the other hand, Apple says “Go past this stop sign and, at the next one, turn left”. Kudos.

Navigation notifications

I’ve found using navigation from anywhere other than screen-on with (either) Maps in the foreground to be different flavors of frustrating:

  • The Display Island is missing critical information that leaves me scrambling to get back to the app.
  • Apple’s Map tiles go blank when the screen is off but the blank map still takes up most of the always-on-display.
  • While on the lock screen, Google Maps can only show a notification, not full-screen map tiles like Apple Maps does. On Android, any navigation app is able to do this.
  • Google’s notifications are often woefully unhelpful. They often tell you “Turn left at Main Street” without the distance. You also never get anything further helpful such as lane guidance.
  • I’ve wound up in a state in which I have no notifications or indication that I’m navigating outside of having Google Maps in the foreground. This has led to at least one unsafe panicked driving situation.

Local reviews

In the United States, Apple Maps uses Yelp for its reviews. I use Yelp and Google Maps fairly interchangeably so I don’t feel strongly about this one.

Performance

It’s hard to back this one up with data but, anecdotally, I have found loading directions with Apple Maps to be slow. Often, when I search for directions or a location that moves the map to a new region, it takes much longer than Google Maps. You also can’t change the transportation type until after the first set of directions load.

Jumpy UI

I find the Apple Maps navigation UI frustrating to use. UI elements jump when the directions go from loading to loaded. This is exacerbated by the slow performance and the fact that the transportation mode (biking, driving, etc.) selector is a tiny pill. I’ve mis-tapped the pill to switch modes because it moved right as the data for the first mode loaded. Google Maps has a persistent bar for transportation modes and visible ETAs for each mode which solves this problem.

Alarm Clock

Can’t adjust snooze time

It’s always 9 minutes and can’t be changed. If you snooze 3 times, that’s nearly half an hour!

Heads up notification??

Sometimes, the full UI pops up. However, sometimes there is only a heads-up notification and I can’t figure out why.

No time-until-ring display

The clock app doesn’t tell you how long it will be until your alarm goes off. This is really useful when adjusting it to ensure you are getting enough sleep.

Similarly, when adjusting your sleep schedule alarm, it tells you how long your total sleep schedule is from bedtime to waking up even if you are currently past your bedtime. I feel like my phone is shaming me for staying up too late and not getting enough sleep.

The best ringtone is reserved for one alarm

The “early riser” ringtone is the best (in my opinion) but is only available from the special sleep schedule alarm. You can’t set it as the ringtone for your own alarms.

No progressive fade-in

You can’t configure the alarm to start quietly and progressively get louder. I kind of feel like this every morning.

Third-party alarm clocks

All of my complaints could be solved with a third-party app. However, Apple, unlike Google, does not offer a full set of APIs to make a fully-featured alarm clock.

Other Apps

For many years, you couldn’t set any sort of default apps on iOS. Thankfully, Apple has now given people a few options. However, they remain far more limited than Android in a few ways that actually affected my experience day-to-day.

Default apps for websites (like Reddit)

Official apps can register themselves as the handler for specific domains. For example, the official Reddit app will automatically handle all links to Reddit. I personally prefer Apollo for Reddit. However, non-official apps cannot register themselves as handlers for other domains.

Android works around this problem with two classes of link handlers. If you are the official app for a website, developers can configure a verified app link that will handle your own URLs without further confirmation. However, if somebody has a non-official app or multiple apps installed, Android will prompt the user to pick which one they want. Apollo worked around this one with a custom Safari extension but it’s a one-off for Apollo, wouldn’t work if you use Chrome, and also doesn’t work at all for me.

Sync speed

Apps like Google Photos sync more slowly (and sometimes while only in the foreground) compared to Android where they sync nearly instantly.

Todoist

I am an avid todoist user. On Android, I usually interact with the app via a quick setting tile to create a new task or via the home screen widget. On iOS, the equivalent would be an action in control center but it doesn’t exist.

If this piece resonated with you or you have any thoughts or questions, you can find me on Twitter @gpeal8.

--

--

Gabriel Peal

Open source maintainer of Lottie and Mavericks. Full stack at Watershed. Formerly Android at Tonal, Airbnb, and Android Auto at Google.