How to RS Station - 天気予報について

  • 投稿:
  • 更新:2018年3月29日
  • by
  • in

iOS/Android版共にv1.1.xから道の駅の天気予報を表示できるようになりました。
当日の深夜0時からの7日分1時間毎の、天気、気温、湿度、降水量、雲量、風向きと風速を表示できます。気温はランゲージが日本語の場合は(℃)それ以外では(℉)で表示します。また風速は日本語なら(m/s)毎秒、それ以外だと(mph)マイル毎時で表示します。 p4_2_jp.png

天気情報を表示するには、道の駅の詳細画面を表示して「天気」アイコンをタップするだけです。

この天気予報は「World Weather Online」(以下WWO)の有償データを利用しています。データの利用に制限があるため、現在(2018/3月の時点)は以下のような運用で予報を表示しています。

ある地点(道の駅)の天気予報のリクエストがあるとサーバのキャッシュを確認します。当日で且つ4時間を経過していない場合は既存のキャッシュされた天気予報を返します。新規もしくはキャッシュが4時間を経過しているとWWOに最新データをリクエストします。
つまり、誰かが最初にリクエストした時点が、そのデータのキャッシュの起点になるので、データ個々にキャッシュのタイミングは違ってきます。
天気予報画面のTOP部分に「xxxxx時点の予報」としてキャッシュした時間を明示しています。

他の天気予報と違うんじゃない?
って、たまに質問されますが、予報業務の許可事業者(「Yahoo!天気」「goo天気」「Mapion天気予報」等々)はたいてい「気象庁」か「日本気象協会」のデータをソースとして利用しているようです。これらのサイトが予報をしてるわけではありません。
JJworkshopで作成しているアプリも同じように予報しているわけではなくて、予報されたデータを正確に表示しているだけです。
つまり、データソースが違うので気象庁の予報とは異なる場合があるわけです。
気象庁も予報の確率についてサイトに掲載していますが、あくまで予報なので外れることもあります。
いくつかのデータソースを確認しみて、旅行などの計画を立てるのが良いかと思います。

何故、気象庁のデータを利用しないかというと、技術的には目的としてるAPIが提供されてないからで、APIに加工されたデータは有償で提供されていたりしますが、使用するのにバカみたいに高くて、そちらはコストの問題があるからです。 WWOのデータは年間で数万とはいえ、それらに比べればかなり良心的な価格だしアプリの利用目的にマッチしたAPIを備えているんです。

遅ればせながら

このウェブサイトを常時SSLにしました。
この手の面倒なやつは、つい後回しにしちゃうんですが、やってみれば何のことはない、いたって簡単で、Movable Type の設定を幾つかとサーバに設定をちょこっと変更するだけ。サイトの再構築を含めても30分で終わっちゃいました。

あとはそのうちアプリで使ってるAPIも https に変えていこうかと思います。
もっともサーバでリダイレクトしてるので、通信そのものは既にSSLになってると思うけどね。

How to RS Station - 一覧表示について

  • 投稿:
  • 更新:2018年3月15日
  • by
  • in

rss_howto_06.png

一覧表について少し補足の説明をしておきます。iOS/Android共に同じなのでiOSの画面にて説明します。

一覧表示はフィルターが適用できます。①のボタンをタップすると検索フィルターの設定画面になるので絞込の設定ができます。フィルターについてはマニュアルを参照下さい。

①のボタンが赤色になっている場合は何かしらのフィルターが設定されている状態です。未設定の場合は白色のボタンになっています。

②の部分をタップすると、その道の駅を選択した状態になり③のボタンが現れます。選択は複数設定できます。もう一度タップすると選択解除になります。画面下部に選択している件数を表示しています。 ③のボタンをタップするとマップ画面に戻り、選択した道の駅のみをピンで明示します。

一覧表示のデータは直近でタップ(②も含む)した一覧アイテムの位置を記憶しています。なのでマップ画面から再度一覧表示に戻ったときに、記録しているリスト位置に自動で一覧を移動します。
これは、一覧リストのアイテムをタップしてマップで道の駅を確認するときに、マップと一覧を何度か行き来しても便利なように、そのような仕様にしています。
フィルター条件を変更すると記憶した一覧アイテムの位置はクリア(先頭に)します。

一覧のアイテムをタップしてマップ画面ではなく、その道の駅の詳細画面を直接表示したい場合は、アプリの設定の④をONにして下さい。
デフォルトではOFFになっており、詳細画面を表示するにはマップ画面から対象の道の駅の吹き出し説明(ピンをタップで表示)をタップして詳細画面を表示します。

④をONに指定している場合に、一覧から選択した道の駅をマップに表示したい場合は③のボタンを利用して下さい。

How to RS Station - 経路検索

  • 投稿:
  • 更新:2018年3月13日
  • by
  • in

