すぱこみっく!ユニバースVer. 1.2.5とすぱーダVer. 1.0.8をリリースしました(+α)

こんにちはー!ニアです。

本日、すぱこみっく!ユニバース及びすぱーダの最新バージョンをリリースしました。

 

1. アップデート内容

  • すぱこみっく!ユニバース : Ver. 1.2.3 → Ver. 1.2.5
  • すぱーダ : Ver. 1.0.5 → Ver. 1.0.8
  • エクすぱーダ : Ver. 1.0.2 → Ver. 1.0.8
  • ユニすぱーダ : Ver. 1.0.2 → Ver. 1.0.8

すぱこみっく!ユニバースでは、主にパフォーマンスの改善です。

コミックビューのページとアプリ設定のページを破棄した時に、対応するViewModelがメモリ上に残り続けるバグがあったので、それを修正しました。

なお、この修正はアイコンフォントこれくしょんの最新バージョン(Ver. 1.2.4)にも施しています。

 

すぱーダでは、すぱこーRSSフィードの各話のデータを格納するSpacoRSSItemクラスに、引数付き及びコピーコンストラクターを追加しました。

後者は、派生クラスでSpacoRSSItemを引数に初期化するコンストラクターを定義する時、SpacoRSSItemの分を基底クラスのコンストラクターに任せることで、メンバーの初期化が派生クラスで追加したものだけで済むようになります。

 

2. すぱこみっく!ユニバースVer. 1.2.4及びすぱーダVer. 1.0.6での不具合について

実はVer. 1.2.5のリリース前に、Ver. 1.2.4を提出していたのですが、すぱこーRSSフィードの取得や表示ができないという、コンテンツとして重大な不具合がありました。

Ver. 1.2.4では、どうやってもこのエラー画面になっていました。

 

この不具合は、すぱこみっく!ユニバースで使用している、ユニすぱーダ Ver. 1.0.6で新規に追加したコピーコンストラクターでの初期化ミスが原因でした。

C#では、コンストラクターから別のコンストラクターを呼び出す時は、以下のようにコンストラクター初期化子(以下のコードの12行目にあるthisキーワードの部分)を使用します。

間違った方法の場合、コンストラクター内で有効なローカルなインスタンスを生成しているだけで、そもそもメンバーを初期化していない(厳密に言えば規定値で初期化している)のです。(コピーコンストラクターの意味ナス)

そのため、派生クラスでコピーコンストラクターを利用していたすぱこみっく!ユニバース Ver. 1.2.4では、RSSフィードのリストが正しく生成できていませんでした。

ただし、WebからRSSフィードを取得していた場合、ローカルファイルに書き込む前にエラーが発生するので、Ver. 1.2.3以前でローカルに保存済みのRSSフィードのデータには影響がありません。Ver. 1.2.5へアップデートすることで、そのデータを再び読み込むことができます。

 

現在では、その不具合を修正したバージョンがリリースされています。もし、すぱこみっく!ユニバースVer. 1.2.4及びすぱーダVer. 1.0.6をお持ちの方はお手数ですが、最新バージョンにアップデートをお願いします。

  • すぱこみっく!ユニバース : Ver 1.2.5をストアにリリースし、Ver. 1.2.4を置き換え
  • スパーダ : Ver. 1.0.8をNuGetギャラリーにリリースし、Ver. 1.0.6は削除

すぱこみっく!ユニバース及びすぱーダをご利用の方には、ご不便をおかけしたことをお詫び申し上げます。

 

なお、アイコンフォントこれくしょんに関しては、本不具合はありませんでした。

 

3. おわりに

何ともあれ、当日中にアプリの不具合を解決できてよかったです。

すぱこみっく!ユニバース Ver. 1.2.5では、Ver. 1.2.4を即急に置き換えるため、ユニすぱーダをVer. 1.0.2にロールバックしてリリースしましたが、最新バージョンのVer. 1.0.8でRSSフィードのリストを正しく生成できることを確認しました。次期バージョンからは新バージョンのユニすぱーダを入れようと思います。

それでは、See you next!

 

この記事をシェアする
Chronoir.netのRSSフィードを購読する

About : ニア(Nia)

紅茶とコーヒーが好きな湘南生まれのプログラマー/ITエンジニアです。主にC#/C++/PHPを使ってプログラミングをしています。趣味は写真撮影と音ゲーです。時々イラストを描いています。プログラミングを勉強している方々と仲良くなりたいです! 興味を持っている分野:UWP/Xamarin/Android Wear/WPF/Windows/Visual Studio/WordPress/KUSANAGI/nginx

コメントを残す

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

*