android 获取当前连接WIFI名称的问题

我在程序内通过以下方法获取当前连接的WIFI名称(SSID),这个也是网上找别人的,但在我程序内就获取不到呢?

1、在AndroidManifest.xml文件内增加

2、在源代码内通过以下函数获取SSID

private String getSSid(){

WifiManager wm = (WifiManager) getSystemService(WIFI_SERVICE);

if(wm != null){

WifiInfo wi = wm.getConnectionInfo();

if(wi != null){

String s = wi.getSSID();

if(s.length()>2&&s.charAt(0) == '"'&&s.charAt(s.length() -1) == '"'){

return s.substring(0,s.length()-1);

}

}

}

return "";

}

实际跟踪时,发现wm不为null,但wi.getSSID()获取到的是,wi的名称是UNINITIALIZED,确认网络是连接上的,是哪里没有初始化还是什么原因?请高手指点;

------解决方案--------------------

下面是我刚刚实验过的代码:扫描所有可用的wifi,再改下应该就可以获取到当前连接的,供参考,如果你改好了也告诉一下~

MainActivity.java

package com.example.wifistudy;

import java.text.SimpleDateFormat;

import java.util.Date;

import java.util.List;

import android.app.Activity;

import android.app.ActionBar;

import android.app.Fragment;

import android.content.BroadcastReceiver;

import android.content.Context;

import android.content.Intent;

import android.content.IntentFilter;

import android.net.wifi.ScanResult;

import android.net.wifi.WifiManager;

import android.os.Bundle;

import android.view.LayoutInflater;

import android.view.Menu;

import android.view.MenuItem;

import android.view.View;

import android.view.ViewGroup;

import android.widget.TextView;

import android.os.Build;

public class MainActivity extends Activity

{

TextView mainText;

WifiManager mainWifi;

WifiReceiver receiverWifi;

List wifiList;

StringBuilder sb = new StringBuilder();

@Override

protected void onCreate(Bundle savedInstanceState)

{

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

if (savedInstanceState == null)

{

getFragmentManager().beginTransaction()

.add(R.id.container, new PlaceholderFragment()).commit();

}

mainText = (TextView) findViewById(R.id.mainText);

mainWifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);

receiverWifi = new WifiReceiver();

registerReceiver(receiverWifi, new IntentFilter(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION));

mainWifi.startScan();

mainText.setText("\\nStarting Scan...\\n");

}

@Override

public boolean onCreateOptionsMenu(Menu menu)

{

menu.add(0, 0, 0, "Refresh");

// Inflate the menu; this adds items to the action bar if it is present.

getMenuInflater().inflate(R.menu.main, menu);

return true;

}

@Override

public boolean onOptionsItemSelected(MenuItem item)

{

mainWifi.startScan();

mainText.setText("Starting Scan");

// Handle action bar item clicks here. The action bar will

// automatically handle clicks on the Home/Up button, so long

// as you specify a parent activity in AndroidManifest.xml.

int id = item.getItemId();

if (id == R.id.action_settings)

{

return true;

}

return super.onOptionsItemSelected(item);

}

protected void onPause()

{

unregisterReceiver(receiverWifi);

super.onPause();

}

protected void onResume()

{

registerReceiver(receiverWifi, new IntentFilter(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION));

super.onResume();

}

/**

* A placeholder fragment containing a simple view.

*/

public static class PlaceholderFragment extends Fragment

{

public PlaceholderFragment()

{

}

@Override

public View onCreateView(LayoutInflater inflater, ViewGroup container,

Bundle savedInstanceState)

{

View rootView = inflater.inflate(R.layout.fragment_main, container,

false);

return rootView;

}

}

class WifiReceiver extends BroadcastReceiver

