T.C. İZMİR KÂTİP ÇELEBİ ÜNİVERSİTESİ BİLİMSEL ARAŞTIRMA PROJELERİ KOORDİNASYON BİRİMİ

Benzer belgeler
Android Kaynakları (Resources)

1 - Button Kontrolu Nasıl Yapılır?

MOBİL UYGULAMA GELİŞTİRME

Proje 1. Arayüz Tasarımı

Androıd ile Arduıno. Nazir Doğan

UYGULA İÇİ SATIN ALMA. <uses-permission android:name="android.permission.internet" /> <uses-permission android:name="com.android.vending.

Android Cep Telefonu Programlama

Tüm personel kendi KEP hesapları üzerinden mevcut ve önceki maaş bordrolarını görüntüleyebilecektir.

Android ile SQLLite Veri Tabanı

ECLIPSE PROGRAMININ ÇALIŞTIRILMASI

MOBİL UYGULAMA GELİŞTİRME

MOBİL UYGULAMA GELİŞTİRME

UZAKTAN EĞİTİM SİSTEMİ ÖĞRENCİ EKRANLARI KULLANIM KILAVUZU

İ ZMİ R KÂ Tİ P ÇELEBİ Ü Nİ VERSİ TESİ ÜZÂKTÂN EĞ İ Tİ M Sİ STEMİ Ö Ğ RENCİ KÜLLÂNİM KİLÂVÜZÜ

Java Programlama Giriş

Ipad,Ipone ve Android Mobil Aygıtlar İçin İş Zekası Mobil Uygulaması Kullanıcı Kılavuzu

BSOFTefat E-FATURA ÇÖZÜMÜ

Bazı Akıllı Telefon Sensörleri

EĞİTİM KURUMLARINDA SINIF İÇİ YOKLAMA, SINAV GİBİ UYGULAMALARIN TABLET BİLGİSAYAR KULLANARAK HIZLI VE VERİMLİ HALE GETİRİLMESİ

İstanbul Büyükşehir Belediyesi

Android Ders Notları

İlgili sayfa ulaşmak için metnin üzerine TIKLAYINIZ.

Enlil programını açtığımızda karşımıza gelen ilk ekrandır.bu ekranda özel tanımlanmış kullanıcı kodu ve parola ile programa giriş sağlanmaktadır.


2000 li yıllardan itibaren teknolojinin hızlı gelişiminden belki de en büyük payı alan akıllı telefon ve tabletler gibi kablosuz iletişim olanağı

GİB Portal deki Faturaları efinans Portal e Taşıma

e-tartı LTR3 Firmware Upgrade Yazılım Güncelleme Moduler Connection LTR3 Firmware Upgrade / LTR3 Yazılım Güncelleme v1.0.

Akıllı telefonlar, avuçiçi bilgisayarlar ile taşınabilir (cep) telefonların özelliklerini birleştiren cihazlardır. Akıllı telefonlar kullanıcıların

Öğrenciler için Kablosuz İnternet Erişimi (Wi-Fi) Kullanım Kılavuzu

Windows 7 or 2 GB 2 GHz Mac OS GB 1 GHz Intel. Placement Tests. English for Success Teacher Training

BEUN VPN Hizmeti. VPN Nedir?

ELEKTRONİK İMZA KURULUM REHBERİ

Bireysel İnternet Şubesi

BLM401 Mobil Cihazlar için ANDROİD İşletim Sistemi YAYIN ALICILARI. BLM401 Dr.Refik SAMET

DUMANSIZ HAVA SAHASI DENETĠM SĠSTEMĠ V.1.1. YAZILIM GÜNCELLEME KILAVUZU

1.5. Başvuru formundaki bilgileri aşağıdaki şekilde doldurunuz. Kart Okuyucu Tipi: Mini Kart Okuyucu Sertifika Süresi: 3 Yıl

1. Aşağıdaki program parçacığını çalıştırdığınızda result ve param değişkenlerinin aldığı en son değerleri ve programın çıktısını yazınız.

Kaynak Kodlardan Derleme. Turquaz Muhasebe. Versiyon 0.2. Hüseyin Ergün. 26 Mart 2005

Rezistivite Cihazı Kullanım Klavuzu

PAKET TRANSFER SİSTEMİ

Şekil 2.1 : Şekil 2.2 : Şekil 2.3 :

RPMNET WOLVOX REPORTER

ZİRVEDRİVEWEB YAZILIMI KULLANIM KILAVUZU

JAVA API v2.0 Belge sürümü: 2.0.2

Luca NET Kobi Ticari Yazılımında ilk yapılacaklar

ULUSAL ELEKTRONİK TEBLİGAT SİSTEMİ

