コミケ行ってhttp://nanaka-inside.net/display/MM/MagicMirror このあたりを見てこようと思っていたのだけど,眠くて家から出ることが出来ずに,プログラムとか書いていた.
読書用のアプリの気になるバグだけ直して,Playストアで公開した.https://play.google.com/store/apps/details?id=net.binzume.android.bookreader
まだ機能いろいろ足りないし,というか,アプリの名前すら決まってない.とりあえず「自炊本リーダー(仮)」という名前に.
…「自炊リーダー」というアプリがすでにあるのか.迷惑かける前に名前考えよう.
実家かえる.
せっかく冬休みなのに,風邪で2日間消費してしまったので,アプリのコード書いたり,溜まっていたアニメを消化したり掃除したりする日.
風邪引いて,昨日から寝ていた.
近所のIngressのポータル奪われてるな….
AdMobの振込先口座をPayPalから新生銀行に変える.なので新生銀行のアカウントにrubyでアクセスするスクリプト書きはじめた.まだ残高が取れるだけだけど.
https://github.com/binzume/shinseibank-ruby
ネットバンクは早く共通のAPI用意して欲しい….
昨日,久しぶりに郵便受け見たら不在票がたくさんたまってたので,電話する.が,郵便局,再配達依頼したやつ1つだけ届けてくれた.溜まってるやつ一緒に持ってきてくれると思ったけど,そういうシステムなのか…個別に再配達依頼するのめんどいので届くまで放置することに...ヤマトも家出るまでに届かなかったので,明日受け取ろう.
ついでにGmailの受信トレイも整理する.AndroidのGmailアプリは1000件以上未読メールがあると999+という表示になってしまってとても残念なので,不要なメール消して4000件くらいあった未読を1000件以下に減らす.
歯医者.保険外ので何かしたらとてもお金かかった.
明後日から冬休みということにした.
エアコンのフィルター掃除した.
*[Android]読書用アプリ
しばらく放置してしまったけど,UIとか実装する続き.いままでひとつだけだったブックマークを複数付けられるようにとか.ついでに,ページが回転されたpdfも大丈夫なように.
たぶん年内に公開する.
出かける予定だったけど,眠いので寝る日に.
二度寝して起きたら22時だった.
amazonの商品情報,思ったより表記ゆれが大きくていろいろめんどい.タイトルと著者名くらいはちゃんと正規化して欲しい….
相変わらず,iPhoneアプリ開発.
宗教上の理由でiOSは使えなかったのだけど,そろそろ改宗したほうが良い気がしてきてしまったので,流れに乗ることにした.
最近のObjective-C++というかclangは,NSなんたらオブジェクトをstlとかboostのコンテナに入れてしまっても,大丈夫になったという話を聞いて,少し希望が持てた.
そろそろ年末の予定決めて有給の申請とかしないといけない.
*Capistrano + Windows + use_sudoで少し困った
デプロイ先のマシンからリポジトリにアクセスできないので,
set :deploy_via, :copy
でデプロイして,さらに
set :use_sudo, true
set :admin_runner, 'hoge'
みたいな感じで別ユーザにsudoしてると,転送したファイルの所有権がログインユーザーになっててhogeからアクセスできない状態でデプロイされてしまったりするので,
after 'deploy:update_code' , :roles => :app, :except => { :no_release => true } do
# fix permition for deploy_via copy.
run "chmod -R ug+rw #{release_path} && find #{release_path} -type d -exec chmod a+x {} \\;"
end
みたいにして回避.capistranoを実行してコピー用のtarを作ってるマシンがwindowsなのがいけないのかも.
*iPhoneアプリ開発はじめました
Objective-Cむずい.型とは….Genericsっぽい機能が無いので,コレクションとかが悲惨に.smalltalk的なオブジェクト指向がくっついてるとはいえ,C言語なので,かなり面倒くさいことが多い.
非同期処理は,dispatch_asyncとかでキューに突っ込んでく形が良いのかな.
Core Dataはデータの保存を隠蔽できてよさげ.
*会社の忘年会
今年もビンゴは何も当たらず.たくさん肉を食べた.
忘年会のあと,会社の会議室で怪傑ズバットとか見ていた.
*Ingress
外寒いし,夜中にポータルをハックするのがつらいのでIngressの位置情報ハックしてみようかなと思って,ちょっとIngressの挙動調べてみる.
擬似ロケーション設定が有効だと遊ばせてくれないので,AndroidのコードいじるかIngressのアプリを解析しないとダメかと思ったのだけど,あんまりまじめにチェックして無いのか.
というわけで,適当なアプリを書いて,adb経由で自由に移動できるようになった.真面目に対策されてたら,本気でがんばってみようと思ったのだけど,ノーガードだったので罪悪感あるし,やる気がなくなった.
位置情報が重要なサービスのことを考えると,ある端末が接続してる基地局の情報を通信キャリアが署名付きで提供してくれたりしないかなぁ.
Androidの擬似ロケーションが有効になってるとIngressは遊べないらしいと聞いて当たり前だと思ったのだけど,なんとなく試してみる.
まぁ,やってみるとやっぱり何も操作できないのだけど,ダイアログの裏で一応はマップが動いているのが見える.もしかして,と思って,適当に位置をセットしてやると,その場所のXMが回収できた.XMの回収くらいは大目に見てくれるらしい.会社や家の周りのXMが少なすぎて何も出来ないので,休みに出かけたとき,駅とかでXMを回収しつつkeyを持ってるportalをチャージするとかしていたのだけど,抜け道があったのか.
日本通信がb-mobileの新しいプラン出してるけど,これもIIJ mio互換の価格っぽいな.1GB/月まで1980円で100MBごとに525円.ほとんど同じなので,パケット数での速度制限が無いIIJ mioのほうがよさげ.
15時間くらい寝ていた.
大学の研究室のOB会だった.すっかり忘れて寝ていたのだけど,電話かかってきたので慌てて出かける.
kstm.org忘年会(?).秋葉原→ysaotome邸.
Android
byte[]に入っているピクセルデータをBitmapにしたい場合,ピクセルフォーマットを変換しつつint[]に詰めなおしてsetPixelsでBitmapに書き込んでたのだけど,遅い.byte配列の頭にWindows Bitmapのヘッダ情報を入れておけば,BitmapFactoryでBitmapに変換できて速い気がした.
試した結果……setPixelsより微妙に遅かった.
Android
複数アイテムを表示するViewを作るとき,AdapterViewとかAbsListViewをベースにしてもpackage-privateなメンバが多くて結局ほとんど楽が出来ない…
夜中にルンバが勝手に動き出し,びっくりして目が覚めた.
秋葉原.
なんとなくHDDとか買う.
aitendo.ccはじめて行ってみた.液晶工房だった頃は,ジャンク液晶しか買ったこと無かったけど,変換基盤とか充実してるな.いつもの巡回コースから少し外れているのがネックか.
*[Android] Viewのスクロール
スワイプとかピンチインとかのジェスチャーとScrollViewが相性悪い気がしたので,Androidのソース読む.
スクロールに関する大部分の処理は,Viewに実装されているので,TouchEventを自分で処理するならScrollViewを使う必要はほとんどなさそう.
scrollTo()メソッドなどは範囲のチェックなど無しにスクロール位置がセットされるので,オーバーライドしてやるべきかも.computeScroll()で描画前にスクロール位置を正しくする必要がある.
あるViewが本当にスクロール可能かどうかは,computeHorizontalScrollRangeとかで判定されるべきっぽけど,protectedで外から見えない.4.0以降では,canScrollHorizontallyとかがあるのだけど.
なんだかスクロール周りは場当たり的な実装がされてる感じがする…気のせいかもだけど.
*Make
地球儀新しくなっていた.
未来館のディスプレイにLCD-X551UNというLCDパネル使われてるの見てよさげだなと思って型番メモっといたのだけど,価格コムで値段調べたら77万円……高い.
http://kakaku.com/item/K0000247124/
ふちが細いので,何枚か並べるのにちょうど良いと思ったのだけど.