Get automatic error reporting for your iOS apps 🚀
Automatically detect crashes in your iOS apps using Bugsnag. Whether you're writing your apps in Swift or Objective-C, Bugsnag will capture all unhandled and handled exceptions and report them to you. Get detailed diagnostic reports, including breadcrumbs, to quickly reproduce bugs. Used by the world's best engineering teams including Airbnb, Square, Lyft, Shopify, and more. Try it free.
New Subscription Status Details Now Available
Apple continues to improve the ways in which modern iOS apps can handle subscriptions. This latest update allows servers to receive updates relating to expiring and renewing subscriptions so apps can react to these changes appropriately. It looks like they are really trying to make the case for subscriptions on iOS.
Machine Learning Journal from Apple
A new development related blog from Apple is always a cause for 🎉 and that's what happened this week with this new machine learning blog. The first post covers making synthetic images look more realistic which is fascinating. Curiously, the blog lacks an RSS feed at the moment, which would make getting updates much easier (and I definitely want to read whatever the ML team writes about! 👨🎓).
Update: There is a RSS feed, it's just not linked from the blog 🙈 It's here. Enjoy!
iOS Simulator Share Extension
The iOS simulator in Xcode 9 keeps getting even more powerful. Being able to import files using a share extension should make all types of testing and debugging much easier. 📱
Xcode 8 introduced a system to automatically manage provisioning profiles for developers, so nobody has to think about provisioning any more! Or.... not. 😔
Unfortunately, automatic provisioning does not make things easier for everyone – specifically, large teams that use complicated CI setups. Xcode 9 introduces a new option to go back to manually managing provisioning profiles to solve these issues.
iOS 11, Privacy and Single Sign On
Last week, Dave included a link to the changes to SFSafariViewController in iOS 11. This post goes through what these changes mean to apps using OAuth and how to implement authentication using the new APIs. I'm impressed by the simplicity of this new resource – it's going to make working with web services a breeze.
Frontmost App State ⌚️
Kristina Thai dives into the most notable change of watchOS 4: the new frontmost app state. The last app on the user's wrist when they look away has newfound capabilities, like playing haptics, intercepting notifications, and remaining active for more time. To benefit from these changes in your Apple Watch apps, look no further than Kristina's post!
I remember seeing a couple different ARKit rulers on Twitter last week, and now there's even an open-sourced one! Even though the ReadMe is written in Chinese, the code itself is in English (and well-documented). I'm hoping to see even more open-source ARKit projects as developers get a chance to finalize their iOS 11 projects.
Key paths in Swift 4 fascinated me from the start, but this post by Chris Eidhof really blows my mind. By wrapping a struct in an object, he lays out a way to get the benefits of both a reference type and a value type while allowing himself to observe anything in his object graph. This is a heavy read, but it's worth it if only to expand your knowledge of the Swift language.
Mobile UI Design: Basic Types of Screens
This exhaustive list of common screens in mobile design is a great resource to use when designing your own apps. The examples shown for each type are all great models to take something away from, and even though you think you know what each screen is supposed to look like, the descriptions provide good insight into crafting the most effective user experience.
Business and Marketing
Share Because You Want To
Ryan McLeod, developer of the Apple Design Award-winning puzzle game Blackbox, on how he designed his game to spread by word of mouth. The post includes interesting statistics as well about total downloads and how many of those downloads came thanks to referrals. Lots to learn from this gem. 💎
Taming Massive Controller
Mohammad Azam demonstrating his approach to deconstructing a massive view controller into smaller, reusable pieces. I know I'm guilty of leaving much of my logic in my table view controllers, which happens to be the specific example that Azam addresses in his talk.
A favorite hack
I remember hearing about this hack on a podcast, but the actual source code makes it even better 😂
I hope you had a great 🌎 World Emoji Day! Although there weren't any parties to celebrate (or were there? 🤔), Apple did preview the new set coming later this year. As cool as all the new features are, these emoji will provide a significant boost in user adoption of iOS 11.Evan Dekhayser