スペアを用意してもそれでも行方不明なもの スペアを用意してもそれでも行方不明なもの

テレビのチャンネルとかすぐ行方不明になるものって結構ある。

よく困るからスペアを用意するのだけど、それでも見つからないもの。

・耳かき:2つとも行方不明
・爪切り:1つ行方不明
・ヘアバンド:1つ行方不明

耳掃除できない。

電車で新聞読んで、毎週のようにamazonで技術書やビジネス本が届くので、漫画読んでると意外がられるのだけど、かなり漫画好きだよ。

ジャンプで人気なのはワンピースやナルトやブリーチなのかもしれないが、ここ数週間の流れなら言える。ジャンプで面白いのは銀魂とSKET DANCE(完全主観)。

異論は認める!

AppStore + Jailbreakとか言うと。どうやるん?って聞かれてググれと応えるのもあれなんでちょっとやったことを書いてみることにする。

基本的にはMacのpwnage Tool 2.0を使って下記記事に沿ってやった。
http://www.macotakara.jp/blog/index.php?ID=576

うまく行けば上の記事の通りに行くのでここからは自分の事情とはまった事だけ書く。

1) iPhone/iPod touchをクリーンにしておく

まず対象になったのはfirmwwareが1.1.4でZiphoneでJailbreakしたiPod touch。

で、一部の情報によるとziphoneとpwnage Toolのjailbreakのやり方は違うらしくziphoneでjailbreakしたものに対してpwnage Toolを使うとうまく復元できなかったりするらしい。

「らしい」というのは・・・実はjailbreak済みfirmwareでリストアするときに"option"キーを押し忘れて純粋な2.0でfirmwareでリストアしてしまったから。。。ようするにziphone jailbreak済み -> pwnage jailbreakとならず。ziphone jailbreak済み -> 2.0 純粋 firmware -> pwnage jailbreakという流れになってしまった。まぁ、データが消えても構わないのであればziphoneユーザには一旦純粋なfirmwareにしてからjailbreakする方が良いのかもしれない。

2) 復元時にファイルが選べない!

結局未だに回避できていない問題。iTunesにiPhone/iPod touchをつないで「復元」ボタンを押すとiTunesがwebから最新のfirmwareを取得してリストアしてくれる。で、「復元」ボタンをクリックするときMacなら"option"キー、Windowsなら"shift"キーを押しながらやると、復元するfirmwareのファイルを選べるという裏技も周知の事実だと思う。

が、なぜか"option"キーを押してもファイル選択画面がでない!(#1でoptionキーを押し忘れて純粋firmwareで更新してしまったが実は押し忘れなくてもこうなっていたと思われる・・・)
-> command、shitf, control・・・別のボタンを押してもダメ。
-> またしてもATOKの問題か?(iTunes 7.7.0.43 for Win + ATOK2008でMobileHelperが落ちまくる問題あり)と思いATOKをきってもだめ
-> 7.7.1のバグかと思いWebで見つけたiTunes 7.6にダウングレードしたら7.6ではiPhone/iPod touch 2.0が認識しない問題発覚。
-> がんばって7.7.0.43を見つけて入れたもののやっぱりファイル選択できない
-> Apple Discussionを眺めてもそれらしい同件の内容はない

結局、WindowsのiTunes 7.7.1だと問題なくshiftキーを押しながらの復元ボタンでファイルを選択できたのでWindowsでやった。

Macのpwnage Tool 2.0で作った「iPod1,1_2.0_5A347_Custom_Restore.ipsw」「x12220000_4_Recovery.ipsw」をWindowsマシンにもってきて

「x12220000_4_Recovery.ipsw」は
%AppData%\Apple Computer\iTunes\Device Support\x12220000_4_Recovery.ipsw
に置いて、

復元するときのファイルにiPod1,1_2.0_5A347_Custom_Restore.ipswを選べば一応WIndowsのiTunesでも復元できた。

3) DFUモードとリカバリモードは違う

さいこーにはまったのはoptionキー効かない問題だが、その次にはまったのはDFUモードに対する知識。

pwnage Toolを使うと復元する前にDFUモードに入れといわれる。

