[書籍フォローアップ] サンプル1,時計アプリはストアを通過するか(その2)

水曜日 , 27, 3月 2013 Leave a comment

 書籍「基礎から学ぶ Windowsストアアプリ開発」のフォローアップ記事です。

 前回、書籍のサンプルの時計アプリがストアを通過するかを試して見事に通過できませんでした・・・

 

 すみっこ時計というアプリで、書籍をお持ちの方は比べてみるとわかると思うのですが、真ん中に今日が過去に何が起きた日であるかを取得して表示しています。

 時計がすみっこに表示されているという意味で作り始めたのですが、真ん中に過去の出来事を表示しているためすみっこ感が無くなってしまいました。

 

002

 

 下のようにスナップも対応。

001

 

(クリックで拡大します)

 

 過去の出来事の取得には「今日は何の日」APIを利用させてもらいました。

 利用に制限はないが、都合で使えなくなっても知らないよというスタンスのAPIのようです。

 

 データの取得部分は以下、

 

            // 今日は何の日か取得
            var client = new HttpClient();
            var dt = DateTime.Now;

            var url = "http://www.mizunotomoaki.com/wikipedia_daytopic/api.cgi/" + dt.ToString("MMdd");

            try
            {
                var response = await client.GetAsync(url);

                var str = await response.Content.ReadAsStringAsync();

                if (str != String.Empty)
                {
                    
                    var results = XDocument.Parse(str).Element("feed").Element("kinenbi_detail").Elements("item");

                    foreach (var result in results)
                    {
                        var Event = new Event();
                        Event.title = (string)result.Element("title");
                        Event.description = (string)result.Element("description");

                        this._eventList.Add(Event);
                    }
                }
            }
            catch
            {
                // エラー処理
            }

 

 _eventListはObservableCollection<Event>型でデータバインディングでListViewに渡しています。

 殴り書きコードですが、foreachを使わずLINQに置き換えたりするとC#っぽいかも?

 

 ストアの審査の基準を判定するサンプルになれば。

 

 


Please give us your valuable comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください