Socket相关
2016-11-28 13:58
99 查看
第一:Socket编程时,一定要先关闭写(writer)再关闭读(reader)
第二:不管是客户端还是服务端在通过Socket读取数据的时候,在你的数据传输完成后,发送一个结束标记(比如:end),这样在你的 while循环里面判断一下数据是否已经传输完毕,完毕后跳出循环,否则由于你的程序就会一直阻塞在 readLine()这里,因为你的 socket还没有断开,会一直等待你写数据。
另一个类访问不到一个public修饰的Java类中的public方法,如WifiManager中的setWifiApEnabled()方法,这是为什么呢???
`很多之前已经连接上的WIFI,配置信息会自动保存,当你关闭—->打开WIFI时就会自动连接,但有时我们并不希望这样处理,解决方法为在打开WIFI之前将以前所保存的信息清除,代码为
或者
第二:不管是客户端还是服务端在通过Socket读取数据的时候,在你的数据传输完成后,发送一个结束标记(比如:end),这样在你的 while循环里面判断一下数据是否已经传输完毕,完毕后跳出循环,否则由于你的程序就会一直阻塞在 readLine()这里,因为你的 socket还没有断开,会一直等待你写数据。
另一个类访问不到一个public修饰的Java类中的public方法,如WifiManager中的setWifiApEnabled()方法,这是为什么呢???
`很多之前已经连接上的WIFI,配置信息会自动保存,当你关闭—->打开WIFI时就会自动连接,但有时我们并不希望这样处理,解决方法为在打开WIFI之前将以前所保存的信息清除,代码为
if(isWifiConnect()){ WifiInfo info = mWifiManager.getConnectionInfo(); mWifiManager.removeNetwork(info.getNetworkId()); mWifiManager.saveConfiguration(); }
或者
/** * 移除所有同名节点 * @param SSID */ private void clearAll(String SSID) { List<WifiConfiguration> existingConfigs = mWifiManager.getConfiguredNetworks(); //按照networkId从大到小排序 Collections.sort(existingConfigs, new ComparatorConfig()); for (WifiConfiguration existingConfig : existingConfigs) { LogHelper.i(TAG,"existingConfig.SSID="+existingConfig.SSID+",netID = "+ existingConfig.networkId); if (existingConfig.SSID.equals("\""+SSID+"\"") /*&& existingConfig.preSharedKey.equals("\"" + password + "\"")*/) { mWifiManager.disableNetwork(existingConfig.networkId); mWifiManager.removeNetwork(existingConfig.networkId); } } mWifiManager.saveConfiguration(); }
相关文章推荐
- java-模拟tomcat服务器
- Linux socket 初步
- 解决WIFI无线连接或连接上很慢
- java socket 注意的地方
- java socket 注意的地方
- C#基于socket模拟http请求的方法
- 简单的Ruby中的Socket编程教程
- Socket不能选择本地IP连接问题如何解决
- C#之Socket操作类实例解析
- 使用C#来编写一个异步的Socket服务器
- C#使用Socket快速判断数据库连接是否正常的方法
- 基于c#用Socket做一个局域网聊天工具
- 科学知识:理解socket
- C++ socket实现miniFTP
- websocket++简单使用及实例分析
- socket多人聊天程序C语言版(一)
- socket多人聊天程序C语言版(二)
- Android聊天工具基于socket实现
- PHP socket 模拟POST 请求实例代码