Watchアプリ作る人の根性スゲーと思った
wayohoo.com
AndroidWearもだけど、AppleWatchも大概。
コードの書き方が異なる
これはある程度予想してた。してたんだけど、ラベルの書き方まで違うのは正直、面食らった。しかもsetTextって……垢抜けないアライドテレシスかルータ・スイッチ統合前のCiscoSystems時代のコマンドを見ているようだよ。だっせぇ。何のためにSwftまで覚えさせられたんだよ。
アイコン作成、国際化対応、プロビジョニングプロファイル(端末認証)まで、アプリ申請のための準備作業すべてが二度手間である。め、面倒くせぇ……。
iPhoneApp
@IBOutlet weak var mainLabel: UILabel! override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. let str: String = "Hello" mainLabel.text = str }
WatchApp
@IBOutlet weak var mainLabel: WKInterfaceLabel! override func awakeWithContext(context: AnyObject?) { super.awakeWithContext(context) // Configure interface objects here. let str: String = "Hello" mainLabel.setText(str) }
iPhoneアプリのバンドルという位置付け
試しにAppleWatchのシミュレータを起動してみようとした開発者は、ふと疑問に思うはずだ。え? Watchアプリの開発したいんだけど、iPhoneアプリのコードは後でどうするの?
共通のプロジェクト内(緑枠)にiPhoneアプリ用のコード類(青枠)があり、Watchアプリ用のフレームワーク(WatchKit.framework)を追加することでWatchアプリ用のコード類(赤枠)が追加されるという手順なのです。
え? 作るんですよ? iPhoneアプリの「バンドル」という位置付けだから、iPhoneアプリ側もクソでも何でも作る必要がある。watchアプリだけで審査が通るかどうか不明。少なくとも、info.plistのバージョンは確認されるようだ。ユーザ視点でのAppleWatchアプリのインストール手順はこれだもん。
Apple Watchにアプリを追加(インストール)する方法 | Apple Watch Wave
2度手間でDL数は1
ですしね。ダミーiPhoneアプリで審査が通るならまた違うんだろうけどね。