eHouse Building Automation System – Android hugbúnaður að fá stöðu stýringar með UDP

Ethernet Home Automation eHouse leyfa þér að sjálfkrafa að senda stöðu broadcastu UDP (UDP) , sem getur tekið öll tæki í LAN eða WiFi og IP uppfylla skilyrði – Fann í staðbundnum grímu 255 . 255 . 255 . 0 , sem er útvarpað af stöðu IP tölu stýringar 192 . 168 . 0 . x . UDP Broadcast gerir þér kleift að slökkva á sækja stöðu TCP / IP viðskiptavinur , sem krefst tengingar við stýringu . UDP Broadcast er connectionless siðareglur , fyrir gögn útbreiðslu og óháð fjölda þeirra sem fá tæki ekki hlaða meira CPU eða net tengla .
Einföld UDP útvarpsþáttur móttöku virka með smartphones , spjöldum og Android töflur er hér .
Það er því óendanlega lykkju á grundvelli þessa aðgerð , þú þarft að búa til þráð (þráður) að vinna í bakgrunni , gefur það lægsta forgang vinnu .
Annars , framkvæmd þessa aðgerð loka framkvæmd annarri starfsemi áætlunarinnar .
Kóðinn fyrir að fá UDP Broadcast Android pallur:
public void UDP (int höfn) / / breytu höfn að taka upp sjálfgefið útvarpsþáttur 6789 – stöðu í tvöfaldur stjórnandi
{
bæti [] broadcastadr = new bæti [4] ;
bæti [] localadr = new bæti [4] ;
WifiManager wifi = (WifiManager) getSystemService (Samhengi . WIFI_SERVICE) ; / / Wifi framkvæmdastjóri
DhcpInfo DHCP = wifi . getDhcpInfo () ; / / Fá upplýsingar frá WiFi DHCP
if (DHCP == null) / / fá sjálfgefið gildi er fatlaður ef DHCP net eHouse
{/ / No DHCP eða villa fyrir tækið
broadcastadr [0] = (bæti) 192 ;
broadcastadr [1] = (bæti) 168 ;
broadcastadr [2] = (bæti) 0 ;
broadcastadr [3] = (bæti) 255 ;
}
annað / / DHCP
{
útvarpsþáttur = int (DHCP . IPAddress & ; ; DHCP . Undirnetssía) | ~ DHCP . Undirnetssía ; / / Fyrir UDP útvarpsþáttur – Ef þú vilt að útvarpa gögnum um virka
stjórnandi fær aðeins stöðu
fyrir (int k = 0 ; k < ; 4 ; K + +) broadcastadr [k] = (bæti) ((útvarpað> ; > ; K * 8) & ; 0xFF) ;
sveitarfélaga int = (DHCP . ipaddress) ; / / Local IP tölu DHCP
fyrir (int k = 0 ; k < ; 4 ; K + +) localadr [k] = (bæti) ((staðbundin> ; > ; K * 8) & ; 0xFF) ; / / Fyrir staðbundna IP tölu
}
reyna
{
DS = new DatagramSocket (höfn) ; / / / Hlusta á UDP höfn gögn frá hvaða IP
inni grímu – UDP fals til að búa til eintak af heimamaður höfn tala
}
grípa (Undantekning e)
{
/ / Ehousecommunication . l ( ” Villa Inet: fá heimilisfang ” + E . getMessage ()) ; fyrir próf
}
reyna
{
DS . setBroadcast (satt) ; / / Enable senda útvarpsþáttur skilaboð – fyrir sendingu
DS . setReuseAddress (satt) ; / / Gera kleift margfeldi fals nota sömu IP-tölu
/ / Ds . setSoTimeout (400) ; / / Móttaka tími
}
grípa (Undantekning IO)
{/ / Hunsa villur en við vernda gegn umsókn og kerfi villur
}
/ / * UDP útvarpsþáttur TEST – broadcastu próf UDP útvarpsþáttur úr símanum eða töflu – framtíð samskipti með beitingu
/ * Prófaðu
{
DatagramPacket dd = new DatagramPacket ( ” Halló Orð frá Android UPD TEST ” . getBytes () , 0 , ” Halló Orð frá Android UPD TEST ” . lengd () ,
InetAddress . getByAddress (broadcastadr) , höfn) ;
DS . senda (dd) ; / / Sendir DatagramPacket
}
grípa (Undantekning e)
{
ehousecommunication . l ( ” Senda Datagram Packet villa: ” + E . getMessage ()) ;
}
* /
MulticastLock ml = wifi . createMulticastLock ( ” Fjölvörpun virkt læsa ” ) ;
/ / Búa til tilvik af blokk Fjölvörpun og broadcastu
ml . Fá () ; / / Fjölvörpun læsa kleift UDP útvarpsþáttur móttöku – Það er hægt að slökkva Ákveðnar Android smartphones fyrir batery Tilgangur sparnaður –
broadcastu UDP stuðningur virkjar símann ef það er læst og aðeins fatlaður
á meðan (! ehousecommunication . Eyða) / / óendanlegur lykkja fyrir UDP móttöku
{/ / Infinite lykkja fá UDP stöðu
DatagramPacket DP = new DatagramPacket (skilaboð , skilaboð . lengd) ; / / Búa til UDP datagram Packet biðminni nota gögn – nýtir UDP Packet
biðminni ” skilaboð ”
reyna {
DS . fá (DP) ; / / UDP Packet móttaka úr kerfinu eHouse – fær pakkann UDP höfn UDP a fals
if (DP . getLength ()> ; 0) / / ef stærð bögglar stærri en núll – eitthvað hlaut
{
EhouseTCP . QueryBuff = DP . getData () ; / / Velja a UDP útvarpsþáttur recepition querybuffer – hlaðið inn í stöðu biðminni eHouse
/ / Dp . setLength (0) ; – Packet stærð er stillt á núll svo sem ekki að vinna á sömu gögn aftur og aftur
EhouseTCP . QueryReceived () ; / / Decode fyrirspurn gögn fylki og fylla tæki – lesa úr leyniletri stöðu stýringar og fullt stöðu umsókn borð
}
}
grípa (Undantekning OS)
{/ / Hunsa villur
/ / Ehousecommunication . l ( ” asdfasdfsafsa ” + Os . getMessage ()) ; / / Fyrir aðeins próf
}
}
ml . út () ; / / Fjölvörpun UDP læsa frítt fyrir móttöku umsóknar eHouse – losar lásinn Fjölvörpun
DS . loka () ; / / Loka datagram fals í lok – lokar fals í lok
}
Fjölvörpun læsa getur verið nauðsynleg í sumum Android tæki .
Local Broadcast UDP í tilfelli af hreyfanlegur sími geta vera virkt eða ekki eftir farsíma vélbúnaðar .
Það getur líka verið varanlega óvirk fyrir vistun rafhlöðu og af öryggisástæðum eða til að draga úr CPU álag á netið í vinnunni .
(Athugaðu að kjarnauppsetningu: CONFIG_IP_MULTICAST er ekki sett) .
Auk , nokkrar gerðir er hægt að lokað með staðbundnum eldvegg og þurfa að virkja sendingu á hverri tengi (sjálfgefið 6789) .
Utan Broadcast þegar með GPRS Internet tengingar , EDGE , 3G , 4G er hægt að læsa eða opið símafyrirtækið . Oftar , þó , skal ráð , að það er fastur í því skyni að draga úr nýtingu á tengilinn .
Í sumum gerðum af farsímum , Hugbúnaður framkvæmd stöðu stýringar fengu UDP getur verið mjög erfitt eða jafnvel ómögulegt . Getur krafist þess að notkun á sérstökum vélbúnaðar niebrandowanego eða smartphone .
Auk , gæta skal varúðar þegar upgradowaniu vélbúnaðar og athuga að allar aðgerðir eru að vinna almennilega út af the kassi , annars greiningu á villum verður mjög erfitt .
Byggt á sumum HTC síma og aðrar vörur sem innihalda Android stýrikerfi útgáfa minna en 2 . 3 . 3 sést alls blokk UDP móttöku broadcastu .
Þetta var útgáfa af Android (2 . 1 – 2 . 3 af tímabilinu 01 . 01 . 2010 – 14 . 06 . 2011)
Ef þú getur ekki fengið UDP broadcastu sækja og setja , New Android ROM útgáfa af lágmarks 2 . 3 . 3 (14 júní , 2011) , sem prófa réttmæti hlaða vinna UDP útvarpsþáttur .
Kernel Version 2 . 6 . 35 . 10 – htcg3ef43272 – kjarna @ and18 – 2 # 1 .
No . 3software . 14 . 405 . 1 .
Fyrir aðrar tegundir af símum með svipuð vandamál , skaltu sækja Firmware Android Rom frá framleiðanda , útgáfa af amk 2 . 3 . 3 .
Athugið einnig helstu einkenni UDP pökkum .
Þeir eru ósamstilltur og þurfa að lesa um það sem getur valdið gögn lesa villur , Tap þeirra (losun) , sérstaklega með hægum búnaði , tenglar , sameina hár hlaða og CPU atvinna smartphones og töflur .
UDP stöðu gögn er búin í stöðva til að athuga réttmæti gagna .
Home Automation Leikstjóri eHouse Home Automation eHouse
eHouse Stýringar – Home Automation eHouse