kodbankasi http://kodbankasi.org/kodbankasi

Android Webview ile site görüntüleme

Webview internet sitelerini görüntülemeye yarayan gayet kullanışlı ve kullanması çok basit bir araçtır.

Yeni bir proje açıp adına Webview diyoruz ve kodlamaya geçiyoruz. İlk yapacağımız şey Palette -> Composite içerisinden webview sürükleyip bırakıyoruz. Webview.java kısmına geçiyoruz ve webview’i programa tanıtıyoruz. Daha sonra src den ana kodlarımızı açıyoruz.

package com.example.webview;
import android.os.Bundle;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.webkit.WebView;
import android.webkit.WebViewClient;
public class Webview extends Activity {
WebView websayfasi;
@SuppressLint("SetJavaScriptEnabled")
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_webview);
websayfasi = (WebView)findViewById(R.id.webView1);
websayfasi.getSettings().setJavaScriptEnabled(true); // javascriptlere açıyoruz.
WebViewClient wvc = new WebViewClient(); //Urlyi görüntülemek için webviewclient nesnesi oluşturuyoruz.
websayfasi.setWebViewClient(wvc); // nesneyi webview'imize atıyoruz.
websayfasi.loadUrl("http://www.kodbankasi.org");//urlyi giriyoruz.
}
}

Evet programımız bu kadar. Ancak internet izni de almamız gerekiyor. Bunun için de android manifest dosyamıza girip uses-sdk’nın altına aşağıdaki kodu yapıştırıyoruz.

<uses-permission android:name="android.permission.INTERNET"  />

Bu kod sayesinde internet izni almış olduk. Artık internete bağlandığımızda hata vermeyecektir. Android manifest dosyasında alt kısımdaki permissions sekmesine tıklarsanız orada hangi izinleri alabileceğinizi görebilirsiniz. Bunlarla beraber javascript ayarlarını da açmayı unutmuyoruz.

websayfasi.getSettings().setJavaScriptEnabled(true); // javascriptleri açıyoruz

Programımızı çalıştırdığımızda oluşan görüntü aşağıdaki gibi oldu. Url girerken http yazmayı unutmamak gerekiyor yoksa program çalışmaz.

webview

Görüldüğü gibi Webview kullanımı gayet basit. Bir sonraki makalede işi biraz daha zorlaştırarak bir webbrowser yapmayı düşünüyorum. Bol kodlu günler … :)

Bir önceki yazımız olan Javada ++ ve -- operatörleri başlıklı yazımızı da inceleyebilirsiniz.

16 Yorumlar

  1. Merhaba;
    benim öğrenmek istediğim şey web sitesi açıldığında mesela sizin yukarıda emulatorde gosterdiğiniz sayfa açıldığında iletişim butonuna tıklayıp .pdf uzantılı bir dosyanın indirilip görüntülenmesi gerekiyor. ben uygulamamda bunu yapmaya çalışıyorum ancak butona tıkladığımda hiçbir şey olmuyo. bu sorunu nasıl çözebilirim.
    Desteğiniz için teşekkürler

    • Merhabalar,
      İletişim butonu dediğiniz aslında sitemizdeki üst menülerden birisi. Buna tıklandığında indirmesini istiyorsunuz. Ancak buton olmadığı için onclick metodunu malesef menülere veremiyoruz. Webview sadece online görüntüler.
      Ancak online olarak pdf dosyasının görüntülenmesini isterseniz Google Docs Viewer’dan faydalanabilirsiniz. Örneğin :
      WebView webview = (WebView) findViewById(R.id.webview);
      webview.getSettings().setJavaScriptEnabled(true);
      String pdf = “http://www.siteadi.com/ornek/ornek.pdf”;
      webview.loadUrl(“http://docs.google.com/gview?embedded=true&url=” + pdf);

      Bu adreste url’yi pdf dosyanız olarak verdiğinizde direk açılacaktır. Umarım yardımcı olabilmişimdir.

      Bu kodla online olarak pdf’yi görüntüleyebilirsiniz.

  2. your project contains error hatası alıyorum ayrıca “public class Webview extends Activity bu satır ve “setContentView(R.layout.activity_webview); bu satırlardan hata alıyorum nedır acaba sorunun cozumu

    • Kodları görmeden birşey söylemek çok zor. Genel bir proje hatası alıyorsunuz. Logları inceleyerek hata kodlarını ve sorun içeriklerini yazarsanız daha rahat yardımcı olabilirim.

  3. Yukarıda soyledıklerınızı harfıyen yapıyorum kodların hepsı aynı yukarıdakılerle

    • Şuan kontrol ettim tekrar kodlarda bir problem görünmüyor çalışıyor uygulama.
      İzinde bir sıkıntı olabilir mi acaba ? İnternet iznini eklediniz mi manifest dosyanıza ? Eğer yine olmazsa uygulamayı buradan indirebilirsiniz.

  4. ekledim tekrar baktım kontrol ettım bır yerı atlıyorum muhtemelen velakın bulamadım,rica etsem dosya linkini yeniler misiniz oradan indireyim

  5. teşekkür ederim sayin admin :)

  6. admin kardesim bir isteğim olacak ,java ile mysql bağlantısı örneği var mı elinde rica etsem benımle paylasabilir misin ?

  7. İyi çalışmalar webview ile bir siteyi görüntüledim.
    site içerisinden kameraya veya galeriye ulaşarak uplad etmek mümkün mü uplad kısmı zaten site içerisinden olacağı için o kısımda androide gerek yok önemli olan webview içersinden kamera veya galeriye ulaşmak böyle bişey mümkün mü?

    Şimdiden teşekkürler

    • Sanmıyorum, webview’in amacı siteyi uygulama içerisinde gösterebilmektir sadece.

      Ancak yine de yabancı kaynakları araştırabilirsiniz.

  8. Geri tuşuna bastığımda uygulamadan çıkmayıp yüklenen site içerisinde bir geri sayfaya gelmesini nasıl ayarlayabilirim acaba?

  9. Hocam bir sayfadaki video görüntüsünü nasıl alırım mesela canlı yayın süren bir tv kanalının canlı yayın akışını nasıl ekrana getirebilirim. Örnek kod var mı elinizde teşekkürelr

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak.

Bu yazı da ilginizi çekebilir !

Modem Wifi şifresi Değiştirme

Ev veya işyerlerine yeni bağlatılan internet hatlarına genel olarak karmaşık bir şifre veya oldukça basit ...