Androidアプリ「ワンタップ消音ウィジェット」開発記録

こんにちは。あんみつです。

先日リリースしたAndroidアプリ、
「ワンタップ消音ウィジェット」の開発記録をまとめました。

おさらい

前回記事はこちらです。

Androidアプリ「ワンタップ消音ウィジェット」リリースしました

今日は、開発する側向けの情報発信として、このアプリの開発に関する情報を簡単にまとめてみます。

開発期間

G.W期間中に構想~リリースまですべて行いました。

機能的にはさくっとしたものなので工程といえるほど細分化して時間を測っていなかったのですが、
作業時間でいうと大体16時間~24時間くらいだと思います。

ソースコード

GitHubで以下に公開してあります。

GitHub – anmtanmt/TapSilent

苦労したこと

前述のとおり非常に短期間の制作でしたのでそこまで重たいものはないのですが、
そんな中でもいくつか思い出に残っているものを挙げられるだけ挙げていきます。

人は忘れ行く生き物。。。

【仕様】当初構想からの変更

元々、このアプリの開発前の構想段階では、
「スマホをシェイク(振る)だけで音量をオフにできる」
を目指していました。

私自身、前回記事でいう利用シーンの②を電車内で経験したことがあり、
ささっとその場で振るだけで音量を落とせれば便利だな~なんて思っていたためなのですが、

どうも調べていくうちに、

センサー系イベントをActivityなしに受け付けるのは難しいのでは?
少なくともこの調査だけでGWが終わってしまう…

という状況となり、この技術的ハードルと時間的制約の二重苦から脱却するため、
やむなく「ワンタップで音量をオフにする」に仕様変更するというゴールに舵を切りました。

なんとかGW期間内でリリースまでこぎつけたので、この判断は良かったかな?と今となっては思っています。

【実装】透過Activityでの不具合発生からServiceへの方針変更

実はリリース直前まで、ウィジェットをタップしたあとに透明なActivity(画面)を起動して、
音量制御を終えた後ひっそりとクローズする、という設計思想で開発をしていました。

しかしそれでは、ホーム画面からタスク一覧を見たときに、
先ほどまで起動していた透過Activityが残ってしまうという仕様バグが後から発覚し、
Service起動に方針を切り替えました。

厳密には、OS 5.0から「Activity#finishAndRemoveTask()」という便利なAPIがあり、
Activityクローズ(終了)時にこのAPIをコールすればタスク一覧に透過Activityが残るという問題は未然に防げそうなのですが、今回4.1以降で動作させたかったのでこの方針は諦めました。(OS 5.0以降の端末でないと本APIはコールできない)

【試験】自分が持っていないAndroid OSバージョンでの評価

私は、Androidアプリ開発をしている割には、(当時)古いスマホしか持っていない…という体たらくでして、
OS 4.1.x以外のスマホでの動作確認ができませんでした。

アプリを開発する際は、PC上の開発環境以外にも動作検証端末の確保が必須ということを思い知らされました。

【リリース】アイコン

私みたいなソフト屋さんにとって永遠の課題…そうそれはデザインです。

開発コンセプトとして「さくっと出す」がある以上、あまり時間もかけられず、
今回は以下のアイコン提供サイト様にお世話になりましたのでご紹介します。

どちらも、クレジットさえ表記すれば公開可能な素材を提供してくださっております。

◆Icons8

種類が豊富で、同じテーマでも趣向の違うデザインのアイコンが複数あり、ありがたかったです。

Icons8

◆ICOOON MONO

タイトルの通りモノクロにこだわったアイコンがたくさん用意されています。

icooon-mono

おわりに

いかがでしたでしょうか。

アプリ開発に少しでも興味を持って頂けたら幸いです♪


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA