Posted by : Unknown Jumat, 12 Desember 2014

JQuery Mobile merupakan freamwork yang membantu kita unuk membuat tampilan web untuk mobile device, seperti smartphone dan tablet android, dengan menggunakan Jquery Mobile ini dapat memudahkan proses pembuatan suatu website dan membuatnya menjadi lebih menarik.
Web Service adalah aplikasi sekumpulan data(database), perangkat lunak yang dapat diakses dan diremote oleh berbagai pranti dengan sebuah perantara tertentu. Secara umum web service diidentifikasikan dengan URL seperti hanya web pada umumnya. URL webservice hanya mengandung kumpulan informasi, perintah, konfigurasi atau sintaks yang berguna membangun sebuah fungsi-fungsi tertentu dari aplikasi.
Aplikasi Weather Web service adalah aplikasi untuk mencari atau mengakses perkiraan cuaca disetiap kota atau negara. Webservice dari weather ini sendiri diakses dari URL http://api.openweathermap.org/data/2.5/ dan untuk datatypenya menggunakan Json.
Sebelum Membuat aplikasi ini ada beberapa hal yang perlu dipersiapkan diantaranya :

1.       Eclipes ADT untuk membuat aplikasi berbasis android
2.       Device android sebagai compiler
3.       JQuery Mobile sebagai Freamwork
4.       API :
5.       Install PhoneGap untuk menjadikan web mobile menjadi sebagai apk.
Pada artikel kali ini untuk aplikasi mengenai open webservice penulis membuat contoh aplikasi mengakses weather / perkiraan cuaca dengan memanfaatkan JQuery Mobile.

Featur dari aplikasi ini terdiri dari menu utama, yang didalamanya terdapat 2 tombol menu, Menu Cuaca Terkini dan Contoh Efek dari Jquery Mobile yaitu touch dari Jquery Mobile.
Langkah Langkahnya :
Langkah pertama buat project baru dengan cara meng-click icone phonegap pada toolbar di eclipse.
Selanjutnya isi dialognya sesuai keperluan, setelah selesai klik finish
Setelah itu akan muncul package yang telah anda buat.
Langkah selanjutnya bukan assets/www/index.html buka index.html dengan cara click kanan>open with> text editor kemudian masukan sourcode seperti dibawah ini. 


<!DOCTYPE HTML>
<html>
<head>
 <title>PAPB A Kel 5</title>
 <meta http-equiv='Content-Type' content='text/html; charset=utf-8'/>
 <meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no"/>
    <!-- pemanggilan css -->
 <link rel="stylesheet" href="dist/css/jquery.mobile-1.4.5.css"/>
 <link rel="stylesheet" href="dist/css/style.css"/>
    <link rel="stylesheet" href="dist/css/jquery.mobile.iscrollview.css"/>
    <link rel="stylesheet" href="dist/css/jquery.mobile.iscrollview-pull.css"/>
</head>

<body>

<!-- page menu_depan -->
<div data-role="page" id="menu_depan">
 <div data-role="header" data-theme="b">
  <h1>PAPB A Kel 5</h1>
 </div><!-- /header -->
 <div role="main" class="ui-content">
  <ul data-role="listview" data-inset="true">
      <ul data-role="listview" data-inset="true">
       <li><a class="ui-btn ui-icon-location ui-btn-icon-left" href="#cari_cuaca">Cuaca Terkini</a></li>
       <li><a class="ui-btn ui-icon-star ui-btn-icon-left" href="#contoh_efek">Contoh Efek</a></li>
   </ul>
  </ul>
 </div>
 <div data-role="footer" data-theme="b">
        <div data-role="navbar">
            <ul>
                <li><a href="#tentang" data-icon="info">Tentang Aplikasi</a></li>
            </ul>
        </div>
 </div>
</div>


    <!-- page pencarian kota -->
 <div data-role="page" id="cari_cuaca">
  <div data-role="header" data-theme="b">
   <h1>Cuaca Terkini</h1>
  </div>
  <div data-role="main" class="ui-content">
   <input id="searchterm" type="search" placeholder="Masukan nama kota"/>
   <a href="#hasil_pencarian" class="ui-btn ui-corner-all ui-icon-search ui-btn-icon-right ui-btn-b" data-icon="search">Cari</a>
  </div>
  <div data-role="footer" data-theme="b">
        <div data-role="navbar">
            <ul>
                <li><a href="#tentang" data-icon="info">Tentang Aplikasi</a></li>
            </ul>
        </div>
  </div>
 </div>

    <!-- page hasil pencarian -->
 <div data-role="page" id="hasil_pencarian">
  <div data-theme="b" data-role="header">
   <h3>Cuaca Terkini</h3>
  </div>

  <div data-role="content" class="ui-content">

    <ul style="width:100%;" data-role="listview" data-inset="true" id="cuaca"></ul>

  </div>

  <div data-role="footer" data-theme="b">
        <div data-role="navbar">
            <ul>
                <li><a href="#tentang" data-icon="info">Tentang Aplikasi</a></li>
            </ul>
        </div><!-- /navbar -->
  </div><!-- /footer -->
 </div>

    <!-- page contoh efek -->
 <div data-role="page" id="contoh_efek">
  <div data-role="header" data-theme="b">
   <h1>Cuaca Efek Touch</h1>
  </div>
  <div data-role="main" class="ui-content">
   <p>Sentuh tombol satu-persatu</p>
      <button class="ui-btn ui-btn-b">Tombol Satu</button>
      <button class="ui-btn ui-btn-b">Tombol Dua</button>
  </div>
  <div data-role="footer" data-theme="b">
        <div data-role="navbar">
            <ul>
                <li><a href="#tentang" data-icon="info">Tentang Aplikasi</a></li>
            </ul>
        </div><!-- /navbar -->
  </div><!-- /footer -->
 </div>

    <!-- page tentang -->
 <div data-role="page" id="tentang">
  <div data-role="header" data-theme="b">
   <h1>Tentang Aplikasi</h1>
  </div>
  <div data-role="main" class="ui-content">
   <p>Aplikasi ini merupakan tugas ke-4 PAPB Kelas A</p>
  </div>
 </div>

    <!-- pemanggilan javascript -->
 <script src="dist/js/jquery-1.10.1.min.js"></script>
    <script src="dist/js/jquery.mobile-1.4.5.js"></script>
    <script src="dist/js/iscroll.js"></script>
    <script src="dist/js/jquery.mobile.iscrollview.js"></script>
    <!-- script utama pemanggilan json pada api -->
 <script>
  
  $(document).on('pageinit', '#hasil_pencarian', function()
  {
   var q = document.getElementById("searchterm").value;
   var url = 'http://api.openweathermap.org/data/2.5/',
   cuacaName = 'weather?q='+encodeURI(q),
   key = '&APPID=504113a2cdc4852b2fc3bebd990ece80';
   $.ajax(
   {
    url: url + cuacaName + key,
    dataType: "jsonp",
    async: true,
    success: function (result)
    {
     ajax.parseJSONP(result);
    },
    error: function (request,error)
    {
     alert('Network error has occurred please try again!');
    }
   });
  });

  var ajax =
  {
   parseJSONP:function(result)
   {
    $('#cuaca').append('<li><h2>'+ result.name + '</h2></li>');
    parts = result.weather;
    $.each(parts, function(i, row)
    {
     var q = document.getElementById("searchterm").value;
     console.log(JSON.stringify(row));
     $('#cuaca').append('<li><img style="width:100%;" src="http://openweathermap.org/img/w/'+row.icon+'.png"><h3>' + row.main + '</h3><p>' + row.description + '</p></li>');
    });
    $('#cuaca').listview('refresh');
   }
  }
 </script>
    <!-- script contoh efek -->
 <script>
  $(document).on("pagecreate","#contoh_efek",function(){
    $("button").on("tap",function(){
      $(this).hide();
    });
  });
 </script>
</body>
</html>



Setelah semua proses dijalankan saatnya untuk menjalankan program Klik kanan pada project lalu Klik Run As > Android Aplications
Hasilnya akan tampak seperti dibawah ini.
1.      Menu Utama
2.      Halaman Mengakses webservice weather
3. Menampilkan hasil pencarian cuaca di daerah malang

Leave a Reply

Subscribe to Posts | Subscribe to Comments

Diberdayakan oleh Blogger.

Followers

- Copyright © ASIX BELAJAR ILKOM -Metrominimalist- Powered by Blogger - Designed by Rahman Anam -