ひとりぶろぐ

価値ある情報をユーザー視点で発信するブログ

[JB]Yahoo! JAPANの雨雲ズームレーダーをiPhoneの通知センターに表示するNCRainRadar

      2013/09/13

出かけたときに現地の雨雲の様子を知りたくなった

ひとりぶろぐのmoyashi (@hitoriblog) です。

以前作ったiPhoneの通知センターに東京アメッシュを表示するウィジェットNCAmesh。

通知センターから素早く東京アメッシュを参照できると結構違うもので、「そろそろ雨が降るから帰ろう」、「もうすぐ雨がやみそうだから少し雨宿りしよう」といった判断が日常の中に定着しました。

ひとりぶろぐ » [JB]iPhoneの通知センターに東京アメッシュを表示するウィジェットNCAmesh

NCAmeshは東京アメッシュに特化したウィジェットで、東京近郊でしか役に立たないものでした。

最近、キャンプやらサイクリングで出かける機会が多くなり、特にサイクリングの最中には現地の雨雲の様子が確認したくなります。

それができるウィジェットを作ろうと思い立ったのでした。

折りたたみ自転車のBROMPTONなら、雨雲が迫っていたら最寄りの駅からエスケープしてしまえるので、雨雲の形や、雲がどちらからどちらに流れているのか素早く確認できると案配がいいでしょう。

Yahoo! JAPANの雨雲ズームレーダーを通知センターに

東京アメッシュは東京近郊にしか対応していないので、全国に対応した雨雲レーダーはなかろうかと探して見つけたのが、Yahoo! JAPANの雨雲ズームレーダー。

雨雲ズームレーダー – Yahoo!天気・災害

雨雲ズームレーダーは東京アメッシュと異なり、過去から現在のみならず、未来の雨雲の様子をも予測して表示できます。

APIがあるので、これを利用したウィジェットを作ることにしました。

雨雲ズームレーダーは、通常のアプリではYahoo!地図(Y!地図)で確認できます。

Yahoo!地図 App
カテゴリ: ナビゲーション
価格: 無料

画面下の地図変更ボタンを押し、雨雲スイッチをオンにすれば地図上に表示されるようになります。

Screenshot 2013 09 06 03 24 02

NCRainRadar

今回作ったのがNCRainRadar。

Yahoo! JAPANの雨雲ズームレーダーを通知センターに表示するためのウィジェットです。

綴りの最後は「der」でなく「dar」

歯止めのかけようもなさそうですが、「Rader」でなく「Radar」です。

レーダー – Wikipedia

設定項目

NCRainRaderをインストールすると「設定>NCRainRadar」が出現します。

Screenshot 2013 09 13 03 12 18

Enableをオンにして初めて地図表示が位置情報連動となります。デフォルトではオフです。

Screenshot 2013 09 13 03 12 26

Continuous Updateがオフの状態では最初に位置情報を地図表示に反映した時点で位置情報の使用を停止しますが、Continuous Updateをオンにすると、NCRainRadarを表示している間ずっと位置情報の反映を続けるようになります。

位置情報使用の許可と表示位置への反映

初回表示時には位置情報利用の許可を得るダイアログが出ますのでOKボタンを。

Screenshot 2013 09 06 01 25 08

表示からワンクッション置いて、地図は現在位置が中央になるはずです。

最新の表示位置がキャッシュされて、次回の初期値になります。

現在位置には赤い印が打たれます。

位置情報がうまく反映されない場合は「トラブルシューティング: 位置情報がうまく反映されない場合はの項をお読みください。

雨雲の自動アニメーション

現在位置を中心にした地図、そして雨雲ズームレーダーが表示され、自動的に雨雲のアニメーションが開始されます。

Screenshot 2013 09 06 03 29 42

現在時刻の約15分前から現在時刻、そして未来に向かってのアニメーションになっています。アニメーションの最後、即ち予測データの最後までいくと現在時刻の約15分前に戻ってアニメーションが繰り返されます。(この辺はmoyashiの実地試験の後に予告なく調整する可能性あり)

表示させっぱなしにしておくと、5分後にデータが新しいものに更新されます。

ジェスチャー操作可能なことによって生じたデメリット

以降ジェスチャー操作に共通したことですが、NCRainRadarをジェスチャーで操作できるようにしたことにより、NCRainRadar上をドラッグしても通知センターをスクロールできないデメリットが発生しています。

NCRainRadarの左右の端のキワのところを上下にドラッグするとスクロールができるようです。

ピンチ操作、ボタン操作によるズームレベルの操作

ピンチ操作、ないしは地図の左上にあるボタンを押すとズームレベルを変更できます。変更したズームレベルは次回表示時にも維持されます

Screenshot 2013 09 06 14 12 27

Screenshot 2013 09 06 14 12 59 1

あまりズームしすぎると(言っても確認のしようがないけれどズームレベル15以上)雨雲ズームレーダーが表示されないので、雨雲が表示されないと思ったらズームアウトしてください。

ドラッグ操作による地図のスクロール

地図上をドラッグすると、地図のスクロールができます。

