The latest news at shinobicontrols HQ

iOS 10 Day by Day :: Day 5 :: User Notifications

Written by Sam Burnstone

Introduction Developers have been able to schedule notifications on iOS for a long time, but previous APIs lacked the fine-grained control you might have wanted. Fortunately, Apple have addressed this in iOS 10 and released the new UserNotifications framework. This provides you with a far richer API and simpler scheduling for both local and remote […]

iOS 10 Day by Day :: Day 4 :: UIViewPropertyAnimator

Written by Sam Burnstone

Back in the Dark Ages The block based UIView animations make adding transitions between animatable properties (frame, transform, e.t.c) a breeze to set up. They’re incredibly easy to create requiring only a few lines of code: view.alpha = 1 UIView.animate(withDuration: 2) { containerView.alpha = 0 } You can also add completion blocks that will be […]

iOS 10 Day by Day :: Day 3 :: Xcode Source Editor Extensions

Written by Sam Burnstone

Introduction Love it or hate it, Xcode is a major part of developing for Apple’s platforms (I’m mostly in the ‘love it’ camp… the majority of the time, anyway!). One gripe of many developers has been its lack of support for plug-ins. These extend the built-in functionality by allowing developers to add their own features […]

iOS 10 Day by Day :: Day 2 :: Thread Sanitizer

Written by Sam Burnstone

Imagine your app is almost ready: it’s beautifully polished and unit test coverage is very high. There’s just one problem: there’s a horrible bug which is only occurring intermittently and you’ve sunk hours into trying to fix it. What on earth could it be? Often these are due to multiple threads accessing the same bit […]

iOS 10 Day by Day :: Day 1 :: Messages

Written by Sam Burnstone

Messages saw a huge update in iOS 10. It’s likely this was in an effort to steal back market share from the big guns: Facebook Messenger, WeChat and Snapchat. One of the new features was the ability for 3rd-party developers to create their own message extensions that can be used from within the Messages application. […]

iOS 10 Day by Day :: Index

Written by Sam Burnstone

Welcome to iOS 10 Day by Day, you’ll find links to all of the posts below. Read on to find out more about the series. You can still study the previous series by downloading the eBooks. What is it? iOS 10 Day by Day is a blog series covering all that an iOS developer needs […]

Android’s fragmentation continues with mobile payments

Written by Kai Armer

Mobile payments are becoming ever more popular – I’m beginning to see more people using Apple Pay while out on my travels. I was excited by the recent release of Android Pay in the UK, so much so that I couldn’t resist having a play with the API. You can read about my experience here. […]

How to add in-app purchasing with Android Pay

Written by Kai Armer

Android Pay was announced back in 2015 during Google I/O. Touted by some as the future of e-commerce, Android Pay offers a simpler, more secure way of handling payment information. Once a user’s payment information is registered with Android Pay, they can checkout using these details within a few taps. The use of encrypted virtual […]

WWDC 16 – What’s in store for iOS 10?

Written by Kai Armer

Monday saw Shinobi HQ bristling with excitement (not to mention beer and pizza) as we watched Apple’s WWDC 2016. I was particularly interested in the iOS 10 announcements and thought I’d share some of my observations. User experience is (still) everything Apple showed a clear focus on user experience. Even if Craig Federighi and Tim […]

Jamming with the GYB utility

Written by Sam Burnstone

You may have spent some time browsing the Swift standard library source code and come across some funky file names such as CollectionAlgorithms.swift.gyb and wondered what on earth that .gyb file extension meant. GYB is simply an acronym used by the Swift team. It stands for 'Generate Your Boilerplate'. The role of the tool is […]

TRUSTED BY ENTERPRISE