Sonuç bulunamadı
Bütün Sonuçları Göster
Teknoloji tutkunu Technopatların ortak adresi: Technopat.net
  • Haber
  • Yapay Zeka
  • Tavsiyeler
  • Oyun
  • Video
  • Teknoloji
    • Mobil
    • Yazılım
    • Elektronik Alışveriş Fırsatları
    • Pratik
    • Ev Teknolojileri
    • Makale
    • Güvenlik
    • Ekonomi
    • İnternet
    • Giyilebilir Teknoloji
    • Sağlık
    • Yazıcı
    • Sosyal Medya
    • Otomobil
      • Elektrikli Otomobil
  • Sosyal
Teknoloji tutkunu Technopatların ortak adresi: Technopat.net
  • Haber
  • Yapay Zeka
  • Tavsiyeler
  • Oyun
  • Video
  • Teknoloji
    • Mobil
    • Yazılım
    • Elektronik Alışveriş Fırsatları
    • Pratik
    • Ev Teknolojileri
    • Makale
    • Güvenlik
    • Ekonomi
    • İnternet
    • Giyilebilir Teknoloji
    • Sağlık
    • Yazıcı
    • Sosyal Medya
    • Otomobil
      • Elektrikli Otomobil
  • Sosyal
Sonuç bulunamadı
Bütün Sonuçları Göster
Teknoloji tutkunu Technopatların ortak adresi: Technopat.net

Anasayfa - Makale - Pratik - Android Programlama Ders 35: Basit Bir Tarayıcı Oluşturuyoruz

Android Programlama Ders 35: Basit Bir Tarayıcı Oluşturuyoruz

20 Nisan 2014 - 12:00
- Mobil, Pratik

Android Programlama Ders 35‘te örnek projeyi kullanarak basit bir tarayıcı oluşturmayı öğreneceğiz.

Geçen derslerimizde Intent’e action’u kullanarak (action = ACTION_VIEW) ve data = Uri http adresiyle tarayıcı kullanarak web sayfası açmayı öğrendik. Intent’i kullanarak kendimiz basit bir tarayıcı oluşturabiliriz. Bunun için Intent Filter’i ayarlamamız ve WebView bileşeni kullanmamız gerekecek.

Birinci ekranda Intent’i çalıştıran buton ve ikinci ekranda WebView olacak.

Yeni bir proje oluşturalım:

  • Project name: P0035_SimpleBrowser
  • Build Target: Android 4.2
  • Application name: SimpleBrowser
  • Package name: tr.example.simplebrowser
  • Create Activity: MainActivity

Main.xml’i açalım ve ekranı oluşturalım:

<?xml version="1.0" encoding="utf-8"?>
 <LinearLayout
 xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="fill_parent"
 android:layout_height="fill_parent"
 android:orientation="vertical">
 <Button
 android:id="@+id/btnWeb"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:text="web">
 </Button>
 </LinearLayout>

Ekranda sadece bir buton mevcut.

MainActivity.java dosyasını açıyoruz ve kodu yazıyoruz.

import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;

public class MainActivity extends Activity {
  /** Called when the activity is first created. */
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    (findViewById(R.id.btnWeb)).setOnClickListener(new OnClickListener() {
      @Override
      public void onClick(View v) {
        startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.google.com.tr/ ")));
      }
    });
  }
}

Farketiyseniz butonu doğrudan SetOnClickListener metodunda belirtiyorum. Ayrıca Intent’i doğrudan StartActivity metodunda oluşturdum. Böylece kodu kısaltmış oldum. Kodun amacı butona basıldığı zaman Intent’i çalıştırmak. Bu demek ki   https://www.google.com.tr/ web sayfası açmak istiyoruz.

İkinci etkileşimi (Activity) oluşturalım. İlk başta layout dosyayı browser.xml oluşturuyoruz:

 

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
 xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:orientation="vertical">
<WebView
 android:id="@+id/webView"
 android:layout_width="match_parent"
 android:layout_height="match_parent">
</WebView>
</LinearLayout>

Ekranda WebView bileşeni olacak.

İkinci etkileşimi oluşturalım BrowserActivity.java:

import android.app.Activity;
import android.net.Uri;
import android.os.Bundle;
import android.webkit.WebView;

