Selam Arkadaşlar Video text dovız hava durumu gibi bilgileri sunucudan cekip gösterdiğim bir uygulama yaptım.B uygulama belli bir sure sonra " dalvikvm-heap Grow heap (frag case) to 7.444MB for 3145744-byte allocation" hatası almaktayım.Bu memorının dolmasından kaynaklanıyor cunku birçok thread mevcut.marque text kullnıyorum.video ve resimleri sıra ilegosteriyorm vesair.Bu problemı nasıl aşacagım hakkında bır fıkrı olan varsa yardımcı olsun lutfen. Şimdiden Teşekkürler.

soruldu: 17 Oca '14, 04:39

Numan's gravatar image

Numan
673101422
cevap kabul oranı: 6%

değiştirildi: 17 Oca '14, 04:42

Bence odaklanmanız gereken konu programınız neden şişiyor olmalı.. Benim düşüncem sıra ile gösterdiğiniz video ve resimlerin ekran dışına çıktıklarında memory'den de temizlenmiş olmaları gerekliliği... Her gelen yeni veride bu görselleri veya videoları yanyana ekliyorsanız ve eskileri hala memory de kalmaya devam ediyorsa yanlış yaptığınız bir durum var demektir. Zaten bu sistemi oturtmamış iseniz ne kadar memory'i arttırırsanız arttırın eninde sonunda program şişecektir.

(21 Oca '14, 07:44) dreampowder dreampowder's gravatar image

Oncelikle Katkın için teşekkürler. Ancak her seferınde aynı resim veya video için çeşitli aşamalardan geçerek yeniden yüklemesi daha çok memory tüketir diye düşündüm.Ayrıca Playlist olarak adlandıracağımız gosterim listesinin içeriği hep aynı liste bitince başa dönüp aynı listeyi tekrardan çalıyor.Bunun için bellek temizleme işleminin daha çok şişirececeğini düşünmekteyim.Bir şey daha belirmem gerekir ise senın yolunu izleyerek timer ile belleği temizledim.Ancak uygulam belirli bir süre sonra tamamen durdu.

(21 Oca '14, 09:12) Numan Numan's gravatar image

Açıkçası ben ios programcısıyım. IOS'ta biz bu olaya "reusable view" lar deriz. bu mantıkta mesela seninki gibi bir sistemde kabaca hafızada ekranda görünen görseller + ekranın dışındaki sağ ve sol görseller yüklüdür. mesela ekranı sağa doğru kaydırdığında soldaki n+2. hücrenin içeriği temizlenir ve en sağdaki n+2 hücre olarak tekrar kullanılır. ters yöndede tam tersi işleyiş. Ayrıca hücre içeriklerini "lazy loading" yani sadece ekrana geldikleirnde yükleyebilirsin.. bununla ilgili bir araştırmada aşağıdaki linki buldum http://stackoverflow.com/questions/11684520/efficient-listview-in-android

(21 Oca '14, 11:24) dreampowder dreampowder's gravatar image

Selamlar. Bu problemi çözdüm.Sanırım benim savundugum mantık burada cok dogru olmayabılır.Android ımageview companent ini ilk gösterimden sonra cashleyerek problemi Çözdüm .Ancak Bu en dogrusumudur bilemeyeceğim. Teşekkğrler.

(06 Şub '14, 02:58) Numan Numan's gravatar image

recycle() metodunu bi araştirmanı tavsiye ederim.

permanent link

cevaplandı: 22 Oca '14, 01:25

H4k4nn's gravatar image

H4k4nn
913
cevap kabul oranı: 25%

Teşekkürler

(06 Şub '14, 02:59) Numan Numan's gravatar image
onlowMemory()

Dökümantasyon

bu metodu implement edebilirsin fakat bu tüm cihazın memorysini ölçüyor cihazı diğer uygulamalarda doldurabilir uygulamanın tükettiği heap kontrol edilip istenilen limitte tutulması daha doğru bir çözüm gibi duruyor

Burada detaylı bir şekilde anlatılmış app paketinin altında ActivityManager in içinde

getMemoryClass()

şeklinde bir metod var heap size ı dönüyor her thread de bu metodu çağır ne kadar tüketim söz konusu ise metod MB dönüyor o değeride log a basabilirsin .Ama bence asıl sorun memory yi ne şişiriyor onu bilebilmekte sonuçta dolup dolmadığını her türlü anlarsın mesela yazımı dolduruyor yoksa indirilen datamı bunu bilebilir isek geride kalan kısmı daha kolay olucaktır

permanent link

cevaplandı: 17 Oca '14, 08:13

abdurrahman's gravatar image

abdurrahman
1072
cevap kabul oranı: 0%

Sanırım memoriyi dolduran image view .Bir şekilde fotoları hafıza da tuttugunu varsayıyorum.

(21 Oca '14, 09:14) Numan Numan's gravatar image
-1

Hoca proje ödevi olarak hava durumu yapmamı söyledi ama fazla bir bilgim yok zorlanıyorum projede yardımcı olma şansın var mı

permanent link

cevaplandı: 20 May '14, 11:35

emric's gravatar image

emric
1111
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
×7
×5
×2
×1

Soruldu: 17 Oca '14, 04:39

Görüntüleme: 988 kez

Son güncelleme: 20 May '14, 11:35

powered by BitNami OSQA