android.net.wifi.WifiInfo#getBSSID ( )源码实例Demo

下面列出了android.net.wifi.WifiInfo#getBSSID ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: android_9.0.0_r45   文件: NetworkKey.java
/**
 * Constructs a new NetworkKey for the given {@link WifiInfo}.
 *
 * @param wifiInfo the {@link WifiInfo} to create a {@link NetworkKey} for.
 * @return A new {@link NetworkKey} instance or <code>null</code> if the given {@link WifiInfo}
 *         instance doesn't represent a connected WiFi network.
 * @hide
 */
@Nullable
public static NetworkKey createFromWifiInfo(@Nullable WifiInfo wifiInfo) {
    if (wifiInfo != null) {
        final String ssid = wifiInfo.getSSID();
        final String bssid = wifiInfo.getBSSID();
        if (!TextUtils.isEmpty(ssid) && !ssid.equals(WifiSsid.NONE)
                && !TextUtils.isEmpty(bssid)) {
            WifiKey wifiKey;
            try {
                wifiKey = new WifiKey(ssid, bssid);
            } catch (IllegalArgumentException e) {
                Log.e(TAG, "Unable to create WifiKey.", e);
                return null;
            }
            return new NetworkKey(wifiKey);
        }
    }
    return null;
}
 
源代码2 项目: 365browser   文件: PlatformNetworksManager.java
static VisibleWifi getConnectedWifi(Context context, WifiManager wifiManager) {
    if (!hasLocationAndWifiPermission(context)) {
        return VisibleWifi.NO_WIFI_INFO;
    }
    WifiInfo wifiInfo = wifiManager.getConnectionInfo();
    if (wifiInfo == null) {
        return VisibleWifi.NO_WIFI_INFO;
    }
    String ssid = wifiInfo.getSSID();
    if (ssid == null || UNKNOWN_SSID.equals(ssid)) {
        // No SSID.
        ssid = null;
    } else {
        // Remove double quotation if ssid has double quotation.
        if (ssid.startsWith("\"") && ssid.endsWith("\"") && ssid.length() > 2) {
            ssid = ssid.substring(1, ssid.length() - 1);
        }
    }
    String bssid = wifiInfo.getBSSID();
    // It's connected, so use current time.
    return VisibleWifi.create(ssid, bssid, null, sTimeProvider.getCurrentTime());
}
 
源代码3 项目: fdroidclient   文件: ManageReposActivity.java
private void checkIfNewRepoOnSameWifi(NewRepoConfig newRepo) {
    // if this is a local repo, check we're on the same wifi
    if (!TextUtils.isEmpty(newRepo.getBssid())) {
        WifiManager wifiManager = (WifiManager) getApplicationContext().getSystemService(Context.WIFI_SERVICE);
        WifiInfo wifiInfo = wifiManager.getConnectionInfo();
        String bssid = wifiInfo.getBSSID();
        if (TextUtils.isEmpty(bssid)) { /* not all devices have wifi */
            return;
        }
        bssid = bssid.toLowerCase(Locale.ENGLISH);
        String newRepoBssid = Uri.decode(newRepo.getBssid()).toLowerCase(Locale.ENGLISH);
        if (!bssid.equals(newRepoBssid)) {
            String msg = getString(R.string.not_on_same_wifi, newRepo.getSsid());
            Toast.makeText(this, msg, Toast.LENGTH_LONG).show();
        }
        // TODO we should help the user to the right thing here,
        // instead of just showing a message!
    }
}
 
源代码4 项目: WifiWizard   文件: WifiWizard.java
/**
 * This method retrieves the SSID for the currently connected network
 *
 *    @param    callbackContext        A Cordova callback context
 *    @return    true if SSID found, false if not.
*/
private boolean getConnectedSSID(CallbackContext callbackContext){
    if(!wifiManager.isWifiEnabled()){
        callbackContext.error("Wifi is disabled");
        return false;
    }

    WifiInfo info = wifiManager.getConnectionInfo();

    if(info == null){
        callbackContext.error("Unable to read wifi info");
        return false;
    }

    String ssid = info.getSSID();
    if(ssid.isEmpty()) {
        ssid = info.getBSSID();
    }
    if(ssid.isEmpty()){
        callbackContext.error("SSID is empty");
        return false;
    }

    callbackContext.success(ssid);
    return true;
}
 
