AndroidでToDoアプリを作ってみた


はじめに

Yarulist for Todo.lyはAndroid版のTodo管理アプリです。Todo.lyはTodo管理するサービスです。Todo.lyはWeb,iOSアプリ,Androidアプリ(非公式)があります。また、Web APIが公開されており、アプリからWeb API経由でTodoを閲覧、追加、更新、削除等を行うことができます。

つまり、Yarulist for TodolyはTodo.lyのWeb APIを使用したAndroidアプリです。また、ソースはGitHubのここにあります。

アカウント作成

Todo.lyのWebページからe-mail,フルネイム,パスワードを入力し、アカウント作成していください。

ビルド

JDK 1.7, Android Studio 1.0以上が必要になります。ビルドツールにはgradleを使用しています。インストールするAndroid端末をMacにつなげ、ターミナルから次のコマンド実行してください。

$ ./gradlew installDebug

ビルド後、Android端末にインストールします。

ログイン

アプリを起動するとemailとパスワード入力画面になります。emailとパスワードを入力後、ログインボタンをタップして下さい。認証が完了するとやることが表示されます。

やることの閲覧

Todo(やること)はプロジェクト毎に管理されています。タブでプロジェクトを切り替えることができます。完了したやることはチェックボックをタッチすることにより、完了することができます。
また、「完了したやることを表示」により完了したやることを表示することもできます。

やることの追加

画面上部のやることをタップします。ソフトキーボードからやることを入力し、エンターをタップするとやることが選択中のプロジェクトに追加されます。

やることの編集

やること一覧から編集するやることをタップします。編集画面に遷移します。例えば、トマトをタップするとトマトの名称を編集することができます。

プロジェクトの追加

画面上部の[+]アイコンをタップします。プロジェクト追加画面に遷移します。プロジェクトの追加は、Webサーバにプロジェクトの追加を通知し、プロジェクトを追加します。

同期

画面右上の同期アイコンをタップします。アプリとサーバのデータを同期します。内部では、やることの操作を変更履歴として管理し、同期時に変更履歴をWebサーバに通知後、やること情報を再度取得します。

使用ライブラリ

使用しているライブラリについて説明します。

  • OkHttp HTTPの通信に使用しています。
  • Retorofit REST操作に使用しています。
  • RxJava 通信などの非同期処理に使用しています。
  • ButterKnife Viewのインスタンスの割当に使用しています。
  • Gson JSONへの符号化と復号化をします。
  • Material-design-icon アイコンに使用しています。

終わりに

Todo.lyにはプロジェクト以外に本日、週などフィルター、期限設定などの項目があります。これらの実装していない機能をYarulist for Todo.lyに拡充していけたらと思います。