Aleksandar • Vacić

iOS bits and pieces

“(not) supported by Apple”

Several days ago, iPhone 7 became available in Serbia. Offered through all 3 mobile carriers as well as various resellers. Black billboards with the familiar jet black shape can be seen all over the Belgrade, with the tag line: “supported by Apple”

If only.

Here’s (likely) an incomplete list of various ways Apple does not give a crap about their Serbian customers…

Hopes, Dashed

Several days ago, blog post from well-respected developer (of Dash, documentation browser) stirred quite a storm among the Apple developer community.

From the description – account transfer, fraudulent reviews for an app that did not really needed them etc – all pointed to very misfortunate sequence of events that to many (me included) seemed like Apple made a mistake and then double-downed on it.

Swift 3 migration tip: 'instance method ... nearly matches' warning

If during transition to Swift 3 in Xcode 8 you get a warning like this:

1
2
3
4
 Instance method 'application(_:didFinishLaunchingWithOptions:)'
 nearly matches optional requirement
 'application(_:didFinishLaunchingWithOptions:)'
 of protocol 'UIApplicationDelegate'

Don’t do any of the supplied fix-its. Instead, just type the same method again and you will see that the signature has changed:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// OLD
func application(_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?)
-> Bool {

  self.window?.makeKeyAndVisible()
  return true
}

// NEW
func application(_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey : Any]? = nil)
-> Bool {

  self.window?.makeKeyAndVisible()
  return true
}

Given fix-its only hide the issue, don’t really fix it.

WWDC16

In a few days, I’m going to my first ever WWDC. I expect it to be an interesting experience in itself, regardless of what Apple announces.

I’ll use this post as a quick dump of thoughts and things I hope to see / hear from Apple.