18 Şubat 2025 Salı

Kotlinde İnternet Bağlantısı Olmadığında Uygulamada Gösterilecek Metin Aktivite Kodları

 Kotlin'de internet bağlantısı olmadığında kullanıcıya "İnternet bağlantısı yok" gibi bir mesaj göstermek için öncelikle cihazın internet bağlantısını kontrol etmeniz gerekiyor. Bunun için Android'de `ConnectivityManager` sınıfını kullanabilirsiniz. Ardından, internet bağlantısı yoksa kullanıcıya bir mesaj gösterebilirsiniz.


Aşağıda, bu işlemi gerçekleştiren basit bir örnek bulunmaktadır:

 1. İzinlerin Eklenmesi

Öncelikle, internet durumunu kontrol etmek için `AndroidManifest.xml` dosyasına gerekli izinleri ekleyin:


```xml

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

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

```


2. İnternet Bağlantısını Kontrol Eden Fonksiyon

İnternet bağlantısını kontrol eden bir fonksiyon yazın:


```kotlin

import android.content.Context

import android.net.ConnectivityManager

import android.net.NetworkCapabilities

import android.os.Build


fun isInternetAvailable(context: Context): Boolean {

    val connectivityManager = context.getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager


    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {

        val network = connectivityManager.activeNetwork ?: return false

        val activeNetwork = connectivityManager.getNetworkCapabilities(network) ?: return false


        return when {

            activeNetwork.hasTransport(NetworkCapabilities.TRANSPORT_WIFI) -> true

            activeNetwork.hasTransport(NetworkCapabilities.TRANSPORT_CELLULAR) -> true

            activeNetwork.hasTransport(NetworkCapabilities.TRANSPORT_ETHERNET) -> true

            else -> false

        }

    } else {

        // API 23 altı için eski yöntem

        val networkInfo = connectivityManager.activeNetworkInfo

        return networkInfo != null && networkInfo.isConnected

    }

}

```


 3. Aktivitede İnternet Kontrolü ve Mesaj Gösterme

Aktivitenizde internet bağlantısını kontrol edip, bağlantı yoksa kullanıcıya bir mesaj gösterin:


```kotlin

import android.os.Bundle

import androidx.appcompat.app.AlertDialog

import androidx.appcompat.app.AppCompatActivity


class MainActivity : AppCompatActivity() {


    override fun onCreate(savedInstanceState: Bundle?) {

        super.onCreate(savedInstanceState)

        setContentView(R.layout.activity_main)


        if (!isInternetAvailable(this)) {

            showNoInternetDialog()

        }

    }


    private fun showNoInternetDialog() {

        AlertDialog.Builder(this)

            .setTitle("İnternet Bağlantısı Yok")

            .setMessage("Lütfen internet bağlantınızı kontrol edin ve tekrar deneyin.")

            .setPositiveButton("Tamam") { dialog, _ ->

                dialog.dismiss()

                // İsterseniz burada uygulamayı kapatabilir veya başka bir işlem yapabilirsiniz.

            }

            .setCancelable(false)

            .show()

    }

}

```

 4. Açıklamalar

- `isInternetAvailable` fonksiyonu, cihazın internet bağlantısı olup olmadığını kontrol eder.

- `showNoInternetDialog` fonksiyonu, internet bağlantısı yoksa kullanıcıya bir `AlertDialog` gösterir.

- `AlertDialog` kullanıcıya bilgi verir ve "Tamam" butonu ile kapatılabilir.


Bu örnek, internet bağlantısı olmadığında kullanıcıya basit bir mesaj gösterir. İsterseniz bu mesajı daha gelişmiş bir UI ile gösterebilir veya başka işlemler ekleyebilirsiniz.

Hiç yorum yok:

Yorum Gönder