Córas eHouse Uathoibriú Foirgníochta – Android bogearraí a fháil ar an stádas na rialtóirí trí UDP

Ethernet Uathoibriú Baile eHouse ar chumas tú a sheoladh go huathoibríoch stádas broadcastu UDP (Úsáideoir Datagram Phrótacal) , is féidir a fháil ar fad na gléasanna i do LEAN nó wifi agus IP a shásamh ar an gcoinníoll – Aimsíodh i an masc áitiúil 255 . 255 . 255 . 0 , a chraoltar as an stádas na seoltaí IP de na 192 rialaitheoirí . 168 . 0 . x . UDP Craoltóireachta is féidir leat a dhíchumasú an stádas íoslódáil an chliaint TCP / IP , a éilíonn nasc leis an rialtóir . Is UDP Craoltóireachta prótacal connectionless , le haghaidh sonraí iomadú agus nach bhfuil beag beann ar líon na feistí a fhaigheann ualach níos mó ar an LAP nó naisc líonra .
Simplí UDP feidhm fáiltithe craoladh le smartphones , painéil agus táibléad Android a thaispeántar thíos .
Tá sé dá bhrí sin, lúb gan teorainn ar bhonn an fheidhm , is gá duit a chruthú snáithe (snáithe) ag obair sa chúlra , a thugann sé ar an obair tosaíocht is ísle .
Seachas sin , fhorghníomhú an fheidhm seo cosc ​​a fhorghníomhú gníomhaíochtaí eile an chláir .
Tá an cód foinse a fháil UDP Craoladh android ardán:
neamhní UDP poiblí (slánuimhir port) / port / paraiméadar a piocadh suas an réamhshocraithe craoladh 6789 – stádas rialtóir dénártha
{
beart [] broadcastadr = nua beart [4] ;
beart [] localadr = nua beart [4] ;
WifiManager wifi = (WifiManager) getSystemService (Comhthéacs . WIFI_SERVICE) ; / / Bainisteoir Wifi
DhcpInfo DHCP = wifi . getDhcpInfo () ; / / Faigh eolas ó wifi DHCP
más rud é (DHCP == null) / / é a fháil ar luach réamhshocraithe faoi mhíchumas má DHCP líonra eHouse
{/ / No DHCP nó earráid leis an bhfeiste chun
broadcastadr [0] = (beart) 192 ;
broadcastadr [1] = (beart) 168 ;
broadcastadr [2] = (beart) 0 ;
broadcastadr [3] = (beart) 255 ;
}
eile / / DHCP
{
chraoladh o (DHCP . IPAddress & ; ; DHCP . masc líonra) | ~ DHCP . masc líonra ; / / Do UDP craoladh – Más mian leat a chraoladh na sonraí ar an fheidhm
rialtóir fhaigheann ach stádas
do (o k = 0 ; k < ; 4 ; k + +) broadcastadr [k] = (beart) ((chraoladh> ; > ; k * 8) & ; 0xFF) ;
áitiúla slánuimhir = (DHCP . ipaddress) ; / / Seoladh IP Áitiúil DHCP
do (o k = 0 ; k < ; 4 ; k + +) localadr [k] = (beart) ((áitiúil> ; > ; k * 8) & ; 0xFF) ; / / Le seoladh IP áitiúil
}
iarracht a dhéanamh
{
ds = nua DatagramSocket (port) ; / / / Éisteacht ar UDP sonraí port ó aon IP
taobh istigh de masc – UDP soicéad a chruthú mar shampla an líon port áitiúil
}
ghabháil (e Eisceacht)
{
/ / Ehousecommunication . l ( ” Inet Earráid: a fháil seoladh ” + E . getMessage ()) ; le haghaidh tástála
}
iarracht a dhéanamh
{
ds . setBroadcast (fíor) ; / / Cumasaigh seol teachtaireacht a chraoladh – lena tarchur
ds . setReuseAddress (fíor) ; / / Cumasaigh soicéad il a bhaint as an seoladh céanna IP
/ / Ds . setSoTimeout (400) ; / / Fáiltiú Teorainn ama
}
ghabháil (Eisceacht io)
{/ / Earráidí Déan neamhaird ach táimid a chosaint i gcoinne earráidí i bhfeidhm agus an córas
}
/ / * TÁSTÁIL craoladh UDP – broadcastu tástála UDP craoladh ó do ghuthán nó tablet – cumarsáid sa todhchaí le cur i bhfeidhm
/ * Bain triail as
{
DatagramPacket dd = nua DatagramPacket ( ” Dia duit Focal ón Android TÁSTÁIL UPD ” . getBytes () , 0 , ” Dia duit Focal ón Android TÁSTÁIL UPD ” . fad () ,
InetAddress . getByAddress (broadcastadr) , gcalafort) ;
ds . seol (dd) ; / Seol / a DatagramPacket
}
ghabháil (e Eisceacht)
{
ehousecommunication . l ( ” Tharchur earráid paicéad Datagram: ” + E . getMessage ()) ;
}
* /
MulticastLock ml = wifi . createMulticastLock ( ” Glas cumasaithe Ilchraolacháin ” ) ;
/ / Cruthaigh shampla an Ilchraolacháin bloc agus broadcastu
ml . Fháil () ; / / Ilchraolacháin glas a chumasú fáiltiú chraoladh UDP – Is féidir é a bheith faoi mhíchumas smartphones Android áirithe do Chuspóirí shábháil batery –
CCF broadcastu UDP tacaíocht an fón má tá sé faoi ghlas agus ní raibh ach faoi mhíchumas
agus (! ehousecommunication . Deireadh a chur) / lúb / gan teorainn lena nglacadh UDP
{/ / Infinite lúb ag fáil UDP stádas
DatagramPacket DP = nua DatagramPacket (teachtaireacht , teachtaireacht . fad) ; / / Cruthaigh UDP Maolán data datagram sonraí ag baint úsáide as – bhaineann leas as an bpaicéad UDP
Maolán ” teachtaireacht ”
iarracht {
ds . fháil (DP) ; / / Fáiltiú data UDP ó chóras eHouse – Faigheann an paicéad UDP port an UDP soicéad
más rud é (dp . getLength ()> ; 0) / / má tá an méid dáileachtaí níos mó ná náid – rud éigin a fuarthas
{
EhouseTCP . QueryBuff = dp . getData () ; / / A shannadh craoladh UDP recepition querybuffer – luchtú isteach ar an eHouse stádas maolánach
/ / DP . setLength (0) ; – Tá méid paicéad leagtha go nialas ionas nach próiseálfaidh sé na sonraí céanna arís agus arís eile
EhouseTCP . QueryReceived () ; / / Díchódaithe arrays sonraí cheist agus feistí líonadh – decodes stádas na rialtóirí agus ualaí an tábla stádas
}
}
ghabháil (Eisceacht os)
{/ / Earráidí Ignore
/ / Ehousecommunication . l ( ” asdfasdfsafsa ” + Os . getMessage ()) ; / / Le tástáil amháin
}
}
ml . scaoileadh () ; / / Ilchraolacháin UDP glas saor in aisce do ghlacadh an iarratais eHouse – Scaoileann an Ilchraolacháin glas
ds . gar () ; / / Dún an soicéad datagram ag an deireadh – Dúnann an soicéad ag deireadh na
}
Is féidir glas Ilchraolacháin a bheith ag teastáil i roinnt feistí Android .
Is féidir le UDP Craoladh Áitiúil i gcás na nguthán póca a chumasú nó nach ag brath ar an firmware fón póca .
Is féidir é a bheith faoi mhíchumas chomh maith go buan le haghaidh a shábháil ceallraí agus ar chúiseanna sábháilteachta nó chun laghdú ar an ualach LAP ar an líonra ag an obair .
(Tabhair faoi deara an chumraíocht eithne: Ní CONFIG_IP_MULTICAST leagtha) .
Ina theannta sin , Is féidir roinnt samhlacha a bac le balla dóiteáin áitiúil agus is gá a ghníomhachtú a tharchur ar an port a tugadh (réamhshocrú 6789) .
Lasmuigh de Craoltóireachta nuair a úsáid GPRS nasc Idirlín , EDGE , 3G , Is féidir 4G bheith faoi ghlas nó unlocked an t-oibritheoir líonra . Níos minice , áfach, , Ba chóir a bheith ag súil , go bhfuil sé socraithe d'fhonn laghdú ar an úsáid a bhaint as an nasc .
I roinnt múnlaí na nguthán póca , Is féidir le stádas cur chun feidhme Bogearraí na rialtóirí a fháil UDP a bheith an-deacair nó fiú dodhéanta . A cheangal ar an úsáid a bhaint as niebrandowanego firmware speisialta nó smartphone .
Ina theannta sin , Ní mór cúram a ghlacadh nuair a upgradowaniu firmware agus seiceáil go bhfuil na gnéithe ar fad ag obair i gceart as an bhosca , nó ní bheidh an diagnóis na n-earráidí a bheith an-deacair .
Bunaithe ar roinnt de na fóin HTC agus táirgí eile ina bhfuil an leagan Android córas oibriúcháin níos ísle ná 2 . 3 . 3 deara bloc iomlán UDP fáiltiú broadcastu .
Ba é seo an leagan de android (2 . 1 – 2 . 3 den tréimhse 01 . 01 . 2010 – 14 . 06 . 2011)
Más rud é nach féidir leat a fháil UDP broadcastu íoslódáil agus a shuiteáil , Nua leagan ROM Android den 2 íosta . 3 . 3 (14 Meitheamh , 2011) , a thástáil beachtas an t-ualach oibre a chraoladh UDP .
Eithne Leagan 2 . 6 . 35 . 10 – htcg3ef43272 – eithne @ and18 – 2 # 1 .
Uimh . 3software . 14 . 405 . 1 .
Do bhrandaí eile na nguthán le fadhbanna den chineál céanna , le do thoil íoslódáil Firmware Android Rom ón monaróir , leagan de ar a laghad 2 . 3 . 3 .
Tabhair faoi deara freisin tréithe fíor-riachtanacha UDP Paicéid .
Tá siad asynchronous agus a cheangal ar léamh faoi cad a d'fhéadfadh ina chúis le sonraí earráidí ag léamh , ar chailleadh na sealúchas (shedding) , go háirithe le trealamh mall , naisc , le chéile ualach ard agus smartphones slí bheatha LAP agus táibléad .
Sonraí stádas UDP atá feistithe i suim sheiceála a sheiceáil bailíocht na sonraí .
Léiritheoir Uathoibriú Baile eHouse Uathoibriú Baile eHouse
Rialaitheoirí eHouse – Uathoibriú Baile eHouse