DFUとはDevice Firmware Upgradeの略らしいのだが、知っておかないといけないのはDFUモードのときはiPhone/iPod touchの画面が真っ暗になる。iTunesアイコンとUSBを接続するような画面のときはリカバリモードを指すということである。リカバリモードだとjailbreak済みfirmwareへの復元に失敗する。しばらくこれにはまってしまいやっぱりwindowsにはできないのかと勘違いしそうになった。

ちなみにDFUモードは下記手順で入れる。


  1. デバイスのをPCに接続する

  2. デバイスの電源を切る

  3. デバイスのスリープボタンとホームボタンを10秒間押す。

  4. デバイスのスリープボタンを離す。(ホームは押したまま)。

  5. さらに10~15秒ほど待つとDFUモードでiTuneが認識する

iTunesのいろんなバージョンを落としたり、Macでやったり、WindowsでやったりごちゃごちゃやっているうちにDFUモードという状態から外れてしまってリカバリモードになってしまうので注意が必要。

実際にやってみたが上記手順でリカバリモードからDFUモードに入ることも可能だった。一度PCに接続してない状態でやってみたが無理だった。PCに接続していないとダメらしい。

全然ブログを書いてなかったので会社からだろうが書く。

金曜日にiPod touchのFirmwareを2.0にしてJailbreakしました。AppStoreが使いたかったもので・・・・

IMG_0001.PNG

2.0にあげたら勝手アプリの量が大分減ってしまいました。(地味にMobileScrobblerが無くなったのが痛い。自分で作るか?)が、sshありーの、terminalありーのやっぱりで楽しすぎ。

それに対してとりあえずmixiアプリとか入れてみて久しぶりにログインしてみたけど、何かすら(誰かの日記を読むとか)すると全部ブラウザに飛ばされるこの仕様って・・・これだったら最初からiPhone専用のページを作った方が絶対良いと思うのだけど・・・わざわざクライアントアプリで実現するメリットって何??

2.0にしたらホームボタン + 電源ボタンでキャプチャーが簡単に取れるようになって便利。でもiTunesと同期しても写真のuploadできなかったのでよくわからずscpでコピー。画像は
/private/var/mobile/Media/DCIM/999APPLE
にあった。

会社のマシンのiTunesで同期したのだけど、iTunesアプリがめっちゃ削除されたよ。。。どういう同期ルールですか。

aTunesがようやく使い物になるplayerになりました。
http://x-jukebox.com/atunes

具体的には連続再生に対応しました。playerにYouTubeのflashを貼り付けていただけなので1動画の再生が終わるとそのまま放置。1曲再生で終わるplayerでは作業用なんかには使えないわけで・・・でもeventとれないから仕方ないじゃん。。。と思っていました。

javascriptでハンドリングできないか調べようとしたらあっさり見つかりました。
http://code.google.com/intl/ja/apis/youtube/js_api_reference.html#Events

別にhackとかなんでもなく普通にJavascript APIが公開されていました。これを使ってplayerの再生が終了したら次の動画のplayerをajaxでとってきてreplaceするというコードを書きました。内部でリスト管理するようにしたのでバグとかがあるかもしれません。

連続再生できると今度は音楽ビデオじゃないものはスキップする機能が欲しくなりました。自前のdbにMusicVideoのフラグを用意しようかと思ったりしています。

AppleのiPhone開発者セミナー行ってきました。

昨日、MacBook持って帰ってくるのを忘れたので今日は早起きして会社によらないといけないなぁと思っていたのに、相変わらず目覚まし時計はセットしないで、でも早く起きれたけどぼーとジャンプ読んでたら微妙な時間になったので直行しました。

で、ふつーにVAIO開いて聞いてきました。

セミナーの内容は守秘義務があるのでWebに公開できません。でもiPhone Developer ProgramをiDPと略すくらいは言っても良いだろう。タイプするの面倒だったのでこれからiDPと書くことにします。

自宅サーバのsymfonyを1.0から1.1に更新しました。

x-jukebox(atunes/mradio)
walkmanlog
のプロジェクトも更新しました。

普通はバージョンをあげるメリットを見極めてあげるもんなのですが、勉強がてらつくってるWebサービスなのでなるだけ新しいものを使おうかと思った次第です。なんとなく軽くなんないかなーという淡い期待はあります。

