2013/02/27(水)Androidの音楽プレイヤーアプリ「LISNA」を公開しました。

2013/02/27 15:22 開発日誌
Google Playにて、Androidの音楽プレイヤーアプリ「LISNA」を公開しました。

LISNA - Google Play

音楽プレイヤーアプリなどすでに山ほどあるわけですが、いまいち使いやすいものがなかったので自作しました。
売りは、フォルダツリーです。
PCのエクスプローラのようにフォルダのツリー構造を辿って音楽ファイルを再生できます。PCでフォルダごとに音楽ファイルを整理していたような方に特におすすめです。

20130227.png


エクスプローラ上で音楽ファイルをタップするとその場で再生が始まります。画面遷移しません。一画面で完結しているので非常にわかりやすい構造です。
再生順序の設定やBluetoothの設定までワンタッチで呼び出せます。

巷のアプリは再生が始まると再生画面に遷移するものが多いのですが、あのUI設計は面倒だと思うんですよね。しかも狭いスマホの画面でわざわざジャケット画像が画面の大半を占めてたりして、ジャケット画像なんていらんての。そもそもジャケットデータ持ってない場合のが多いし。
あと、フォルダ構造より曲名やアーティスト名で自動分類するタイプの方が多い。最近はフォルダ管理できるものも増えましたが、昔はそもそもフォルダ管理できなかったりして、人がフォルダで整理したデータを勝手に分類し直すんじゃねーよとか思ってました。

なんか愚痴みたいになりましたが、でも今回作ってみてわかった。
Androidは音楽データを勝手に独自のDBに登録しておく構造になっていて、フォルダ構成を無視して作るほうが作りやすいんですね。だからああいうのが多いのか。
フォルダツリー実現するの意外と難儀でした。

でも自分で作ってみてやっぱフォルダツリーは便利だなーと思いましたよ。
おすすめです。

というわけで、音楽を手軽に再生することに特化したアプリです。
どうぞご利用ください。

LISNA - Google Play

2013/02/08(金)phpmyadminでinformation_schemaをクリックするのが危険過ぎる

2013/02/08 17:41 覚え書き
MySQLには内部管理用のinformation_schemaというデータベースがあるが、phpmyadminを使ってる時にこのデータベースを選択すると、非常に重いクエリが走り、あらゆるクエリを受け付けなくなってMySQL全体がフリーズしたようになってしまう。

管理情報を取得するためにデータベース全体にロックがかかるのかもしれない。
詳しい理由はよくわからないが、とにかく間違ってクリックしただけで問答無用でフリーズするので危険過ぎる。

というわけで、クリックしないよう、そもそも表示しないようにした。

phpMyAdminのconfig.inc.phpに下記を入れるだけです。
$cfg['Servers'][$i]['hide_db'] = '(information_schema)';

下記を参考にしました。

■phpMyAdmin で information_schema と test を非表示にする方法
http://www.hxp.jp/blog/2013/01/26/phpmyadmin_information_schema_test/

この件、調べても困ってる人いないんだけどうちだけなのかしらん。
データ量が多いからか?

2012/10/07(日)Androidブラウザでautofocusを使うとタップのたびにフォーカスされてしまう?

2012/10/07 13:25 覚え書き
Androidの標準ブラウザでフォームのオートフォーカスを指定していると、画面をタップしたタイミングでオートフォーカスが発動してしまい、スクロール位置が勝手に動いてしまうことがあるようです。

フォームのオートフォーカスというのは、サイトを開いた時に検索ボックスに自動的にカーソルが当たるようにするやつです。JavaScriptやautofocus属性で指定します。

ユーザの方から、スクロールが勝手に先頭に戻ってしまうという指摘が以前からあって、原因がわかってなかったのですが今日わかりました。

僕が使っているAndroid用Operaではそんなことないので標準ブラウザだけの症状かと。
ご参考にどうぞ。

2012/09/30(日)だらだらウィンドウショッピングできる「ザ・カタログショー」を公開しました。

2012/09/30 14:59 開発日誌
公開しました。

