Yearly Archives: 2014

Deploying your app from Xcode to a device with Release Build Configuration

By default all apps you deploy from Xcode will make it to your device with the Debug Build Configuration. This is useful during development, but it doesn’t optimise your code. It’s therefore easier to debug, but your app doesn’t run as fast as the final release version would.

Especially on older devices this can make a huge difference, particularly for your own personal apps that may never make it to the App Store.

There is a painless way to change how apps are deployed to your devices in Xcode. All we need is a distribution profile, just like the one we need for App Store submission. Next we’ll change the Run Scheme to use the Release Build Configuration. Here’s how to do that in Xcode 6.1.1:

  • with your device selected, head over to Product – Scheme – Edit Scheme
  • select Run from the list on the left
  • change the Build Configuration from Debug to Release
  • untick the “Debug executable” option
  • deploy your app using the usual playback button

Screen Shot 2014-12-30 at 13.06.32

Users have reported a 60% speed increase on their devices.

Make sure the distribution profile is imported into Xcode and selected as explained here.

Further reading:

What’s new in iOS 8.1.1

It is with the greatest pleasure that I’ve installed iOS 8.1.1 on my iPad 3. It’s literally breathed new life into by beloved certainly not yet ready for retirement pad.

Ever since I’ve installed the first iOS 8 beta in June, my iPad 3 was lagging like there was no tomorrow. I’ve experienced this before with beta versions, and it’s just something you live with. But when the iOS 8 general release came out, this behaviour hasn’t change.

At first I felt that with the arrival of faster processors, Apple had deliberately neutered yesterday’s tech treasures so that users would get fed up and simply buy new equipment. After all, they’re in the business of selling technology, not saturating the market with everlasting lightbulbs.

iOS 8.1 came out and did not resolve my iPad 3 issues, such as:

  • characters appear several seconds after they are typed
  • animations stutter as if in the silent movie era

However, iOS 8.1.1 is a blessing for me. We’ve held off on upgrading every device (such as our iPad 2 and iPhone 4s devices) because if it ain’t broken, let’s not try to fix it. Besides, it’s good to have older versions of iOS for testing.

Not everyone’s as happy as I am: website GottaBeMobile reports problems for users who had a good experience in iOS 8.1, who’s performances have suffered with the latest upgrade – in particular with the iPhone 5.

It’s a shame that ultimately we have to sweat every time that upgrade icon comes up: will it make our lives really better, or will an update make it worse? Ever since iOS 6 it’s been like that, and it looks like this trend is not going to stop anytime soon.

For now I’m enjoying my iPad 3 again. I haven’t had that pleasure in a while!

What's new in iOS 8.1

iOS8.1Much like every time a new version of iOS is released, developers don’t find out what’s actually changed until everyone else. iOS 8.1 is no different, so here’s what’s new – straight from the update dialogue:

This release includes new features, improvements and bug fixes, including:

  • Apple Pay support for iPhone 6 and iPhone 6 Plus (U.S. only)
  • Photos includes new features, improvements and fixes
  • Adds iCloud Photo Library as a beta service
  • Adds Camera Roll album in Photos app and My Photo Stream album when iCloud Photo Library is not enabled
  • Provides alerts when running low on space before capturing Time Lapse videos

Messages includes new features, improvements and fixes

  • Adds the ability for iPhone users to send and receive SMS and MMS text messages from their iPad and Mac
  • Resolves an issue where search would sometimes not display results
  • Fixes a bug that caused read messages to not be marked as read
  • Fixes issues with group messaging
  • Resolves issues with Wi-Fi performance that could occur when connected to some base stations
  • Fixes an issue that could prevent connections to Bluetooth hands-free devices
  • Fixes bugs that could cause screen rotation to stop working
  • Adds an option to select between 2G, 3G or LTE networks for cellular data
  • Fixes an issue in Safari where videos would sometimes not play
  • Adds AirDrop support for Passbook passes
  • Adds an option to enable Dictation in Settings for Keyboards, separate from Siri
  • Enables HealthKit apps to access data in the background
  • Accessibility improvements and fixes
  • Fixes an issue that prevented Guided Access from working properly
  • Fixes a bug where VoiceOver would not work with 3rd party keyboards
  • Improves stability and audio quality when using MFi Hearing Aids with iPhone 6 and iPhone 6 Plus
  • Fixes an issue with VoiceOver where tone dialing would get stuck on a tone until dialing another number
  • Improves reliability when using handwriting, Bluetooth keyboards and Braille displays with VoiceOver
  • Fixes an issue that was preventing the use of OS X Caching Server for iOS updates

