Arkadaşlar merhaba. Yazdığım uygulamada pek çok fragment kullanılıyor. Bu fragmentlerda bitmap göstermek için fancycoverflow nesnesi kullanıyorum.

Uygulama belirsiz yer ve zamanlarda , fragment açılırken outofmemory hatası veriyor. Pek cok önlem aldım , hatayı aza indirgedim ancak yok edemiyorum. Fikir verirseniz secinirim.Teşekkürler iyi çalışmalar.

Tam hata çıktısı şu şekilde ;

10-25 16:52:41.202 3346-3346/com.example.emre.touchlifever1 E/dalvikvm-heap﹕ Out of memory on a 910016-byte allocation. 10-25 16:52:41.252 3346-3346/com.example.emre.touchlifever1 E/AndroidRuntime﹕ FATAL EXCEPTION: main java.lang.OutOfMemoryError at android.graphics.Bitmap.nativeCreate(Native Method) at android.graphics.Bitmap.createBitmap(Bitmap.java:689) at android.graphics.Bitmap.createBitmap(Bitmap.java:666) at android.graphics.Bitmap.createBitmap(Bitmap.java:633) at at.technikum.mti.fancycoverflow.FancyCoverFlowItemWrapper.onLayout(FancyCoverFlowItemWrapper.java:173) at android.view.View.layout(View.java:14008) at android.view.ViewGroup.layout(ViewGroup.java:4373) at android.widget.Gallery.setUpChild(Gallery.java:923) at android.widget.Gallery.makeAndAddView(Gallery.java:858) at android.widget.Gallery.layout(Gallery.java:665) at android.widget.Gallery.onLayout(Gallery.java:357) at android.view.View.layout(View.java:14008) at android.view.ViewGroup.layout(ViewGroup.java:4373) at android.widget.RelativeLayout.onLayout(RelativeLayout.java:1021) at android.view.View.layout(View.java:14008) at android.view.ViewGroup.layout(ViewGroup.java:4373) at android.widget.RelativeLayout.onLayout(RelativeLayout.java:1021) at android.view.View.layout(View.java:14008) at android.view.ViewGroup.layout(ViewGroup.java:4373) at android.widget.RelativeLayout.onLayout(RelativeLayout.java:1021) at android.view.View.layout(View.java:14008) at android.view.ViewGroup.layout(ViewGroup.java:4373) at android.widget.RelativeLayout.onLayout(RelativeLayout.java:1021) at android.view.View.layout(View.java:14008) at android.view.ViewGroup.layout(ViewGroup.java:4373) at android.widget.FrameLayout.onLayout(FrameLayout.java:448) at android.view.View.layout(View.java:14008) at android.view.ViewGroup.layout(ViewGroup.java:4373) at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1663) at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1521) at android.widget.LinearLayout.onLayout(LinearLayout.java:1434) at android.view.View.layout(View.java:14008) at android.view.ViewGroup.layout(ViewGroup.java:4373) at android.widget.FrameLayout.onLayout(FrameLayout.java:448) at android.view.View.layout(View.java:14008) at android.view.ViewGroup.layout(ViewGroup.java:4373) at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:1895) at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1714) at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:992) at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:4376) at android.view.Choreographer$CallbackRecord.run(Choreographer.java:791) at android.view.Choreographer.doCallbacks(Choreographer.java:591) at android.view.Choreographer.doFrame(Choreographer.java:561) at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:777) at android.os.Handler.handleCallback(Handler.java:725) at android.os.Handler.dispatchMessage(Handler.java:92) at android.os.Looper.loop(Looper.java:152) at android.app.ActivityThread.main(ActivityThread.java:5132) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:511) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560) at dalvik.system.NativeStart.main(Native Method) 10-25 16:52:41.252 3346-3346/com.example.emre.touchlifever1 E/AndroidRuntime﹕ Hprof root directories not accessible, cancel the generation

soruldu: 25 Eki '14, 09:59

emres's gravatar image

emres
1111
cevap kabul oranı: 0%


İyi çalışmalar sorununuz imajın büyüklüğünden kaynaklı, buyüzden outoffmemory hatası alırsınız. Algoritmanızı değiştirirseniz sorunuzu çözülecektir. Örnek kullanım burdan

BitmapFactory.Options options=new BitmapFactory.Options(); options.inSampleSize = 8; Bitmap preview_bitmap=BitmapFactory.decodeStream(is,null,options);

options.inSampleSize = 8; değeri üzerinde oynama yaparak değişikliği görebilirsiniz.

İyi çalışmalar dilerim.

permanent link

cevaplandı: 20 Kas '14, 05:38

uzo2008's gravatar image

uzo2008
340369
cevap kabul oranı: 13%

değiştirildi: 20 Kas '14, 06:31

Selamlar,

Manifest.xml de application tag ine android:largeHeap="true" eklemeyi dener misin?

permanent link

cevaplandı: 21 Kas '14, 10:26

%C3%96nder's gravatar image

Önder
816142333
cevap kabul oranı: 26%

Bu hata genellikle yazılan kod içerisinde verimsiz bir (ya da birkaç) döngünün sonucu olarak ortaya çıkar ki bu da tasarım hatası anlamına gelir. Eğer problemin çözümü için algoritmayı revize ettiğiniz halde çözülmüyorsa, elimizdeki teknoloji sizin için yeterli değil demektir :)

Ancak muhtemelen bir yerlerde bir şeyi bellekte gereksiz yere tutuyorsunuz, o yüzden bellek doluyordur.

permanent link

cevaplandı: 25 Eki '14, 11:40

yigitozdemir's gravatar image

yigitozdemir
511
cevap kabul oranı: 0%

yorum için teşekkürler ancak bana daha somut bilgiler lazım. örneğin bu gereksiz yere bellekte tutulan nesneleri nasıl tespit edebilirim?

(25 Eki '14, 15:21) emres emres's gravatar image

Memory analyzer tool 'unu kullanarak bakabilirsin. Burdaki dökümandan yardım alabilirsin. http://www.vogella.com/tutorials/EclipseMemoryAnalyzer/article.html

(24 Kas '14, 12:14) semihozkoroglu semihozkoroglu's gravatar image

Önder teşekkür ederim sayende sorun çözüldü. ama daha doğru kullanabilmek için http://developer.android.com/training/displaying-bitmaps/index.html buradan da destek almakta fayda görüyorum. İyi günler

permanent link

cevaplandı: 08 Tem '15, 20:13

mstfssk's gravatar image

mstfssk
0
cevap kabul oranı: 0%

Cevabınız
toggle preview

Bu soruyu takip et

E-Posta üzerinden:

Üyelik girişi yaptıktan sonra abonelik işlemlerini yapabilirsiniz

RSS üzerinden:

Cevaplar

Cevaplar ve Yorumlar

Yazı Formatlama

  • *italic* ya da _italic_
  • **bold** ya da __bold__
  • link:[text](http://url.com/ "başlık")
  • resim?![alt text](/path/img.jpg "başlık")
  • liste: 1. Foo 2. Bar
  • temel HTML etiketleri de kullanılabilir

Bu sorunun etiketleri:

×819
×16
×3
×2

Soruldu: 25 Eki '14, 09:59

Görüntüleme: 1,047 kez

Son güncelleme: 08 Tem '15, 20:13

powered by BitNami OSQA