■ザ・カタログショー
http://catalogshow.jp/

スクロールするといろいろな商品の画像がどんどん出てくるので、だらだらとウィンドウショッピングを楽しめます。

たとえば漫画。表紙がずらっと出てくるので本屋をうろうろする感覚で使えます。普通に生活してたら出会えなさそうな作品が見つかるかも!
新着順で並んでいるので新刊チェックにも使えます。
漫画


基本的に画像を見て楽しめるようなジャンルを充実させました。

ファッションまわりも充実。
レディースファッション


あと雑誌。ネット時代には古いメディアとして見られがちですが、こうしてみるといろいろなジャンルがあって面白いです。雑誌は表紙の情報量が多いので見てるだけでも楽しめます。
雑誌



他にもいろいろなジャンルがあります。
まだデータが充実していない項目もありますが、順次増やしていくつもりです。
また、いまのところ使いやすいのでAmazonのデータを使っていますが、理想としては他のショップやメーカーのサイトの画像なども織り交ぜたサイトにしていきたいところです。

ではでは、どうぞご利用ください。

■ザ・カタログショー
http://catalogshow.jp/

2012/09/03(月)Solrメモ書き2

2012/09/03 17:39 覚え書き
Solrばりばり使ってます。大変便利です。
でもやっぱり日本語情報が少ない。というわけで実戦投入までに調べたことを公開メモ。バージョンは3.x系です。
前のメモはこれ

Too many open filesエラーが出る

このエラー出まくった。
ファイルを大量に開くようなので、ファイルディスクリプタ(システムが開けるファイル数)の上限を65536とかにしておく。
普通は /etc/security/limits.conf あたりで指定するみたいだけど、サービスとして起動させておくプログラムに対しては有効にならないっぽい。
詳しくは下記記事参照。
■ファイルディスクリプタ数の上限変更とlimits.confの罠
http://yumewaza.yumemi.co.jp/2010/07/limitsconf.html

というわけで、/etc/security/limits.conf は使わず、起動スクリプト(/etc/init.d/solr)上でulimit -n 65536とか記載しておく。
下記参考に。
■Tomcat - Too many open files が出る問題
http://www.matsuaz.com/matsumotojs/2010/12/24/1293117835413.html

定期的にoptimize。autocommitはよくない。

追加したデータをインデックスに載せるためにはコミットが必要なのだけど、コミットするたびにファイルの断片が増えていくので、定期的にoptimizeしないと重くなる。あと上記の開きすぎエラーにもつながる。
定期的って一年に一回とかかと思ったら、どんどん重くなったのでかなり頻繁に必要らしい。だと5回コミットしたら1回optimizeとか書いてあった。スケジューリングが面倒なのでもうコミットするたびoptimizeするようにした。
で、最初は楽そうだからautocommit(自動コミット)使ってたけど、コミットは処理が重いのでちゃんとスケジューリングして深夜にまとめてコミット&オプティマイズするとか、計画的に実行した方がいい。後述の再起動とも関連。
2014/12/16 追記
Solr4.0以降だと特に定期的にoptimizeする必要はなくなったぽい。

ログファイルを軽くしたい

ログにあらゆる情報が出力されていてすぐでかくなるので、エラーだけ出力するように起動スクリプト上でフィルタした。
java -Dsolr.solr.home=multicore -DSTOP.PORT=8079 -DSTOP.KEY= -jar start.jar 2>&1 | grep --line-buffered "Exception" >> <LOG_FILE> &
これが良いやり方かどうかはわからん。
標準出力とエラー出力はわかれてないっぽいのでこんなやり方になった。

ロックファイルが残る

コミット中に再起動するとロックファイルが残って書き込めなくなる。
logroteが再起動させるので、その時間にはコミットさせないようにすること。
autocommitはここでも危険。

使用メモリ?

使用メモリの設定とかあるのかと思って調べたけどよくわからない。javaの-Xmxオプションで指定する?-Xmx4096mとかやってみたらかえって重くなったので結局いじってない。いじってなくても十分捌けてる。



