投稿

7月, 2011の投稿を表示しています

OutputDebugStringとVisualStudio

古典的なことなんですが、 Visual Studioの出力ウィンドウ(Output window)にMFC TRACE(),Qt qDebugやWIN32API OutputDebugStringのメッセージ表示がされなくなったときは、出力ウィンドウを右クリックして、コンテキストメニューのプログラム出力(O)にチェックが入っているか確認してください。 ここの位置は何かの拍子にマウスボタンを押してしまい。 アンチェックになりやすい位置です。 そのため戸惑うことがあります。

スマートフォンとタブレットのDisplayMetrics例

samsung galaxy Tab10.1 metrics DisplayMetrics density 1.0 densityDpi 160 heightPixels 800 scaledDensity 1.0 widthPixels 1280 xdpi 160.15764 ydpi 160.0 savedState null HTC desire metrics DisplayMetrics density 1.5 densityDpi 240 heightPixels 480 scaledDensity 1.5 widthPixels 800 xdpi 254.0 ydpi 254.0 savedState null

android:hardwareAccelerated="true"ではWebViewの描画が正常に動作しないこと有り

Android3.0から有効になったManifest.xmlのapplication属性  android:hardwareAccelerated。 android:hardwareAccelerated="true" にするとWebViewが間延びしたような表示になり、正常にHTMLを表示してくれないことがある。 気がつくのに約1日の時間を無駄にしてしまった。  ドライバの問題と思われるが、出来たてで自分が慣れていないOSはこんなものである。    尚、WebView以外では正常に動作しているようなのでActivity単位でandroid:hardwareAcceleratedを指定し、使えるものは使う。 危険だがテーマ描画が乱れるのでしかたがない。 PS Samsung tab10.1 google edition / android3.1にて 

"The specified activity does not exist! Getting the launcher activity."

AndroidManifest.xmlを後で起動アプリを変更したとき。 eclipse(ADT)上で、このエラーメッセージがアプリ起動時に表示されたら、 project->properties->Launch configurations の内容が正しいかをチェックすること。 このエラーが表示されても、とりあえず起動がすることがあるようですが、時間がないときは細かなことは構っていられない。とつい考えてしまいます。 プレッシャがない時には簡単だんだけどねぇw

android ndk r6

r5cが登場したときは、落胆したものだった。 理由は当分NDKの新しいメジャーなバージョンは登場しないだろうと考えたからだった。が、予想に反し7月に入りr6がリリースされた。 (androidのreposを見れば予想できるだろうけど。。。時間が厳しい) しかも、前々からほしいと思っていたstack traceがLogcatで簡単に見ることが出来るようになった。 これでイチイチどこから呼ばれたかをgdbを実行せず見ることができる。 デバック作業の効率化が進んだのである。 いつもndk-gdbを行うフォルダで実行することを考えて以下のシェルスクリプト書き、早速試したところ、 ゆっくりとだがcrashポイントからのcall stackがdumpされ、便利なのが実感できた。(多少、ソースの行番号がずれるバグがあるけど、問題にならない) #!/bin/sh adb logcat | ndk-stack -sym obj/local/armeabi Google, Thanks! PS 直近の不満ですが、gdbはpythonが使えるバージョンにしてくださいw  最新マクロが使えません。 そのため、毎回armeabi版を手動でインストールするのが面倒です。 またこれはndkというよりもgnu向けですがLinux上、gdb uiモードでutf-8を正常表示できないものか? 誰かご存知でしたら教えてください。