NotificationsPosted on by Jason LaPorte
It seems there’s been a lot of confusion regarding notifications, so we wanted to take a moment to clear some of it up regarding two facets of the feature: battery life, and privacy.
iPhones and iPads have two methods of gathering your location: the GPS, which is power-hungry but accurate to within meters, and cell-tower triangulation, which is low-power but somewhat less accurate.1 Apple makes both available to developers, allowing them to decide if they really need the added accuracy or not. As it turns out, most developers just take the most accurate method they can even when it’s not necessary, which has led to Location Services having a bad reputation for draining the battery.
When you’re using the Dark Sky app itself, we use the GPS: the accuracy is important to the app, and we don’t use it for long enough to hurt your battery. When you enable notifications, though, we need to keep a connection to Location Services indefinitely; on the upside, we don’t need as much accuracy, so we use cell-tower triangulation instead. As a result, enabling notifications in Dark Sky will not drain your battery.
Unfortunately, we’ve received a number of negative reviews on the App Store claiming the opposite. But don’t you believe them!
Enabling notifications will have Location Services keep us up-to-date with your location, so we can provide accurate notifications even if you move. We understand that all location-based services are based on trust, and several of our users have expressed concern about trusting us with their location. Since trust is based on honesty, we want to tell you exactly what information we collect, and what we do with it.
If you enable notifications, Dark Sky stores four pieces of information:
A unique code, specific to Dark Sky, identifying your device. When we want to notify you, we give Apple that code and the notification message. Only Apple has the ability to associate these codes with your device: neither we nor anybody else can identify you or your device from this code.
Your current location. We use this to keep an eye on the weather where you are, and send you a notification if it’s going to rain soon.
Your location at the last time we checked the weather for you. If you’ve moved far enough away, we know that our previous forecast might not be accurate anymore, and we’ll check the weather again, just to be safe.
Your notification settings (including threshold and do-not-disturb times). We have to store these in order to make use of them on the server.
Well, technically, there’s a third method: the device can also work out where it is by triangulating nearby Wi-Fi networks (which is how users with only a Wi-Fi model iPad or iPod Touch can be located). It's accurate and low-power, but often doesn't work in rural areas. ↩