Wednesday, October 20, 2010

在Android上讓兩個SurfaceView 疊在一起

在android的設計上
兩個surfaceview是不能疊在一起的

例如想要一個小小的VideoView疊在一個一直在畫圖的SurfaceView上
你會發現videoview一直是出不來的  (不過是可以有聽到video聲音)

之前發現 在WindowManager有一個hidden的field
(也太賊了吧  SDK都找不到 某天在source code才看到)

TYPE_APPLICATION_MEDIA_OVERLAY


所以magic就是
SurfaceView.setWindowType(WindowManager.LayoutParams.TYPE_APPLICATION_MEDIA_OVERLAY);


不過後來在1.6或2.0有開一個API 在SurfaceView上
 public void setZOrderMediaOverlay
其實這就是會接回到上面講的那個hidden field

Friday, October 15, 2010

在v8的javascript file加log

最近發現v8一直死在從native call javascript function call的時候一直死掉
苦無log可尋

可以想學 d8.cc中 create 一個 FunctionTemplete 來印
可是後來發現  其實runtime.cc 中有一個Runtime_Log  function就可以用了

不過要先把log_runtime 的option 打開
跟define  ENABLE_LOGGING_AND_PROFILING

不過還不確定詳細的功能就是了

簡單的印log就
%Log('hello', [""]);

要用c的printf   後面是 valist那種  後面的js array還不知道怎麼用就是了

Tuesday, October 12, 2010

resources.arsc不一樣了

在android的apk 裡
都會夾著一個resource.arsc
他是從 res/裡的像 values/strings.xml 轉過來的

可是最近在android-2.2.1上發現(可能是Gingerbread了)
resoures.arsc格式有點不一樣了

本來是UTF-16LE
就是每個字元會兩個byte的

但是2.2.1上  只剩一個byte了
變成有點像ascii還是utf-8了

不知道為什麼resources.arsc要變就是了........

PS 2010/12/07
在Android 新出來的SDK 2.3 Gingerbrand
發現並沒有這問題
看來是AOSP那個build有些改變吧..........

Thursday, September 9, 2010

在froyo上找native memory leak

link

setprop libc.debug.malloc 1 or 5 or 10

javascript:void(0)

Tuesday, August 17, 2010

gcin on ubuntu

sudo vi /usr/lib/gtk-2.0/2.10.0/immodule-files.d/gcin.immodules

"gcin" "gcin Input Method" "gcin" "/usr/share/locale" "" <- 最後面本來是 "*" 把*拿掉

Wednesday, August 11, 2010

ubuntu lucid on lenovo x201

boot option 後面的 -- 刪除
加上xforcevesa i915.modeset=0