nDiki : デバッグ

2010年11月9日 (火)

今日のさえずり: 「人一倍って変わらなくない?」(公園にいる女子中学生)

2010年11月09日

  • 12:07 弁当 350円。 (@ 向日葵 和泉町店・カレー食堂) http://4sq.com/9oazrC
  • 15:57 ヘルプしてもらった部分のコードをデバッグ中。よくみるとコピペなので、原因が掴めてきた。
  • 16:15 iPad をタブレット型ではなくてパッド型と呼んでいるのが聞こえたので検索してみたけど、ぼちぼちいるんだな。
  • 17:17 植物に水やって退勤。
  • 17:50 ストリートミュージシャンの上手さとアンプのボリュームの大きさは負の相関。
  • 18:20 「人一倍って変わらなくない?」(公園にいる女子中学生)
  • 18:26 RT @kenken610: 一倍じたいが倍って意味 RT @hiro: 全力同意 RT @Naney: 「人一倍って変わらなくない?」(公園にいる女子中学生)
  • 18:31 歯医者にいる。
  • 19:19 歯の定期検診完了。今回は虫歯無し。間隔も4カ月に。
[ 11月9日全て ]

2010年11月16日 (火)

Xperia を root 化してシャッター無音化とスクリーンショット取得可能化

Xperia SO-01B も Android 2.1 になったわけだけれど、NTTドコモも次々 Android 端末出してるし Xperia も後継機種のが出ているしで、ビジネス的にも開発リソース的にも Android 2.2 以降へのアップデートの可能性はちょっと低くなってるんじゃないかなと思う今日このごろ。 であればそろそろ root 化にチャレンジしてもいいよね?

ということで Web で調べ調べしながら root 化。

root 化アプリケーションの z4root を使う。

マーケットで z4root を検索してインストール。 起動したら画面中央の Root ボタンを押す。 「USB デバッグが有効になってないよ」という主旨のダイアログが出たので、ボタンを押すと Xperia の[アプリケーション設定]画面が開く。[開発]の中の[USBデバッグ]をチェック。

再度 z4root を実行して Root ボタンを押す。

しばらく待つと再起動がかかる。

再起動後 z4root を実行するとスーパーユーザ権限与えてねダイアログが出るので許可する(1度ここでもたもたしてたら Root 取れなかったみたいで再度 Root ボタンを押してやりなおした)。

root が取れると z4root の画面は Re-root と Un-root の2つのボタンが表示されるようになる。

Debian GNU/Linux から adb で Xperia にリモート接続できるようにする

Android 開発環境以前インストールしてあったので、その中にある tools ディレクトリの下の adb コマンドを使う。

 adb devices

すると

 List of devices attached
 ????????????    no permissions

と表示される。udev の設定が必要らしい。

 echo 'SUBSYSTEM=="usb",SYSFS{idVendor}=="0fce",Mode="0666"' > /etc/udev/rules.d/51-android.rules

して /etc/init.d/udev restart。adb 系のプロセスが動いていれば kill。

この状態で

 adb shell

を実行して

 $

というプロンプトが出たらリモート接続成功。

カメラのシャッター音設定で OFF を選べるようにする

Xperia の /system/build.prop というテキストファイルを書き換えればいいらしい。

adb shell で入っている状態で su を実行。

 $ su

初めての場合 z4root がインストールしてくれた Android アプリケーション 「Superuser」が Xperia 上で開いて /system/bin/sh にスーパーユーザ権限を与えて良いかときいてくるので許可する。 うまくいくと adb のプロンプトが # にかわる。

次に /system を書き込めるように remount する。

 # mount ← どこにマウントされているか確認。
 # mount -o remount,rw /dev/block/mtdblock2 /system ← rw で remount。

これまた z4root が インストールしてくれている、UNIX コマンドラインユーティリティをひとまとめにした BusyBox を使う。/system/bin/busybox としてコマンドが入っているのでこれを適宜呼び出す(busybox ファイルを ls やら grep やら vi やらといった名前でコピーするかシンボリックリンクを張るかすると、直接その機能が実行されるようになるのだが、ここではその設定は今はやらないでおいた)。

 # busybox cp /system/build.prop /system/build.prop.original ← 編集前を残す。
 # busybox vi /system/build.prop ← vi で開く。

