Giter VIP home page Giter VIP logo

Comments (3)

yongsuk44 avatar yongsuk44 commented on June 13, 2024 1

In Android OS, differentiating between NET_CAPABILITY_INTERNET and NET_CAPABILITY_VALIDATED is designed to give developers more granular control over network connections. : link

  • NET_CAPABILITY_INTERNET is used to check if the current network is capable of connecting to the internet.
  • NET_CAPABILITY_VALIDATED is used before actual data exchange through the network to ensure that data can be successfully sent and received.

It appears that the differentiation between each status value, as currently implemented, is intended for usage according to their respective purposes.

If you have a different opinion or further insights, please feel free to leave a comment!

from nowinandroid.

loke101 avatar loke101 commented on June 13, 2024 1

Then how can we check if we are connected to WIFI but has internet connection or not ?? @yongsuk44

from nowinandroid.

yongsuk44 avatar yongsuk44 commented on June 13, 2024

@loke101 If you're asking about how to check if Wi-Fi is connected but not actually connected to the internet, I think I would handle it like this:

NetworkRequest.Builder()
    .addCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET)
    .addTransportType(NetworkCapabilities.TRANSPORT_WIFI)
    .build()

// ...

val networkCapabilities = getNetworkCapabilities(activeNetwork)

val hasActiveInternetConnection =
    networkCapabilities?.hasCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET)
        && networkCapabilities?.hasTransport(NetworkCapabilities.TRANSPORT_WIFI)

By doing this, you should be able to determine cases where Wi-Fi is connected but there is no internet connection.

Link

from nowinandroid.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.