Screenshot 2013 09 06 14 12 27

Screenshot 2013 09 06 14 12 43

設定のEnabledがオンの場合は、地図をスクロールしても、次回表示時には現在位置が中央になります

現在位置とは無関係な表示位置の固定は、設定のEnabledをオフにするとできます。

Yahoo!地図の起動

画面右下のYahoo! JAPANのロゴをタップすると。

Screenshot 2013 09 06 14 12 59 2

Yahoo!地図が起動します。

Screenshot 2013 09 06 14 13 19

Yahoo!地図がインストールされていない場合はApp Storeに飛びます。(続きは[Read More]から)

NCRainRadarの通知センターへの登録

NCRainRadarをインストールすると、「設定>通知>NCRainRadar Widget」が出現します。

Screenshot 2013 09 06 03 29 09 1

NCRainRadar Widgetのスイッチをオンに。

Screenshot 2013 09 06 03 29 16

好みで表示順を変えます。

Screenshot 2013 09 06 03 29 32


トラブルシューティング: 位置情報がうまく反映されない場合は

位置情報使用許可のダイアログが出ず、位置情報が反映されないケースがあるようです。次の操作で回復する場合があります。

  • リスプリング
  • 次の手順を踏襲:
    • 「設定>プライバシー>位置情報サービス>位置情報サービス」(以下「位置情報サービス」と称する)をオフ
    • EnableをオンにしたNCRainRadarを登録した通知センターを引き出す
    • 「設定>プライバシー>位置情報サービス>位置情報サービス」(以下「位置情報サービス」と称する)をオン
    • EnableをオンにしたNCRainRadarを登録した通知センターを引き出す
  • 「設定>一般>リセット>位置情報とプライバシーをリセット」を実行

Screenshot 2013 09 06 13 56 44

最後の「設定>一般>リセット>位置情報とプライバシーをリセット」は、住所録や位置情報使用の確認ダイアログがすべてのアプリでまた出るようになるので影響が大きいといえます。最後の手段です。

PMP (Protect My Privacy)インストール時のトラブル

前項に含まれるものですが、目立つように項目を分けておきます。

@orino さんからの情報です。PMP (Protect My Privacy)がNCRainRadarの動作に悪影響を与える話です。

Protect My Privacy – 連絡先・位置情報など情報・機能の使用を禁止&偽装する [JBApp] | Tools 4 Hack

https://twitter.com/orino/status/376222346396196864 https://twitter.com/orino/status/376222625153839105 https://twitter.com/orino/status/376237237945380864
  • PMP (Protect My Privacy)をインストールしていると位置情報使用許可のダイアログが出ず、位置情報が反映されない
  • 「設定>一般>リセット>位置情報とプライバシーをリセット」をするとダイアログが出て、位置情報が反映されるようになる
  • リスプリング、リブートするとまた位置情報が反映されなくなり、位置情報使用許可のダイアログは出ない
  • 「設定>一般>リセット>位置情報とプライバシーをリセット」をするとダイアログが出て、位置情報が反映されるようになる

PMP (Protect My Privacy)をインストールしている人は、NCRainRadarを使うに当たりリスプリング、リブートのたびに「位置情報とプライバシーをリセット」が必要ということになります。必要に応じて対処してください。

前述の通り、「設定>一般>リセット>位置情報とプライバシーをリセット」をやると、位置情報使用許可のダイアログが位置情報を使用する局面でまた出るようになるので、OKボタンを押して回ることになります。

免責

NCRainRadarは無保証、無サポートです。自己責任でお使いください。

動作確認環境

iOS 6.1.2 / iPhone 5

履歴

  • 1.6-2 2013.09.13 設定パネルのEnableが初期状態でオンになっていたのを修正。一度スイッチを操作しないとオンにならない状態不一致が起きていました
  • 1.6-1 2013.09.13
    • 位置情報取得の方法をJavaScriptを使ったものからObjective-Cによるものに変更
    • 設定パネルを追加
    • 位置情報を反映させる/させないの選択、位置情報を継続的に反映させる/させないの選択ができるように
  • 1.5-1 2013.09.11 地図が表示されなくなっていた不具合を修正
  • 1.4-1 2013.09.11 位置情報をいったんオフにすると保持した位置がリセットされるので、リセットされないよう保持の方法を変更
  • 1.3-1 2013.09.09 位置情報が反映できない一部の環境向けに、手動で合わせた位置を保持できるように
  • 1.2-1 2013.09.09 safe-modeが出る環境があるようなので、WebViewの開放方法を若干変更
  • 1.1-1 2013.09.09 通知センターを閉じたときにWebViewを開放するように。スクロールアウトさせたときにリロードが起きないように
  • 1.0-1 2013.09.06 初版

インストール

いつもの New野良リポジトリ をCydiaに登録後、以下のリンクをタップしてインストールしてください。

インストールするとリスプリングを促されるので、リスプリングします。「設定>通知>NCRainRadar Widget」を必要に応じて設定してください。

NCRainRadarをCydiaからインストールする

Amazonで買い物してく?

 - iPhone, Jailbreak