iOS Icon

iOS

iOS is the operating system for Apple's mobile products.
80 Stories
All Topics

iOS krausefx.com

See what JS commands get injected through an in-app browser on iOS

Felix Krause built an iOS browser app that lists the JavaScript commands executed by the iOS app rendering the page. Use it like this:

  1. Open an app you want to analyze
  2. Share the URL somewhere inside the app (e.g. send a DM to a friend, or post to your feed)
  3. Tap on the link inside the app to open it
  4. Read the report on the screen

His findings after using this for a bit are… concerning. Especially TikTok.

Apple apple.com

Apple adds a Lockdown Mode for "extreme protection"

Lockdown Mode is the first major capability of its kind designed to offer an extreme, optional protection for the very small number of users who face grave, targeted threats to their digital security.

It blocks non-image attachment types in Messages, disables JIT compilation in Safari, blocks incoming FaceTime calls from unknown senders, won’t let the phone connect to a computer via a wired connection, and disables the ability to install new configuration profiles.

Command line interface github.com

AirDrop files directly from your CLI with OpenDrop

OpenDrop is a command-line tool that allows sharing files between devices directly over Wi-Fi. Its unique feature is that it is protocol-compatible with Apple AirDrop which allows to share files with Apple devices running iOS and macOS.

Super cool, but with a disclaimer: this is the result of reverse engineering the transfer protocol, so the odds of it being flakey (especially as Apple ships OS updates) are high. It’d be rad if Apple would publish an AirDrop-compatible specification for the community to rally around.

You know, like they did with FaceTime. 😉

WebKit Blog Icon WebKit Blog

New WebKit features in Safari 15

With the release of Safari 15 for macOS Monterey, iPadOS 15, iOS 15, and watchOS, as well as macOS Big Sur and macOS Catalina, WebKit brings significant advancements in privacy and security, improved interoperability, and a host of new features for web developers. Take a look.

We discussed a few of these in-depth on JS Party #195, but at the time I was referencing the beta features announcement and it was 404ing during the show. This is a much better resource.

Chris Coyier CSS-Tricks

On (the lack of) iOS browser choice

Chris Coyier does a great job rounding up and summarizing conversations around #AppleBrowserBan:

Just last week I got one of those really?! 🤨 faces when this fact came up in conversation amongst smart and engaged fellow web developers: there is no browser choice on iOS. It’s all Safari. You can download apps that are named Chrome or Firefox, or anything else, but they are just veneer over Safari. If you’re viewing a website on iOS, it’s Safari.

Six Colors Icon Six Colors

Safari Keyword Search hits 2.0, comes to iOS

Dan Moren writing for Six Colors:

Safari Keyword Search is a little tool that allows you to define shortcuts for searching specific sites. For example, you could type “imdb George Clooney” to be taken directly to the IMDb search results for George Clooney, or “w iPhone 13” to go straight to the Wikipedia page for the iPhone 13. You can also define your own shortcuts, so, for example, I’ve defined “sc” as a Google search limited to sixcolors.com, which helps me quickly turn up articles here…

On iOS 15, Mobile Safari supports web extensions. That means this free and awesome tool is now available on the go, where it shortcuts are even more useful.

iOS github.com

Recreating a fully functional version of iOS 4 in SwiftUI

OldOS is a testament to the days of yesteryear, showcasing what iOS once was ten years ago. The ethos of the app is to merge the technologies of today with a pixel-perfect recreation of the user experience of the past. The vast majority of apps in OldOS are fully functional — meaning they seamlessly integrate with the data on your phone to deliver a live, emulator-esque experience. What does this mean? Well, you can play your music in iPod, get directions in Maps, surf the web in Safari, view the current weather in Weather, and much more.

This is quite the undertaking!

Part of the goal with OldOS is to enable anyone to understand how iOS works and demonstrate just how powerful SwiftUI truly is. For that reason, the entire app will soon be open-sourced — enabling developers to learn about, modify, and add to the app. I thought building this over my last six or so months in high school and sharing it with the world would be a fun and productive endeavor.

It looks like there’s a build available today, but it’s not open source yet so I’m going out on a limb by linking it up now. I’ve +1’d a request for screenshots, which would be a great addition to the repo while we wait for code.

Recreating a fully functional version of iOS 4 in SwiftUI

Michael Terhar brownfield.dev

Building real applications from my iPad

Michel Terhar:

In the search for a comfy and portable developer experience, I’ve made a lot of compromises in the past. The experience has gotten significantly better recently thanks to VS Code and Kubernetes. This workflow also does a good job for underpowered laptops or when working with lots of different and conflicting versions of python or ruby.

This is a solid, balanced piece that doesn’t overly sell the workflow and walks you through setting it up for yourself.

Brent Simmons inessential.com

Maybe the iOS and Mac markets are the same size(ish)

Brent Simmons did some analysis on download numbers for NetNewsWire on iOS and Mac.

Based on the above, and knowing that way more people use iOS than macOS, you’d expect the iOS app to be way more popular. But it’s not. It’s a little more popular.

