T.C. İZMİR KÂTİP ÇELEBİ ÜNİVERSİTESİ BİLİMSEL ARAŞTIRMA PROJELERİ KOORDİNASYON BİRİMİ KABLOSUZ İLETİŞİM KURABİLEN MOBİL CİHAZLAR İÇİN ENERJİ ETKİN ALGORİTMALARIN GELİŞTİRİMİ VE PERFORMANS ANALİZ GERÇEKLEŞTİRİMİ Proje No: 2015-GAP-MÜMF-0015 GAP SONUÇ RAPORU Proje Yürütücüsü: Doç.Dr. Ayşegül Alaybeyoğlu Yılmaz Bilgisayar Mühendisliği Bölümü Aralık 2016 İZMİR 1
2
TEŞEKKÜR Proje önerimizin kabul edilmesi ve talep edilen cihazların temin edilmesinde vermiş olduğu destekten dolayı İzmir Kâtip Çelebi Üniversitesi ne teşekkür ederiz. 3
İÇİNDEKİLER Sayfa No ÖZET 5 ABSTRACT 5 1.GİRİŞ/AMAÇ VE KAPSAM 6 2. GENEL BİLGİLER 6 3. GEREÇ VE YÖNTEM 8 4. BULGULAR 12 5. TARTIŞMA VE SONUÇ 18 6. KAYNAKLAR 18 7. EKLER 18 4
ÖZET İnsanların günlük yaşantılarının bir parçası haline gelmiş olan mobil uygulamalar, cep telefonları veya tablet gibi kablosuz iletişim kurabilen mobil cihazlar üzerinde çalışmaları amacıyla tasarlanmışlardır. Özellikle de son yıllarda, akıllı telefon teknolojilerindeki gelişmeler ile birlikte, insanlar birbirleri ile çok daha kolay ve hızlı iletişim kurabilmekte, resim ve video gibi büyük boyuttaki verileri birbirlerine iletebilmektedirler. Cep telefonlarının sahip oldukları enerji kısıtından dolayı, özellikle de büyük boyuttaki verilerin iletiminde sıkıştırma konusu önem arz etmektedir. Bu projede, mobil cihazlar için kullanıcıların resimlerini yükleyip istedikleri oranda sıkıştırma işlemini yapabildikleri ve sıkıştırılmış bu resmi diğer cihazlara iletebildikleri bir arayüz tasarlanmıştır. Görüntü sıkıştırma algoritması uygulaması için Java Android Programlama dili kullanılırken, arayüz tasarımları için XML kullanılmıştır. Anahtar Kelimeler: Android Programlama, Kablosuz İletişim, Görüntü Sıkıştırma ABSTRACT Mobile applications which are very integrated to people s daily life activities are designed to run on mobile devices. Especially in recent years, with the development in smarth phone technologies, people can communicate, share pictures and videos with each other very rapidly and easily. Because of the energy contraints of mobile phones, compression of huge data such as image and video, becomes an important topic especially while transmitting them between mobile devices. In this project, a mobile application which provides user an interface to load, compress and transmit image data is designed for Android based mobile devices. While Java Android Programming Tool is used for implementing image compression, XML is used for user interfaces. With this application, user will be able to decide the ratio of compression and share compressed data via programs such as WhatsApp, Facebook and Messenger. Keywords: Android Programming, Wriless Communication, Image Compression 5
GİRİŞ / AMAÇ VE KAPSAM Akıllı mobil cihaz teknolojilerindeki gelişmelerin sağladığı günlük yaşamdaki kolaylıklar, insanların bu cihazları daha sık ve yoğun kullanımına sebep olmuştur. Mobil cihazlardaki uygulamalar sayesinde istenilen yer ve zamanda bilgiye her an erişim mümkün olmakla birlikte, anlık görüntü veya video paylaşımları da yapılabilmektedir. Bütün bu uygulamaların sağladığı kolaylıkların yanında getirdiği enerji maliyeti de bulunmaktadır. Mobil cihazların sahip oldukları enerjinin, belirtilen uygulamaların sık kullanılması sonucu hiç beklenmedik bir zamanda tükenmesi ve insanların ulaşılabilirliğinin kısıtlanması günlük yaşamda bir sorun haline gelmiştir. Bu sorunlara geçici çözüm olarak havaalanları, otogarlar gibi belirli yerlere şarj dolum cihazları yerleştirilmiştir. Bu proje kapsamında mobil cihazlar için geliştirilen görüntü sıkıştırma uygulaması ile, mobil kullanıcılarının birbirlerine resim gibi büyük boyuttaki verileri iletirken, mobil cihazlarındaki enerji tüketiminin azaltılması hedeflenmektedir. Bu amaçla geliştirilen görüntü sıkıştırma uygulamasına kullanıcılar seçtikleri resmi yükleyebilecek, istedikleri oranda sıkıştırabilecek, WhatsApp, Facebook ve Messenger gibi programları kullanarak istedikleri kişilere sıkıştırılmış resmi gönderebilecektir. GENEL BİLGİLER Mobil cihazların kablosuz iletişim kurabilmesi imkanı ile, insanlar çok rahat bilgi paylaşımında bulunabilmekte ve birbirleri ile iletişime geçebilmektedir. Kablosuz iletişim için geliştirilen teknolojiler hızla ilerleme ve gelişim göstermektedir. İlk geliştirilen sistem olan 1G de sesin analog olarak iletilmesi üzerinde durulmuştur. [1,2] de 1G iletişimin geliştirilmesi ile ilgili çalışmalarda bulunulmuştur. 2G iletişim ile birlikte kapasite ve kapsama alanı kavramları gündeme gelmiştir. 1G iletişim ile kıyaslandığında, daha yüksek spektrum etkinliği, daha iyi veri servisi ve daha gelişmiş hareketlilik olanağı sağlanmıştır. 2G üzerine yapılan çalışmalardan birisi de [3] tür. Teknoloji platformundan bağımsız olarak servis sunabilecek ve network tasarım standardı global olarak aynı olan bir sistem geliştirilmesi amacıyla 3G önerilmiştir. Mobil iletişim sistemlerinde yeni teknolojilerin gelişmesi ile kullanıcı isteklerindeki artış ve çeşitlilik nedeniyle, 4G mobil iletişim sistemleri 6
geliştirilmiştir [4]. 4G sistemleri ile mevcut bütün mobil teknolojileri birleştirerek çok servisli sistem geliştirilmesi hedeflenmektedir [5]. Android işletim sistemine sahip mobil cihazlar için dosya sıkıştırma programları incelendiğinde, literatürde çeşitli sıkıştırma yöntemlerinin bulunduğu görülmüştür. 7Zipper, AndroZip, ArchiDroid, B1 Free Archiver, Easy Unrar, Unzip ve Zip, izip, RAR for ANdroid, Simple Unrar, Winzip, Xzip, ZArchiver bu yöntemlerden en çok bilinenlerindendir. 7Zipper, dosya sıkıştırma ve sıkıştırılmış dosyayı açmanın yanında aynı zamanda dosya yönetimi, uygulama yönetme gibi amaçlar için de kullanılabilmektedir. Dosya kopyalama, taşıma, yapıştırma, yeniden adlandırma, silme, sıkıştırma, açma, gönderme, dosya ve yazı içinde kelime arama, gibi özellikleri de içermektedir. AndroZip, yalnızca sıkıştırma işlemleri değil dosyaları yönetme ve organize etme işlemleri için de kullanılabilmektedir. Sıkıştırılmış dosyalar açılabilir, ayrıca dosya sıkıştırılıp mail de atılabilir. ArchiDroid, Android cihazlarda kullanılabilecek dosya arşivleme, sıkıştırma ve sıkıştırılmış dosyaları açma uygulamasıdır. B1 Free Archiver, açık kaynak kodlu bir yazılım olmakla birlikte, birçok farklı türde dosyanın sıkıştırılmasına imkan sağlamaktadır. Easy Unrar, Unzip ve Zip programları, rar ve zip dosyalarının Android uygulamalarında kolayca açılması için geliştirilmiş bir yazılım olup, kullanımı basit ve sade olması açısından avantajlar sunmaktadır. izip programı, büyük dosyaların sıkıştırılması, sıkıştırılmış dosyaların açılması, silme ve e-mail gönderme gibi işlemler için kullanılabilmektedir. RAR for ANdroid programı, WinRAR tarafından Android uygulamalar için geliştirilmiş bir programdır. Bu uygulama ile parola ve sıkıştırma formatı belirlenebilir ayrıca dosyalar parçalar halinde sıkıştırılabilmektedir. Simple Unrar programı ile arşiv dosyaları görüntülenebilir ve açılabilir. Bu program ile sadece rar dosyaları açılabilmektedir. Winzip programı, zip uzantılı dosyaların Android cihazlarda açılabilmesi için geliştirilmiş bir programdır. Bu program ile zip dosyasının içindeki içerikler panoya kopyalanıp, herhangi bir yere yapıştırılabilmektedir. Xzip, bir çok farklı uzantılı dosyayı sıkıştırma ve açma özelliğine sahip olup, ayrıca parola korumalı dosyaları da açabilmektedir. ZArchiver programı, Android cihazlarda, sıkıştırılmış dosya açma, dosya sıkıştırma, arşiv oluşturma, parola korumalı arşiv dosyalarını açma gibi işlemler gerçekleştirilebilmektedir. 7
GEREÇ VE YÖNTEM Projede mobil cihazlar arasında özellikle resim gibi büyük boyuttaki verilerin gönderimi esnasında enerji tüketiminin azaltılması amaçlanmıştır. Bunun sağlanabilmesi için de iletilecek dosyaların boyutunun sıkıştırılarak düşürülmesi gerekmektedir. Artık bilgisayarların yerini akıllı telefon ve tabletlerin almaya başladığı düşünülürse, mobil cihazlarda da kullanmak için sıkıştırma uygulamaları bulundurmak zorunluluk haline gelmiştir. Projenin tamamlanması için 5 temel aşamadan geçilmiştir: Kullanılacak Teknolojilerin Analizi, Genel Tasarım, Ayrıntılı Tasarım, Simülasyon Ortamında Kod Yazımı ve Geliştirilen Yazılımın Gerçek Ortama Aktarılması 1. Adım: Kullanılacak Teknolojilerin Analizi Proje kapsamında, BİTMAP sıkıştırma yönteminin kullanılmasına karar verilmiştir. Bu sıkıştırma yönteminin dosya formatından bağımsız olması ve koda müdahale edilebilir olması özellikleri yöntemin kullanılmasında tercih sebebi olmuştur. Android yüklü cep telefonu yazılımının geliştirilmesi için Android Studio yazılım programı bilgisayara yüklenmesine, Kodlama için Java Android programlama dilinin, Tasarım için de XML dilinin kullanılmasına karar verilmiştir. Bu amaçla, aşağıda belirtilen Cep Telefonu Android Yazılım Programları bilgisayara yüklenmiştir: Android Studio Anal Aygıt Emülatör SDK Android 7.0 Java Android XML 2. Adım: Genel Tasarım Geliştirilmesi planlanan görüntü dosyasının sıkıştırılarak göndericiden alıcıya düşük boyutta gönderilmesi uygulaması, Android yüklü cep telefonlarında çalışması düşünülerek tasarlanmıştır. Tasarımın sade, rahat kullanılabilir ve kullanıcı dostu olması hedeflenmiştir. Bu amaçla XML programlama dili kullanılarak tasarlanmış, Java Android programlama dili kullanılarak kodlanmış ve Android işletim sisteminin yüklü olduğu Samsung Note 4 e yüklemesi yapılarak test edilmiştir. 8
3. Adım: Ayrıntılı Tasarım Projenin ayrıntılı tasarımında, genel tasarımda belirtilen ana başlıkların içinin doldurulması hedeflenmiştir. Android yüklü cep telefonundan çekilmiş ve galeride bulunan bir fotoğrafı, dosya menüsünden seçip, telefon ekranında göstermek; yüklemesi yapılan resmin yüklendiği adresin, resim çözünürlüğünün ve resmin boyutunu ekranda göstermek, BİTMAP sıkıştırma yöntemi ile, yüklenen resmin hangi oranda sıkıştırılacağı gibi işlemler, projenin ayrıntılı tasarım aşamasında tamamlanmıştır. Mobil cihazda ayrıntılı tasarım, XML programlama dili kullanılarak gerçekleştirilmiştir. 4. Adım: Simülasyon Ortamında Kod Yazımı Proje kapsamında görüntü verisinin sıkıştırılabilmesi için BİTMAP Compression sıkıştırma algoritması kullanılmıştır. Bu amaçla, Android Studio, Anal Aygıt Emülatör, SDK Android 7.0, Java Android ve XML Cep Telefonu Android Yazılım Programları bilgisayarlara yüklenmiş olup, resim sıkıştırma algoritmasının gerçekleştirimi için Java Android programlama dili, Uygulama Tasarımı için de XML programlama dili kullanılmıştır. Simülasyon Ortamında Kod Yazımının yapıldığına dair örnek kod parçası aşağıdaki gibidir: ------------------------------------------------------------------------------------------------------------------------------ /* Uygulama Yazılımının Gerçekleştirilebilmesi için eklenmesi gereken Android paketleri*/ import android.content.intent; import android.database.cursor; import android.graphics.bitmap; /* Uygulama Tasarımındaki butonların, text boxların yazılıma tanıtılması ve görevlerinin tanımlanması*/ public class MainActivity extends AppCompatActivity implements View.OnClickListener { private static final int SELECT_PICTURE = 100; private static final String TAG = "MainActivity"; private ImageView imgview; private ImageButton btnsec, btnsikistir, btndetails, btngonder; private TextView txtboyut, txtcozunurluk, txtyol, txtyuzde, txtnewsize; public static String filepath, strboyut, strcozunurluk; private SeekBar seekbar; int progress = 0; protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); 9
setcontentview(r.layout.activity_main); btnsec = (ImageButton) findviewbyid(r.id.btnresimsec); btnsikistir = (ImageButton) findviewbyid(r.id.btnsikistir); btndetails = (ImageButton) findviewbyid(r.id.btndetails); btngonder = (ImageButton) findviewbyid(r.id.btngonder); imgview = (ImageView) findviewbyid(r.id.imgview); txtboyut = (TextView) findviewbyid(r.id.txtboyut); txtcozunurluk = (TextView) findviewbyid(r.id.txtcozunurluk); txtyol = (TextView) findviewbyid(r.id.txtyol); txtnewsize = (TextView) findviewbyid(r.id.txtnewsize); seekbar = (SeekBar) findviewbyid(r.id.sboran); txtyuzde = (TextView) findviewbyid(r.id.txtyuzde); seekbar.setonseekbarchangelistener(new SeekBar.OnSeekBarChangeListener() { public void onprogresschanged(seekbar seekbar, int progresvalue, boolean fromuser) { progress = progresvalue; String val = seekbar.getprogress() + getstring(r.string.yuzde); txtyuzde.settext(val); ); /* Galeriden resim seçilerek sisteme yükleme kodu */ void openimagechooser() { Intent intent = new Intent(); intent.settype("image/*"); intent.setaction(intent.action_get_content); startactivityforresult(intent.createchooser(intent, "Select Picture"), SELECT_PICTURE); public void onactivityresult(int requestcode, int resultcode, Intent data) { if (resultcode == RESULT_OK) { if (requestcode == SELECT_PICTURE) { // Get the url from data Uri selectedimageuri = data.getdata(); if (null!= selectedimageuri) { // Get the path from the Uri String path = getpathfromuri(selectedimageuri); Log.i(TAG, "Image Path : " + path); // Set the image in ImageView imgview.setimageuri(selectedimageuri); public String getpathfromuri(uri contenturi) { String[] proj = {MediaStore.Images.Media.DATA; Cursor cursor = getcontentresolver().query(contenturi, proj, null, null, null); if (cursor.movetofirst()) { int column_index = cursor.getcolumnindexorthrow(mediastore.images.media.data); filepath = cursor.getstring(column_index); cursor.close(); infoimage(); return filepath; 10
/* Resmin Sıkıştırıldığı Kod */ private void compressimage(int quality) { try { Bitmap yourselectedimage = BitmapFactory.decodeFile(filePath); File imagefile = new File(filePath); FileOutputStream outputstream = new FileOutputStream(imageFile); yourselectedimage.compress(bitmap.compressformat.jpeg, quality, outputstream); Toast.makeText(this, getstring(r.string.comp), Toast.LENGTH_SHORT).show(); File imgfile = new File(filePath); humanreadablebytecount(imgfile.length(), false); txtnewsize.settext(strboyut); catch (FileNotFoundException e) { e.printstacktrace(); Toast.makeText(this, getstring(r.string.error), Toast.LENGTH_SHORT).show(); /* Resmin Sıkıştırıldıktan Sonra Başka bir Mobil Cihaza Gönderme Kodu */ private void sendimage() { try { File imagefile = new File(filePath); Intent intent = new Intent(); intent.setaction(intent.action_send); Uri uri = Uri.fromFile(imageFile); intent.putextra(intent.extra_stream, uri); intent.setdataandtype(uri, "image/*"); startactivity(intent); catch (Throwable e) { e.printstacktrace(); Toast.makeText(this, getstring(r.string.error), Toast.LENGTH_SHORT).show(); /* Alıcı Mobil Cihaza Sıkıştırılmış Resim Ulaştığında Resmin Çözünürlüğü ve Boyutu ile ilgili bilgi veren Kod */ private void infoimage() { File imgfile = new File(filePath); humanreadablebytecount(imgfile.length(), false); txtboyut.settext(strboyut); int genislik = BitmapFactory.decodeFile(filePath).getWidth(); int yukseklik = BitmapFactory.decodeFile(filePath).getHeight(); strcozunurluk = genislik + " x " + yukseklik; txtcozunurluk.settext(strcozunurluk); txtyol.settext(filepath); public void humanreadablebytecount(long bytes, boolean si) { int unit = si? 1000 : 1024; if (bytes < unit) strboyut = bytes + " B"; int exp = (int) (Math.log(bytes) / Math.log(unit)); String pre = (si? "kmgtpe" : "KMGTPE").charAt(exp - 1) + (si? "i" : ""); strboyut = String.format("%.2f %sb", bytes / Math.pow(unit, exp), pre); 11
BULGULAR 5. Adım: Geliştirilen Yazılımın Gerçek Ortama Aktarılması Geliştirilen yazılım Android işletim sisteminin yüklü olduğu Samsung Note 4 mobil cihazına yükleme işlemi tamamlanmış olup, emülatör ortamında test edilen yazılımın gerçek ortama aktarılması sağlanmıştır. Aşağıda geliştirmiş olduğumuz yazılımın ekran görüntüleri ve detaylı açıklamaları sunulmaktadır. Şekil 1: Resim Sıkıştırma Uygulamasının Kısa Yol İkonu Resim Sıkıştırma Şekil 1 de geliştirmiş olduğumuz yazılımın cep telefonunda yüklü kısa yol ikonu gösterilmektedir. Şekil 2: Resim Sıkıştırma Uygulamasının Kısa Yol İkonu Kullanıcılar Play Store a nullovy yazdıklarında çıkan listeden geliştirmiş olduğumuz Resim Sıkıştırma uygulamasına cep telefonlarına yükleyerek uygulamamızdan faydalanabilirler. Cep telefonuna yükleme yapıldığında Şekil 2 de belirtilen kısa yol tuşu ekranda görülebilecektir. 12
Kullanıcı kısa yol ikonunu çift tıklayarak uygulamaya çalıştırabilmektedir ve Şekil 3 te belirtilen başlangıç ara yüzü ile karşılaşmaktadır. Şekil 3: Resim Sıkıştırma Uygulamasının Ana Ara yüzü Şekil 3 te belirtilen arayüzde kullanıcı Select a picture yazısının sağında bulunan ikona tıklayarak daha önce çekmiş ve cep telefonunda bulunan resimleri uygulamaya yükleyebilmektedir. Şekil 4, kullanıcının resimleri yükleyebileceği alan seçeneklerini göstermektedir. Şekil 4: Resim Sıkıştırma Uygulamasına Resim Yükleme Seçenekleri 13
Şekil 5: Resim Sıkıştırma Uygulamasına Resmin Yüklenmesi ve Resim Hakkında Bilgilerin Ara Yüz Ekranında Gözükmesi Şekil 4 te belirtilen herhangi bir alandan istenilen resim seçilir ve Şekil 5 te de görüldüğü gibi seçilen resim uygulamaya yüklenir. Yüklenen resim ile ilgili Dosya Yolu, Çözünürlük ve Boyut bilgileri Image Properties alanında görülebilmektedir. Kullanıcı Compression Ratio bölümünde resmi hangi oranda sıkıştıracağını belirler. Örneğin Şekil 5 te kullanıcı resmin %45 oranında sıkıştırılmasını seçmiştir. Şekil 6: Resmin Başarı ile Sıkıştırıldığına Dair Çıkan Ekran Mesajı 14
Şekil 6 da seçilen resmin belirlenen oranda sıkıştırıldığına dair çıkan ekran mesajı gösterilmektedir. Resmin sıkıştırıldıktan sonraki yeni boyutu ekranın sol alt köşesinde belirtilmektedir. Şekil 7: Sıkıştırılan Resmin Başka bir Mobil Kullanıcısına İletilmesi Şekil 7 de sıkıştırılan resmin başka bir mobil kullanıcıya gönderilebilmesi için kullanılabilecek programlar gösterilmektedir. Kullanıcı bu programlardan herhangi birini seçerek resim gönderme işlemini gerçekleştirebilir. Şekil 8 Sıkıştırılan Resmin : WhatsApp programına Yüklenmesi 15
Şekil 9 da kullanıcının WhatsApp programını seçmesi durumunda, sıkıştırılan resmin alıcı mobil kullanıcısına iletilmesi gösterilmektedir. Şekil 9: Sıkıştırılan Resmin WhatsApp programı ile Gönderici Tarafından Alıcıya İletilmesi Şekil 9 da sıkıştırılan resmin WhatsApp programı ile gönderici tarafından alıcıya iletilmesi gösterilmektedir. Şekil 10: Sıkıştırılan Resmin WhatsApp Programı ile Alıcı Tarafından Alınması 16
Şekil 10 da sıkıştırılan resmin WhatsApp programı ile alıcı tarafından alınması gösterilmektedir. Resmin görüntü kalitesinde sıkıştırmadan kaynaklı görüntü kalitesinde düşüş fark edilebilmektedir. Şekil 11: Gönderici ve Alıcı Mobil Cihazların WhatsApp Programı üzerinden Sıkıştırılarak İletilen Resim Görüntüleri Şekil 11 de Android yüklü Samsung Note 4 iki cihaz arasında WhatsApp Programı üzerinden sıkıştırılarak iletilen resim görüntüleri bulunmaktadır. Resmin görüntü kalitesindeki düşüşün sebebi %45 oranda sıkıştırılmasından kaynaklıdır. Şekil 12: Resmin iletilmesi sonucunda Gönderici Mobil Cihazındaki Batarya Durumu 17
Şekil 12 de sıkıştırılan resmin iletilmesi sonucunda gönderici mobil cihazındaki batarya durumu gösterilmektedir. Batarya detaylarında bulunan durum bilgisi cihazın şarja takılı olup olmadığını, seviye bilgisi bataryada kalan enerji miktarını, sağlık bilgisi cihazın düzgün çalışıp çalışmadığına dair bilgi, mevcut bilgisi bataryanın telefona takılı durumda olup olmadığını, takılı mı bilgisi cihazın bir yere takılı olup olmadığını (Örneğin USB cihazına takılı ise USB yazar), voltaj bilgisi bataryanın sahip olduğu voltajı, sıcaklık bilgisi bataryanın sıcaklığını ve teknoloji bilgisi de bataryanın türünü ifade etmektedir. Ayrıca resmin sıkıştırıldıktan sonraki bilgiler de ekranda gösterilmektedir. TARTIŞMA VE SONUÇ Bu projede geliştirilen algoritmalar ile günümüzün vazgeçilmez iletişim cihazları haline gelen cep telefonları arasındaki kablosuz iletişim için enerji etkin algoritmaların gerçekleşmesi hedeflenmiştir. Amacımız mobil cihazlar arasındaki iletişim sağlanırken, enerji tüketimini minimum seviyede tutmaktır. Bu amaçla bu mobil ve kablosuz iletişim kurabilen cihazlar üzerinde çalışacak yazılımlar gerçekleştirilmiştir. Projede belirtilen proje iş-zaman çizelgesine uygun olarak ilerlenmiş ve görüntü verisinin iki mobil kullanıcısı arasında sıkıştırılarak iletilmesi sağlanmıştır. Proje kapsamında yapılan çalışma, 2017 yılı ICRES uluslararası kongresi tarafından kabul edilmiştir ve kabul yazısı ekte sunulmuştur. Çalışmalarımız devam etmekte olup, SCI-indeksli bir dergide değerlendirilmek üzere bir makale hazırlanması üzerinde çalışılmaktadır. KAYNAKLAR [1] Toh, C. K. Ad Hoc Mobile Wireless Networks: Protocols and Systems, Prentice Hall, New Jersey, USA, 2002. [2] Mishra, Ajay K. Fundamentals of Cellular Network Planning and Optimization, 2G/2.5G/3G Evolution of 4G, John Wiley and Sons, 2004. [3] Chen, Yue (2003). Soft Handover Issues in Radio Resource Management for 3G WCDMA Networks, Queen Mary, University of London, [Online] Available: www.elec.qmul. ac.uk/research/thesis/yuechen2003.pdf [4] Kamarularifin Abd Jalil, Mohd Hanafi Abd. Latif, Mohamad Noorman Masrek, Looking Into The 4G Features, MASAUM Journal of Basic and Applied Sciences Vol.1, No. 2 September 2009 [5] Pereira, Vasco & Sousa, Tiago. Evolution of Mobile Communications: from 1G to 4G, Department of Informatics Engineering of the University of Coimbra, Portugal 2004. EKLER 1. ICRES 2017 Uluslararası Kongresinde Tam Metin Bildiri Kabul Mektubu, "A Mobile Application for Android Devices" 18