源代码5 项目: react-native-wifi-reborn   文件: RNWifiModule.java
/**
 * Returns the BSSID (basic service set identifier) of the currently connected WiFi network.
 */
@ReactMethod
public void getBSSID(final Promise promise) {
    final WifiInfo info = wifi.getConnectionInfo();
    final String bssid = info.getBSSID();
    promise.resolve(bssid.toUpperCase());
}
 
源代码6 项目: DoraemonKit   文件: DeviceUtils.java
/**
 * @return 手机链接wifi的路由器的mac地址
 */
public static String getWifiBSSID(Context context) {
    WifiManager mWifi = (WifiManager) context.getApplicationContext().getSystemService(Context.WIFI_SERVICE);
    if (mWifi.isWifiEnabled()) {
        WifiInfo wifiInfo = mWifi.getConnectionInfo();
        return wifiInfo.getBSSID();
    }
    return "";
}
 
源代码7 项目: Auie   文件: UENavigationActivity.java
@Override
public void onReceive(Context context, Intent intent) {
	WifiInfo info = ((WifiManager) context.getSystemService(Context.WIFI_SERVICE)).getConnectionInfo();
	if (info.getBSSID() == null) {
		mNavigationView.hideWIFI();
	}else {
		mNavigationView.showWIFI();
		mNavigationView.setWIFI(WifiManager.calculateSignalLevel(info.getRssi(), 5));
	}
}
 
源代码8 项目: Auie   文件: UENavigationFragmentActivity.java
@Override
public void onReceive(Context context, Intent intent) {
	WifiInfo info = ((WifiManager) context.getSystemService(Context.WIFI_SERVICE)).getConnectionInfo();
	if (info.getBSSID() == null) {
		mNavigationView.hideWIFI();
	}else {
		mNavigationView.showWIFI();
		mNavigationView.setWIFI(WifiManager.calculateSignalLevel(info.getRssi(), 5));
	}
}
 
private void updateWifiInfo() {
    WifiManager wifiManager = (WifiManager) context.getApplicationContext().getSystemService(Context.WIFI_SERVICE);
    if (wifiManager != null) {
        WifiInfo wifiInfo = wifiManager.getConnectionInfo();

        if (wifiInfo != null) {
            wifiSsid = wifiInfo.getSSID();
            wifiBssid = wifiInfo.getBSSID();
        };
    }
}
 
源代码10 项目: easydeviceinfo   文件: EasyNetworkMod.java
/**
 * Gets BSSID of Connected WiFi
 *
 * You need to declare the below permission in the manifest file to use this properly
 *
 * <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
 * <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
 *
 * @return Return the basic service set identifier (BSSID) of the current access point.
 */
