hi Streets Of Boston,
Thanks for your reply..
I am new to android develoment..
Here is my code.. Kindly tell me what change i should do in this.
Im downloading the image in a separate thread. But im calling the
thread inside onCreate(). Is this the problem?

Thanks.


import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.net.URL;

import android.app.Activity;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Bundle;
import android.os.Handler;
import android.widget.ImageView;

public class ViewStorageImage extends Activity{
        private String url;
        ImageView iv;
        Runnable viewActualImage;
        Handler storageActualImageHandler;
        Thread t;
        @Override
        public void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                Intent i = getIntent();
                Bundle ext = i.getExtras();
                url = ext.getString("url");
                storageActualImageHandler = new Handler();
                viewActualImage = new Runnable() {
                        public void run() {
                                viewImage();
                        }
                };
                new Thread() {
                        @Override
                        public void run() {
                                storageActualImageHandler.post(viewActualImage);
                        }
                }.start();
        }

        public void viewImage() {
                try {
                        URL myURL = new URL(url);
                        final BufferedInputStream bis = new 
BufferedInputStream(myURL
                                        .openStream(), 1024);
                        final ByteArrayOutputStream dataStream = new 
ByteArrayOutputStream
();
                        BufferedOutputStream out = new 
BufferedOutputStream(dataStream,
                                        1024);
                        copy(bis, out);
                        out.flush();
                        final byte[] data = dataStream.toByteArray();
                        BitmapFactory.Options bfo = new BitmapFactory.Options();
                        bfo.inSampleSize = 2;
                        Bitmap bm = BitmapFactory
                                        .decodeByteArray(data, 0, data.length, 
bfo);
                        bis.close();
                        iv=new ImageView(getApplicationContext());
                        iv.setImageBitmap(bm);
                        setContentView(iv);

                } catch (Exception e) {
                }
        }

        static final int BUFF_SIZE = 1024;
        static final byte[] buffer = new byte[BUFF_SIZE];

        public static void copy(BufferedInputStream in, BufferedOutputStream
out)
                        throws IOException {
                try {

                        while (true) {
                                synchronized (buffer) {
                                        int amountRead = in.read(buffer);
                                        if (amountRead == -1) {
                                                break;
                                        }
                                        out.write(buffer, 0, amountRead);
                                }
                        }
                }
                catch(Exception e)
                {
                        if (in != null) {
                                in.close();
                        }
                        if (out != null) {
                                out.close();
                        }
                }
                        finally {
                        if (in != null) {
                                in.close();
                        }
                        if (out != null) {
                                out.close();
                        }
                }
        }
}