で vi エディタが開くので /system/build.prop ファイルを編集。

 ro.camera.sound.forced=1

 ro.camera.sound.forced=0

に書き換えて保存したら Xperia再起動

これでカメラの設定画面中のシャッター音で OFF が選べるようになった。

スクリーンショットをとれるようにする

マーケットから Drocap2 をインストール。 drocap2 を実行して、メニューボタンから[設定]を選び、[撮影モード]で[通知で撮る]を選択。 そうすると通知バーを引き出した中に[drocap2トリガー]というのがあらわれるようになるので、スクリーンショットをとりたいときにそれを実行する。

初回は Android アプリケーション 「Superuser」がスーパーユーザ権限を与えて良いかときいてくるので許可する。 これでスクリーンショットが端末単独でとれるようになった。

めでたしめでたし。

追記

2011年1月19日のソフトウェア更新でマルチタッチ対応した Xperia SO-01B では z4root が使えなくなった。 かわりに Flashtool で root 化ができる。→ 設定方法


[ Android アプリレビュー ]

[ 11月16日全て ]

2011年1月20日 (木)

マルチタッチ対応 Xperia のシャッター無音化

1月19日からパソコン接続による Xperia SO-01B のソフトウェア更新の提供が始まり、の今日からはパケット通信での更新の提供が始まった。 でパケット通信による方法で更新をかけたのだが、再起動した後ソフトウェア更新失敗のメッセージが出て更新できない。 ということでパソコン接続による方法でアップデートしてみたらこちらは無事成功。2.0.1.B.0.19 に。 そのかわり root 化やシャッター無音化が消えてしまったので、再度設定をしておこう。

Flashtool version 0.2.3 で root 化する。

駄目元で z4root でルート化を試みたが終わる様子がない。無理そげ。 ということで Windows 上から Flashtool version 0.2.3 で root 化することにした。

から Flashtool version 0.2.3 の自己展開形式ファイル Flashtool.exe をダウンロードし実行する。次に展開したフォルダの中の X10Flash Tool.exe を実行する。

続いて USB デバッグを有効にしてた Xperia を PC に接続。 Root ボタンを押すとあっという間に root 化処理終了。

マーケットから Superuser をインストールしておく。

カメラのシャッター音を無音化する

naney:5372956332

前回は adb を使ってログインして設定ファイルを書き換えたが、今回は Android 端末上だけで済ませよう。 書き換えるのは同じく /system/build.prop ファイルの ro.camera.sound.forced という設定。

SSH クライアントである ConnectBot はローカルのターミナルソフトとしても機能するのでこれを使う。local を選んで接続したら以下のコマンドを実行していく。

 $su ← Superuser がポップアップしたら[許可]ボタンを押す。
 #mount ← /system のマウント先を確認。
 #mount -o remount,rw /dev/block/mtdblock2 /system ← rw で remount。
 #cd system
 #cp build.prop build.prop.original ← 編集前を残す。
 #grep camera build.prop ← camera 設定を確認。
 #sed 's/forced=1/forced=0/' build.prop > build.prop.new ← 置換して新しいファイルへ。
 #diff build.prop build.prop.new ← 変更を確認。
 #cp build.prop.new build.prop ← ファイルを上書き。
 #chmod 644 build.prop ← パーミッションを戻しておく。
 #exit
 $exit

さすがに仮想キーボードで vi とかかったるいのでここは sed で。

終わったら Xperia再起動

これでまたカメラの設定画面中のシャッター音で OFF が選べるようになった。 めでたしめでたし。


[ Android アプリレビュー ]

[ 1月20日全て ]

2011年2月21日 (月)

Visual C++ Win32 コンソールアプリケーションへのメモリリーク検出の埋め込み

Visual C++ 2005 で開発のプログラムがどうもメモリリークしているっぽい。 メモリリーク検出を仕込む方法のメモ

stdafx.h

