多分私は間違った質問をしているかもしれませんが、私が探しているものを見つけることができないので、私はここでGoogleの代わりにそれを試してみます。Androidデバイスのネットワークインターフェイス名
基本的には、次のコードを持っています.Wifi、3G、または何か他のもの(テザリングが気になる)であれば、私は拾うことができます。
私はここで重要な部分は、ギャラクシーSとギャラクシーSのタブの上に今sInterfaceName = intf.getName();
で3Gに接続するときには、無線LANと「pdp0」に接続されている場合、これは「eth0を」を返すように見えると信じて
// Iterate over all network interfaces.
for (Enumeration<NetworkInterface> en =
NetworkInterface.getNetworkInterfaces(); en.hasMoreElements();)
{
NetworkInterface intf = en.nextElement();
// Iterate over all IP addresses in each network interface.
for (Enumeration<InetAddress> enumIPAddr =
intf.getInetAddresses(); enumIPAddr.hasMoreElements();)
{
InetAddress iNetAddress = enumIPAddr.nextElement();
// Loop back address (127.0.0.1) doesn't count as an in-use
// IP address.
if (!iNetAddress.isLoopbackAddress())
{
sLocalIP = iNetAddress.getHostAddress().toString();
sInterfaceName = intf.getName();
}
}
}
私は実際には1 x Galaxy Sと1 x Galaxy S Tabでしかテストできませんでした。私はネットワークインターフェース名がデバイスマネージャーによってカーネルのどこかに設定されていると思います。私はおそらく、各デバイスのカーネルをめぐることができるかもしれませんが、誰かがこの情報を既に見つけたに違いないと思っています。
役立ちますが、質問に答えていない。ここで
は一例です。彼は現在のネットワークタイプではなく、インターフェースの名前を望んでいます。 – Andy