Android:蓝牙活动推出

时间:2012-10-11 20:20:47

标签: android bluetooth

我正在构建一段代码,当手机收到有效的蓝牙连接时会模仿某项活动。这是作为一项服务运行,因此可以在当下接收它。

这是我正在使用的代码。现在它没有启动意图,但也没有失败。如何让它正常运行?

import android.app.Service;
import android.bluetooth.BluetoothDevice;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.os.IBinder;

public class detectService extends Service{

@Override
public IBinder onBind(Intent intent) {
    // TODO Auto-generated method stub
    return null;
}

private BroadcastReceiver ConnectListener = new BroadcastReceiver() {
    @Override
    public void onReceive(Context context, Intent intent) 
    {
        String action = intent.getAction();
        if (BluetoothDevice.ACTION_ACL_CONNECTED.equals(action)) 
        {
                intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);
            //Start Second Activity
                Intent secondIntent = new Intent(detectService.this, otherClass.class);
                intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                startActivity(secondIntent);
        }
     }
};
}

1 个答案:

答案 0 :(得分:2)

您需要使用

注册您创建的接收器
registerReceiever(ConnectListener, intentFilter);

你的情况下的意图过滤器将是蓝牙连接过滤器,类似

IntentFilter intentFilter = new IntentFilter(BluetoothDevice.ACTION_ACL_CONNECTED);

有关更完整的示例,请查看此其他post