Some features may not be available for all countries or all areas.
For information on the security content of this update, please visit this website:

How to change the Git user pictures in Xcode


Those little avatars / user pictures in Xcode are linked to your Mac Contacts. This is not a Git or SVN feature.

You can associate a Mac Contact with a committer in Xcode and make it show up under Source Control – History. If the contact has a picture and you associate that contact with a Git committer then Xcode will show it in History. Here’s how it works in Xcode 6:

  • in Source Control – History, hover over the name of the committer
  • click on that super teeny tiny disclosure triangle
  • from the drop down menu, select Add to Contacts
  • you can now create a new contact, including a picture, or “Choose existing” and pick a contact
  • confirm your choice and the icon shows up in your project

Xcode isn’t clever enough to apply the same committer contact to all your projects so you need to repeat this process for each project.

In the same manner you can replace and update contacts.

What’s New in iOS 8

iOS-8-IconEven though us developers get access to new versions of iOS, it doesn’t mean that Apple actually tell us what’s new in a release. iOS 8 is no exception.

When you upgrade on your device there’s a handy “Learn More” link that gives you a summary of the new features. I wish this was accessible to developers when the first beta comes out. Perhaps one day it will be, or it always has been and I’ve always missed the link.

Until such time, here’s what’s new in iOS 8 (without the marketing hype):

This update contains hundreds of new features, including the following:

  • Messages improvements
  • Tap to Talk to send your voice, a video or a photo with just a swipe
  • Group messaging options to name a conversation, add a contact, remove a contact, or leave a conversation
  • New details view with Do Not Disturb, location sharing and attachments view

Photos improvements

  • Smart editing tools to adjust light and color with a swipe
  • Fine-tune controls to adjust exposure, brightness, contrast, highlights, shadows and more
  • Search by date, location, or album name or use smart suggestions
  • Smart albums for Slo-mo videos, Bursts, Panoramas, and Time-lapse
  • Third-party photo filters and editing tools supported directly in Photos
  • Your photos and metadata from iPhoto will be migrated to Photos. Books, Journals and Slideshows will be converted to albums containing only photos.
  • iPhoto for iOS is not supported on devices running iOS 8 or later.

Camera improvements

  • Time-lapse mode
  • Capture timer
  • Adjust exposure with a simple nudge to lighten or darken a photo prior to capture
  • Burst mode on front facing camera on iPhone 5s
  • Panorama for iPad Air and iPad mini with Retina display

QuickType keyboard

  • Predictive typing personalized to your writing style, and customized based on the recipient and the app
  • Predictive is available in English (Australia, Canada, UK, US), French (Canada, France, Switzerland), German (Germany, Switzerland), Italian, Portuguese (Brazil), Spanish, Thai
  • Third-party keyboard support


  • New Health app with easy-to-read dashboard of health and fitness data
  • Ability to share health data with apps to provide a more comprehensive way to manage your health and fitness
  • Add a Medical ID with information about allergies, medical conditions, and more with the option to make accessible from the lock screen
  • Available on iPhone and iPod touch

Family Sharing

  • Share iTunes, iBooks, and App Store purchases with up to six members of your family.
  • Pay for family purchases with a single credit card and approve purchases by children with Ask to Buy
  • Easily share family photos, a family calendar, locations and more

iCloud Drive

  • Store all your documents in iCloud and access them from your iPhone, iPad, iPod touch, Mac, or PC
  • Share the same file across multiple compatible apps
  • Edits you make on one device update on all your devices automatically
  • Continuity features so your iPhone, iPad, and Mac work together more seamlessly
  • Handoff to continue what you’re doing as you move from one device to another
  • Make and receive calls and send and receive SMS or MMS messages on your iPad or Mac
  • Instant Hotspot to automatically use your cellular connection to get online with your other devices
  • AirDrop compatibility with OS X Yosemite
  • Available on iPhone 5 or later, iPad (4th generation), iPad Air, iPad mini, and iPod touch (5th generation)

