Swift Developments is a hand-curated newsletter containing a weekly selection of the best links, videos, tools and tutorials for people interested in designing and developing their own apps using Swift.
News
Introducing Apple Entrepreneur Camp
Women and minorities continue to face unique challenges when trying to make their way in the traditionally white, male-dominated tech industry. It is therefore wonderful to see Apple launching a new initiative – Apple Entrepreneur Camp – a series of two-week technology labs providing one-to-one access to Apple experts and engineers and ongoing support for organisations founded and led by women. Long may this continue.
Business
How to Game The App Store
A thoughtful and well written and well-researched piece from @drbarnard on the state of the App Store, Apple’s responsibilities in shaping it as an ecosystem and some of the techniques that developers are using to ‘game’ it from bending the rules to out-right scams.
How To Launch Your App Successfully With A Social Media Campaign
Looking to launch your app with a bang? Social media can be a great way to reach potential users and built a strong brand identity but launching your app on social media can also be difficult to get right. Emily Clark guides you through the steps to build a strong social media campaign from planning and research to content creation and launch.
Design
Linking to Subscription Management Settings
In recent years, Apple have been increasingly pushing subscriptions as the primary business model for apps within the store but many users remain reluctant to start auto-renewing subscriptions as they find them difficult to manage. @jcieplinski shows you how to reduce this barrier to entry by including links to a users subscription management settings directly within your app.
How to Design Offline-first Approach in a Mobile App
Although internet connectivity is becoming increasingly pervasive, one critical part of your design activities should be thinking about *all* app states – including those where no network connectivity is available. In this article, Gabriel Samojło outlines some thinks to think about and illustrates how taking ‘offline-first’ approach can provide a number of benefits for your overall app design.
Swift
How to use @dynamicCallable in Swift
Recently introduced in Swift 4.2 @dynamicMemberLookup
has made it signficantly easier to write Swift code that works alongside more dynamic languages such as Python and JavaScript. Swift 5 will see some further syntactic sugar added to the languages with the addition of @dynamicCallable
which will add the ability to mark a type as being directly callable. @twostraws has written a nice introduction.
Code
Restoring Your UI With State Restoration
As humans, we have a psychological model of how things work which includes objects, without any further influences, remaining in the same state as we left them. However, generally the apps we develop don’t behave in this way. When an app is killed, either by the user or in order to reclaim system resources, the next time we start the app – the apps states starts over. As developers, there is a way we can change this behaviour though, through the use of state restoration, the subject of the latest article from @dagostin.
Building an Interactive Voice App Using Custom Siri Shortcuts in iOS 12
Introduced in iOS 12, Siri Shortcuts allow us to expose short cuts for activities users commonly use within our apps and allows users to invoke those shortcuts via custom voice commands in Siri. In this tutorial, @alfianlosari shows you how to build these features into your own apps by way of a demo app to perform voice-triggered searches for upcoming movies.
Testing
Unit Testing View Controller Memory Leaks
As I’ve been hunting down a couple of memory leaks this week (?) this one was particuarly relevant for me. @igorkulman provides an introduction to using SpecLeaks to write unit tests that detect memory leaks in Swift. Time for me to write some more tests I think.
Tools
simctl
Along with the Xcode simulator, the simctl
tool is a commale line tool that lets you automate and and configure the Xcode simulator programmatically and can be particularly useful when used on conjunction with some sort of continuous integration system. @mattt has been looking at some of it’s capabilities in this weeks issue of NSHipster.
All You Need Is Tools
@pepibumur outlines the case for business consciously investing in their development tooling outlining why it’s important, some of the benefits it can bring as well as some bad practices he’s seen when companies develop their own tools. Good one to have in your back pocket for the next time you’re trying to persuade someone to invest time and money into improving your tooling.
ppinera.es