我是android系统的新手.这是正确的,Android 2.2.1 WIFI只检测非ad hoc无线网络?我想知道是否有办法将我的Android连接到我的笔记本电脑的ad hoc网络设置.
我们有iPad和iPhone设备,但没有电线.有没有什么方法可以在iOS上通过Wi-Fi安装/调试构建?
我知道在Android中的方式,但不是iOS.
我以为我应该使用NetworkInterface :: getDisplayName.我得到了一些名字,但是当我选择要连接的网络时,这个名称与我可以看到的名称不同.
请帮忙..
[编辑]
根据洛克斯利的回答:
WifiManager wifiMgr = (WifiManager) getActivity().getSystemService(Context.WIFI_SERVICE);
WifiInfo wifiInfo = wifiMgr.getConnectionInfo();
String name = wifiInfo.getSSID();
Run Code Online (Sandbox Code Playgroud) 当我的Android设备连接到WIFI时,我正在尝试获取WIFI网络的SSID.
我注册了BroadcastReceiver android.net.wifi.supplicant.CONNECTION_CHANGE.当WIFI断开连接或重新连接时,我收到通知.不幸的是,我无法获得网络的SSID.
我正在使用以下代码来查找SSID:
WifiManager wifiManager = (WifiManager) context.getSystemService(context.WIFI_SERVICE);
WifiInfo wifiInfo = wifiManager.getConnectionInfo();
String ssid = wifiInfo.getSSID();
Run Code Online (Sandbox Code Playgroud)
而不是SSID,我得到了<unknown ssid>回来的字符串.
这些是清单中的权限(我添加了ACCESS_NETWORK_STATE只是为了检查,我实际上并不需要它)
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
Run Code Online (Sandbox Code Playgroud)
为什么会这样?我怎样才能获得实际的SSID?在建立连接之前,广播是否已提前播出?我应该听另一个广播吗?我只对WIFI连接感兴趣,而不是3G连接.
更新:我刚刚检查过,wifiInfo.getBSSID()返回null.
我正在考虑一个Android应用程序(可能还有一个附带的物理设备),我正在试图弄清楚这是否可行.
1)假设我将Android插入PC.PC上安装的应用程序是否可以与手机中运行的应用程序通信?我只需要一个非常简单的数据交换,它甚至可以是单向的(只需将数据从手机推送到PC上的监听应用程序,无论何时手机需要,我都不需要从PC发送到手机的任何数据).
当我插上它时,手机给了我4个选项(充电,磁盘驱动器,HTC同步,网络共享),这让我觉得这不可行,但仍然值得一试.
2)PC上的应用程序是否可以通过任何其他方式与手机上的应用程序通信?(Wi-Fi,蓝牙等).我猜wi-fi没有,因为任何一方都没有对方的IP(我希望这只是工作,而不是一直手动输入IP).
3)如果我将一个设备插入手机底部的小USB端口(让我们说这是一个可以做任何事情的神奇设备,只要它可行,我就不太关心这些细节).我可以让Android应用与该设备通话吗?
4)让手机与我制作的"设备"或PC上的应用程序通话的任何其他想法都非常受欢迎."通过网络"可能是一个选择(虽然必须有一个我作为中间人拥有的中央服务器,我相信).但我更喜欢这两种设备之间的通信是直接的.
是否有API以编程方式打开/关闭Android上的WiFi HotSpot?
我应该用什么方法打开/关闭它?
更新:有这个选项可以启用HotSpot,只需打开/关闭WiFi,但这对我来说不是一个好的解决方案.
我的班级必须实施哪个监听器,以便在wifi连接/断开连接时自动检查代码?
我能够手动检查wifi连接/断开连接,但每次我需要从Android设置连接/断开WIFI,然后运行我的程序以获得结果.
我目前的代码很简单:
WifiManager wifi = (WifiManager)getSystemService(Context.WIFI_SERVICE);
if (wifi.isWifiEnabled()==true)
{
tv.setText("You are connected");
}
else
{
tv.setText("You are NOT connected");
}
Run Code Online (Sandbox Code Playgroud) 我们需要一台可以通过蓝牙或wifi连接到Android手机的便携式打印机(手持设备,这很重要).
最近我看到可以通过使用WIFI而不是USB调试方法来调试应用程序开发.我进行了搜索,发现了一个名为abdWireless的应用程序,但我遇到了问题.
我怎么告诉Eclipse通过Wifi方法连接?
我认为这是一个自动过程,但在开始调试时它会打开模拟器.
有人?:)再见