public class BrowserActivity extends Activity {

  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.browser);

    WebView webView = (WebView) findViewById(R.id.webView);
    Uri data = getIntent().getData();
    webView.loadUrl(data.toString());
  }
}

Yukarıdaki kodda WebView belirtiyoruz. Sonra Intent üzerinden datayı okuyoruz ve diziyi WebView’a gönderiyoruz. Yeni etkileşimi Manifest dosyasında kayıt yapmayı unutmuyoruz. Etkileşime Intent Filter eklememiz gerekecek. Intent Filtre ise action = ACTION_VIEW ve data için Scheme = https olsun.

ManifetsData

Bunun anlamı Intent’e Uri https adresi tutacak. Category = Default ve BrowserActivity etkileşim için Label MyBrowser olsun. İnternete erişimi sağlamak için Manifest dosyasında Permissions sekmede Uses Permission = android.permission.INTERNET eklememiz gerekiyor.

ManifetsPermission

Projeyi kaydedelim ve çalıştıralım. Butona basıldığı zaman sistem bize iki seçim sunuyor. Birincisi sistemde olan ve ikincisi de bizim oluşturduğumuz tarayıcı seçmek. Yani Intent sistemde iki tane http gösterebilecek etkileşimi (Activity) bulmuş.

web

MyBrowser seçeneğini seçiyoruz ve web sayfasını görüyoruz.

google

Manifest dosyasının tam kodu:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="tr.example.simplebrowser"
android:versionCode="1"
android:versionName="1.0" >
 <uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="18" />
 <application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="tr.example.simplebrowser.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
 <category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>

Ders Sonu Notları:

Bu derste Uri kullanarak basit bir tarayıcının nasıl oluşturulacağını öğrendik. Gelecek derslerimizde Preferences özelliğini kullanarak verileri kaydetmeyi öğreneceğiz.

 

Etiketler: ACTION_VIEWAndroidAndroid programlama dersleribrowserdershttpprogramlamateknolojiURIUses PermissionuygulamaWebViewYazılımyeni
Paylaş12PaylaşTweetYollaPaylaş
Victor Cuiumju

Victor Cuiumju

Yorum Yap Yanıtı iptal et

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

RSS Technopat Sosyal

  • Öğrenci için tablet önerisi
  • 12 bin TL ses kartı önerisi
  • Steam'den oyun önerisi
  • Bedelli askerlik mi 6 aylık mı?
  • S23 Ultra'dan S25 Ultra'ya geçilir mi?
  • Cooler Master ML240L V2 soğutucunun ve kasanın RGB'leri kırmızı yanıyor
  • Mouse tekerleği çalışmıyor
  • iPhone 15 pil sağlığı 31 devirde 98'e düştü
  • 2K monitör için ekran kartı 2K desteklemeli mi?
  • Gelişmiş ülkelerde neden insaniyet yok?

Technopat Video

Şu an oynayan

Apple’ı 20’ye katlayan saat! Huawei Watch GT 6 Pro incelemesi

Huawei Watch GT 6 Pro

Apple’ı 20’ye katlayan saat! Huawei Watch GT 6 Pro incelemesi

Akıllı Saat
Technopat ofisi Eylül ayında neler aldı? 

Technopat ofisi Eylül ayında neler aldı? 

Giyilebilir Teknoloji
Gigabyte AORUS FO27Q5P: 500 Hz QD-OLED ile rekabetçi oyunculara özel monitör

Gigabyte AORUS FO27Q5P: 500 Hz QD-OLED ile rekabetçi oyunculara özel monitör

Haber

Teknoloji tutkunu Technopatların ortak adresi: Technopat.net!

Güncel teknoloji, internet, donanım, yazılım, oyun ve daha fazlası haber, makale ve videolar ile Technopat’ta sizlerle.


01010100 01100101 01100011 01101000 01101110 01101111 01110000 01100001 01110100

Kategoriler

  • Yapay Zeka
  • Ev Teknolojileri
  • Makale
  • Video

Sosyal Medya

Bağlantılar

  • Hakkında
  • Haber
  • Video
  • Sosyal
  • Çerez Politikası