「全国の道の駅を検索 - RS Station」アプリはマップアプリ(GoogleやAppleの「マップ」アプリ)と連携して経路検索(ナビゲーション)ができます。
他で優れているアプリがあるなら、あえて自前で実装するよりは、上手く連携して使った方がユーザーエクスペリエンスが向上すると思うからです。そこに注力を注ぐよりは、本来の目的にフォーカスし、より使いやすくデザインする方がベストだと考えます。

と、口上はこれくらいにして(笑)

iOS版 + Googleの「マップ」の場合、詳細画面のマップボタンをタップすると Googleの「マップ」アプリが起動します。目的地にピンが立っているので下部の「経路」ボタンをタップするとナビゲーションが始まります。
Googleの「マップ」をデバイスにインストールしている場合はこちらが優先になります。

rss_howto_03.png

iOS版 + Appleの「マップ」の場合は下記の通りです。こちらは1タップだけで経路検索の画面までジャンプします。
(Googleの「マップ」をインストールしていない場合)

rss_howto_04.png

Android版はGoogleの「マップ」のみとの連携になります。オペレーションは iOS版と同じです。

rss_howto_05.png

ちなみに、詳細画面のマップボタンに表示している数値はマップコードになります。スクリーンショットでは「23 386 010」の数字です。
マップコードはデンソーが開発した地図上の位置を簡単に特定できるコードナンバーのことです。
ご利用しているカーナビゲーションがマップコードによる位置指定ができる機種の場合、このコードをナビに入力すると目的地までナビゲーションできます。
ご利用のカーナビがマップコードの「*」アスタリスク以下を入力できない場合は、その前までの数字でナビゲートできると思います。
「RS Station」の全てのデータにマップコードを付与しています。

How to RS Station - 道の駅スタンプラリー

  • 投稿:
  • 更新:2018年3月12日
  • by
  • in

実はアプリをリリースするまでは知らなかったのですが、道の駅のスタンプラリーってのやってて、年度の変わり目で終わるのもあるし、新しく始まるのもあるようです。
もともとメモ機能は「RS Station」にあったのですが、週末に少し改良し、このスタンプラリーの訪問記録も簡単に付けられ、またマップでも明示できるようにしておきました。
以下簡単な使い方です。

rss_howto_01.png

iOSの場合は、メモ欄でソフトキーを表示したときにアクセサリーボタンとしてスタンプボタンを用意しました。タップするとメモにタイムスタンプを残します。メモは自動で保存します。次にマップでそのピンを表示したときには色を変えて明示します。
この機能は v1.0.1から利用できます。

rss_howto_02.png

Androidの場合は、メモ欄にフォーカスがあたるとメモ欄の上にスタンプボタンを表示します。後はiOS版と同じです。
この機能は v1.0.3から利用できます。

スタンプラリーをやってる方は利用してみて下さい。
一応誤解の無いように書いておきますが、このスタンプをアプリでマークしたからといってスタンプを押したことにはなりません。スタンプラリーへの参加方法については、道の駅の公式ページを参照して下さい。

How to RS Station - 近くの道の駅を探そう

  • 投稿:
  • 更新:2018年3月 8日
  • by
  • in

下記で紹介するいずれの方法でも、設定でアプリの位置情報を許可にしておいて下さい。
アプリインストール後の初回の起動で確認のダイアログが出るので、既に許可してあれば問題ありません。
もし拒否した場合:
iOSの場合は「設定>プライバシー>位置情報サービス>RS Station」から位置情報の取得を許可して下さい。
Androidの場合は「設定>アプリ>RS Station>許可」から位置情報の設定をONにして下さい。

how_to_rss_0101.png

まずはスタンダードな方法です。アプリの設定をなにも変更してない場合はこの方法になります。
①のGoogle「現在位置表示」ボタンをタップします。iOS版は上記スクリーンショットのように右下にあります。Androidは右上になります。
次に②のセンターマークをタップします。
これだけで半径50Km以内の道の駅を探してマップにピンを立てます。

how_to_rss_0102.png

次は、設定を変更して更に手間を省く方法です。
まずは、アプリの設定から「現在地ボタンタップで自動検索」をONにします。
この設定がしてあれば、①のGoogle「Myロケーション」ボタンをタップするだけで現在位置に移動してその位置から半径50Km以内の道の駅を探して明示します。

いずれか好みの方を利用して下さい。
後者を選択した場合は、センターマークタップで近くの道の駅を検索する前者の方法は利用できなくなります。現在位置よりはマップを移動しながら探す方が多い場合は前者の方が便利だと思います。

補足:
「現在位置表示」ボタンは、位置情報の取得が許可されていない場合は表示されません。
位置情報取得は状況によってタイムラグがあります。表示されない場合はしばらく待つか、見通しの良い場所に移動してから試してみて下さい。

全国の道の駅を検索 - RS Station for iPhone リリース!

  • 投稿:
  • 更新:2018年3月 8日
  • by
  • in

hrs_promo_rss_ios.png

