Aşağıdaki kod Ethernet bağlantısını kontrol etmek için kullanılabilir:Bir Android cihazının bir yönlendiriciye bağlı olup olmadığını tespit etmek mümkün mü?
- Bu yönlendirici bağlı: o bağlıysa
ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); if(cm.getNetworkInfo(ConnectivityManager.TYPE_ETHERNET).getState() == NetworkInfo.State.CONNECTED) { ... }
, en az iki olasılık vardır.
- Başka bir aygıta bağlı olan
nasıl birbirinden ayırt edilebilir (diğer bir deyişle bağlantı peer to peer)?
da gösterildiği gibi sadece p2p ağ için diğer cihazlara bağlı olan bir yönlendiriciye bağlı olabilir WiFi burada http://technofaq.org/posts/2014/12/geek-speak-configuring-a-router-for-p2p-networking/. Bunu neden belirlemek istediğinizi bize daha kolay cevap verebilmenizi sağlayabilir. Ayrıca bir çevrimiçi sunucuya ping yapmayı denerseniz, bir yönlendiricinin sizi bağlayacağını düşünüyorum, ancak bir p2p bağlantısı başarısız olacaktır. Düşüncem doğru mu? Ayrıca yönlendiricinin veya cihazların MAC adresini biliyor musunuz? – Shreyans
@Shreyans Cihazın iki senaryo vardır: bir bilgi işlem cihazına (P2P) bağlanması ve bir yönlendiriciye (örn. AP) bağlanması. Uygulama bu iki senaryo için farklı görevler gerçekleştirir. Kullanıcının senaryoyu belirlemesini istemek yerine, otomatik olarak algılamayı tercih ederiz. – Hong
Tamam, P2P davasında çevrimiçi API çağrıları her zaman doğru olmaz mı? – Shreyans