Surf's UP デザイン

  • 投稿:
  • 更新:2019年10月10日
  • by
  • in

surfsup_beta.png

以前JSでコア部分のプロトタイプコードを書きましたが、そのUIになる部分がこんな感じです。

波乗りしている人は解ると思うけど(早起きサーファーね)日の出時間って週毎けっこう変化があって、夜明け近くの時刻にアラームを設定しているんだけど、毎度少しずつ調整しないとダメなんです。
ってことで、アプリで日の出時間をロケーションから計算してアラームを設定できればと思いました。

ただ、iOSで目覚まし時計作るのって制約が多くて意外に面倒なんです。
本当は、正規アプリの「時計」のアラームに連動できれば面倒がないのですが、URLスキームでの連動は出来なくて、残るまともな選択肢は2つだけ。

1つはバックグラウンドで待機してサウンドを再生する。
もう1つは通知サウンドを利用する。

で、どちらも一長一短があって、前者の問題は「バックグラウンドでアプリが待機していないとダメ」「なのでバッテリーを食う」「アラームでのBG処理は認められてないので、Appleの審査を通すのにそれ以外の理由で何かを実装をしないとダメ」の3つ。
後者の方は、「アラームじゃないのでサイレントモードで音が出せない」「サウンドの再生時間は30秒まで」の2つ。

問題の数で選んだわけでも無いですが、後者の方がアプリの状態に関係なく、一度設定すれば必ずアラームが鳴るので(前者の場合は何かの都合でBGからアプリがパージされるとアラームは鳴らない)後者の手法でやろうかと思います。

色々調べてみて、正直なところ、この手のアプリは Android で作った方が使い勝手はよくなると思う。