I find this super-fascinating, because it’s some data — admittedly just one app — that confirms what I’ve thought for a long time, which is that, for some types of apps, a Mac app would do as well as an iOS app.

Erik Kennedy learnui.design

iOS 13 design guidelines, templates, and downloads

Erik Kennedy is back with an awesome resource for anyone doing iOS development.

Maybe you’ve never designed an iPhone app, and have no idea where to begin.

Maybe you’ve designed a dozen, but still want one place to reference best practices. Heaven knows Apple’s Human Interface Guidelines are awful to try and read.

Either way, this is the guide for you. I cover basically everything you need to know to create an iOS app that follows standard iOS 13 conventions.

InfoQ Icon InfoQ

How Apple plans to address the systemic issue that made iOS 13 so buggy

iOS 13’s rollout was soooo buggy. Most notably: backgrounded apps were routinely being killed for no reason. What was to blame?

…Apple top executives Craig Federighi and Stacey Lysik identified iOS daily builds’ instability as the main culprit for iOS 13 bugs. In short, Apple developers were pushing too many unfinished or buggy features to the daily builds. Since new features were active by default, independently of their maturity level, testers had a hard time to actually use their devices, which caused Apple’s buggy releases.

Here’s how they plan to address the problem:

Federighi suggested leaving all new features disabled by default, so testers can ensure no regressions make it into the latest build and avoid being impaired by new bugs. New features shall be enabled on-demand by testers using a new internal Flags menu, making it possible to test each new feature in isolation.

How did it take Apple to the end of 2019 before they discovered feature flags? I hope it helps 🤞

Erik Kennedy learnui.design

Designing for iOS and Android

From Erik Kennedy who shared some tactical design advice for developers — this awesome visual guide covers the primary differences between designing for iOS and Android, including navigation, UI controls, typography, app icons, and more.

If you’re designing both an iOS and an Android (Material Design) version of an app, this guide is your new best friend 😎. We’re going to cover the most relevant differences between iOS and Android for UX/UI designers. If you’ve created an app on one platform, this is most of what you need to know to “translate” it for the other platform.

Mattt Thompson nshipster.com

Flight School - essential topics in iOS and macOS development

Today, I’m excited to announce updates to our guides to Swift Codable and Numbers, as well as a brand new Guide to Swift Strings. Everything is up-to-date with the latest from Swift 5 and Xcode 10.2, and now — for the first time — available in print!

If you dig NSHipster, you’ll love Flight School. Amazing cover design! I love it when the cover of a book makes you want to read it.

Flight School - essential topics in iOS and macOS development

Federico Viticci MacStories

This iOS shortcut proves you can do awesome programming with Shortcuts

Federico Viticci on MacStories didn’t understand why Apple Music doesn’t offer a “Year in Review” feature, so he built his own:

But Apple doesn’t seem interested in adding this feature to Apple Music, so I decided to build my own using Shortcuts. The result is the most complex shortcut I’ve ever created comprising over 540 actions.

I just tried out the shortcut last night, and it’s incredible. But as Federico himself points out, doing something this complex pushes the boundaries of Shortcuts and iOS:

Apple Music Wrapped pushes the limits of what is possible to achieve with the ‘Find Music Where…’ and ‘Open URLs’ actions of the Shortcuts app. In the past few weeks, I (and other testers) have run into limitations and inconsistencies worth pointing out both for MacStories readers and Shortcuts engineers at Apple.

It’s nothing short of a programmatic feat, and if you use Apple Music, I recommend you give it a shot.

Mattt Thompson nshipster.com

Bundles and packages

Mattt over at NSHipster explains two important abstractions on Apple platforms: bundles and packages.

Despite being distinct concepts, the terms “bundle” and “package” are frequently used interchangeably. Part of this is undoubtedly due to their similar names, but perhaps the main source of confusion is that many bundles just so happen to be packages (and vice versa).

So before we go any further, let’s define our terminology: …

Swift github.com

Mast – a beautiful Mastodon app for iOS

Mobile apps were one of the big discussion points when we talked Mastodon on episode #315 of The Changelog. Here’s one thing Eugen had to say about the subject:

Oh, yeah, for some reason I get a lot of questions like “Why isn’t Mastodon on the app store?” and it’s really weird, because there are like a million apps for Mastodon on every app store… They’re just not called Mastodon, because they are developed by third-party developers.

Mastodon has a principle - API first, and… Yeah, that’s essentially it - API first. [laughter]

Add Mast to the ever-growing list of third-party developers making iOS apps for Mastodon.

iOS github.com

A book on getting to the #1 spot in the App Store

If this book intrigues you (like it does me), start nowhere else but the “How to Read This Book”:

A successful iOS game makes $4,000 annually (this goes for any app frankly). A successful Android game makes one seventh of that (one third at best).

You are not a large multi-million dollar company (at least I don’t think you are given that you’re reading this book). So you don’t have the customer acquisition/marketing budget to beat this $4,000 annual average. Period.

Brutal. What’s a dev to do, then? Make lots of niche, high quality games.

0:00 / 0:00