デバッグバージョンのヒープ割り当て関数を使うようにするマクロ定義と crtdbg.h のインクルードをする。 メモリリーク情報ダンプの際にレポートにファイル名と行番号が出るように new を書き換えるマクロを定義する。

 // デバッグバージョンのヒープ割り当て関数を使うようにする。
 #ifdef _DEBUG
 #define _CRTDBG_MAP_ALLOC
 #include <stdlib.h>
 #include <crtdbg.h>
 #endif

 // _CRTDBG_MAP_ALLOC に関係なくプリコンパイルしたいもの。
 // かつ new を書き換えるとコンパイルが通らなくなるヘッダファイル群。
 #include <string>

 #ifdef _DEBUG
 // プリコンパイルするほどではないけど、
 // new を書き換えるとコンパイルが通らなくなるヘッダファイル群。
 // 例えば。
 #include <map>

 #define new new(_NORMAL_BLOCK, __FILE__, __LINE__)
 #endif

 // プリコンパイルしていもの。
 #include <myproj/utility.h>

main 関数

終了時にメモリリーク情報をダンプさせるようにする。 また、コンソールアプリケーションの標準エラー出力にレポートが出力されるように設定する。

 int main(int argc, char* argv[]) {
   // 終了時にメモリリーク情報をダンプさせる。
   _CrtSetDbgFlag(_CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF);


   // レポートをファイルに書き出させる。
   _CrtSetReportMode(_CRT_WARN, _CRTDBG_MODE_FILE);
   _CrtSetReportMode(_CRT_ERROR, _CRTDBG_MODE_FILE);
   _CrtSetReportMode(_CRT_ASSERT, _CRTDBG_MODE_FILE);

   // レポートを標準エラー出力に出力させる。
   _CrtSetReportFile(_CRT_WARN, _CRTDBG_FILE_STDERR);
   _CrtSetReportFile(_CRT_ERROR, _CRTDBG_FILE_STDERR);
   _CrtSetReportFile(_CRT_ASSERT, _CRTDBG_FILE_STDERR);

   // 処理を開始。
   ...
 }
[ 2月21日全て ]

2011年3月1日 (火)

今日のさえずり: ソフトウェア開発を安直に製造業で例えてはいけないというのを理解して欲しいよね

2011年03月01日

  • 10:46 「『コーディング』『テスト・デバッグ』『(俗に言う)設計』は全て設計の一部である」 / 「ソフトウェア設計とは何か?」がすごい - Lism.in * blog - nekoya (id:studio-m) http://htn.to/jW85Vb
  • 10:51 ソフトウェア開発を安直に製造業で例えてはいけないというのを理解して欲しいよね。
  • 12:02 鼻ムズムズだけれど、ビッグマック食べたい。
  • 12:11 豚生姜焼き弁当 460円。 (@ セブン-イレブン 神田佐久間町店) http://4sq.com/ePIIkG
  • 12:46 hatebte 登録した。 Evernoteメールアドレス以外を設定できればもっと嬉しい(Evernoteメールアドレスはクローズドにして他のアドレスから転送させる形で使っているので)。 http://hatebte.com/ #hatebte
  • 12:52 さっきセブン-イレブンnanacoポイントを電子マネーに交換してきた。100ポイント単位が一番交換手数料的にお得なんだけれど、言われるままについ全ポイント交換してしまった。3月末で失効するポイントがある人多いはずだから、交換を。
  • 12:57 RT @Sora_Sakurai: Twitterにも書いたほうが有意義だと思うので書きます。TwitterBlogなどにMiiを掲載していいかどうか。任天堂知財部曰く「営利目的でなければOK、ただし他人の権利を侵害するものや他人に不快な思いをさせるものは掲載しないでお ...
  • 14:33 年会費3,900円。回数制限が中途半端に設定されていてプレミアム感がない。 / ヨドバシ.com-ゴールドポイントカード・プラス プレミアム http://htn.to/FRKhZT
  • 15:46 アイシングいちごバウムとコーヒー 253円。 (@ ファミリーマート 神田佐久間町店) http://4sq.com/fmRigT
  • 19:34 AndroidSamba。 / details?id=com.funkyfresh.samba http://htn.to/q57bJm
  • 20:34 同じく。 RT @ogaoga: 「こんにちはマイコン」がなかったら、今の自分はないと思う。
  • 21:28ヤマダ電機で鼻栓売ってるらしいよ」ってにすすめられた。
  • 22:35 えきねっと予約った。
