Kako izraditi Android aplikaciju za vaš pametni kućni sustav na Android Studiju?

Ovaj je članak drugi dio drugog članka Kako napraviti pametnu automatizaciju kuće pomoću modula ESP32? u kojem je pružena metoda za izradu sustava pametne kuće. U ovom ćemo članku pokazati korak po korak kako razviti android aplikaciju i povezati je s Firebase bazom podataka. Tada će se ova mobilna aplikacija koristiti za prebacivanje električnih uređaja u kući.



Razvoj Android aplikacija

Sustavi pametne kuće koji su već dostupni na tržištu vrlo su skupi. Ako imate potrebne komponente i android uređaj, kod kuće možete napraviti sustav kućne automatizacije koji će biti jednako učinkovit, ali će imati vrlo nisku cijenu. Prođite kroz ova dva članka kako biste kod kuće napravili vlastiti sustav automatizacije kuće.



Kako razviti Android aplikaciju za automatizaciju kuće?

Razvit ćemo android aplikaciju koja će se koristiti kao daljinski upravljač za upravljanje električnim kućanskim aparatima koji su bili povezani s modulom ESP32 u drugom članku. da idem na drugi članak, Kliknite ovdje .



1. korak: potreban softver

Kako ćemo razvijati android aplikaciju, trebat će nam samo jedan softver. Ali da bismo pokrenuli taj softver, prvo ćemo morati instalirati drugi softver. Možete ih preuzeti sa sljedećih poveznica.



  • Android Studio.
  • JAVA JDK.

Korak 2: Razumijevanje glavnog rada

Izradit ćemo aplikaciju koja će imati i prednje i stražnje kodiranje. Na glavnom zaslonu sadržavat će neke gumbe koji će kontrolirati prebacivanje električnih uređaja koji su povezani na ploču mikrokontrolera ESP32. U pozadinskom kodiranju, poslat ćemo '1' ako je prekidač uključen i '0' ako je prekidač isključen.

Izradit ćemo Firebase bazu podataka. Ova baza podataka sadržavat će 2 entiteta nazvana Svjetlost i AC. Svjetlo će sadržavati vrijednost za uključivanje svjetla, a AC će sadržavati vrijednost za uključivanje ventilatora. Tada će se ova vrijednost poslati mikrokontroleru, a zatim će mikrokontroler u skladu s tim poslati upravljački signal na relejni modul.

Korak 3: Postavljanje Android Studija

Prije instaliranja Android Studija prvo ćemo instalirati JAVA JDK. Da biste to instalirali, kliknite na exe datoteka koju ste preuzeli s gornje veze i kliknite Sljedeće dok se uspješno ne instalira. Sada prođite kroz sljedeće korake kako bi vaš naredbeni redak prepoznao javu kao vanjsku ili unutarnju naredbu.



  1. Otvoren Upravljačka ploča i kliknite na Sistem i sigurnost .
  2. Kliknite na Sustav .

    Sustav

  3. Kliknite na Napredne postavke sustava a zatim kliknite na Varijable okoliša .

    Napredne postavke sustava

  4. U odjeljku Varijabla sustava kliknite na stazu, a zatim na uređivanje. Nova Uredi varijablu okoliša pojavit će se okvir.

    Uredi put

  5. Sada idite na C: Programske datoteke Java u računalu. Otvorite mapu JDK, kliknite mapu bin, a zatim kopirajte put do te mape.

    Put mape kante

  6. Sada idite na okvir Uredi varijablu okoliša i kliknite na novo da napravite novu varijablu. Zalijepite put koji ste kopirali u gornjem koraku u novu varijablu i spremite je.
  7. Sada da biste potvrdili, ako je potpuno instaliran, otvorite naredbeni redak i upišite java –verzija .

    JAVA verzija

