Test your iOS apps against Xcode 9.0 using buddybuild!
Buddybuild is the continuous integration and deployment system trusted by companies like Slack, Reddit, and 1000s of others to reliably build, test, and deploy their iOS apps. Using buddybuild, you're always able to build your app using the latest Xcode version (including the betas!) within 24 hours of its release. Sign up today to test your app against Xcode 9.0!
Xcode 9.1 & iOS 11.1 Betas Now Available
Only a week from the 11.0 launch and already we've got a new beta version to play with in iOS 11.1! Although the release notes include a couple of bug fixes and improvements, it looks like Apple has yet to fix the slow simulator bug mentioned in last week's issue. 🙈
While this latest release does not include Airplay 2 support or Apple Pay person to person payments, there are a few subtle animation changes to the lock screen and app transitions, not to mention, grouped emoji suggestions. 😏
Measuring Swift Compile Times in Xcode 9
It has long been the case that this flag has made it easier to discover Swift functions that are taking too long to compile but it's not been officially supported by Apple, until now! Jesse Squires introduces us to a new flag for type-checking expressions, not just functions, that is mentioned in the official Xcode 9 GM release notes. Interesting read!
How to Make Xcode Take up Less Space
Since the introduction of Xcode 5.0, our favourite app has doubled to more than 10GB in size! The real problem has to do with how Xcode configures its device support system for each iOS version (including individual beta releases). This means there's tons of space being taken up by versions that may no longer be relevant or useful. Luckily, Paul Hudson shares with us some tips on how to reduce the post-install size, saving as much as 20GB of space.
Retain cycles and memory issues can be quite a pain. Apple has certainly helped address this with the introduction of ARC and multiple improvements to Instruments. LifetimeTracker does one better. You simply add one line of code to AppDelegate and track your key actors. LifetimeTracker will then surface any retain cycles and memory issues it finds. The best part is that you can do this while developing your app, making it quite difficult to forget to check for issues, and of course, saving you lots of time. Looks great!
Swift 4 Weak References
Mike Ash goes into detail on the current implementation of weak references and how it compares the old implementation back when Swift was first open-sourced. I find his explanation of side tables and their benefits quite enlightening. The possibility of seeing stored properties in extensions and other great new features is pretty exciting! 😎
The Power of Switch Statements in Swift
Since moving over to Swift, I've been building up the habit of using switch statements in place of lengthy chained if-statements when possible (within reason of course). The beauty of this is that in addition to all the great benefits provided by
switch statements, Swift allows us to switch on tuples, sets, comparisons, and more. Ultimately, they allow us to make our code easier to read & reason about.
Updating Strings For Swift 4
Keith Harrison with notes on the latest changes to
String in Swift 4. If you've worked with substrings, character counts, and character looping, you'll find these new simplifications quite handy. As always, you'll find some great examples, explanations and of course, a swift string cheat sheet.
Designing for iPhone X's Curved Screen (Not the Notch)
When it comes to the iPhone X, most articles have chosen to focus on the notch. Max Rudberg however, takes on a different challenge... tackling the curved screen. If your app features edge-to-edge buttons, banners, or elements pinned to the bottom, you'll find a nice set of solutions for adapting your existing design to the new screen.
Business and Marketing
Please, Don’t Write About My App
Becky Hansmeyer with an interesting approach to sharing her app's story. It's always a challenge to get everyone to fully understand what you truly envision in your app and talking to reporters can even be a bit scary because you're putting your trust in them to tell your story. 😱 With this in mind, Becky decided to take the straight-forward approach and describe her app along with all its flaws, and limitations. Very cool.
Great set of videos from this year's iOS conference featuring topics from computer vision and animations to code signing and GameplayKit. Great way to spend the weekend! 👩🏽💻
iOS Engineer - mid level / senior at ottonova in Munich - Germany
ottonova is the first digital health insurance company in Germany. Work with cross-functional teams and have a significant impact on the future of our iOS apps!
Happy Friday everyone! 🎉
So we're just over a week into iOS 11 and as usual, adoption is going well and is already up to ~30%. However, David Barnard has noticed that this isn't as good as in previous years which is surprising! It's still super early days of course and I'm sure we'll see adoption rates recover as the weeks go on! 📈Vicc Alexander