1.0と1.1の互換性のない部分の更新のためプロジェクトのアップデートに数分かかったのですが、symfony(PHPの1ライブラリ)のアップデートでapacheを止めるわけにもいかないので一旦メンテナンス画面にした上で更新しました。

symfonyプロジェクトのwebフォルダの下に
maintenance.htaccess
maintenance.html
の二つを用意。

maintenance.htaccessはこんなん。

Options +FollowSymLinks +ExecCGI

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^(.*)$ maintenance.html [QSA,L]
</IfModule>

maintenance.htmlはメンテナンスです。を表示するただのhtml。

でsymfonyプロジェクトのwebディレクトリで下記コマンドを実行し、.htaccessを置き換え

mv .htaccess symfony.htaccess; mv maintenance.htaccess .htaccess

アップデートが終わったら

mv .htaccess maintenance.htaccess; mv symfony.htaccess .htaccess; cd ..; symfony cc;

で元に戻す。

symfony 1.1にupgradeするとsymfony 1.0.xでつくったプロジェクトはそのままでは動かなくなるらしい。
http://blog.symfony.jp/2008/07/01/pear-upgrade-1-0-17/

じゃぁ、動くようにするにはどうすんの?

http://trac.symfony-project.org/browser/branches/1.1/UPGRADE

に書いてあった。

1. プロジェクトディレクトリに移動する

2. symfonyファイルを下記コマンドで更新する

cp /path/to/symfony/lib/task/generator/skeleton/project/symfony symfony

3. ProjectConfiguration.class.phpファイルを下記コマンドで作成する


cp /path/to/symfony/lib/task/generator/skeleton/project/config/ProjectConfiguration.class.php config/ProjectConfiguration.class.php

config\ProjectConfiguration.class.phpの##SYMFONY_LIB_DIR##を/path/to/symfony/で置き換える

4. upgradeコマンドを叩く

./symfony project:upgrade1.1

apps/frontend/config/logging.yml
apps/frontend/config/i18n.yml
apps/frontend/config/config.php
config/config.php
消せとか言われるので消した。

web/frontend_dev.php
web/index.php
はコメントを有効に。って言われるので修正。

symfony ccして、動かすとエラー。

エラー1. Call to undefined function form_tag()

<?php use_helper('Form'); ?> 
を入れないといけないらしい。

エラー2. An internal URI must contain a module and an action

http://www.symfony-project.org/forum/index.php/m/55475/#msg_55475

1.1から必ずdefault_actionで省略できず、必ずactionを指定しないといけないらしい

あとで気がついたが日本語で説明してくれてる記事があった
http://www.thinkit.co.jp/article/71/2/

エラー1,エラー2についてはやむを得ぬ事情があったに違いない。本来では少しでもコードを書きたくないはずなのに、書くコードが増えるほうに倒れた件に関してどのような葛藤があったのか、作者達に聞いてみたい。

※/path/to/symfony/については、アップデート前のプロジェクトディレクトリの/config/config.phpにある$sf_symfony_lib_dirになると思われる。

いろいろ間違えたので7/23修正。

Social Spring Graph(Google Social Graph API + SpringGraph)でパラメータ対応しました。

URL
- http://apps.makotokw.com/socialspringgraph/

パラメータ
- twitter: twitterのアカウント名

以上。

たとえばtwitterのmakoto_kwさんのグラフは
http://apps.makotokw.com/socialspringgraph/?twitter=makoto_kw
です。

自分のtwitterグラフの紹介に使ってみてもらえると幸いです。

俺の3連休。。。。

PHPカンファレンス2008に行ってきました。京急蒲田は精神的に遠い。。。

とりあえずメモです。

http://wiki.makotokw.com/index.php?Private%2F%A5%BB%A5%DF%A5%CA%A1%BC

動画もそのうちあがると思うのですが、個人的には基調講演とパネルディスカッション(PHPの次に学ぶ言語は何か)だけとりあえず見ておけばよいと思います。

makoto_kw的、次に学ぶ言語は何か。

python/Objective-C 2.0や。

単にGoogle App Egine/iPhoneやりたいだけなんだけど。

何にせよやりたいことを元に使うものを決めるのが良いかと。


Twitter

WALKMAN.LOG