蘋(píng)果新技術(shù):沒(méi)有網(wǎng)絡(luò)也能實(shí)時(shí)聊天
在上周一個(gè)名為FireChat的聊天類(lèi)應(yīng)用突然進(jìn)入公眾的視線(xiàn),和我們所熟悉的大多數(shù)聊天軟件不同的是,F(xiàn)ireChat可以讓iOS用戶(hù)在沒(méi)有網(wǎng)絡(luò)的情況下也能實(shí)時(shí)聊天,而它之所以能夠這么做則是由于蘋(píng)果在iOS 7中構(gòu)建了一個(gè)名為Multipeer Connectivity的框架。
那么Multipeer Connectivity框架到底能實(shí)現(xiàn)什么樣的功能?根據(jù)蘋(píng)果在iOS開(kāi)發(fā)者文檔中的描述,即使在沒(méi)有Wi-Fi和移動(dòng)網(wǎng)絡(luò)的情況下,利用Multipeer Connectivity框架,iOS設(shè)備之間也可以在一定范圍內(nèi)通過(guò)藍(lán)牙和點(diǎn)對(duì)點(diǎn)的Wi-Fi連接進(jìn)行通訊,這與利用Air Drop傳輸文件非常類(lèi)似。
兩臺(tái)iOS設(shè)備在使用Multipeer Connectivity框架進(jìn)行數(shù)據(jù)交換之前需要經(jīng)過(guò)兩個(gè)階段——發(fā)現(xiàn)階段和會(huì)話(huà)階段。在發(fā)現(xiàn)階段,使用Multipeer Connectivity框架的應(yīng)用會(huì)瀏覽或通知周?chē)晒┻B接的設(shè)備以便自己可以加入設(shè)備間的數(shù)據(jù)交換中。此時(shí),兩個(gè)應(yīng)用之間是不能交換數(shù)據(jù)的。
當(dāng)用戶(hù)選擇與某臺(tái)設(shè)備連接在一起后,雙方就進(jìn)入了會(huì)話(huà)模式,這時(shí)它們將可以進(jìn)行數(shù)據(jù)交互,比如,傳送文字、圖片等。
當(dāng)然,從上面的描述中看這項(xiàng)功能好像不是特別實(shí)用,因?yàn)樗{(lán)牙的傳輸距離有限,而距離如此近的人可能并不需要聊天應(yīng)用。不過(guò)試想一下,當(dāng)使用Multipeer Connectivity框架的應(yīng)用能將足夠多的iOS設(shè)備連接在一起并形成網(wǎng)絡(luò)時(shí),那么在某些特殊的場(chǎng)景下它就能顯示出一定的實(shí)用價(jià)值。
一個(gè)很容易讓人聯(lián)想到的情景就是在發(fā)生自然災(zāi)難的情況下,當(dāng)通訊基站不可用時(shí),Multipeer Connectivity框架也許可以為受災(zāi)者提供臨時(shí)的通訊網(wǎng)絡(luò)。除此之外,在智能家居領(lǐng)域,Multipeer Connectivity框架也有望能為各個(gè)智能電器組建備用通訊網(wǎng)絡(luò)。畢竟網(wǎng)絡(luò)不可用或者某個(gè)家電不在Wi-Fi信號(hào)范圍內(nèi)的事情大家可能都遇到過(guò)。
相對(duì)于Multipeer Connectivity框架,iOS 7上另外一個(gè)基于藍(lán)牙的通訊技術(shù)iBeacon的知名度可能要高很多。這兩者一個(gè)解決了iOS設(shè)備之間端對(duì)端的數(shù)據(jù)傳遞問(wèn)題,一個(gè)解決了基站和設(shè)備之間的數(shù)據(jù)傳遞問(wèn)題。iBeacon現(xiàn)在已經(jīng)進(jìn)入了線(xiàn)下使用階段,蘋(píng)果也正在加緊建立與之相關(guān)的生態(tài)圈,Multipeer Connectivity則剛露出苗頭,它在線(xiàn)下是否會(huì)有像iBeacon這樣的活力現(xiàn)在還難以斷定。不過(guò)從我今天使用FireChat的情況來(lái)看,從早到晚一直有人在群里聊天,所以我也期待未來(lái)開(kāi)發(fā)者能把這樣的場(chǎng)景以某種合適的形式過(guò)渡到線(xiàn)下區(qū)域,進(jìn)而為人們帶來(lái)更多有趣的玩法。
FireChat究竟應(yīng)該被用在哪兒
曾幾何時(shí),在Wi-Fi還不普及,在移動(dòng)網(wǎng)絡(luò)還沒(méi)有如此發(fā)達(dá)的時(shí)候,如果兩部手機(jī)能夠不走網(wǎng)絡(luò)而進(jìn)行文字聊天,是件多么令人期待的事情啊。而在現(xiàn)在,似乎人們已經(jīng)沒(méi)有這個(gè)需求了——手機(jī)幾乎時(shí)時(shí)刻刻都接入在網(wǎng)絡(luò)當(dāng)中。不過(guò)FireChat也可能是一系列改變的開(kāi)端。
12FireChat是一個(gè)來(lái)自美國(guó)的名為Open Garden的開(kāi)發(fā)小組開(kāi)發(fā)的IM應(yīng)用,功能十分的簡(jiǎn)單,用戶(hù)不需要注冊(cè),只需要登錄應(yīng)用,設(shè)置一個(gè)ID,就可以開(kāi)始聊天了。應(yīng)用分為兩個(gè)部分,“所有的人”和“附近的人”。所有的人相當(dāng)于用戶(hù)進(jìn)到了一個(gè)聊天室,所用進(jìn)到聊天室的人都可以自由發(fā)言。聊天室以IP劃分區(qū)域,通常用戶(hù)都會(huì)顯示自己身處的城市。我的ID后面被自動(dòng)識(shí)別為beijing,而在嘗試翻墻之后,聊天室里面的用戶(hù)則變成了來(lái)自美國(guó)各個(gè)城市。在“所有的人”里聊天需要占用你的網(wǎng)絡(luò)流量,無(wú)論是3G還是Wi-Fi,只要你一登入到這個(gè)板塊就開(kāi)始收取信息。
“附近的人”則是利用了iOS7的新功能——Multipeer Connectivity。即使在沒(méi)有Wi-Fi和移動(dòng)網(wǎng)絡(luò)的情況下,利用Multipeer Connectivity框架,iOS設(shè)備之間也可以在一定范圍內(nèi)通過(guò)藍(lán)牙和點(diǎn)對(duì)點(diǎn)的Wi-Fi連接進(jìn)行通訊,AirDrop就是利用了Multipeer Connectivity的原理。而這項(xiàng)功能還有另外一個(gè)特點(diǎn),就是可以將任意設(shè)備作為“信號(hào)中繼”:如果超過(guò)Wi-Fi和藍(lán)牙的鏈接范圍,例如A與B相連,B與C相連,就算A與C超過(guò)了鏈接范圍,一樣可以達(dá)到通信效果。所以在“附近的人”里,用戶(hù)可以與同樣安裝了FireChat的用戶(hù)通信,只需要打開(kāi)應(yīng)用,就會(huì)顯示出附近有多少人被連接到了一起。
但FireChat目前在產(chǎn)品設(shè)計(jì)上的問(wèn)題也很明顯:應(yīng)用相當(dāng)于假設(shè)了兩個(gè)類(lèi)型的龐大的聊天室,用戶(hù)可以將信息發(fā)布到這個(gè)平臺(tái)中。但既沒(méi)有分組,也沒(méi)有審核機(jī)制更沒(méi)有熟人關(guān)系的存在。任何人可以在應(yīng)用中發(fā)布任何消息。在試驗(yàn)應(yīng)用的半個(gè)小時(shí)當(dāng)中,已經(jīng)有越來(lái)越多的人加入到FireChat的,并且開(kāi)始發(fā)一些廣告等垃圾信息。由于無(wú)法屏蔽,會(huì)造成用戶(hù)一直接受信息,跑走流量。在“附近的人”中,你也無(wú)法進(jìn)行有針對(duì)性聊天。
不過(guò),由于可以信號(hào)中繼,距離的限制被放寬很多,可以形成一個(gè)新的通信方式。所以從功能上來(lái)說(shuō),F(xiàn)ireChat還有不少的想象空間。例如昨天PingWest在介紹Multipeer Connectivity時(shí)提到的,在發(fā)生自然災(zāi)難的情況下,通訊基站不可用時(shí),F(xiàn)ireChat可以為受災(zāi)者提供臨時(shí)的通訊網(wǎng)絡(luò)?;蛘呤窃跊](méi)有網(wǎng)絡(luò)/地理位置社交屬性更強(qiáng)的情況下,比如大型會(huì)場(chǎng)、演唱會(huì)等場(chǎng)所,用戶(hù)可以就共同的話(huà)題和興趣點(diǎn)進(jìn)行交流。
說(shuō)不準(zhǔn)哪天,微信就添加了這個(gè)功能呢。
12