[ 3月1日全て ]

2011年10月13日 (木)

YAPC::Asia Tokyo 2011 前夜祭

始まりました YAPC::Asia Tokyo 2011。 去年は前夜祭には参加しなかったのだけれど、後日いろいろな記事や写真を見たら楽しそうな雰囲気だったんだなあとおもって、次はぜひ参加しようと思ってた。

会場であるフェライト会議室に着くと、すでに来た人たちがビール飲みながらあちこちで談笑していた。 ライブデバッグにより動き始めた受付でチェックインして、自分もソフトドリンクの一番絞りを(ビールしか無いんですもの)。 Reject Conf 半分、夏に勉強会でお会いした人や同僚などとの会話半分で、Perl コミュニティのゆるふわな雰囲気を楽しんだ。

今年はアカウント名などを手書きしてストラップに入れるための紙も用意してあったので、透明なケースのままだった人が多かった去年より良くなったな。 個人的にはアイコン画像とか入れてあると「あ、あの人だ」って気がつけて嬉しいので、 YAPC に限らず誰かと交流できるといいな参加者はプリンタでの自作でいいのでアイコン入りの名刺を用意しておくといいよ。初参加の人もいるだろうから、事前に「用意するといいよ」って告知してくれるといいんじゃないかな。

[ 10月13日全て ]

2012年2月27日 (月)

今日のさえずり: これから布団に入って徹夜でデバッグする(body 要素を)

2012年02月27日

  • 09:42 風ゴーゴー。 @ 株式会社ミクシィ(mixi, Inc.)にタッチ! http://t.co/W4PHGX4U
  • 12:55 RT @mixi_PR: 【mixi メンテナンスのお知らせ】 現在mixiモバイルにおきまして、アクセスしづらい状況が発生しております。 ご迷惑をおかけし申し訳ございません。現在復旧作業中のため、今しばらくお待ちいただけますようお願いいたします。
  • 14:29 落ち着いたのでお昼。 @ ローソン 渋谷東一丁目店にタッチ! http://t.co/IbdPRLzW
  • 15:21 Turn the Ordinary into the Extraordinary.
  • 21:02 帰宅。37.4℃ですね。
  • 21:31 ベンザブロックIP。
  • 22:20 今日同僚にコクヨのマスクケース見せてもらった。花粉の季節、置いておくところ困るので自分もこれ欲しい。 http://t.co/hIHWrjDm
  • 23:04 @py0n 体温。
  • 23:10 @py0n 寝る前にまた測ってみる。
  • 23:14 また懐しい方から Facebook 友達リクエストいただいた(ありがとうございます)。ちょうど先日、鳩山祭実行委員会 会員名簿 ScanSnap ったところだったのでビックリ。
  • 23:26 35.8℃。ベンザブロックIPやっぱ効くわー。これから布団に入って徹夜でデバッグする(body 要素を)。
  • 23:33 情報科学科だから、ソーシャルメディア上にもっといてもいいと思うの。
  • 23:37 t.co 展開されるようになったんだっけ。
[ 2月27日全て ]

2012年9月10日 (月)

今日のさえずり:

2012年09月10日

  • 09:16 RT @Psychs: LimeChat for WindowsWine 上で普通に動いて Wine すごいっていう人がいるけど、それはそういう風に LimeChat を作ったからなんだけどなぁ。ぜんぶ static link で最低限のライブラリだけを使って、どんな環境でも動くように作ってある。
  • 09:24 付録欲しさに週アス買った。 (@ 山下書店 渋谷南口店) http://t.co/o80aa9tQ
  • 09:39 残暑。 (@ 株式会社ミクシィ (mixi, Inc.)) http://t.co/IuMEGyVn
  • 13:59 巻き尺買った。セルフロック良さそげ。
  • 15:29 RT @mixi_engineers: スマートフォンのネイティブアプリのテスト版の実機へのデプロイって、管理や作業が面倒くさいですよね? そんなあなたに。 #DeployGate
  • 15:29 RT @mixi_engineers: テスト版アプリを「うまいこと」チームメンバにOTA配布したりプッシュ通知したりデバッグログを一括管理したりリモートで止めたり。そんなサービスをミクシィからお届けします。まずはAndroidから: http://t.co/BumPXgGr #DeployGate