Sada ste uspješno instalirali Java JDK na svoje računalo. Dopustite nam da sada instaliramo Android Studio na vaše računalo. Instalacija ovog softvera vrlo je jednostavna. Morate otvoriti preuzetu datoteku i kliknuti dalje dok se softver potpuno ne instalira.

Korak 4: Izrada izgleda

Napravit ćemo izgled koji će sadržavati neke gumbe koji će poslati naredbu 0 ili 1 u bazu podataka firebase. Ovo će biti jednostavan izgled koji će sadržavati neke gumbe. U moju aplikaciju uvrstit ću samo dva gumba koji će upravljati svjetlima i ventilatorom. Ako želite uključiti više gumba za više kućanskih aparata, kopirajte isti dio koda u glavni program i napravite novu varijablu u bazi podataka. Bez gubljenja vremena, krenimo prema koracima izrade jednostavnog izgleda za našu aplikaciju.

1. Prije svega, idite na Datoteka> Novo> Novi projekt. Pojavit će se izbornik. Odaberi Prazan projekt.

2. Sada imenujte projekt i postavite ga KOTLIN kao svoj programski jezik.

3. Sada u lijevom kutu kliknite na app> res> layout> activity_main.xml.

Activity_main

4. Ovdje dodajte sljedeći kod ispod koda koji je već dostupan u vašem android studiju. Izrađujemo raspored ograničenja. Sljedeći kôd dodaje naslov Sobna automatizacija na vrhu. Tada se dodaju 3 prekidača. jedan prekidač omogućuje vam odabir želite li ručno upravljati kućanskim aparatima ili ne. Preostala dva preklopljena upravljat će ventilatorom, odnosno svjetlima.

 

5. Izgled vaše aplikacije izgledat će poput donje slike.

Izgled

Korak 5: Back-End kodiranje

Pozadinski kôd najvažniji je dio svake aplikacije. To je glavni most između prednjeg izgleda i baze podataka projekta. U našoj aplikaciji samo želimo poslati '1' u bazu podataka kada je prekidač uključen i '0' u bazi podataka kada je prekidač isključen. Prođite kroz sljedeće korake za dodavanje koda u svoju aplikaciju

1. U lijevom kutu kliknite na app> java> com.example.my applicationmyapplication> glavna_aktivnost.

2. Sada na ovaj zaslon kopirajte sljedeći kod u svoj razred.

klasa automatizacija: AppCompatActivity () {var baza podataka = FirebaseDatabase.getInstance () var myRef = database.reference interni lateinit var btnSwitch: Prebaci interni lateinit var btnSwitch1: Prebaci interni lateinit var btnSwitch2: Prebaci nadjačavanje zabave onCreate (savedInstanceState: super paket? .onCreate (savedInstanceState) setContentView (R.layout.activity_automation) myRef.child ('Toggle / switch'). addValueEventListener (object: ValueEventListener {override fun onCancelled (p0: DatabaseError) {} override fun onDataChangeps p0: DataChangeps p0) .visibility = View.VISIBLE if (p0.value.toString (). equals ('1')) {switch1.isChecked = true; toggleButton2.visibility = View.VISIBLE toggleButton3.visibility = View.VISIBLE myRef.child ('automatizacija /AC').addValueEventListener(object: ValueEventListener {override fun onCancelled (p0: DatabaseError) {} override fun onDataChange (p0: DataSnapshot) {if (p0.value.toString (). Equals ('1')) {toggleButton. isChecked = true} else toggleButton2.isChecked = netačno e}}) myRef.child ('automatizacija / svjetlo'). addValueEventListener (objekt: ValueEventListener {nadjačati zabavu onCancelled (p0: DatabaseError) {} nadjačati zabavu onDataChange (p0: DataSnapshot) {if (p0.value.toString (). jednako ('1')) {toggleButton3.isChecked = true} else toggleButton3.isChecked = false}})} else {switch1.isChecked = false toggleButton2.visibility = View.GONE toggleButton3.visibility = View.GONE} // Prijavi se. d ('ahsan