自作の時計アプリをもっといい感じにしたい!
この記事は防災アプリ開発 Advent Calendar 2025 - Adventarの21日目の記事です。
20日目はことほさんの加速度からリアルタイム震度を計算してみるでした。
はじめに
Fuku1213です。
私は過去に、 Clock For Fuku というアプリを公開していました。(現在は公開停止中)
このアプリはプログラミングを始めて間もない時期に作成したもので、かなり古い設計になっています。
現在、このアプリの後継となるアプリの制作を進めていますので、その状況などを述べます。
Clock For Fukuの課題
古い!!
- .NET Framework 4.8でできている
- WinFormsでできている
最近、.NET 10がリリースされましたが、このアプリはそんな世界をまるで知らない構成です。
データの処理方法が微妙
- 強震モニタサーバからEEWのデータを取得している
- アプリの更新確認処理がセーフ重視になっていない
- 時計の表示はCPU描画に頼りっきり
- 時刻補正を1秒単位でしかできておらず、正確性に欠ける
強震モニタサーバからのEEWデータ取得に頼ってるため、昨年策定された強震モニタの利用条件で非推奨とされる行為となっています。(アプリを公開停止しているのはこれが主要因)
また、アプリの更新確認に利用していたスターフリーサーバーが今年5月にサ終したのですが、その対応ができていないにも関わらず普通にアプリを起動できてしまっています。
さらに、System.Drawを使っているため、GPU描画もできておらず、Quarogほどではないですが力不足を感じることもありました。
時刻補正については、言語の違う国で実行した際に小数点以下を適切に扱える処理を当時の私が書けず、妥協して小数点以下を切り捨てるようにしていたのが要因です。
機能が少ない
Clock For Fukuでできることは
- 日付・時刻の表示
- EEW発表時に予想最大震度を表示する
ぐらいしかありません。
世の中に出回っている時計アプリは、もっといろいろな機能があります。
新生Clock For Fukuで目指すもの
メインコンセプト
シンプルだけどいろいろできる時計
実装したい機能
EEWの受信と表示
緊急地震速報データの取得元はDMDATA.JPにする予定です。
ただ、予想震度の表示だけにWebSocket枠を1消費したり、「緊急地震(予報)」や「緊急地震(警報)」を契約するのはかなりもったいないと思っているため、これはつなぎの仮実装にする予定です。
将来的にはClock For FukuをQuarogの拡張機能ぐらいの立ち位置にしたいなと考えており、Quarogと連携してデータを共有することで節約を図ります。
テーマ変更の自由化
現在は「ライト」「ダーク」「ダークブルー」の3種類しかテーマが用意されていません。
プリセットをいくつか用意した上で、利用者が自由にテーマを作成できるようにしたいと思っています。
日の出・日の入りに合わせた変化
日が出ている時間はライトテーマ、日が沈んでからはダークテーマなど、リアルタイムといいかんじに同期させたいです。
カウントダウンやタイマー
時計アプリといえば、日数のカウントダウンやタイマー機能などが付帯していることが多いです。
これらの機能は昔から実装してみたいなと考えていました。
まともな時刻同期
小数点以下も考慮した時刻同期を実現します。
進捗報告
実装済みの機能
時計の表示(仮)
まだ実装にはなりますが、最低限の表示はできるようになっています。
時刻同期についても、小数点以下を考慮してだいぶ正確になりました。


フライアウトメニューの表示
Avaloniaベースで作成しているため、以前よりもリッチな見た目にできるようになりました。
アイコンはSVGパスを使って描画しているため、高DPI環境でもくっきり表示されます。

設定画面の基礎
Windows11のデフォルト設定アプリとかでよく見る感じのUIになります。
設定項目などの詳細は全く詰められてないのでこれからです。

未実装の機能
EEWの受信処理
今後Quarogなどにも流用できるようなまともな受信処理をそろそろ作りたいと思っています。
設定の保存処理
「保存」ボタンとかを省略し、リアルタイムに設定変更が反映されるようにする予定です。
テーマカラーの自由な設定
各カラーの配置をルール付けして、良い感じに編集できるようにしたいと考えています。
日の出・日の入り同期
日の出・日の入りの前後1時間はこのテーマにするなど、細かく設定したいと考えています。
カウントダウンやタイマー
数年前に実装して欲しい機能として要望があったもので、実現したいなと考えています。
ウィンドウタイトルの表示・非表示
これも過去に要望があったもので、純粋に時計部分だけが表示できるような設定を用意したいと考えています。
さいごに
ここまで読んでいただきありがとうございました。
今年は昨年よりもさらに何もできていない1年になってしまいました。
この世にはおもしろいゲームが多すぎる!!(敗因)
今年度、私生活の環境が変わる予定だったのですが、なんやかんやであまり変わっていませんでした。来年度は100%変わるため、どこまで進められるかは不透明です。
脳内で妄想はいろいろしているため、あの手この手で実現したいきたいです。
(アプリ名も変更すると思います。)
アンケートご協力のお願い
下記Google Formにて、Clock For FukuおよびQuarogの今後の実装要望等についてアンケートを実施させていただきます。
今までまともな形式で聞いたことがなかったため、今後の実装順位などを把握するためにできるだけ多くの意見を伺いたいです。
お手数ですが、ご協力いただけますと幸いです。
Clock For Fukuのアンケート
Quarogのアンケート
自作ソフトを進化させようとした&2024年の振り返り
この記事は「防災アプリ開発 Advent Calendar 2024」の15日目の記事です。
はじめに
5年連続でこんぽ様主催のアドベントカレンダーに参加させていただきます。
好きなおにぎりの具はツナマヨと鮭です。どっちもド定番!
毎年12月中旬で参加していますが、結局ギリギリの執筆になっており、もれなく今年もそんな感じですがご了承ください。
この記事は、以下の構成になっています。
- 自作ソフトQuarogに活用すべくAvaloniaを触ってみた
- 今年の振り返り
- 来年(今日以降)の目標
制作しているアプリの進捗
この記事は、「防災アプリ開発 Advent Calendar 2023」17日目の記事です。
16日目はあめうまさんの記事「これまでの地震ソフト制作をまとめてみるでした。
明日18日目は、福岡市のとある地震観測者さんの記事です。
2022年のQuarog
この記事は、「防災アプリ Advent Calendar 2022」15日目の記事です。
続きを読む1年をかけたアプリの制作 - Quarog
この記事は地震情報アプリ界隈 Advent Calendar 2021 - Adventarの18日目の記事です。
この記事では私のアプリ制作のこれまでの経緯と、昨年から制作しているQuarogというアプリケーションについて書かせていただきます。
※書きたいことを詰め込みすぎたため、かなり長いです。予めご了承ください。
