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 -~----------~----~----~----~------~----~------~--~---