Subscribe for weekly commentary and coverage of Swift and Apple platform development. Written by Dave Verwer and published every Friday. Free.

Picture of Dave Verwer

Issue 142

18th April 2014

Written by Dave Verwer

Comment

A couple of important updates related to App Store review this week so make sure you check out the news section carefully.

Dave Verwer

John Gruber, Brent Simmons and Dave Wiskus announce that Vesper to use Azure

Q Branch announced that Vesper vnext will ship with offline sync powered by Azure Mobile Services. Vesper is a simple and elegant tool for collecting notes, ideas, things to do. Mobile Services is a backend in a box for iOS apps—making it easy to authenticate users, store data in the cloud, send push notifications and add business logic. No server to configure, no OS to patch.

News

Apple Claims Mogenerator’s Methods

Jonathan ‘Wolf’ Rentzsch with some important information on mogenerator and the App Store. Looks like Apple have used mogenerator in a private framework and as a result warnings are being flagged due to mogenerator selectors being included in their list of private APIs. I am a little more hopeful than Jonathan that an exception will be made for this but he does have a (fairly hilarious) potential solution if that doesn’t happen.

Update: Changed “rejections” to “warnings” above. I was wrong in saying rejections were happening from this. See this thread for details.

Update 2: Seems like this might be fixed, see the details at the bottom of the original post.


New App Store Rules around Ad Identifier

This week Apple also added new screens to the iTunes Connect submission process when preparing an app for upload. You will be prompted to declare whether you are using the Advertising Identifier, explain why and finally make a declaration that you are not breaking the rules. Be ready to answer these questions next time you upload an app.

Tools

CocoaPods Feeds

There are so many updates to CocoaPod specs every week that it’s really hard to keep track of the new pods that arrive. With that in mind Fabio Pelosin has put together a new site which showcases only the brand new pods. It also publishes the same information to Twitter and RSS so you have no excuse for not knowing about every single new pod that gets released 😰.


BaasBox

Backend as a Service platforms are great for getting apps up and running quickly and as the services mature they are getting more and more capable as well. However, your BaaS provider might not always be there or you might not like all of your data being stored on servers which are not under your control. BaasBox could be the answer if you have these concerns, an open source and self hosted BaaS.


Running Custom Clang Analyzer Builds

Keith Harrison with a great tip on replacing the default build of the static analyser with a custom one which includes extra warnings to uncover those hard to find bugs.

Code

Intentions

Chris Eidhof with an experiment in ultralight view controllers. The premise is that View Controllers should only implement methods which absolutely have to be implemented there and everything else goes elsewhere. It’s true that Massive View Controllers are a growing problem (pun intended) so it’s worth seeing how he tackles the problem.


JavaScriptCore by Example

JavaScriptCore was new with iOS 7 and OS X 10.9 but it’s not exactly a headline feature and it’s documentation is somewhat lacking so you may not have actually dived into what it can do yet. Joseph Dixon gives a real world example of using this framework inside an iOS app.


GCDWebServer

There are loads of implementations of HTTP web servers around but many of them are quite old now and don’t take advantage of modern Objective-C features like GCD. This library, written by Pierre-Olivier Latour takes a modern and surprisingly feature rich crack at the problem. I can finally move the hosting of iOS Dev Weekly onto my array of 1st generation iPod touches 😬.

Design

Affordances matter

Geoff Teehan on the iOS 7.1 shift key. It has always seemed a little curious that the case of the keys does not change as the shift key is activated but with the new design introduced with 7.1 some more visual assistance feels really needed. I never struggled with the shift key in iOS up to 7.1 but I get temporarily confused by it all the time now.


Skala Color

I’ve used various assorted tools in the past for colour picking on OS X and this week saw the release of another one. Skala Colour is a OS X colour picker plugin which adds a gorgeous UI to the standard picker. I’m still not entirely sure what the full Skala app is going to actually do but if this level of polish is going to be applied there too then I’m sure it’s going to be wonderful.

Business and Marketing

App Store Optimization and Marketing Tips

This collection of posts by Hugh Kimura must be the most comprehensive guide to optimising your App Store listings (and a whole load of other topics too). This post is actually a little overwhelming in terms of the sheer amount of content available but with a short description on each post you should be able to find something which grabs your attention.

Sponsored Jobs

Mobile Tech Lead @ Edmunds.com in Santa Monica, California

Edmunds’ award winning iPhone and iPad apps help car shoppers find and purchase the car that meets their every need. We’re looking for a Technical Lead to join our mobile team who will have the opportunity to lead the development of our hugely popular iOS apps and take a central role in driving the mobile experience at Edmunds.


iOS Developer - London

ustwo offers you the opportunity to be yourself, whilst delivering the best work on the planet for some of the biggest and most innovative brands. A strong work culture underpins what is an amazing work smart/live well environment. We only invest in projects, people and practices that we believe in, to ensure we remain excited about every opportunity.

And finally...

Memories of Steve

Hard to believe it’s already been 2.5 years…