{

public void onReceive(Context c, Intent intent)

{

SimpleDateFormat    formatter    =   new    SimpleDateFormat    ("yyyy年MM月dd日    HH:mm:ss     ");

android获取连接wifi名称,android 获取当前连接WIFI名称的有关问题相关推荐

  1. Android 监听网络连接状态,判断网络连接方式,9.0网络连接,获取已连接WiFi名称SSID和MAC

    获取已连接的WiFi名称 <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/> ...

  2. android 获取wifi的加密类型,Android WIFI开发:获取wifi列表,连接指定wifi,获取wifi加密方式,监听wifi网络变化等...

    下面是 Android 开发中 WiFi 的常用配置,如:获取当前 WiFi ,扫描 WiFi 获取列表,连接指定 WiFi ,监听网络变化等等. 下面是效果图: GitHub 下载地址:https: ...

  3. 关于Android 8.0/9.0 之后获取wifi名称为空的解决方法

    今天连接硬件设备的时候,需要用到wifi名和密码来进行绑定配对.在获取wifi名的时候,意外发现为空.于是就开始找寻解决方案. 后来找到这么一篇文章: Android获取WIFI 的ssid 方法适配 ...

  4. Android的mac和BSSID,Android 获取本机的mac和wifi的BSSID(mac)以及其他信息

    一上班就开始总结上礼拜写的wifi,先来说说wifi的属性 在Android的官方文档中定义了如下五种状态: WIFI_STATE_DISABLED   WIFI 不可用 WIFI_STATE_DIS ...

  5. 【Android 电量优化】电量优化 ( 网络状态获取 | 主动获取 WIFI 状态 | 被动获取 WIFI 状态 )

    文章目录 一.获取 WIFI 状态 二.主动获取 WIFI 状态 三.被动获取 WIFI 状态 参考 Google 官方文档 : 优化电池续航时间 一.获取 WIFI 状态 在应用中执行某些操作 , ...

  6. android获取wifi开关,Android WiFi开发(一)--WiFi开关与状态监听

    之前开发了一个WiFi,热点相关的应用.因为对这方面也不熟悉,刚开始找资料看书,但看明白实现时,发现随着android版本更新,相关api有较大改动,之前的代码不能用.经过一番探索,最后实现出来了,现 ...

  7. android获取包版本,Android获取应用名称、版本号、应用包名称,移动设备ID、MAC地址、基站信息和手机型号等详细信...

    创建一个android应用(AndroidTest),所需权限如下(AndroidManifest.xml文件): 接下来是MainActivity.java文件: package com.examp ...

  8. android 看AP 国家代码,Android WiFi 获取国家码

    记录一下Android获取国家码的方式 Wifi 国家码获取途径 1.DefaultCountryTablefield in WCNSS_qcom_wlan_nv.bin-read during dr ...

  9. android代码获取应用名称,Android获取应用程序名称(ApplicationName)

    MainActivity如下: package cn.testapplicationname; import android.os.Bundle; import android.widget.Text ...

  10. android获取程序名称,Android获取应用程序名称(ApplicationName)示例

    MainActivity如下: 代码如下: package cn.testapplicationname; import android.os.Bundle; import android.widge ...

最新文章

  1. 匿名函数的this指向为什么是window?
  2. Swift实现Touch ID验证
  3. 【视频课】8小时系统性地掌握深度学习视频分类与行为识别理论+实践
  4. 二分类预测用的几个预测结果精确度计算方法
  5. php serialize error at offset,PHP Notice: unserialize(): Error at offset XX of XX bytes
  6. 分布式光伏补贴_2018年国家光伏并网补贴标准、政策
  7. 浅谈数据库发展史和 OceanBase 的诞生
  8. 一线互联网架构师筑基必备技能之Java篇,工作感悟
  9. JS查漏补缺(自用版)
  10. 《企业IT架构转型之道》边读边想——内容主线
  11. 光功率计(Optical power meter)
  12. 技术问答-1 跨平台
  13. Eclipse Mars2在线安装svn详细步骤
  14. 总结一些IT项目经理的管理方法与经验
  15. Verilog HDL 总结(1)
  16. Android中访问sdcard路径的几种方式
  17. 火狐浏览器firefox检测不到U盾证书
  18. ag-grid with web api
  19. win10 装黑苹果 完整教程
  20. 【原生代码】Python3 实现ATR、MA、EMA、SMMA、RMA、TEMA指标的计算

热门文章

  1. MFC 学习的基本概念
  2. 从职责归属看数据库中关系设计
  3. 《算法竞赛进阶指南》打卡-基本算法-AcWing 89. a^b:位运算、快速幂
  4. python dateformatter_Python dates.DateFormatter方法代码示例
  5. c# socket接收字符串_Python高级编程之 Socket 编程
  6. Java中divide用法_java的BIgInteger类中divideAndRemainder方法怎么用?
  7. mysql pool not open_安装 MariaDb 时报错:Could not open mysql.plugin table
  8. 启动进程 问号_有两个这样的进程:僵尸进程amp;孤儿进程,蓝瘦香菇
  9. android 关闭多点触控_Cocos Creator关闭多点触摸的问题
  10. php对象+this,PHP $this:当前对象