On Apr 9, 8:46 pm, Streets Of Boston <flyingdutc...@gmail.com> wrote:
> How are you downloading your images?
> Are you doing this in your main message-thread?  (e.g. in a
> onSomethingSomething(...) method?)
>
> If so, this causes your problem.
>
> Start a new thread. Have this thread download your image when
> necessary.
> When you thread is done, have it post back to the main message-thread
> with the resulting bitmap.
>
> On Apr 9, 10:12 am, Ramesh <ramesh.pauldu...@gmail.com> wrote:
>
> > hi,
> > I am working on an android project where the local and remote image
> > files and their thumbnails are to be displayed. Now i have a problem
> > with displaying the remote images. If i click the back button when the
> > application is connected with the server, It waits for few seconds and
> > forces my application to close. Log has a message "Key dispatching
> > timed out". Once the image has downloaded completely back button is
> > working, Here is my log.. Kindly help me in this.
>
> > here is my log.
>
> > 04-09 19:32:42.992: INFO/ActivityManager(52): Starting activity:
> > Intent { comp={com.androidstorage/com.androidstorage.ViewStorageImage}
> > (has extras) }
> > 04-09 19:32:43.282: INFO/ActivityManager(52): Displayed activity
> > com.androidstorage/.ViewStorageImage: 288 ms
> > 04-09 19:32:49.072: WARN/WindowManager(52): Key dispatching timed out
> > sending to com.androidstorage/com.androidstorage.ViewStorageImage
> > 04-09 19:32:49.131: INFO/ActivityManager(52): ANR (application not
> > responding) in process: com.androidstorage
> > 04-09 19:32:49.131: INFO/ActivityManager(52): Annotation:
> >keyDispatchingTimedOut
> > 04-09 19:32:49.131: INFO/ActivityManager(52): CPU usage:
> > 04-09 19:32:49.131: INFO/ActivityManager(52): Load: 0.01 / 0.1 / 0.07
> > 04-09 19:32:49.131: INFO/ActivityManager(52): CPU usage from 7516ms to
> > 51ms ago:
> > 04-09 19:32:49.131: INFO/ActivityManager(52):   com.androidstorage: 7%
> > = 5% user + 1% kernel
> > 04-09 19:32:49.131: INFO/ActivityManager(52):   system_server: 4% = 2%
> > user + 2% kernel
> > 04-09 19:32:49.131: INFO/ActivityManager(52):   com.android.phone: 0%
> > = 0% user + 0% kernel
> > 04-09 19:32:49.131: INFO/ActivityManager(52):   adbd: 0% = 0% user +
> > 0% kernel
> > 04-09 19:32:49.131: INFO/ActivityManager(52):   events/0: 0% = 0% user
> > + 0% kernel
> > 04-09 19:32:49.131: INFO/ActivityManager(52): TOTAL: 12% = 8% user +
> > 3% kernel
> > 04-09 19:32:49.131: INFO/ActivityManager(52): /proc/meminfo:
> > 04-09 19:32:49.131: INFO/ActivityManager(52): MemTotal:        94572
> > kB
> > 04-09 19:32:49.131: INFO/ActivityManager(52): MemFree:          6260
> > kB
> > 04-09 19:32:49.131: INFO/ActivityManager(52): Buffers:           108
> > kB
> > 04-09 19:32:49.131: INFO/ActivityManager(52): Cached:          39188
> > kB
> > 04-09 19:32:49.131: INFO/ActivityManager(52): SwapCached:          0
> > kB
> > 04-09 19:32:49.131: INFO/ActivityManager(52): Active:          67572
> > kB
> > 04-09 19:32:49.131: INFO/ActivityManager(52): Inactive:        11924
> > kB
> > 04-09 19:32:49.131: INFO/ActivityManager(52): SwapTotal:           0
> > kB
> > 04-09 19:32:49.131: INFO/ActivityManager(52): SwapFree:            0
> > kB
> > 04-09 19:32:49.131: INFO/ActivityManager(52): Dirty:               0
> > kB
> > 04-09 19:32:49.131: INFO/ActivityManager(52): Writeback:           0
> > kB
> > 04-09 19:32:49.131: INFO/ActivityManager(52): AnonPages:       40208
> > kB
> > 04-09 19:32:49.131: INFO/ActivityManager(52): Mapped:          22952
> > kB
> > 04-09 19:32:49.131: INFO/ActivityManager(52): Slab:             3256
> > kB
> > 04-09 19:32:49.131: INFO/ActivityManager(52): SReclaimable:      676
> > kB
> > 04-09 19:32:49.131: INFO/ActivityManager(52): SUnreclaim:       2580
> > kB
> > 04-09 19:32:49.131: INFO/ActivityManager(52): PageTables:       2708
> > kB
> > 04-09 19:32:49.131: INFO/ActivityManager(52): NFS_Unstable:        0
> > kB
> > 04-09 19:32:49.131: INFO/ActivityManager(52): Bounce:              0
> > kB
> > 04-09 19:32:49.131: INFO/ActivityManager(52): CommitLimit:     47284
> > kB
> > 04-09 19:32:49.131: INFO/ActivityManager(52): Committed_AS:   958532
> > kB
> > 04-09 19:32:49.131: INFO/ActivityManager(52): VmallocTotal:   876544
> > kB
> > 04-09 19:32:49.131: INFO/ActivityManager(52): VmallocUsed:     11464
> > kB
> > 04-09 19:32:49.131: INFO/ActivityManager(52): VmallocChunk:   852988
> > kB
> > 04-09 19:32:49.131: INFO/ActivityManager(52): Removing old ANR trace
> > file from /data/anr/traces.txt
> > 04-09 19:32:49.140: INFO/Process(52): Sending signal. PID: 652 SIG: 3
> > 04-09 19:32:49.140: INFO/dalvikvm(652): threadid=7: reacting to signal
> > 3
> > 04-09 19:32:49.152: INFO/dalvikvm(652): Wrote stack trace to '/data/
> > anr/traces.txt'
> > 04-09 19:32:49.152: INFO/Process(52): Sending signal. PID: 93 SIG: 3
> > 04-09 19:32:49.152: INFO/dalvikvm(93): threadid=7: reacting to signal
> > 3
> > 04-09 19:32:49.162: INFO/dalvikvm(93): Wrote stack trace to '/data/anr/
> > traces.txt'
> > 04-09 19:32:49.162: INFO/Process(52): Sending signal. PID: 194 SIG: 3
> > 04-09 19:32:49.162: INFO/dalvikvm(194): threadid=7: reacting to signal
> > 3
> > 04-09 19:32:49.172: INFO/dalvikvm(194): Wrote stack trace to '/data/
> > anr/traces.txt'
> > 04-09 19:32:49.181: INFO/Process(52): Sending signal. PID: 124 SIG: 3
> > 04-09 19:32:49.181: INFO/dalvikvm(124): threadid=7: reacting to signal
> > 3
> > 04-09 19:32:49.181: INFO/dalvikvm(124): Wrote stack trace to '/data/
> > anr/traces.txt'
> > 04-09 19:32:49.181: INFO/Process(52): Sending signal. PID: 170 SIG: 3
> > 04-09 19:32:49.181: INFO/dalvikvm(170): threadid=7: reacting to signal
> > 3
> > 04-09 19:32:49.191: INFO/dalvikvm(170): Wrote stack trace to '/data/
> > anr/traces.txt'
> > 04-09 19:32:49.191: INFO/Process(52): Sending signal. PID: 188 SIG: 3
> > 04-09 19:32:49.191: INFO/dalvikvm(188): threadid=7: reacting to signal
> > 3
> > 04-09 19:32:49.201: INFO/Process(52): Sending signal. PID: 52 SIG: 3
> > 04-09 19:32:49.201: INFO/dalvikvm(188): Wrote stack trace to '/data/
> > anr/traces.txt'
> > 04-09 19:32:49.201: INFO/dalvikvm(52): threadid=7: reacting to signal
> > 3
> > 04-09 19:32:49.230: INFO/dalvikvm(52): Wrote stack trace to '/data/anr/
> > traces.txt'
> > 04-09 19:32:49.242: INFO/Process(52): Sending signal. PID: 134 SIG: 3
> > 04-09 19:32:49.242: INFO/dalvikvm(134): threadid=7: reacting to signal
> > 3
> > 04-09 19:32:49.252: INFO/dalvikvm(134): Wrote stack trace to '/data/
> > anr/traces.txt'
> > 04-09 19:32:49.252: INFO/Process(52): Sending signal. PID: 88 SIG: 3
> > 04-09 19:32:49.252: INFO/dalvikvm(88): threadid=7: reacting to signal
> > 3
> > 04-09 19:32:49.291: INFO/dalvikvm(88): Wrote stack trace to '/data/anr/
> > traces.txt'
>
> > Thanks in advance..
>
> > Ramesh
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers-unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to