n- 15:30 RT @mixi_engineers: ご説明とお披露目ということで、2012.9.20 thuにDeployGateのローンチパーティーを開催させていただきます。お誘い合わせのうえよろしくお願いします! http://t.co/9jfoA6Wl #DeployGate

[ 9月10日全て ]

2013年8月7日 (水)

プログラミング言語仕様・振る舞いを確認するために小さいプログラムを書く

プログラミング言語仕様・振る舞いを確認するために小さいプログラムを書く。 「この式を評価すると値は何になるの?」とか「この2つの書き方どっちが速いの?」とか「この正規表現にどうパターンマッチングするの?」とかを確認したい時。

当たり前の進め方だと思っていたんだけれど、そうすることを勧めたらスルー気味だったので。

特にスクリプト言語なら 「a.ほげほげ 」(Perl なら a.pl)なファイル作って実行してみればいいじゃんと思うのだけれど手間に感じるのかな。本丸のプログラムのソースコードを書き換えて試す(Apache 再起動して Web ブラウザでアクセスしてデバッグプリント読むとか)よりよっぽどはやいよ。あと、単体テストファイルでやっちゃうのもアリ。

それに適当に記事としてまとめておけば、今度は自分が他人に説明する時にそれを示せば済むようになるしね。

[ 8月7日全て ]

2014年2月27日 (木)

今日のさえずり: これで切っても安心

2014年02月27日

naney:12813816284

  • 10:13 一度行きたいと思っていた家の近所のカレー屋が閉店したとの報。ああ、また論の時と同じ過ちをしてしまった。
  • 13:18 “マンガで分かる心療内科・精神科in渋谷 第74回「フランクル~人が生きる3つの意味」 | 渋谷/心療内科/ゆうメンタルクリニック 渋谷駅0分 渋谷駅・精神科・東京・カウンセリング” http://bit.ly/N5yzTp
  • 13:18 メーテル! / “アニメ「銀河鉄道999」のコンセプトルーム、ホテルグランパシフィックに登場 - 東京ベイ経済新聞http://bit.ly/1jBS8hc
  • 19:38 そういえばインスタンス変数/メンバ変数のことをついスロットと呼んでしまうのだけれど通じているのかな。
  • 19:57 Perl でインスタンス変数とか言うの気持ち悪いのでそう呼んできたのだけれど。 perlootut では attribute って呼んでいるので Perl コンテキストではそう呼ぶことにしよう。
  • 20:31 Tiarra 移設した。ディレクトリごとコピーのみで動いた。グー。
  • 20:49 デバッグ進んだので良き日。 (@ 株式会社ミクシィ (mixi, Inc.)) http://4sq.com/1ftsciQ
  • 21:09 @py0n 一般論なら一般的な用語使うし、言語固有の話題ならその言語に合わせた用語をできるだけ使うよ。 C++ ならメンバ変数って言う。
  • 22:12 これで切っても安心。 http://flic.kr/p/kwja9Y
  • 25:33 こんな時間にたまごっちぴーすが荷造り。
[ 2月27日全て ]

About Me

Naney Naney (なにい)です。株式会社ミクシィでマネージャー・PO をしています。

nDiki1999年1月に始めたコンピュータ日誌を前身とする NaneyWeb 日記(兼パーソナルナレッジベース)です。ちょっとしたノートは nNote にあります。

follow us in feedly

※内容は個人的見解であり所属組織とは関係ありません。

月別インデックス
Process Time: 0.325571s / load averages: 0.48, 0.45, 0.48
nDiki by WATANABE Yoshimasa (Naney, Google profile)
Powered by DiKicker