资源简介

如果我们想通过我们的应用程序交换不同设备之间的数据,蓝牙是一种适用于支持蓝牙设备之间进行的无线连接。 Android系统为我们提供了蓝牙的API,从中我们可以:查找配对的蓝牙设备,搜索其他蓝牙设备并连接到其中的一个或多个设备,我们将要创建一个激活和取消激活蓝牙的应用程序,找到已配对的蓝牙设备,并扫描发现的蓝牙设备。

资源截图

代码片段和文件信息

package com.test.BTClient;



import java.io.IOException;
import java.io.OutputStream;
import java.util.UUID;

import android.app.Activity;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothDevice;
import android.bluetooth.BluetoothSocket;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;

public class BTClient extends Activity {

private TextView text0;
    private EditText edit0;
    
  //按钮动作,监听服务端口,打开UUID服务

    BluetoothDevice _device = null;
    BluetoothSocket _socket = null;
    boolean _discoveryFinished = false;

    private BluetoothAdapter _bluetooth = BluetoothAdapter.getDefaultAdapter();



    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        text0 = (TextView)findViewById(R.id.Text0);
        edit0 = (EditText)findViewById(R.id.Edit0);

        
      //打开本地设备
        if (_bluetooth == null){
         Toast.makeText(this “Bluetooth is not available“ Toast.LENGTH_LONG).show();
          //  finish();
            return;
        }
        
        // 设置设备可以被搜索  
        _bluetooth.enable();
        if(_bluetooth.isEnabled()==false){
         Toast.makeText(this “Bluetooth can‘t be discorvered“ Toast.LENGTH_LONG).show();
         //finish();
         return;
        }
        
        
        text0.setText(“打个本地蓝牙服务成功!“);
    }
    

    //定义广播接收器
    private BroadcastReceiver _foundReceiver = new BroadcastReceiver() {
public void onReceive(Context context Intent intent) {
/* 从intent中取得搜索结果数据 */
//BluetoothDevice _device0 = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);
//if (_device0.getName().equals(“linvor“) )
_device = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);;
text0.setText(“找寻到设备:“+_device.getName());
}
};
private BroadcastReceiver _discoveryReceiver = new BroadcastReceiver() {

@Override
public void onReceive(Context context Intent intent) 
{
/* 卸载注册的接收器 */
unregisterReceiver(_foundReceiver);
unregisterReceiver(this);
_discoveryFinished = true;
}
};
    
    //连接搜寻服务
public void onSearchButtonclicked(View v){

IntentFilter discoveryFilter = new IntentFilter(BluetoothAdapter.ACTION_DISCOVERY_FINISHED);
registerReceiver(_discoveryReceiver discoveryFilter);
IntentFilter foundFilter = new IntentFilter(BluetoothDevice.ACTION_FOUND);
registerReceiver(_foundReceiver foundFilter);
new Thread(){
     public void run() 
     {
     //开始搜索 
     _bluetooth.startDiscovery();
     for (;;) 
     {
     if (_discoveryFinished) 
     {
     break;
     }
     try 
     {
     Thread.sleep(10

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2013-10-17 10:14  BTClient\
     文件         280  2010-12-01 16:58  BTClient\.classpath
     文件         844  2010-12-01 16:58  BTClient\.project
     文件        1178  2011-01-28 13:38  BTClient\AndroidManifest.xml
     目录           0  2013-10-17 15:07  BTClient\assets\
     目录           0  2013-10-17 10:14  BTClient\backup\
     文件        4558  2010-12-11 17:00  BTClient\backup\BTClient.java
     目录           0  2013-10-17 10:14  BTClient\bin\
     文件       25565  2011-03-21 15:35  BTClient\bin\BTClient.apk
     文件       16360  2011-03-21 15:35  BTClient\bin\classes.dex
     目录           0  2013-10-17 10:14  BTClient\bin\com\
     目录           0  2013-10-17 10:14  BTClient\bin\com\test\
     目录           0  2013-10-17 10:14  BTClient\bin\com\test\BTClient\
     文件        1961  2011-03-21 15:34  BTClient\bin\com\test\BTClient\BTClient$1.class
     文件        1093  2011-03-21 15:34  BTClient\bin\com\test\BTClient\BTClient$2.class
     文件         819  2011-03-21 15:34  BTClient\bin\com\test\BTClient\BTClient$3.class
     文件        2605  2011-03-21 15:34  BTClient\bin\com\test\BTClient\BTClient$4.class
     文件         795  2011-03-21 15:34  BTClient\bin\com\test\BTClient\BTClient$5.class
     文件        8080  2011-03-21 15:34  BTClient\bin\com\test\BTClient\BTClient.class
     文件        1989  2011-03-21 15:32  BTClient\bin\com\test\BTClient\DeviceListActivity$1.class
     文件        2222  2011-03-21 15:32  BTClient\bin\com\test\BTClient\DeviceListActivity$2.class
     文件         875  2011-03-21 15:32  BTClient\bin\com\test\BTClient\DeviceListActivity$3.class
     文件        4284  2011-03-21 15:32  BTClient\bin\com\test\BTClient\DeviceListActivity.class
     文件         337  2011-03-21 15:35  BTClient\bin\com\test\BTClient\R$attr.class
     文件         397  2011-03-21 15:35  BTClient\bin\com\test\BTClient\R$drawable.class
     文件         959  2011-03-21 15:35  BTClient\bin\com\test\BTClient\R$id.class
     文件         521  2011-03-21 15:35  BTClient\bin\com\test\BTClient\R$layout.class
     文件         392  2011-03-21 15:35  BTClient\bin\com\test\BTClient\R$menu.class
     文件         424  2011-03-21 15:35  BTClient\bin\com\test\BTClient\R$string.class
     文件         569  2011-03-21 15:35  BTClient\bin\com\test\BTClient\R.class
     文件       15302  2011-03-21 15:35  BTClient\bin\resources.ap_
............此处省略29个文件信息

评论

共有 条评论