Spotlight improvements

  • Displays suggestions from Wikipedia entries, places nearby, movies (US only), popular web sites, App Store, iTunes Store and iBooks Store
  • Safari also supports Spotlight suggestions alongside Top Hit and search suggestions
  • Supported for local languages in US, UK, Austria, Australia, Belgium, Canada, France, Germany, Italy, Japan, Netherlands, Spain, Switzerland

Mail improvements

  • Easily jump between drafts and your inbox with a simple swipe down on the draft
  • Intelligent suggestions for Calendar events and Contacts
  • VIP threads

Siri improvements

  • Improvements to responsiveness, reliability and accuracy
  • “Hey, Siri” option to initiate Siri using just your voice when your device is plugged in
  • Streaming voice recognition
  • Works with Shazam to answer “What song is playing?”
  • Purchase content from iTunes Store
  • Safari improvements
  • DuckDuckGo search engine support
  • Private browsing per tab
  • Subscribe to RSS feeds in Shared Links
  • Use Camera to scan and enter credit card info

Maps improvements

  • Flyover city tours
  • Maps place cards in Phone and Contacts
  • Inline map view and travel time notifications for Calendar events

App Store improvements

  • New Explore tab for easier category browsing
  • Top trending searches displayed in Search tab
  • Scrolling search results
  • App video previews
  • Editors’ Choice badges
  • Quick access to key contacts in multitasking view
  • Interactive Notifications for Messages, Mail, Calendar, Reminders and enabled third-party apps
  • New Tips app to help you do more with your iOS devices
  • iBooks app built into iOS, now with auto night mode and new organization for book series
  • Podcasts app built into iOS
  • Battery usage by app
  • iCloud Keychain can use saved website passwords to easily sign in to associated apps
  • FaceTime Audio call waiting
  • Rich text editing in Notes
  • Peer-to-peer AirPlay discovery and playback

 Enterprise features

  • Expanded data protection to Calendar, Contacts, Messages, Reminders, and Notes in addition to Mail and 3rd-party apps
  • Per message S/MIME email controls
  • Improved UI to make it easier for users to understand the remote management of their device
  • Automatic reply for Exchange
  • Free/busy lookup for Calendar invitations
  • MDM Managed books can be automatically pushed to users

Accessibility features

  • Redesigned Zoom with one-handed control and multiple zoom modes including picture-in-picture
  • Built-in timer and Touch ID support for Guided Access
  • Speak Screen to read out contents of the screen via gesture or Siri command
  • VoiceOver improvements including Alex voice option and Braille input support
  • Multi-device support for MFi hearing aids to seamlessly switch from one paired iOS device to another

Features for China

  • Vector-based maps
  • Turn-by-turn navigation
  • Lunar calendar support
  • Improved predictive input
  • Improved weather data

Expanded language support

  • Dictation support for 22 additional languages: Croatian, Catalan, Czech, Danish, Dutch, Finnish, Greek, Hungarian, Indonesian, Malay, Norwegian, Polish, Portuguese (Brazil), Portuguese (Portugal), Romanian, Russian, Slovakian, Swedish, Thai, Turkish, Ukrainian, Vietnamese
  • New keyboards for English (India), Bengali, Filipino, Marathi, Slovenian, and Urdu
  • Hindi localization
  • Definitions of a selected word for additional languages: Russian, Portuguese (Brazil), Thai, Turkish
  • Spanish-English bilingual dictionary
  • Spell check for Turkish
  • Hebrew language support for Text to Speech and VoiceOver

New developer capabilities including

  • Extensibility, giving apps new sharing options and the ability to create widgets, photo filters and editing tools in Photos, and 3rd-party keyboards
  • Metal, a new graphics technology for game providers to bring console-class 3D games to mobile devices, this is extensively blogged about on
  • SpriteKit and SceneKit for improved 2D and 3D games
  • HealthKit, so health and fitness apps can share their data with each other
  • HomeKit, a new way for you to control supported devices in your home using Siri
  • Touch ID support so you can sign in to third-party apps with just your fingerprint
  • CloudKit, offering a complete and scaleable back-end solution helping developers eliminate the need for writing server code and maintaining servers

Bug fixes

Some features may not be available for all countries or all areas.
For information on the security content of this update, please visit this website:

Screen Shot 2014-09-18 at 11.29.20