Android子进程中的数据怎么传到主进程中

在开发低功耗蓝牙,遇到个问题,想请假大家,
搜索低功耗设备的函数是由一个回调来对搜索的设备进行显示的,我想把这个回调函数中的rssi值调出来,但是不知道怎么整,贴出代码

 //用于接收BLE搜索结果的接口
 private BluetoothAdapter.LeScanCallback = new BluetoothAdapter.LeScanCallback(){
     @Override
     public void onLeScan(final BLuetoothDevice device,final int rssi,final byte[] sacanRecord){
        //子线程中进行BLE设备的搜索
        getActivity().runOnUiThread(new Runnable(){
            @Override
            public void run(){
                try{
                    if(!mLeDevice.contains(device)){
                        addItem(device.getName(),device.getAddress(),rssi);
                        mLeDevice(device);
                    }
                }catch(Exception e){
                    e.printStackTrace();
                }
            }
        });
     }
 };
 private void addItem(String devname,String address,int rssi){
     HashMap<String,Object> map = new HashMap<String,Object>();
     map.put("name",devname);
     map.put("address",address);
     map.put("RSSI",rssi);
     listItem.add(map);
     listItemAdapter.notifyDataChanged();
 }

我想实现将这里面的rssi从子线程中调出来,放入主线程,再用intent用于数据传递,哪位大神会这些呢,先在此谢过啦!

4个回答

可以 再写一个 实体类有该字段 (要有get/set方法) 通过 映射字段取map中的RSSI值 映射到实体类中声明过的 该字段

Allisonton
tesfen 没太明白
大约 4 年之前 回复

我能问下电脑版在哪里提问题吗?能不能教教我?楼主

Allisonton
tesfen 就在问答里面,有我要提问,编辑问题题目和内容,设置关键字之后就可以提问了
大约 4 年之前 回复

runOnUiThread():这个是运行在ui线程中,也就是主线程。

hexingen
新根 回复tesfen: 主线程更新ui( listItemAdapter.notifyDataChanged(); 这就是你的更新ui操作呀。工作线程是不能更新ui,用于处理耗时操作)
大约 4 年之前 回复
Allisonton
tesfen 这意思是在这里面写逻辑吗?
大约 4 年之前 回复

handler、广播等

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问