亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? clientbox.java

?? 手機藍牙通訊
?? JAVA
字號:
/* * To change this template, choose Tools | Templates * and open the template in the editor. */package com.mir.bluetooth;import java.io.DataInputStream;import java.io.DataOutputStream;import java.io.IOException;import java.util.Vector;import javax.microedition.io.Connector;import javax.microedition.io.StreamConnection;import javax.microedition.lcdui.Command;import javax.microedition.lcdui.CommandListener;import javax.microedition.lcdui.Displayable;import javax.microedition.lcdui.Form;import javax.microedition.lcdui.Gauge;import javax.microedition.lcdui.StringItem;import javax.microedition.lcdui.TextField;//jsr082 APIimport javax.bluetooth.BluetoothStateException;import javax.bluetooth.DeviceClass;import javax.bluetooth.DiscoveryAgent;import javax.bluetooth.DiscoveryListener;import javax.bluetooth.LocalDevice;import javax.bluetooth.RemoteDevice;import javax.bluetooth.ServiceRecord;import javax.bluetooth.UUID;/** * 客戶端GUI * @author Jagie * * TODO To change the template for this generated type comment go to * Window - Preferences - Java - Code Style - Code Templates */public class ClientBox extends Form implements Runnable, CommandListener,        DiscoveryListener {    //字串輸入框    TextField input = new TextField(null, "", 50, TextField.ANY);    //loger    StringItem result = new StringItem("結果:", "");    private DiscoveryAgent discoveryAgent;    private UUID[] uuidSet;    //響應服務的UUID    private static final UUID ECHO_SERVER_UUID = new UUID(            "F0E0D0C0B0A000908070605040302010", false);    //設備集合    Vector devices = new Vector();    //服務集合    Vector records = new Vector();    //服務搜索的事務id集合    int[] transIDs;    StupidBTMIDlet midlet;    public ClientBox(StupidBTMIDlet midlet) {        super("");        this.midlet=midlet;        this.append(result);        this.addCommand(new Command("取消",Command.CANCEL,1));        this.setCommandListener(this);        new Thread(this).start();    }    public void commandAction(Command arg0, Displayable arg1) {        if(arg0.getCommandType()==Command.CANCEL){            midlet.showMainMenu();        }else{            //匿名內部Thread,訪問遠程服務。            Thread fetchThread=new Thread(){                public void run(){                    for(int i=0;i<records.size();i++){                        ServiceRecord sr=(ServiceRecord)records.elementAt(i);                        if(accessService(sr)){                            //訪問到一個可用的服務即可                            break;                        }                    }                }            };            fetchThread.start();        }    }    private boolean  accessService(ServiceRecord sr){        boolean result=false;         try {            String url = sr.getConnectionURL(                    ServiceRecord.NOAUTHENTICATE_NOENCRYPT, false);            StreamConnection    conn = (StreamConnection) Connector.open(url);            DataOutputStream dos=conn.openDataOutputStream();            dos.writeUTF(input.getString());            dos.close();            DataInputStream dis=conn.openDataInputStream();            String echo=dis.readUTF();            dis.close();            showInfo("反饋結果是:"+echo);            result=true;        } catch (IOException e) {        }        return result;    }    public synchronized void run() {        //發現設備和服務的過程中,給用戶以Gauge        Gauge g=new Gauge(null,false,Gauge.INDEFINITE,Gauge.CONTINUOUS_RUNNING);        this.append(g);        showInfo("藍牙初始化...");        boolean isBTReady = false;        try {            LocalDevice localDevice = LocalDevice.getLocalDevice();            discoveryAgent = localDevice.getDiscoveryAgent();            isBTReady = true;        } catch (Exception e) {            e.printStackTrace();        }        if (!isBTReady) {            showInfo("藍牙不可用");            //刪除Gauge            this.delete(1);            return;        }        uuidSet = new UUID[2];        //標志我們的響應服務的UUID集合        uuidSet[0] = new UUID(0x1101);        uuidSet[1] = ECHO_SERVER_UUID;        try {            discoveryAgent.startInquiry(DiscoveryAgent.GIAC, this);        } catch (BluetoothStateException e) {        }        try {            //阻塞,由inquiryCompleted()回調方法喚醒            wait();        } catch (InterruptedException e1) {            e1.printStackTrace();        }        showInfo("設備搜索完畢,共找到"+devices.size()+"個設備,開始搜索服務");        transIDs = new int[devices.size()];        for (int i = 0; i < devices.size(); i++) {            RemoteDevice rd = (RemoteDevice) devices.elementAt(i);            try {                //記錄每一次服務搜索的事務id                transIDs[i] = discoveryAgent.searchServices(null, uuidSet,                        rd, this);            } catch (BluetoothStateException e) {                continue;            }        }        try {            //阻塞,由serviceSearchCompleted()回調方法在所有設備都搜索完的情況下喚醒            wait();        } catch (InterruptedException e1) {            e1.printStackTrace();        }        showInfo("服務搜索完畢,共找到"+records.size()+"個服務,準備發送請求");        if(records.size()>0){            this.append(input);            this.addCommand(new Command("發送",Command.OK,0));        }        //刪除Gauge        this.delete(1);    }    /**     * debug     * @param s     */    private void showInfo(String s){        StringBuffer sb=new StringBuffer(result.getText());        if(sb.length()>0){            sb.append("\n");        }        sb.append(s);        result.setText(sb.toString());    }    /**     * 回調方法     */    public void deviceDiscovered(RemoteDevice btDevice, DeviceClass cod) {        if (devices.indexOf(btDevice) == -1) {            devices.addElement(btDevice);        }    }    /**     * 回調方法,喚醒初始化線程     */    public void inquiryCompleted(int discType) {        synchronized (this) {            notify();        }    }    /**     * 回調方法     */    public void servicesDiscovered(int transID, ServiceRecord[] servRecord) {        for (int i = 0; i < servRecord.length; i++) {            records.addElement(servRecord[i]);        }    }    /**     * 回調方法,喚醒初始化線程     */    public void serviceSearchCompleted(int transID, int respCode) {        for (int i = 0; i < transIDs.length; i++) {            if (transIDs[i] == transID) {                transIDs[i] = -1;                break;            }        }        //如果所有的設備都已經搜索服務完畢,則喚醒初始化線程。        boolean finished = true;        for (int i = 0; i < transIDs.length; i++) {            if (transIDs[i] != -1) {                finished = false;                break;            }        }        if (finished) {            synchronized (this) {                notify();            }        }    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区三区在线看| 成人av网址在线| 久久久久久电影| 成人免费视频一区二区| 亚洲男人的天堂一区二区| 欧美日韩精品福利| 久久99热这里只有精品| 日本一区二区三区dvd视频在线 | 三级一区在线视频先锋| 91精品国产91热久久久做人人| 久久99国产精品久久99 | 国产精品久久久久久久浪潮网站| 色综合视频在线观看| 午夜精品久久久久久| 精品福利一二区| 久久精品网站免费观看| 99久久亚洲一区二区三区青草| 一个色在线综合| 日韩欧美一二三四区| 国产成人精品午夜视频免费| 亚洲精品成人在线| 日韩精品中午字幕| av一区二区不卡| 视频一区视频二区中文字幕| 久久欧美一区二区| 日本韩国一区二区| 精品一区二区三区免费观看| 亚洲欧美日韩系列| 欧美大片国产精品| 99久久er热在这里只有精品15| 亚洲国产精品久久久久婷婷884 | 国产一区福利在线| 亚洲欧美日韩国产另类专区| 日韩亚洲欧美中文三级| 从欧美一区二区三区| 亚洲第一激情av| 国产欧美视频一区二区三区| 欧美日韩综合在线| 成人午夜激情片| 人人狠狠综合久久亚洲| 国产精品久久久久久久久搜平片 | 国产精品久久久久久久久动漫 | 美女任你摸久久 | 精品一区二区三区视频在线观看 | 国产精品电影一区二区三区| 制服.丝袜.亚洲.中文.综合| 成人在线综合网| 琪琪久久久久日韩精品| 最新欧美精品一区二区三区| 日韩欧美一区二区不卡| 91社区在线播放| 国产在线精品免费| 五月综合激情网| 亚洲天堂中文字幕| 久久久久亚洲蜜桃| 91精品国模一区二区三区| 91麻豆视频网站| 国产一区二区在线电影| 婷婷综合五月天| 亚洲美女视频在线| 国产欧美日韩久久| 日韩欧美国产小视频| 欧美日韩一区不卡| 99这里只有精品| 国产激情一区二区三区桃花岛亚洲| 日韩综合一区二区| 亚洲激情校园春色| 国产精品免费视频观看| 久久婷婷综合激情| 日韩欧美一级在线播放| 欧美日韩1区2区| 日本伦理一区二区| av一区二区三区四区| 国产成人免费在线| 极品美女销魂一区二区三区免费 | 久久99精品视频| 欧美色涩在线第一页| 99re8在线精品视频免费播放| 激情欧美一区二区| 美女网站一区二区| 日韩成人一区二区| 图片区日韩欧美亚洲| 一区av在线播放| ...xxx性欧美| 国产精品国产三级国产| 国产亚洲欧美日韩俺去了| 欧美成人猛片aaaaaaa| 欧美一区二区精品久久911| 精品视频资源站| 91激情在线视频| 色婷婷精品久久二区二区蜜臀av | 欧美综合久久久| 97se亚洲国产综合在线| 成人av免费在线播放| 成人午夜私人影院| 高清成人免费视频| 顶级嫩模精品视频在线看| 国产成人精品影视| 国产成人欧美日韩在线电影| 国产成a人无v码亚洲福利| 国产精品一卡二| 国产成人在线观看| 国产成人午夜99999| 国产91精品在线观看| 成人激情免费电影网址| 99久久国产综合色|国产精品| 成人免费不卡视频| 99国产精品一区| 日本丰满少妇一区二区三区| 色婷婷综合在线| 欧美日韩在线观看一区二区 | 波多野结衣亚洲一区| 成人免费看视频| av在线综合网| 色综合久久99| 欧美日韩久久久久久| 51精品视频一区二区三区| 日韩亚洲欧美综合| 久久蜜桃av一区二区天堂| 国产午夜亚洲精品午夜鲁丝片| 国产精品人妖ts系列视频| 亚洲欧洲av另类| 一区二区三区波多野结衣在线观看| 一区二区日韩av| 日产欧产美韩系列久久99| 精品一区二区三区免费观看| 国产福利不卡视频| 国产.欧美.日韩| 99久久99久久久精品齐齐| 欧洲精品一区二区| 91精品国产综合久久国产大片| 欧美电影免费提供在线观看| 久久久久久久性| 亚洲免费色视频| 五月激情综合网| 国产精品自产自拍| 成人精品鲁一区一区二区| 日本电影欧美片| 这里是久久伊人| 久久久久久久网| 亚洲欧美福利一区二区| 三级不卡在线观看| 国产精品资源网站| 91蜜桃在线观看| 欧美一区二区三区在线看| 国产日产亚洲精品系列| 一二三四社区欧美黄| 久久精品国产精品亚洲综合| 成人免费视频网站在线观看| 欧美亚洲高清一区| 久久这里只有精品视频网| 亚洲欧美区自拍先锋| 日韩电影一区二区三区四区| 国产寡妇亲子伦一区二区| 在线观看一区日韩| 精品国产亚洲在线| 成人的网站免费观看| 欧美日精品一区视频| 久久老女人爱爱| 亚洲综合色噜噜狠狠| 久久精品99国产精品日本| 99国产精品久久久久久久久久久| 欧美精品在线观看播放| 欧美国产97人人爽人人喊| 亚洲丰满少妇videoshd| 国产一区二区看久久| 欧美性大战久久久| 国产午夜亚洲精品羞羞网站| 亚洲风情在线资源站| 岛国一区二区三区| 欧美妇女性影城| 中文字幕不卡在线播放| 日韩影院免费视频| 菠萝蜜视频在线观看一区| 欧美一区二区三区成人| 亚洲欧美在线高清| 韩国精品免费视频| 一本久久a久久免费精品不卡| 精品久久国产老人久久综合| 亚洲精品日韩一| 国产一区二区三区日韩| 欧美性猛交xxxxxx富婆| 中文乱码免费一区二区| 免费成人在线网站| 在线观看欧美日本| 国产清纯美女被跳蛋高潮一区二区久久w | 亚洲欧美日韩久久| 国产美女精品人人做人人爽| 欧美精品在线观看播放| 亚洲欧美视频一区| 国产xxx精品视频大全| 欧美一二三四区在线| 亚洲精品免费电影| 国产精品一区二区久久不卡| 91麻豆精品国产91久久久资源速度| 日韩一区欧美一区| 成人一区在线观看| 久久婷婷色综合| 免费观看在线综合| 欧美日韩精品一区二区三区蜜桃|