以上。
誰か公式マニュアル翻訳して欲しい。

2012/06/28(木)Bluetoothアダプタは東芝製ドライバのがいい。

2012/06/29 8:51 雑記
Bluetoothアダプタでわりと難儀したのでメモ。

BluetoothのUSBアダプタっていろいろあるんですけど、現行の新しい製品はだいたいモトローラ製のドライバ使ってるみたいです。特にBluetooh3.0とか4.0とかのUSBアダプタになるとだいたいモトローラ製っぽい。
(メーカはPlanexとかバッファローとかサンワとかいろいろだけど、ドライバはモトローラ。)

で、僕も最初モトローラ製のドライバのやつ使ってたんだけど、これがどうにも不便。というのはモトローラ製のドライバは接続するサービスを前もって選択できない。
Jabra HALOっていうヘッドセットを使ってて、これで音楽聞いたりするんですが、ヘッドセットの電源入れると自動でテレフォニー接続してしまう(要は通話用のモノラル接続)。主に音楽用途なのでオーディオ接続(ステレオ)したいんですが、この辺の設定ができないので、毎回手動で一度切断、オーディオ接続に再接続 という面倒な手順を踏んでいた。
メーカーに問い合わせてみても、やはり自動接続するサービスの選択はできないとのこと。

Windwosにも標準のBluetoothドライバがあり、それを使うと接続サービスを前もって選択できるのでテレフォニー接続をOFFにしておくこともできるんだけど、Windows標準のドライバだとこんどは音ズレがひどい。よく途切れる。
まあこれはWindows標準ドライバが悪いわけではなく、モトローラ用のアダプタにWindows標準のドライバをあてていたからだと思うが。

で、USBアダプタは全部モトローラなのか?とメーカーサイトからマニュアルをダウンロードしまくって調べたんだけど、どうやらPlanexのBluetooth2.1のやつは東芝製ドライバを使っているとわかったので買い換えた。
で、大正解!東芝製ドライバだと接続サービスを選択できるので、晴れて電源オン→自動でオーディオ接続できるようになりました!

で、全体的に東芝製ドライバの方が設定が細かいような気がする。
でも最初に述べた通り、最近のBluetooth3.0とかのUSBアダプタはだいたいモトローラドライバみたいなので、僕のような自動接続をコントロールしたい人は東芝製ドライバのアダプタがおすすめです。
ちなみに、ぜんぶ調べたわけではないけど東芝製はおそらく下記2製品くらい?
Bluetooth2.1になっちゃうけど、どうせヘッドセットも2.1までしか対応してないので…。

asin:B003QCIUEW
BT-MicroEDR2XZ(class2 買ったのはこっち)

asin:B003QCIUDS
BT-MicroEDR1XZ(class1 100m飛ばしたい方はこちら)

できればbluetooth3.0以降の新しい製品でも東芝さんにドライバを作ってもらいたい、またはモトローラさんにサービス選択できるドライバを作ってもらいたい所存です。

まあ、元々PCにbluetoothがついているなら別にWindows標準のドライバで問題ないと思います。

ご参考にどうぞ。

2011/12/09(金)Alexaのグラフで4年前までのデータを取得できた。

2011/12/09 14:24 覚え書き
Alexaのサイトではトラフィックのグラフを7日、1ヶ月~6ヶ月、MAX(2年)のスパンで見られるけど、画像のURLを直接指定することで最大52ヶ月前(4年4ヶ月前)まで取得できることを知った。

例)
r=に期間を指定。u=でドメインを指定。

6ヶ月
http://traffic.alexa.com/graph?r=6m&u=twitter.com


52ヶ月
http://traffic.alexa.com/graph?r=52m&u=twitter.com


せっかくなのでCeronのサイト情報ページには52ヶ月を貼っておくことにしたよ!
http://ceron.jp/site/twitter.com

Ceronのサイト情報ページは
http://ceron.jp/site/<ドメイン>
で見られます。
OK キャンセル 確認 その他