Akıllı Akü den el terminaline veri aktarımı aşağıda belirtilen basamaklar takip edilerek gerçekleştirilir:

EVRAK TAKİP SİSTEMİ (ETS) GENEL AÇIKLAMALAR

Listview Kullanımı. Aşağıdaki örnekte bir ListView'ı birkaç ülke ismiyle dolduracağız.

İMZAGER PROGRAMI İLE UZUN DÖNEM İMZA TİPİNDE ELEKTRONİK İMZALI BELGE OLUŞTURMA

Pearson Kütüphane Erişimi Kullanım Kılavuzu

MOBIL UYGULAMA GELIŞTIRME

Windows Mobile İşletim Sistemleri İçin Veri Giriş Yazılımı

MYLOGO ÜYELİK VE KUR İŞLEMLERİ

Bölüm 1 / Mobil Uygulama Hakkında

Sade ve tam ekran masaüstü kullanımının temel çıkış noktası, aranılan özelliğe çabuk erişimi sağlayan yenilikçi kullanıcı deneyimidir.

ULUSAL ELEKTRONİK TEBLİGAT SİSTEMİ

Bireysel İnternet Şubesi

Motiwe 3G Video Platform

Linux Ubuntu Kurulumu


ONLİNE MAKALE GÖNDERME

II. AsyaMobil i Nasıl Yükleyebilirim?

Selahattin Esim CEO

Windows Live ID ve parolanızı giriniz.

SATIŞ DESTEK DOKÜMANI

Dağıtık Sistemler CS5001

BİL BİLGİSAYAR PROGRAMLAMA (JAVA)

İMZAGER PROGRAMI İLE ELEKTRONİK İMZALI BELGE OLUŞTURMA

Kablosuz N USB Adaptör

T.C Harran Üniversitesi Bilgi İşlem Daire Başkanlığı Elektronik Belge Yönetim Sistemi (EBYS) Mobil Uygulama Kullanma Kılavuzu

PAKET TRANSFER SİSTEMİ

Bulanık Mantık Tabanlı Uçak Modeli Tespiti

KULLANIM KILAVUZU. Reserve Online Reservation Systems

SU KALITE SİSTEMİ. Türkiye Halk Sağlığı Kurumu

SGK Otomasyon Tanıtım ve Kullanım Kılavuzu

SATIŞ DESTEK DOKÜMANI

MİKRO YAZILIM E-MUTABAKAT

Liste Yükleme Ekranı Kullanım Kılavuzu

DOKÜMAN ARŞİV VE ELEKTRONİK BELGE YÖNETİM SİSTEMİ YAZILIMI TEMEL KULLANICI KILAVUZU

GOSS SORU BANKASI ÖNERİ HAVUZU OLUŞTURMA KILAVUZU

Kurulum ve Başlangıç Kılavuzu. DataPage için

Karabük Üniversitesi Bilgi Sistemi Android Uygulaması. Android Application of Karabük University Information System

SMS İŞLEMLERİ MODÜLÜ

fastpay Uygulamasına Nasıl Kayıt olur ve Giriş Yapabilirim?

İşverenlere Yönelik Kurumsal İnternet Şube Kullanım Kılavuzu

BU DERSİN SONUNDA BUNLARI ÖĞRENECEKSİNİZ;

Yazılım Kodlama ve İ simlendirme Standartları v1.0

YILDIZ TEKNİK ÜNİVERSİTESİ


BuluTT Depo Kullanım Kılavuzu

I-Uyum e-fatura Giden Kutusu

E-İMZA KULLANIM KILAVUZU

Tek Düzen Muhasebe Sistemi (TDMS) Ön Muhasebe Modülü. Tunahan ALTINTOP Ali YILDIRIM

İSTANBULKART MOBİL UYGULAMASI KULLANICI EĞİTİM DOKÜMANI

MUĞLA SITKI KOÇMAN ÜNĠVERSĠTESĠ. BĠLGĠ ĠġLEM DAĠRE BAġKANLIĞI. AKADEMĠK PERSONEL KĠġĠSEL WEB SAYFASI KULLANIM KILAVUZU MUKWEB ĠÇĠNDEKĠLER TABLOSU

Bu Kitap Kime Hitap Eder? 2 Kitapta Nelerden Bahsedilmiştir? 3 Kitabı Takip Edebilmek için Nelere İhtiyaç Duyacaksınız?

dmags Türkiye nin En Büyük Dijital Dergi Mağazası

KALDIRAÇLI ALIM SATIM İŞLEMLERİ HALKFX META TRADER 4 MOBİL UYGULAMALAR KULLANIM KILAVUZU

Transkript:

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