Wednesday, June 4, 2014

SDカード、GoogleDriveの曲選択画面をリファクタリング中

次はDropbox対応をする予定です。
そのためには、いまあるプログラムを流用しやすくするためクラスの設計の見直しをしなければなりません。
理想としては、ファイル選択系の画面、メディア選択系の画面で派生します。
SDカード、GoogleDriveはファイル選択系です。
この2つはローカル上のファイルか、ストリーミングのファイルの違いがありますので流用できる箇所はファイル選択画面のUI部分だけなのですが、
Dropboxの場合は、GoogleDriveにかなり近いため流用箇所が多くなります。
大きな違いとしては、GoogleDriveはファイルストリームの取得が専用のHttpRequest、HttpResponsを使うのに対し、Dropboxは標準のHttpアクセスをつかうことになる点でしょう。
だから、Dropbox対応が完了すれば、他のBox.Net、SkyDrive、OwnCloud等の対応はたやすくなるとおもいます。
なので、ファイル選択系の画面はDropboxで一旦終了する予定です。
その後は、メディア選択系の画面の実装になります。
こちらは実ファイルのフォルダの情報を公開はしてなく、アルバム、アーティスト、メディアのように各メディアの検索をサポートしているデータになります。
対象になるのはローカルのメディアストア、あとAmpacheですね。
Ampache対応をするのであれば避けては通れない実装になります。
作り込みも多いのでけっこう時間がかかるとおもいます。

あと地味ですが、曲の先送り、巻き戻しの指定でIndexに1をプラスして移動していましたが、今後、ストリーミングがキャッシュされていないメディアは除外するといったオプションを追加する予定ですので、1をプラスではなく次に大きい、あるいは次に小さいというような指定の仕方に変更しないといけないです。
地味だけど、SQLの組み立てが面倒くさくなるので面倒くさい実装になりそうです。


No comments:

Post a Comment