@RequiresPermission(allOf = {
    Manifest.permission.ACCESS_WIFI_STATE, Manifest.permission.ACCESS_NETWORK_STATE
})
public final String getWifiBSSID() {
  String result = null;
  if (PermissionUtil.hasPermission(context, Manifest.permission.ACCESS_WIFI_STATE)) {
    ConnectivityManager cm =
        (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
    if (cm != null) {
      NetworkInfo networkInfo = cm.getActiveNetworkInfo();
      if (networkInfo == null) {
        result = null;
      }

      if (networkInfo != null && networkInfo.isConnected()) {
        final WifiManager wifiManager =
            (WifiManager) context.getApplicationContext().getSystemService(Context.WIFI_SERVICE);
        if (wifiManager != null) {
          final WifiInfo connectionInfo = wifiManager.getConnectionInfo();
          if (connectionInfo != null && !TextUtils.isEmpty(connectionInfo.getSSID())) {
            result = connectionInfo.getBSSID();
          }
        }
      }
    }
  }
  return CheckValidityUtil.checkValidData(result);
}
 
源代码11 项目: Easer   文件: Utils.java
static boolean compare(WifiUSourceData data, @NonNull WifiInfo wifiInfo) {
    String ssid;
    if (data.mode_essid) {
        ssid = wifiInfo.getSSID();
        if (ssid.startsWith("\"")) {
            ssid = ssid.substring(1, ssid.length() - 1);
        }
    } else {
        ssid = wifiInfo.getBSSID();
    }
    return data.match(ssid);
}
 
@ReactMethod
public void getBSSID(final Callback callback) {
	WifiInfo info = wifi.getConnectionInfo();

	String bssid = info.getBSSID();

	callback.invoke(bssid.toUpperCase());
}
 
源代码13 项目: android-tv-launcher   文件: TitleView.java
@Override
public void onReceive(Context context, Intent intent) {
	WifiManager wifiManager = (WifiManager) context
			.getSystemService(context.WIFI_SERVICE);
	WifiInfo wifiInfo = wifiManager.getConnectionInfo();
	if (wifiInfo.getBSSID() != null) {
		// wifi信号强度
		int signalLevel = WifiManager.calculateSignalLevel(
				wifiInfo.getRssi(), 4);
		if (signalLevel == 0) {
			imgNetWorkState.setImageDrawable(context.getResources()
					.getDrawable(R.drawable.wifi_1));

		} else if (signalLevel == 1) {
			imgNetWorkState.setImageDrawable(context.getResources()
					.getDrawable(R.drawable.wifi_2));

		} else if (signalLevel == 2) {
			imgNetWorkState.setImageDrawable(context.getResources()
					.getDrawable(R.drawable.wifi_3));

		} else if (signalLevel == 3) {
			imgNetWorkState.setImageDrawable(context.getResources()
					.getDrawable(R.drawable.networkstate_on));
		}
		if (d)
			Toast.makeText(context, "wifi level" + signalLevel,
					Toast.LENGTH_SHORT).show();
	}
}
 
源代码14 项目: WiFiAnalyzer   文件: Transformer.java
@NonNull
WiFiConnection transformWifiInfo(WifiInfo wifiInfo) {
    if (wifiInfo == null || wifiInfo.getNetworkId() == -1) {
        return WiFiConnection.EMPTY;
    }
    return new WiFiConnection(
        WiFiUtils.convertSSID(wifiInfo.getSSID()),
        wifiInfo.getBSSID(),
        WiFiUtils.convertIpAddress(wifiInfo.getIpAddress()),
        wifiInfo.getLinkSpeed());
}
 
源代码15 项目: WifiWizard2   文件: WifiWizard2.java
/**
 * This method retrieves the WifiInformation for the (SSID or BSSID) currently connected network.
 *
 * @param callbackContext A Cordova callback context
 * @param basicIdentifier A flag to get BSSID if true or SSID if false.
 * @return true if SSID found, false if not.
 */
private boolean getWifiServiceInfo(CallbackContext callbackContext, boolean basicIdentifier) {    
  if (API_VERSION >= 23 && !cordova.hasPermission(ACCESS_FINE_LOCATION)) { //Android 9 (Pie) or newer
    requestLocationPermission(WIFI_SERVICE_INFO_CODE);
    bssidRequested = basicIdentifier;
    return true;
  } else {
    WifiInfo info = wifiManager.getConnectionInfo();

    if (info == null) {
      callbackContext.error("UNABLE_TO_READ_WIFI_INFO");
      return false;
    }

    // Only return SSID or BSSID when actually connected to a network
    SupplicantState state = info.getSupplicantState();
    if (!state.equals(SupplicantState.COMPLETED)) {
      callbackContext.error("CONNECTION_NOT_COMPLETED");
      return false;
    }

    String serviceInfo;
    if (basicIdentifier) {
      serviceInfo = info.getBSSID();
    } else {
      serviceInfo = info.getSSID();
    }

    if (serviceInfo == null || serviceInfo.isEmpty() || serviceInfo == "0x") {
      callbackContext.error("WIFI_INFORMATION_EMPTY");
      return false;
    }

    // http://developer.android.com/reference/android/net/wifi/WifiInfo.html#getSSID()
    if (serviceInfo.startsWith("\"") && serviceInfo.endsWith("\"")) {
      serviceInfo = serviceInfo.substring(1, serviceInfo.length() - 1);
    }

    callbackContext.success(serviceInfo);
    return true;
  }
}
 
源代码16 项目: letv   文件: j.java
private List<k> d() {
    z.a();
    if (!a()) {
        return new ArrayList();
    }
    k kVar;
    WifiInfo connectionInfo = this.a.getConnectionInfo();
    if (connectionInfo != null) {
        k kVar2 = new k(this, connectionInfo.getBSSID(), connectionInfo.getRssi(), connectionInfo.getSSID());
        new StringBuilder(z[6]).append(kVar2.toString());
        kVar = kVar2;
        z.a();
    } else {
        kVar = null;
    }
    ArrayList arrayList = new ArrayList();
    if (kVar != null) {
        arrayList.add(kVar);
    }
    List scanResults = VERSION.SDK_INT < 23 ? this.a.getScanResults() : (this.b == null || !a.c(this.b, z[5])) ? null : this.a.getScanResults();
    if (r0 != null && r0.size() > 0) {
        int i = -200;
        k kVar3 = null;
        for (ScanResult kVar4 : r0) {
            int i2;
            k kVar5 = new k(this, kVar4);
            if (kVar5.c.equals(kVar.c) || kVar5.b <= i) {
                kVar2 = kVar3;
                i2 = i;
            } else {
                new StringBuilder(z[4]).append(kVar5.toString());
                z.a();
                k kVar6 = kVar5;
                i2 = kVar5.b;
                kVar2 = kVar6;
            }
            kVar3 = kVar2;
            i = i2;
        }
        if (kVar3 != null) {
            arrayList.add(kVar3);
        }
    }
    return arrayList;
}
 
源代码17 项目: Inspeckage   文件: Fingerprint.java
public static void load() {

        FingerprintList list = new FingerprintList();
        List<FingerprintItem> li = new ArrayList<>();

        String ads_id = mPrefs.getString(Config.SP_ADS_ID, "");
        li.add(new FingerprintItem("Advertising", "ID", ads_id, ads_id, false));

        String mac = getMacAddress(mContext);
        li.add(new FingerprintItem("Wi-Fi", "Android", mac, mac, false));

        WifiManager wifiManager = (WifiManager) mContext.getSystemService(Context.WIFI_SERVICE);
        WifiInfo wi = wifiManager.getConnectionInfo();

        String bssid = wi.getBSSID();
        li.add(new FingerprintItem("Wi-Fi", "BSSID", bssid, bssid, false));
        String ssid = wi.getSSID();
        li.add(new FingerprintItem("Wi-Fi", "SSID", ssid.substring(1, ssid.length() - 1), ssid.substring(1, ssid.length() - 1), false));
        String ipAddress = Formatter.formatIpAddress(wi.getIpAddress());
        li.add(new FingerprintItem("Wi-Fi", "IP", ipAddress, ipAddress, false));

        TelephonyManager mTelephonyManager = (TelephonyManager) mContext.getSystemService(Context.TELEPHONY_SERVICE);
        li.add(new FingerprintItem("TelephonyManager", "IMEI", mTelephonyManager.getDeviceId(), mTelephonyManager.getDeviceId(), false));
        li.add(new FingerprintItem("TelephonyManager", "IMSI", mTelephonyManager.getSubscriberId(), mTelephonyManager.getSubscriberId(), false));
        li.add(new FingerprintItem("TelephonyManager", "PhoneNumber", mTelephonyManager.getLine1Number(), mTelephonyManager.getLine1Number(), false));
        li.add(new FingerprintItem("TelephonyManager", "SimSerial", mTelephonyManager.getSimSerialNumber(), mTelephonyManager.getSimSerialNumber(), false));
        li.add(new FingerprintItem("TelephonyManager", "CarrierCode", mTelephonyManager.getNetworkOperator(), mTelephonyManager.getNetworkOperator(), false));
        li.add(new FingerprintItem("TelephonyManager", "Carrier", mTelephonyManager.getNetworkOperatorName(), mTelephonyManager.getNetworkOperatorName(), false));
        li.add(new FingerprintItem("TelephonyManager", "SimCountry", mTelephonyManager.getSimCountryIso(), mTelephonyManager.getSimCountryIso(), false));
        li.add(new FingerprintItem("TelephonyManager", "NetworkCountry", mTelephonyManager.getNetworkCountryIso(), mTelephonyManager.getNetworkCountryIso(), false));
        li.add(new FingerprintItem("TelephonyManager", "SimSerialNumber", mTelephonyManager.getSimSerialNumber(), mTelephonyManager.getSimSerialNumber(), false));

        li.add(new FingerprintItem("VERSION", "RELEASE", Build.VERSION.RELEASE, Build.VERSION.RELEASE, false));
        li.add(new FingerprintItem("VERSION", "CODENAME", Build.VERSION.CODENAME, Build.VERSION.CODENAME, false));
        li.add(new FingerprintItem("VERSION", "INCREMENTAL", Build.VERSION.INCREMENTAL, Build.VERSION.INCREMENTAL, false));
        li.add(new FingerprintItem("VERSION", "SDK", Build.VERSION.SDK, Build.VERSION.SDK, false));
        li.add(new FingerprintItem("VERSION", "SDK_INT", String.valueOf(Build.VERSION.SDK_INT), String.valueOf(Build.VERSION.SDK_INT), false));

        if (android.os.Build.VERSION.SDK_INT >= 23) {
            li.add(new FingerprintItem("VERSION", "BASE_OS", Build.VERSION.BASE_OS, Build.VERSION.BASE_OS, false));
            li.add(new FingerprintItem("VERSION", "PREVIEW_SDK_INT", String.valueOf(Build.VERSION.PREVIEW_SDK_INT), String.valueOf(Build.VERSION.PREVIEW_SDK_INT), false));
            li.add(new FingerprintItem("VERSION", "SECURITY_PATCH", Build.VERSION.SECURITY_PATCH, Build.VERSION.SECURITY_PATCH, false));
        }

        li.add(new FingerprintItem("BUILD", "BOARD", Build.BOARD, Build.BOARD, false));
        li.add(new FingerprintItem("BUILD", "BOOTLOADER", Build.BOOTLOADER, Build.BOOTLOADER, false));
        li.add(new FingerprintItem("BUILD", "BRAND", Build.BRAND, Build.BRAND, false));
        li.add(new FingerprintItem("BUILD", "CPU_ABI", Build.CPU_ABI, Build.CPU_ABI, false));
        li.add(new FingerprintItem("BUILD", "CPU_ABI2", Build.CPU_ABI2, Build.CPU_ABI2, false));
        li.add(new FingerprintItem("BUILD", "DEVICE", Build.DEVICE, Build.DEVICE, false));
        li.add(new FingerprintItem("BUILD", "DISPLAY", Build.DISPLAY, Build.DISPLAY, false));
        li.add(new FingerprintItem("BUILD", "FINGERPRINT", Build.FINGERPRINT, Build.FINGERPRINT, false));
        li.add(new FingerprintItem("BUILD", "HARDWARE", Build.HARDWARE, Build.HARDWARE, false));
        li.add(new FingerprintItem("BUILD", "HOST", Build.HOST, Build.HOST, false));
        li.add(new FingerprintItem("BUILD", "ID", Build.ID, Build.ID, false));
        li.add(new FingerprintItem("BUILD", "MANUFACTURER", Build.MANUFACTURER, Build.MANUFACTURER, false));
        li.add(new FingerprintItem("BUILD", "MODEL", Build.MODEL, Build.MODEL, false));
        li.add(new FingerprintItem("BUILD", "PRODUCT", Build.PRODUCT, Build.PRODUCT, false));
        li.add(new FingerprintItem("BUILD", "RADIO", Build.RADIO, Build.RADIO, false));
        li.add(new FingerprintItem("BUILD", "SERIAL", Build.SERIAL, Build.SERIAL, false));
        li.add(new FingerprintItem("BUILD", "TAGS", Build.TAGS, Build.TAGS, false));
        li.add(new FingerprintItem("BUILD", "TYPE", Build.TYPE, Build.TYPE, false));
        li.add(new FingerprintItem("BUILD", "USER", Build.USER, Build.USER, false));

        list.fingerprintItems = li;

        Gson gson = new GsonBuilder().create();

        SharedPreferences.Editor editor = mPrefs.edit();
        String json = gson.toJson(list);
        editor.putString(Config.SP_FINGERPRINT_HOOKS, json);
        editor.apply();
    }
 
源代码18 项目: fdroidclient   文件: WifiStateChangeService.java
private void setSsid(WifiInfo wifiInfo) {
    if (wifiInfo != null && wifiInfo.getBSSID() != null) {
        String ssid = wifiInfo.getSSID();
        Utils.debugLog(TAG, "Have wifi info, connected to " + ssid);
        if (ssid == null) {
            FDroidApp.ssid = getString(R.string.swap_blank_wifi_ssid);
        } else {
            FDroidApp.ssid = ssid.replaceAll("^\"(.*)\"$", "$1");
        }
        FDroidApp.bssid = wifiInfo.getBSSID();
    } else {
        WifiApControl wifiApControl = null;
        try {
            wifiApControl = WifiApControl.getInstance(this);
            wifiApControl.isEnabled();
        } catch (NullPointerException e) {
            wifiApControl = null;
        }
        Utils.debugLog(TAG, "WifiApControl: " + wifiApControl);
        if (wifiApControl == null && FDroidApp.ipAddressString != null) {
            wifiInfo = wifiManager.getConnectionInfo();
            if (wifiInfo != null && wifiInfo.getBSSID() != null) {
                setSsid(wifiInfo);
            } else {
                FDroidApp.ssid = getString(R.string.swap_active_hotspot, "");
            }
        } else if (wifiApControl != null && wifiApControl.isEnabled()) {
            WifiConfiguration wifiConfiguration = wifiApControl.getConfiguration();
            Utils.debugLog(TAG, "WifiConfiguration: " + wifiConfiguration);
            if (wifiConfiguration == null) {
                FDroidApp.ssid = getString(R.string.swap_active_hotspot, "");
                FDroidApp.bssid = "";
                return;
            }

            if (wifiConfiguration.hiddenSSID) {
                FDroidApp.ssid = getString(R.string.swap_hidden_wifi_ssid);
            } else {
                FDroidApp.ssid = wifiConfiguration.SSID;
            }
            FDroidApp.bssid = wifiConfiguration.BSSID;
        }
    }
}
 
源代码19 项目: WifiWizard2   文件: WifiWizard2.java
@Override
public void onReceive(final Context context, final Intent intent) {

  if (WifiManager.NETWORK_STATE_CHANGED_ACTION.equals(intent.getAction())) {

    Log.d(TAG, "NETWORK_STATE_CHANGED_ACTION");

    NetworkInfo networkInfo = intent.getParcelableExtra(WifiManager.EXTRA_NETWORK_INFO);
    WifiInfo info = WifiWizard2.this.wifiManager.getConnectionInfo();

    // Checks that you're connected to the desired network
    if (networkInfo.isConnected() && info.getNetworkId() > -1) {

      final String ssid = info.getSSID().replaceAll("\"", "");
      final String bssid = info.getBSSID();

      Log.d(TAG, "Connected to '" + ssid + "' @ " + bssid);

      // Verify the desired network ID is what we actually connected to
      if ( desired != null && info.getNetworkId() == desired.apId ) {
        onSuccessfulConnection();
      }

    }

  }

}
 
源代码20 项目: DevUtils   文件: WifiUtils.java
/**
 * 获取连接的 BSSID
 * @param wifiInfo {@link WifiInfo}
 * @return BSSID
 */
public static String getBSSID(final WifiInfo wifiInfo) {
    if (wifiInfo == null) return null;
    return wifiInfo.getBSSID();
}