今回話すこと
- Androidアプリ開発とWearアプリ開発との相違点について
Androidアプリ開発との相違点
同じところ
AndroidStudioで開発できる
エミュレーターもWearOS端末で実行できるので、実機がなくても実行は出来ます。
ワイヤレスデバックにも対応しています。
AndroidのエミュレーターとWearのエミュレーターを接続することも出来ます。
Jetpackライブラリを使用できる
Jetpackライブラリなどが使える点で、Androidエンジニアとしての知識がそのまま活用できます。
そのため、ViewModelやFlow, Hiltなどを用いたAACベースのアーキテクチャを採用できます。
また、UIもViewベースでの書き方とComposeベースの書き方両方あるので、特に変わりはないです。
OSのバージョンが対応されている
同じである点か微妙ですが、一応。
AndroidのAPIレベルと対応されています。
WearOS2.0はAPIレベル25~28をターゲットとし、サポートするには、minSdk25に設定します。
通知機能は共有される
モバイルアプリの通知機能は、WearOSでも同期されるので新しく実装する必要はありません。
Play Consoleからリリースする
アプリの配布形式がAPK/AABなのでこの点は同じです。
違うところ
特定のUXに特化したUIにする
画面が小さいので、やることを出来る限り一つか二つに絞るのが重要です。
また、操作も短時間で終了できるようにUIを設計する必要があります
下記のように一画面で確認/選択が出来るようなUI/UXが好ましいです。
さまざまなサーフェスが使える
ここでいう、サーフェスとはアプリのUIの種類の事を指しています。
インストールは別
中には既にAndroidアプリをリリースしていて後からWearOSに対応したアプリをリリースするケースがあると思いますが、WearOS2.0以上の場合別のAABファイルで審査に出してユーザーにインストールしてもらう必要があります。
ナビゲーション
バックスタックによる画面遷移のネストは二階層までが推奨されています。
もしくは、横並びのリニア形式での画面遷移が必要とされています。
ヘルスサービス機能が使える
これは、WearOs独自の機能です。
常にダークモード
節約を考慮してダークモードのみ対応となっています。
まとめ
やはり、AndroidをベースとしたOSともあってAndroidアプリ開発で得た知識がそのまま活用できるとなと感じました。
もっと相違点はあると思うので、皆様のコメントや今後のキャッチアップで追記していきたいと思います。
参考