Cordovajs ile Mobil Programlama Notları -2 (Event Types)

25 Ağustos 2015
Posted by Çağatay Yıldız
2216 Views

Cordovajs ile mobil programlama yazımızın ikincisinde event typelara göz atacağız. Cordova kütüphanesinde default olarak 10 adet event type vardır. Bunlar deviceready, pause, resume, backbutton, menubutton, searchbutton, startcallbutton, endcallbutton, volumedownbutton, volumeupbutton. Bunların dışında pluginler içerisinde de eventlar mevcuttur. Örneğin battery pluginin eklediğinize batterycritical, batterylow, batterystatus adında 3 adet evetn gelecektir. Cordova network plugininde ise online ve offline eventları gelecektir.

Mevcut eventlar içerisinde en yaygın kullanılan event deviceready event ıdır. deviceready adından da anlaşılacağı üzere mevcut uygulama ayağa kalktığı an tetiklenecek event. Genel kullanım açısından html in içerisindeki body nin onload özelliğine yazılarak tetiklenir. Örneğin

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>BlankCordovaApp2</title>

    <!-- BlankCordovaApp2 references -->
    <link href="css/index.css" rel="stylesheet" />
</head>
<body onload="onLoad()">
    <p>Hello, your application is ready!</p>

    <!-- Cordova reference, this is added to your app when it's built. -->
    <script src="cordova.js"></script>
    <script src="scripts/platformOverrides.js"></script>

    <script src="scripts/index.js"></script>
</body>
</html>
<script>

    function onLoad()
    {
        document.addEventListener("deviceready", onDeviceReady, false);
    }

    function onDeviceReady() {
        alert("Hello Cordova!")
    }

</script>

Burada body load olduğu an onLoad metodu tetiklenmektedi. Böylelikle event devreye girecek ve callback function tetiklenecektir. Body onLoad dışında herhangi bir yerde onLoad metodunu da tetiklerseniz event tetiklenecektir. Cihaz hazır olduktan belli bir zaman sonra bu eventı da js setTimeout metodu gibi metotlarla tetikleyebilirsiniz.
Ekran görüntümüz şu şekilde
cordovaEvents

Bunun dışında hazır proje geliştirirken de index.js isimli bir js dosyası gözümüze çarpıyor. Bu js dosyası default olarak onDeviceReady, pause ve resume eventlarını içermekte.
cordova-2

Böylelikle index.js içerisine kodlarınızı da yazabilirsiniz.