© 2011-2025 Technopat. Tüm Hakları Saklıdır.
Netse
Çerez Onayı
Web sitemizi ziyaret ettiğinizde, kullanıcı deneyiminizi daha iyi hale getirmek, hizmetlerimizi size daha etkin bir şekilde sunabilmek için çerezler (cookies) ve benzeri araçlar kullanıyoruz. Çerezler, internet sitesinin düzgün çalışmasını sağlamak, içeriği kişiselleştirmek, sosyal medya özellikleri sağlamak ve trafik analizi yapmak için kullanılan küçük metin dosyalarıdır. Çerezleri nasıl kullandığımız ve kişisel verilerinizi nasıl işlediğimiz hakkında daha fazla bilgi almak için çerez politikamızı ve kişisel veri politikamızı inceleyebilirsiniz.
Fonksiyonel Her zaman aktif
Teknik depolama veya erişim, sadece kullanıcının açıkça talep ettiği belirli bir hizmetin kullanılmasını sağlama amacıyla veya iletişimin elektronik iletişim ağı üzerinden iletilmesinin tek amacıyla yasal olarak kesinlikle gereklidir.
Tercihler
Teknik depolama veya erişim, abone veya kullanıcı tarafından istenmeyen tercihlerin depolanması yasal amacıyla gereklidir.
İstatistikler
Sadece istatistiksel amaçlarla kullanılan teknik depolama veya erişim. The technical storage or access that is used exclusively for anonymous statistical purposes. Without a subpoena, voluntary compliance on the part of your Internet Service Provider, or additional records from a third party, information stored or retrieved for this purpose alone cannot usually be used to identify you.
Pazarlama
Teknik depolama veya erişim, reklam gönderimi için kullanıcı profilleri oluşturmak veya kullanıcıyı bir web sitesinde veya birden fazla web sitesinde benzer pazarlama amaçları için takip etmek amacıyla gereklidir.
Seçenekleri yönet Hizmetleri yönetin {vendor_count} satıcılarını yönetin Bu amaçlar hakkında daha fazla bilgi edinin
Tercihleri yönet
{title} {title} {title}
Onayı Yönet
En iyi deneyimleri sunmak için, cihaz bilgilerini saklamak ve/veya bunlara erişmek amacıyla çerezler gibi teknolojiler kullanıyoruz. Bu teknolojilere izin vermek, bu sitedeki tarama davranışı veya benzersiz kimlikler gibi verileri işlememize izin verecektir. Onay vermemek veya onayı geri çekmek, belirli özellikleri ve işlevleri olumsuz etkileyebilir.
Fonksiyonel Her zaman aktif
Teknik depolama veya erişim, abone veya kullanıcı tarafından açıkça talep edilen belirli bir hizmetin kullanılmasını sağlamak veya bir elektronik iletişim ağı üzerinden bir iletişimin iletimini gerçekleştirmek amacıyla meşru bir amaç için kesinlikle gereklidir.
Tercihler
Teknik depolama veya erişim, abone veya kullanıcı tarafından talep edilmeyen tercihlerin saklanmasının meşru amacı için gereklidir.
İstatistik
Sadece istatistiksel amaçlar için kullanılan teknik depolama veya erişim. Sadece anonim istatistiksel amaçlar için kullanılan teknik depolama veya erişim. Mahkeme celbi, İnternet Hizmet Sağlayıcınızın gönüllü uyumu veya üçüncü bir taraftan ek kayıtlar olmadan, yalnızca bu amaçla depolanan veya alınan bilgiler genellikle kimliğinizi belirlemek için kullanılamaz.
Pazarlama
Teknik depolama veya erişim, reklam göndermek için kullanıcı profilleri oluşturmak veya benzer pazarlama amaçları için kullanıcıyı bir web sitesinde veya birkaç web sitesinde izlemek için gereklidir.
Seçenekleri yönet Hizmetleri yönetin {vendor_count} satıcılarını yönetin Bu amaçlar hakkında daha fazla bilgi edinin
Tercihleri görüntüle
{title} {title} {title}
Sonuç bulunamadı
Bütün Sonuçları Göster
  • Giriş
  • Teknoloji Haberleri
  • Sosyal
  • Video
  • Tavsiyeler
  • İncelemeler
    • Video İncelemeler
  • Güvenlik
  • Oyun
  • Makale
    • Pratik
    • Yazar Köşeleri

© 2025 Technopat
Sorularınız için Technopat Sosyal