Start MySQl from command line on Mac
Nov 29, 2018, 6:00 AM
Sometimes MySQL seems to have trouble starting up automatically. Even though I have the setting for MySql set to start up automatically via the checkbox “Automatically Start MySQL Server on Startup” in System Prefrences -...
iOS and Android Mobile Device Frames for Screenshots
Sep 11, 2018, 7:06 PM
As you near the end of a release cycle for your mobile iOS or Android app you will need to take screenshots to include in the App Store listing.
Many decide to dress up their screenshots with device frames. Here is a list of sites that...
Create Apple Search Ads for Multiple Countries (Storefronts)
Jul 27, 2018, 1:24 PM
When Apple Search Ads launched in October 2016 it only displayed ads in the United States. However, it expanded to multiple English speaking countries on April 25, 2017 to include the United Kingdom, Australia, and New Zealand. Each...
‘CurveEaseInOut’ is unavailable: use  to construct an empty option set
Apr 25, 2018, 11:07 AM
Swift 3 removed CurveEaseInOut so you will get the error message “‘CurveEaseInOut’ is unavailable: use  to construct an empty option set”
‘CGSizeMake’ is unavailable in Swift
Apr 25, 2018, 11:01 AM
Swift 3 removed CGSizeMake. You will get the error message “‘CGSizeMake’ is unavailable in Swift”. To resolve this replace:
CGSizeMake(100, 200) with
CGSize(width: 100, height: 200)
How to fix target overrides the `ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES` build setting defined in `Pods/Target Support Files/…`
Oct 20, 2017, 10:40 AM
If you are using swift and CocoaPods you may get the following warning after running pod install or pod update:
[!] The target overrides the ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES build setting defined in Pods/Target Support...
How to fix the Swift 4 @objc inference warning
Sep 21, 2017, 2:29 PM
After installing Xcode 9 and migrating to Swift 4 from Swift 3 I received this warning:
The use of Swift 3 @objc inference in Swift 4 mode is deprecated. Please address deprecated @objc inference warnings, test your code with “Use of...
Swift 4 substring
Sep 20, 2017, 9:52 AM
After converting my Swift 3 project to Swift 4 I received the warning:
‘substring(from:)’ is deprecated: Please use String slicing subscript with a ‘partial range from’ operator.
The old Swift 3 code was
Encryption Export Compliance for iOS apps
Aug 10, 2017, 12:17 PM
Disclaimer: I am not a lawyer. This is not legal advice, this is for information purposes only. Consult an attorney for legal guidance.
If your iOS app is simply using ATS or HTTPS to communicate with an external server then your...
iOS 11 App Store Search Results Include Developer Page
Jul 18, 2017, 10:28 AM
For iOS 11 Apple stated that the App Store will have Enhanced Search which will include “developers, in-app purchases, categories, editorial stories, tips and tricks, and collections”. In the past, if you searched for a...
How to use Content Hosting for In-App Purchase Content
Jun 13, 2017, 9:26 PM
Apple allows apps developers to host their In-App Purchase Content on Apple’s servers. To set up Content Hosting you will need to use iTunes Connect, Xcode and the Application Loader. The IAP must be non-consumable to take advantage...
How to create a Today Widget for your iOS App in Swift
May 22, 2017, 2:36 PM
This tutorial explains how to create a new Today Widget for iOS in Swift 3 using App Extensions in Xcode. It covers how to import pods, set up entitlements for inter-app communication via user defaults and custom url schemes. It also...
Deep Linking to the iOS App Store
May 17, 2017, 1:26 PM
Deep link to an app in the app store:
Deep link to an apps “Reviews” tab in the app...
iTunes Search API Country Codes
Apr 18, 2017, 10:50 PM
The iTunes Search API takes a country code. There are 28 languages that the iOS App Store can be localized into. Below are the ISO 3166-1 alpha-2 country codes for 25 of the main countries that can be used in the country parameter in the...
How to align UIView to topLayoutGuide in SnapKit
Mar 8, 2017, 4:05 PM
Use topLayoutGuide.snp.bottom to align your UIView to the bottom of the navigation bar or the bottom of the status bar in Swift 3 while using the SnapKit pod.
Use bottomLayoutGuide.snp.top to align your UIView to the top of the tab...
iOS views/APIs and their corresponding Android views/APIs
Feb 7, 2017, 6:29 PM
If you are used to programming in iOS and need to write an Android app or vice versa here is a list of iOS views and their equivalent views on android. You can also use this list to infer the corresponding View Controller and Activity.
How to programmatically play audio even when iOS device is muted
Jan 30, 2017, 9:28 PM
If you want to play the sound from a video or audio clip even when the iPhone or iPad device is muted you can use AVAudioSession to accomplish the task. This will make your app work similar to YouTube.
You will want to set the...
How to add a new user to your iTunes Connect account
Jan 25, 2017, 5:08 PM
First go to https://itunesconnect.apple.com/ and login.
Second, select the “Users and Roles” icon.
Third, press the + plus button to the right of User () to add a new user. Enter their name and email address.
Select the role or...
How to use the Attribution API for tracking installs via Apple Search Ads
Dec 2, 2016, 1:46 PM
Apple Search Ads is one of the many new introductions to the App Store for 2016. The new search ads allow developers and marketers to promote their iOS Apps at the top of App Store search results by bidding on search keywords.
Dynamic Type in iOS using UIFontTextStyle
Aug 17, 2016, 7:52 PM
iOS 7 introduced Dynamic Type which allows the user to specify the font size in Settings. The easiest way to support dynamic type is to use one of Apple’s pre defined Font Text Style’s below.
Swift 3 and Swift...
How to open an iOS app with custom URL
Jul 13, 2016, 5:13 PM
This tutorial shows you how to open another iOS app from within your iOS app or from the safari browser using a custom URL scheme.
Beginning with iOS 9, you must whitelist the apps you want to open. If you do not, you will get the...
How to localize an app’s name with InfoPlist.strings
Jun 29, 2016, 12:04 PM
These instructions are for localizing the information contained in the Info.plist. This includes the app’s name which is displayed on the user’s home screen under your app icon.
In Xcode go to File, New, File.. Select iOS (or...
How to Localize an iOS or tvOS app in Swift or Objective-C
May 21, 2016, 11:06 AM
Localization is the translation of the app’s user interface into locale specific languages. In order to support localization we will use a strings file.
Creating a Localizable.strings file I like to place the strings file in...
How to create promo codes for your iOS or tvOS paid app or in-app purchase
May 14, 2016, 8:45 AM
Promo codes allow you to give away your paid app for free. They are mainly used for sending your app to journalists or bloggers so that they can review your app at no cost to them. You can also send them to your friends or reward those who...
How to enable Universal Links in iOS 9+
Apr 21, 2016, 4:09 PM
Apple’s documentation states that “Adding support for universal links is easy. There are three steps you need to take”. However, there is much more to it than that. Here is what you really need to...
Localize iOS project with Strings file
Mar 17, 2016, 12:29 PM
From the appropriate platform, choose Resource, Strings File
Name it “Localizable.strings”.
Add your key value pairs as such:
"HELLO_WORLD" = "Hello World!"; In code add your localized string...
Remove storyboard from iOS or tvOS and design programmatically
Mar 17, 2016, 12:15 PM
If you prefer to work with code programmatically instead of via Storyboards then this tutorial will help you start a brand new iOS or tvOS project by removing the default main storyboard.
From Xcode, select...
25 Useful Tools for iOS Software Developers
Mar 11, 2016, 11:47 AM
As a software developer or marketer of iOS apps we rely on our tools to help build our products and save us time. Below are 25 useful tools for building iOS apps.
Name Description ack A tool like grep, optimized for...
iTunes Connect API (fastlane) and corresponding Xcode language codes
Mar 9, 2016, 6:50 PM
If you are using the iTunes Connect API via fastlane or spaceship and would like to access your app meta data by language, below is a chart of the language codes that spaceship converts the iTunes Connect languages into. In addition, if...
Use plutil to find that missing double quote or semicolon in your Localizable.strings file
Mar 8, 2016, 10:47 PM
Is Xcode giving you the error in Localizable.strings “Read failed: The data couldn’t be read because it isn’t in the correct format.” but it isn’t telling you what line the error is on?
Use the command line tool plutil to...
How to specify tvOS target conditional in Swift and Objective-C
Feb 19, 2016, 3:13 PM
In Swift use:
#if os(tvOS) //tvOS code here #elseif os(iOS) //iOS code here #endif In Objective-C use:
#if TARGET_OS_TV //tvOS code here #else TARGET_OS_IOS //iOS code here #endif
Did you find this post helpful? Support...
How to use core data from existing iOS app with tvOS
Feb 19, 2016, 3:04 PM
In Apple’s new tvOS, data saved in core data is not persisted but is only cached. The tvOS may delete the data stored in core data when space is...