My latest guest post for Waldo shows you how to use SQLite databases using Swift through Gus Muller’s FMDB library. Head to Waldo for the article: Getting Started with FMDB and Swift: A Guide.
SwiftUI vs. Storyboard: Which Is the Best?
Comparing SwiftUI with storyboards for iOS development – which one is better when.
How to Create an App ID
Check out my latest guest post at Waldo: How to Create an iOS App ID: 2 Quick and Easy Methods. You will learn: What an App ID is in Apple’s ecosystems. How to create App IDs. What is an App Store ID and how it relates to an App ID. How to find an App…
How to Configure Developer ID Signing in Xcode Bot
By default, Xcode Server signs binaries using a development certificate, not a distribution one. Unfortunately there is no built-in option to make it use a Developer ID certificate. What’s the solution?
Introducing macOS Notarization Automation Book
Notarization is a fully automated process, unlike going through the App Store which involves manual human review. At least it’s automated in Apple’s side. However it could consume a non-negligible amount of brain bandwidth in your side. How about automating it?
What’s New with Xcode 13 Notarization
Xcode 13 brought a new notarization tool. What is it and how much better compared to the old one?
How to Parse Notarization Tool Output
“I want a REST API for notarization since it’s impossible to parse text coming from the notarization tool reliably.” What if I say that the command line API is the best method for integration with build pipelines? Read on to find out more.
Back to the Mac: How to Notarize Disk Images for Distribution Outside the Mac App Store
Distributing macOS apps as ZIP archives has been quaint since Sierra. Today’s macOS packaging requirements mandates notarization, otherwise it would say that your app is suspicious. This often means distributing apps within disk images since this container format can be signed, notarized, and stapled.
How to Compile OpenSSL 1.1.1 for Apple Silicon
The long-rumored ARM Mac is on the horizon. With this comes the big work of porting and re-compiling current applications. But many Mac App Store apps are dependent on OpenSSL, which doesn’t yet support ARM on the Mac. Here is how you can continue to test your mac app while waiting for official OpenSSL support for the new hardware.
How to Unit Test Network Code in Swift
Testing network I/O code without accessing the backend is not easy. Here is how you can mock the backend by injecting code into the URL Loading System
How to Program iOS on iOS
“Do I need a Mac to program iOS?” – for a long time there is only one answer: “Yes”. But this is no longer true, as there are many ways to program iOS – including on itself. Yes, you can make apps on the device itself. Read this article to find out how.
How to Maintain Loading State in Cells
When a table view asks for a cell, often images in the cell isn’t yet available and needs to be fetched from a server – thus the cell gets a placeholder image. But static placeholders doesn’t look as good as animated ones. Unfortunately cell views gets scrolled off and re-used which makes managing animations challenging.
Clean Architecture with VIPER Sample Project for UIKit
Architecting applications to meet today’s challenges and be ready for tomorrow’s problem is not an easy feat. The principles of clean architecture may be sound, but separating the signal from the noise is tough. Here is a sample VIPER project for iOS that you can tinker to learn about the principles of clean architecture.
How to Implement VIPER Clean Architecture in an iOS App
Compartmentalizing functionalities within an app to improve its maintainability is difficult. More so when you’re not well versed with software architectures and other software engineering principles. What if you can confidently structure your app to be resilient and adaptive to change?