2011年5月4日水曜日

iPhoneのWinterBoard用テーマで天気のロケーションを設定する方法まとめ(要JB)

iPhoneをJBした人は多かれ少なかれWinterBoardを入れて
いろいろなテーマで見た目をカスタマイズしたいと思う。
そのために
ithemesky.com
なんていうようなページでいろいろなテーマが配布されているのだが、
こんなのとかこんなのでは、以下のようにロック画面に天気が表示されるという素敵なことができる。


だが、どうやって表示される天気を自分の住んでいるところにすればいいのか手こずったのでまとめておく。

WinterBoardにテーマを入れる方法はいろいろなところで紹介されているので省く。
ただi-Funboxとか使ってRawファイルシステムの/Library/Themeの下に落としてきた
テーマフォルダごと突っ込めばよいだけ。

※以下の内容は全てこうやればよいというものではないのであしからず。

まず、WinterBoardのテーマは基本的にhtmlファイルで構成されているようだ。

ロック画面の設定 → LockBackground.html
ホーム画面の設定 → Wallpaper.html
という具合。

そして、天気に関する情報はこれらのファイル内で
以下の変数名で設定されている。

天気データの取得先の設定 → source
天気を取得する場所の設定 → locale
(摂氏[゜C] or 華氏[゜F] → isCelsius)

よってこれらの変数を指定してやれば、
自分の住んでいる場所の天気が取得できる。

設定項目を含むファイル

上記の設定項目を含んでいるのは必ずしも同じではない。
作成者によって書き換える場所が違うのでややこしいが、
まとめると天気関連の設定項目記述はだいたいこの3パターンになる。

  • LockBackground.html(またはWallpaper.html)
  • 別途作られたjs拡張子のconfigファイル(configure.jsやConfigureMe.jsなど)
  • LockBackground.html以外のhtmlファイル(Weather.htmlなど)

基本的にこの中のどれかのファイルにおいて上記の変数を設定すれば良い。
ただ、例外もあり、「Analock HD iPhone 4 theme」というテーマだと以下のように
LockBackground.htmlの中で、変数localeに入れるのではなく
<location>というhtmlタグの中に直接都市名を記述していた。
まぁ例外的なものは頑張って自力で解決しよう。
sourceとlocaleの設定方法

天気データ取得先は基本的に以下のどちらかから行う。
  1. AccuWeather.com
  2. Yahoo!News Weather
AccuWeather.comから取得したいときは上記の変数を以下のように指定してやる。
var source = 'appleAccuweatherStolen'
var locale = '都市名, 国名'
localeは記述されている付近に例が記述されていると思うが、
東京 → var locale = 'Tokyo, Japan'
といった感じ。
AccuWeatherに登録されていれば良いので
'Mitaka, Japan'(東京の三鷹市)みたいな指定も可能。


Yahoo!News Weatherから取得したいときは以下のように指定してやる。
var source = 'yahooWeather'
var locale = '都市コード'
都市コードはYahoo!News Weatherのサイトで都市名を調べ、
ページ内にある「Records and Averages」を調べたときの
アドレスに含まれる文字列である。
東京 → var locale = 'JAXX0085'
詳しい調べ方の詳細は以下のサイトを参照のこと。
Weather Yahooで都市コードを調べる方法

これでうまく設定されていれば天気を取得できる。
Stock Modified HD iPhone 4 theme」でやってみたら下のような感じになった。


0 件のコメント:

コメントを投稿