java - ScanResults 用两个字符串设置我的变量,但返回值只有一个

标签 java android

String essidPrefix = MainFragment.configuration.getEssidPrefix();
    wifiManager.startScan();
    results = wifiManager.getScanResults();
    for(ScanResult scanResult : results){
        String scanWifi = scanResult.SSID;
       if(scanWifi.startsWith(essidPrefix)){
           bssid = scanResult.BSSID;
           //bssid now has two strings, abc123 and abc1234 for example

       }
    }
   //bssid here only returns abc123
    return bssid;

如代码所示,如​​何将 scanResults.BSSID 中的 abc123abc1234 连接在一起,以便我能够返回它作为一个字符串?

最佳答案

如果我收到你的问题。

Java/Android中的字符串连接..

bssid = bssid+","+scanResult.BSSID; // comma separate

编辑

根据评论..您需要重置它。 bssid = ""; 所以你的代码将如下所示。

List<String> ids = new ArrayList<String>();
String essidPrefix = MainFragment.configuration.getEssidPrefix();
    wifiManager.startScan();
    results = wifiManager.getScanResults();
    bssid = ""; // this will reset it
    for(ScanResult scanResult : results){
        String scanWifi = scanResult.SSID;
       if(scanWifi.startsWith(essidPrefix)){
           // if you want to avoid null
           ids.add(scanResult.BSSID); // comma separate
       }
    }
   //bssid here only returns abc123
    return bssid = android.text.TextUtils.join(",", ids);

关于java - ScanResults 用两个字符串设置我的变量,但返回值只有一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52510367/

相关文章:

Java - url.openConnection() 和 httpsUrlConnection.connect() 首次调用时运行缓慢

java - 请确认/更正此 : C++ vs Java

java - 上传的最佳音频格式是什么。服务器将转换为 mp3 和 ogg

android - 面临android编译错误

android - 如何以原始方向将位图保存为 Jpg 图像?

java - 在菜单栏中显示最近打开的项目

java - 如何使用循环构造来迭代某些 View id?

android - com.google.android.gms.common.api.ApiException : 12500

java - 无法使用 Android 默认视频播放器使用 Intent 播放视频

java - HQL查询无法正常工作