• 您当前的位置:首页 > 科技新闻 > 互联网新闻 > 腾讯wetest限免开放Android P专区 同样Android 不同的体验
  • 腾讯wetest限免开放Android P专区 同样Android 不同的体验

    时间:2018-04-18 16:17:31

    来源:Techweb

    作者:TechWeb.com.cn

    以下提供一个简单的测试Demo,以供参考:

    private WifiRttManager wifiRttManager;

    private WifiManager wifiManager;

    @Override

    protected void onCreate(Bundle savedInstanceState) {

    // ... ...

    if(getPackageManager().hasSystemFeature(PackageManager.FEATURE_WIFI_RTT)) {

    Object service = this.getApplicationContext().getSystemService(Context.WIFI_RTT_RANGING_SERVICE);

    if(service instanceof WifiRttManager) {

    wifiRttManager= (WifiRttManager) service;

    Log.i(TAG, "Get WifiRttManager Succ.");

    }

    wifiManager = (WifiManager) this.getApplicationContext().getSystemService(Context.WIFI_SERVICE);

    IntentFilter wifiFileter = new IntentFilter();

    wifiFileter.addAction(WifiManager.NETWORK_STATE_CHANGED_ACTION);

    wifiFileter.addAction(WifiManager.WIFI_STATE_CHANGED_ACTION);

    wifiFileter.addAction(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION);

    registerReceiver(new WifiChangeReceiver(), wifiFileter);

    }

    // ... ...

    private void startScanAPs() {

    wifiManager.setWifiEnabled(true);

    wifiManager.startScan();

    }

    class WifiChangeReceiver extends BroadcastReceiver {

    @RequiresApi(api = 28)

    @Override

    public void onReceive(Context context, Intent intent) {

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

    List scanResults = wifiManager.getScanResults();

    Log.i(TAG, "Wifi Scan size:" + scanResults.size());

    for(ScanResult scanResult: scanResults) {

    Log.i(TAG, scanResult.toString());

    RangingRequest.Builder builder = new RangingRequest.Builder();

    builder.addAccessPoint(scanResult);

    wifiRttManager.startRanging(builder.build(), new RangingResultCallback() {

    @SuppressLint("Override")

    @Override

    public void onRangingFailure(int i) {

    // TODO

    }

    @SuppressLint("Override")

    @Override

    public void onRangingResults(List list) {

    // TODO get result from list

    for(RangingResult result : list) {

    Log.i(TAG, result.toString());

    }

    }

    }, new Handler());

    }

    }

    }

    }

    首页<上一页12345下一页>尾页
    关键词:
    最近更新