使用AsyncTask连续刷新蓝牙RSSI

时间:2013-03-10 09:09:15

标签: java android

我想让手机在移动电话时不断刷新其他设备的RSSI值。

为了使屏幕显示不断更新新的RSSI值,我选择使用AsyncTask以免冻结我的UI。

但不知怎的,我的代码不起作用。每次运行时,应用程序都会死掉。出于调试目的,我在那里放了一个Toast.makeText。但屏幕上没有任何内容。那么也许这意味着我的AsyncTask实际上根本没有被执行?

AsyncTask代码:

    private class Refresh extends AsyncTask<Void, Void, Void> {
    @Override
    protected Void doInBackground(Void... params) {
        // TODO Auto-generated method stub
        while(true){
            Toast.makeText(getApplicationContext(), "Loop is being executed", Toast.LENGTH_SHORT).show();
            init();
            startDiscovery();
        }
    }
}

OnCreat()代码:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    init();
    startDiscovery();

    new Refresh().execute();
}

请帮帮我! 我哪里错了?

在ToT

0 个答案:

没有答案