Travel Currency Converter という Android アプリを作って公開したので紹介します。
https://play.google.com/store/apps/details?id=jp.loumo.currencyconverterTravel Currency Converter とは
Android 向けのシンプルで使いやすい通貨換算アプリです。通貨換算アプリは海外旅行、特に普段使わない通貨を利用している国へ行く際に必須となる重要なアプリです。
以下のような特徴があります。
- 150以上超える通貨、国、地域に対応
- 最大3つ(プロバージョンでは5つ)まで同時に通貨を表示可能
- 現在地から通貨を自動的に取得可能、オフラインでも可
- テーマを二種類から選択可能
開発の経緯とか
自分もこのアプリを作成する前は Google Play にある他の通貨換算アプリを利用していたのですが、以下のような問題点がありました。
- 通貨の指定を手動で行わなければいけない
- 見た目や UI が好みで無い
通常スマートフォンには GPS を用いて位置情報を取得できるのでそこから国を判別できれば通貨も取得できるはず、と考えていたのですがこれを実装しているアプリは殆どありませんでした。開発終盤に一つ発見しましたが、オフラインでは通貨の取得機能は利用できません。恐らく GPS 座標から国への変換を Google Maps API 等ネットワーク頼みにしているからでしょう。
しかし、通貨換算アプリというのは主に海外旅行中に利用するものです。海外旅行の際は必ずインターネットに接続できるというわけではありません。
なのでその機能を持った通貨換算アプリを作る事にしました。
このアプリではオンライン時は Google Maps API もしくは GeoLite2 を、オフライン時にはローカルに保存してあるデータにアクセスする事でネットワークの状態に関係なく現在いる国を判別し、通貨を変更する事が可能です。
しかし、開発終盤に気づいてしまったのですが、オフライン時の位置情報の取得には時間がかかるという大きな問題があります。これはオフラインでは A-GPS が利用できない為に衛星からの通信を待たなければいけないからです。これをアプリ側でどうこうするのは難しい問題です。一つ回避方法を考えてますが実装に非常に手間がかかるので悩みどころ。
見た目に関しては好みの外観,UIのものが無かったのと、テーマを変更できる通貨換算アプリがあまり無かったので実装してみました。といってもライトテーマとダークテーマの二種類のみですけど。色変えるだけなのでもっと増やしても良いかもしれません。
通貨の同時表示数が無料版で3つまでなのは、2つの通貨が流通している国での利用を想定しています。例えばカンボジアやミャンマーでは現地通貨であるカンボジア・リエルやミャンマー・チャットとUSドルがどちらも利用可能です。それらに加えて母国の通貨(自分の場合は日本円)を表示できれば問題ないだろうという考えです。
それ以上必要ならプロ版を購入すると5個まで表示できるようになります。ついでに広告も表示されなくなります。買ってください。
動作確認は Nexus 5(Android 6), Nexus 5X(Android8), Moto G5 Plus(Android7) とエミュレーターで行いました。
というわけで宜しくお願いします。
-- これ表示しないといけないらしい
この製品には MaxMind が作成した GeoLite2 データが含まれており、http://www.maxmind.com から入手いただけます。