Neler Yeni

Android Uygulama İnternet Tarayıcısı yapma

S C O

80+ Bronze
Katılım
21 Temmuz 2022
Mesajlar
948
Dahası  
Reaksiyon skoru
574
Konum
Türkiye Cumhuriyeti
İsim
Savaş Kurtuluş
Discord
G-TheArk#3024
Proje internet tarayıcısı yapmak oldu.
Öncelikle webView hakkında bilginiz yoksa basit bir konu anlatımı için tıklayın.

Şimdi basit bir tarayıcı yapacağız. Öncelikle tasarımını halledelim.

Resim ve Kodlar'ı takip ediniz.

Kod:
<RelativeLayout xmlns:android="//schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#E0E0D1" >


<LinearLayout
android:id="@+id/iki"
android:layout_width="match_parent"
android:layout_height="wrap_content" >

<TextView
android:id="@+id/textViewURL"
android:layout_width="50dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:paddingLeft="13dp"
android:textColor="#000"
android:text="URL" />

<EditText
android:id="@+id/URL"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="10" >
</EditText>

<Button
android:id="@+id/Git"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="Git" />
</LinearLayout>


<WebView
android:id="@+id/webV"
android:layout_width="fill_parent"
android:layout_height="850dp"
android:layout_below="@id/iki" />

<LinearLayout
android:id="@+id/bir"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:weightSum="3"
android:layout_below="@+id/webV"
>

<Button
android:id="@+id/Geri"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="Geri" />

<Button
android:id="@+id/Anasayfa"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="Anasayfa" />

<Button
android:id="@+id/Ileri"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="Ileri"
/>
</LinearLayout>

Şimdi Java kodlarına başlayacağız :
2015-07-23_14h56_16.png

2015-07-23_14h56_26.png

2015-07-23_14h56_45.png

2015-07-23_14h56_45.png


Yinelenen Kodlar ;

Kod:
package com.example.myapplication;

import android.app.AlertDialog;
import android.content.Context;
import android.content.Intent;
import android.net.ConnectivityManager;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.webkit.WebChromeClient;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;


public class MainActivity extends ActionBarActivity {
Button Geri,Ileri, Anasayfa, Git;
WebView webV;
EditText URL;
Override

public **** onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);
webV = (WebView) findViewById(R.id.webV);
webV.getSettings().setJavaScriptEnabled(true);
webV.setWebViewClient(new MyWebViewClient());
webV.loadUrl("//www.google.com.tr");
URL = (EditText) findViewById(R.id.URL);

Geri = (Button) findViewById(R.id.Geri);
Ileri = (Button) findViewById(R.id.Ileri);
Anasayfa = (Button) findViewById(R.id.Anasayfa);
Git = (Button) findViewById(R.id.Git);

Git.setOnClickListener(new View.OnClickListener() {
Override
public **** onClick(View arg0) {
if (URL.getText().toString().length() > 10) {
Toast.makeText(
getApplicationContext(),
URL.getText().toString()
+ " adresi yükleniyor...",
Toast.LENGTH_SHORT).show();

if (InternetKontrol())
webV.loadUrl("//"+URL.getText().toString());
else
BaglantiHatasiVer();
} else {
Toast.makeText(getApplicationContext(), "Geçersiz Adres",
Toast.LENGTH_SHORT).show();
}
}
});

Anasayfa.setOnClickListener(new View.OnClickListener() {
Override
public **** onClick(View arg0) {
if (InternetKontrol())
webV.loadUrl("//www.google.com.tr");
else
BaglantiHatasiVer();
}
});


Geri.setOnClickListener(new View.OnClickListener() {
Override
public **** onClick(View arg0) {
if (webV.canGoBack()) {
webV.goBack();
}
}
});

Ileri.setOnClickListener(new View.OnClickListener() {
Override
public **** onClick(View arg0) {
if (webV.canGoForward()) {
webV.goForward();
}
}
});

}
private class MyWebViewClient extends WebViewClient {
Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
}
public **** BaglantiHatasiVer() {
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(
MainActivity.this);
alertDialogBuilder.setTitle("Sunucu Hatası");
alertDialogBuilder.setMessage(
"internet bağlantınızı kontrol edip tekrar deneyin")
.setCancelable(true);
AlertDialog alertDialog = alertDialogBuilder.create();
alertDialog.show();
}

public boolean InternetKontrol() {
ConnectivityManager manager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
if (manager.getActiveNetworkInfo() != null
&& manager.getActiveNetworkInfo().isAvailable()
&& manager.getActiveNetworkInfo().isConnected()) {
return true;
} else {
return false;
}
}
Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}

Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();

//noinspection SimplifiableIfStatement
if (id == R.id.action_settings) {
return true;
}

return super.onOptionsItemSelected(item);
}
}
Ve son olarak Manifest dosyasına da 2 tane izin ekliyoruz.
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/

 
Top Bottom