「全国の道の駅を検索 - RS Station」のiPhone版完成!
車中泊でサーフトリップするサーファーに便利なアプリ「全国の道の駅を検索 - RS Station」のiPhone版が完成しました。
地図から検索することも、施設の設備等を指定して検索することもできます。
2018/3月現在で1136件のデータを収録しています。
アプリからクチコミを書き込めば皆で情報をシェアすることもできます。
是非使ってみて下さい。もちろん無料です。広告の表示もありません。

↓アプリはこちらからインストールできます。

↓Android版はこちらから

全国道の駅検索 RS Station for iOS βテスト開始

  • 投稿:
  • 更新:2018年3月 7日
  • by
  • in

a_rss_ios_promo_01.png

会社の有給もだいぶ余ってるので、今日は休みにして、波乗りにも行かずに、のこりのアプリリリース作業をまとめてやってます。
AppleStoreへの申請作業も昨夜のうちにほぼ完了してて、数日テストして問題なければリリースする予定です。

この段階になっていきなり色々面倒くさくなるのはいつものことか…(笑)
なんとか寝ないで今日中に全て片してしまおう。
すでに眠いけど(-_-)゜zzz…

全国道の駅検索 RS Station for iOS 進捗

  • 投稿:
  • 更新:2018年3月 6日
  • by
  • in

IMG_9077.png

Firebase関連以外はすんなり作れたんだけど、案の定というか Firebase-Authenticationで結構ハマりまくりでした。
ネットでは簡単に使えますとか色々サンプルはあるんだけど、いざアプリとして実装しようとすると、簡単に接続するだけじゃなくてエラー処理やら接続へのタイムアウトやらのインプリメントの方が面倒で、言われてるほど簡単じゃなかったです…。

当初は出来合のUI「FirebaseUI」をカスタマイズしようとして実装してみたんだけど、意外にこのカスタマイズも面倒で、ボタンの影を消したり、コーナーのラウンドを変えたり、UIActivityIndicatorViewに余計な黒い背景が付いてるの消したりするだけでも数日かかりました。で、一応できたのがこんな感じです。
オリジナルのソースコードには全く手を付けずに、サブクラス化したViewControllerからボタン等のAppearanceを変更しています。

IMG_9078.png

がしかし、この「FirebaseUI」を使った実装では1つだけどうしても実装ができませんでした。
各プロバイダへのログイン後に「Firebase-DB」と関連づけてサインインするんだけど、その接続が一定時間(だいたい40分位)で切れちゃうんです。そうすると再接続しなければならないんですが、再接続するためのトークンやらアクセスキーやらが、この出来合のUIからは取得することが出来なくて(どっかに隠蔽されてるんだと思うけど)、結局このUIを使うのは諦めました…。
(´Д`) =3 ハァ…

で、気を取り直してUIをスクラッチで実装したのがこれ。

IMG_9080.png

もういっそまったく違うUIイメージにしちゃおうかと思ったのですが、あえてオリジナルに似せて実装してみました(笑)
各プロバイダでインプリメントがちょびっとづつ違うし、ネットで情報を漁るも、大抵は何かが足りなくて、やっぱ最後の頼みの綱は「stackoverflow.com」ですね。
おかげで、Facebook認証とTwitter認証でのオリジナルボタンを使わないで直接認証のコールバックをさせる処理とかはバッチリ実装できました。
これでタイムアウト(?)による「Firebase-DB」への再接続も自動で処理できるようになりました。

それにしても、連携して設定する情報がめっちゃ多くて、もう一度同じ事をやれって言われても、また同じようなとこでハマるハメになると思います(笑)

後、出来合のUIよりはアプリのサイズは小さくなるかと思いましたが、UIをスクラッチで作った物と比べても5MBytes程度しか違いませんでした。使うライブラリの数はそれほど大幅には変わらないんでそんなもんですかねぇ?

日本語へのローカライズ処理もだいたい実装できたので、あとは最終テストと申請関連をなんとかすれば、3月中にはリリースできそうです。

RS Station for Android 少し改善!

  • 投稿:
  • 更新:2018年2月23日
  • by
  • in

rs_station_and_102r12.png

週明け早々にアップデート(v1.0.2)をリリースする予定です。
GPSによる位置情報取得でバッテリー消費が多かったので、実装を変えて改善しました。そもそも設定で「現在値ボタンタップで自動検索」を有効にしないかぎりは位置を取得する必要がないので、無用に位置を取得するのを止めました。
他、iOS版で改善したUIをいくつか適用しました。
メモの記入位置を変更したり、フィルタ設定時に適用せずに戻る時にダイアログを出すようにしたりの細かな改善です。

UIの改善点としては、(メモですが)

  • 評価の★(リスト表示部分)の☆を削除
  • 詳細でメモは上に移動
  • 場所選択リストからのマーカー表示で少し地図を下にずらす(プルダウンと被るので)
  • フィルタ適用せずに前画面に戻る時にダイアログ通知、Zero件のときは非適用でショートメッセージ
  • 評価画面で送信せずに戻る時にダイアログ通知