android - Loading Bitmaps and display in ImageView Efficiently -


my program decode bitmap , display it.

the origin decode code , display code works perfect on pc.

when use code in android device, code can decode stream.

the problem image show in imageview is't efficiently.

below part of code

i use thread call decode function , show on imageview

class processdata extends thread{     message message;         string obj="run";         readrawfileimage readmyrawdata=new readrawfileimage();       public void run() {              log.e("///enter processdata thread ","processdata thread");            while(true){         bitmap image=bitmap.createbitmap (320, 240, bitmap.config.rgb_565);                     image.setpixels(pixeldata,0,320 ,0 ,0,320,240);         message = handler.obtainmessage(1,obj);         handler.sendmessage(message);             }    public handler handler = new handler(){        @suppresslint("newapi")     @override     public void handlemessage(message msg) {             super.handlemessage(msg);                        string msgstring = (string)msg.obj;              if (msgstring.equals("run"))             {             log.e("///enter handler ","setimagebitmap");                                                                                                                              myimageview.setimagebitmap(image);              }       } }; 

logcat

   05-21 20:11:44.845: e/1(7267): 1    05-21 20:11:44.845: e/processdata thread(7267): processdata thread    05-21 20:11:44.845: e////enter handler(7267): setimagebitmap    05-21 20:11:44.855: d/dalvikvm(7267): gc_concurrent freed 1k, 22% free 10613k/13575k, paused 12ms+2ms, total 34ms    05-21 20:11:44.855: d/dalvikvm(7267): wait_for_concurrent_gc blocked 8ms    05-21 20:11:44.915: d/dalvikvm(7267): gc_concurrent freed 895k, 25% free 10225k/13575k, paused 13ms+6ms, total 39ms    05-21 20:11:44.980: d/dalvikvm(7267): gc_concurrent freed 439k, 25% free 10298k/13575k, paused 2ms+4ms, total 35ms    05-21 20:11:44.980: d/dalvikvm(7267): wait_for_concurrent_gc blocked 22ms    05-21 20:11:45.030: d/dalvikvm(7267): gc_concurrent freed 473k, 24% free 10337k/13575k, paused 1ms+4ms, total 26ms    05-21 20:11:45.030: d/dalvikvm(7267): wait_for_concurrent_gc blocked 18ms    05-21 20:11:45.095: d/dalvikvm(7267): gc_concurrent freed 467k, 24% free 10382k/13575k, paused 2ms+2ms, total 46ms    05-21 20:11:45.100: d/dalvikvm(7267): wait_for_concurrent_gc blocked 41ms    05-21 20:11:45.185: d/dalvikvm(7267): gc_concurrent freed 450k, 24% free 10443k/13575k, paused 12ms+5ms, total 55ms    05-21 20:11:45.185: d/dalvikvm(7267): wait_for_concurrent_gc blocked 29ms    05-21 20:11:45.255: d/dalvikvm(7267): gc_concurrent freed 469k, 23% free 10486k/13575k, paused 12ms+5ms, total 48ms    05-21 20:11:45.255: d/dalvikvm(7267): wait_for_concurrent_gc blocked 27ms    05-21 20:11:45.320: d/dalvikvm(7267): gc_concurrent freed 455k, 23% free 10542k/13575k, paused 12ms+5ms, total 48ms    05-21 20:11:45.320: d/dalvikvm(7267): wait_for_concurrent_gc blocked 22ms    05-21 20:11:45.395: d/dalvikvm(7267): gc_concurrent freed 448k, 22% free 10605k/13575k, paused 11ms+5ms, total 50ms    05-21 20:11:45.395: d/dalvikvm(7267): wait_for_concurrent_gc blocked 25ms 

.....................

and set bitmap again!

and show kind of 10605k/13575k, paused 11ms+5ms, total 50ms again~~

imageview not built video previews. , don't create bitmap's on fly in real time applications either.

use surfaceview,textureview or surfacetexture rendering camera frames.


Comments

Popular posts from this blog

blackberry 10 - how to add multiple markers on the google map just by url? -

php - guestbook returning database data to flash -

delphi - Dynamic file type icon -