Android中Socket編程(二)

Android中Socket編程

LocalServerSocket介紹

LocalServerSocket是屬于Android系統(tǒng)內(nèi)置的一個類蒸辆,屬于net包下贱案,類似java中的serversocket類的功能暇榴。

Non-standard class for creating an inbound UNIX-domain socket in the Linux abstract namespace.

這個類比較簡單举户,構(gòu)造方法有兩個:

LocalServerSocket(String name)

Creates a new server socket listening at specified name.

LocalServerSocket(FileDescriptor fd)

Create a LocalServerSocket from a file descriptor that's already been created and bound.

一般使用第一個即可;

本類中方法只有四個,分別是:

  • getLocalSocketAddress :獲取當(dāng)前的連接描述婿崭;
  • accept:接收一個localsocket拨拓;
  • getFileDescriptor:獲取當(dāng)前連接的文件描述符;
  • close:關(guān)閉socket服務(wù)氓栈;

查看LocalServerSocket源碼可知:

  • 在構(gòu)造方法中已經(jīng)默認(rèn)設(shè)置了socket的類型為:LocalSocket.SOCKET_STREAM;
  • 綁定了傳入的namespace并且監(jiān)聽渣磷;
  • 使用的是LocalSocketAddress傳入namespace生成LocalSocketAddress進(jìn)行操作;
  • 以上操作都是通過LocalSocketImpl【待分析】對象進(jìn)行的授瘦;

總結(jié)

本類內(nèi)容比較簡單醋界,主要實(shí)現(xiàn)方式都在LocalSocketImpl中,下次分析提完。

LocalSocket介紹

This class and the streams returned from it may be used from multiple threads.

內(nèi)容基本同LocalScoket形纺,主要功能也是通過LocalSocketImpl實(shí)現(xiàn)的。

代碼

final static String SOCKET_ADDRESS = "LocalSocketAddress";
LocalSocket localSocketSender, localSocketReceiver;
LocalServerSocket localServerSocket;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    try {
        localServerSocket = new LocalServerSocket(SOCKET_ADDRESS);
        localSocketSender = new LocalSocket();
        localSocketSender.connect(new LocalSocketAddress(SOCKET_ADDRESS));
        localSocketReceiver = localServerSocket.accept();
        send();
        receiver();
    } catch (IOException e) {
        e.printStackTrace();
    }
}

public void send() {
    new Thread() {
        @Override
        public void run() {
            try {
                OutputStream outputStream = localSocketSender.getOutputStream();
                outputStream.write(60);     // 客戶端發(fā)送數(shù)據(jù)
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }.start();
}

public void receiver() {
    new Thread() {
        @Override
        public void run() {
            try {
                InputStream inputStream = localSocketReceiver.getInputStream();
                int ret = inputStream.read();       // 獲取結(jié)果
                Log.e("測試結(jié)果 ", "" + ret);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }.start();
}

未完待續(xù)徒欣。逐样。。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末打肝,一起剝皮案震驚了整個濱河市脂新,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌闯睹,老刑警劉巖戏羽,帶你破解...
    沈念sama閱讀 212,383評論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件担神,死亡現(xiàn)場離奇詭異楼吃,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)妄讯,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,522評論 3 385
  • 文/潘曉璐 我一進(jìn)店門孩锡,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人亥贸,你說我怎么就攤上這事躬窜。” “怎么了炕置?”我有些...
    開封第一講書人閱讀 157,852評論 0 348
  • 文/不壞的土叔 我叫張陵荣挨,是天一觀的道長。 經(jīng)常有香客問我朴摊,道長默垄,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,621評論 1 284
  • 正文 為了忘掉前任甚纲,我火速辦了婚禮口锭,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘介杆。我一直安慰自己鹃操,他們只是感情好韭寸,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,741評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著荆隘,像睡著了一般恩伺。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上椰拒,一...
    開封第一講書人閱讀 49,929評論 1 290
  • 那天莫其,我揣著相機(jī)與錄音,去河邊找鬼耸三。 笑死乱陡,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的仪壮。 我是一名探鬼主播憨颠,決...
    沈念sama閱讀 39,076評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼积锅!你這毒婦竟也來了爽彤?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,803評論 0 268
  • 序言:老撾萬榮一對情侶失蹤缚陷,失蹤者是張志新(化名)和其女友劉穎适篙,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體箫爷,經(jīng)...
    沈念sama閱讀 44,265評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡嚷节,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,582評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了虎锚。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片硫痰。...
    茶點(diǎn)故事閱讀 38,716評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖窜护,靈堂內(nèi)的尸體忽然破棺而出效斑,到底是詐尸還是另有隱情,我是刑警寧澤柱徙,帶...
    沈念sama閱讀 34,395評論 4 333
  • 正文 年R本政府宣布缓屠,位于F島的核電站,受9級特大地震影響护侮,放射性物質(zhì)發(fā)生泄漏敌完。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,039評論 3 316
  • 文/蒙蒙 一概行、第九天 我趴在偏房一處隱蔽的房頂上張望蠢挡。 院中可真熱鬧,春花似錦、人聲如沸业踏。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,798評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽勤家。三九已至腹尖,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間伐脖,已是汗流浹背热幔。 一陣腳步聲響...
    開封第一講書人閱讀 32,027評論 1 266
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留讼庇,地道東北人绎巨。 一個月前我還...
    沈念sama閱讀 46,488評論 2 361
  • 正文 我出身青樓,卻偏偏與公主長得像蠕啄,于是被迫代替她去往敵國和親场勤。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,612評論 2 350

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,839評論 25 707
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理歼跟,服務(wù)發(fā)現(xiàn)和媳,斷路器,智...
    卡卡羅2017閱讀 134,637評論 18 139
  • 原創(chuàng) 2017-11-21 工匠若水 碼農(nóng)每日一題 關(guān)注一下嘛哈街,又不讓你背鍋留瞳! 問:Java 的泛型是什么?有什么...
    晨北北閱讀 2,143評論 0 3
  • 讀大學(xué)的時候骚秦,有同學(xué)常說我書生氣太重她倘,在現(xiàn)實(shí)中難免碰頭。我也常常入禪沉思:何為書生意氣骤竹?為什么書生氣多的人常會頭撞...
    鳴鶴在野閱讀 1,324評論 0 1
  • 24了蒙揣, 開始做程序員
    呦釋原點(diǎn)閱讀 147評論 1 0