Cómo hacer un Android Aplicación para su sistema de hogar inteligente en Android ¿Estudio? Este artículo es la segunda parte de otro artículo ¿Cómo crear una automatización del hogar inteligente utilizando el módulo ESP32? en el que se proporcionó un método para hacer un sistema de hogar inteligente. En este artículo, vamos a demostrar el procedimiento paso a paso de cómo desarrollar una aplicación de Android y conectarla a la base de datos de Firebase. Luego, esta aplicación móvil se utilizará para cambiar los electrodomésticos del hogar. Android Desarrollo de aplicacionesLos sistemas de hogar inteligente que ya están disponibles en el mercado son muy costosos. Si tienes los componentes necesarios y un dispositivo Android, puedes crear un sistema domótico en casa que será igualmente eficiente pero tendrá un costo muy bajo. Lea estos dos artículos para crear su propio sistema domótico en casa.Cómo desarrollar un Android ¿Aplicación para la domótica?Vamos a desarrollar una aplicación para Android que se utilizará como control remoto para controlar los electrodomésticos que se conectaron al módulo ESP32 en el otro artículo. para ir al otro artículo, haga clic aquí.Paso 1: software necesarioLeer másIngrese a la expansión Gungeon que Advanced Gungeons & Draguns ha lanzadoComo vamos a desarrollar una aplicación para Android, necesitaremos solo un software. Pero para ejecutar ese software, primero necesitaremos instalar otro software. Puedes descargarlos desde los siguientes enlaces.Paso 2: comprender el funcionamiento principalVamos a crear una aplicación que tendrá codificación tanto de front-end como de back-end. En la pantalla principal contendrá algunos botones que controlarán la conmutación de los aparatos eléctricos que están conectados a la placa del microcontrolador ESP32. En la codificación de fondo, enviaremos un “1” si el interruptor está encendido y un “0” si el interruptor está apagado.Vamos a crear una base de datos de Firebase. Esta base de datos contendrá 2 entidades denominadas Light y AC. La luz contendrá el valor para el encendido de luces y AC contendrá un valor para el encendido del ventilador. Este valor luego se enviará al microcontrolador y luego el microcontrolador enviará una señal de control al módulo de relé en consecuencia.Paso 3: configuración Android EstudioLeer másCómo desinstalar completamente Steam JuegosAntes de instalar Android Studio, primero instalaremos JAVA JDK. Para instalar esto, haga clic en el exe archivo que descargó desde el enlace anterior y haga clic en Siguiente hasta que se instale correctamente. Ahora siga los siguientes pasos para que su símbolo del sistema reconozca Java como un comando externo o interno.Abierto Panel de control y haga clic en Sistema y seguridad.Haga clic en Sistema.SistemaHaga clic en Configuracion avanzada del sistema y luego haga clic en Variables ambientales.Configuracion avanzada del sistemaEn la sección Variable del sistema, haga clic en la ruta y luego haga clic en editar. un nuevo Editar variable ambiental Aparecerá el cuadro.Editar trayectoriaAhora ve a C:\Archivos de programa\Java en tu PC. Abra la carpeta JDK, haga clic en la carpeta bin y luego copie la ruta de esa carpeta.Ruta de la carpeta binAhora vaya al cuadro Editar variable ambiental y haga clic en nuevo para crear una nueva variable. Pegue la ruta que copió en el paso anterior en la nueva variable y guárdela.Ahora para confirmar, si está completamente instalado, abra el símbolo del sistema y escriba java –versión.versión JAVAAhora que ha instalado Java JDK con éxito en su computadora. Instalemos ahora Android Estudio en tu computadora. Instalar este software es muy fácil. Debe abrir el archivo descargado y hacer clic en Siguiente hasta que el software esté completamente instalado.Paso 4: hacer el diseñoHaremos un diseño que contendrá algunos botones que enviarán el comando de 0 o 1 a la base de datos de Firebase. Este será un diseño simple que contendrá algunos botones. En mi aplicación, solo incluiré dos botones que controlarán las luces y el ventilador. Si desea incluir más botones para más electrodomésticos, copie el mismo fragmento de código en el programa principal y cree una nueva variable en la base de datos. Sin perder tiempo, avancemos hacia los pasos para crear un diseño simple para nuestra aplicación.1. Primero que nada, ve a Archivo > Nuevo > Nuevo proyecto. Aparecerá un menú. Seleccionar Proyecto vacío.2. Ahora nombre el proyecto y configúrelo. KOTLIN como su lenguaje de programación.3. Ahora en la esquina izquierda, haga clic en aplicación > res > diseño > actividad_main.xml.actividad_principal4. Aquí, agregue el siguiente código debajo del código que ya se proporciona en su Android Studio. Estamos haciendo un diseño de restricciones. El siguiente código agrega un encabezado de Automatización de salas en la parte superior. Luego está agregando 3 interruptores. Un interruptor le permite seleccionar si desea operar los electrodomésticos manualmente o no. Los otros dos conmutados operarán el ventilador y las luces respectivamente. <TextView android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="8dp" android:layout_marginBottom="8dp" android:fontFamily="sans-serif-medium" android:text="Room Automation" android:textAppearance="@style/TextAppearance.AppCompat.Body1" android:textSize="18sp" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.528" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintVertical_bias="0.063" /> <TextView android:id="@+id/textView3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="8dp" android:layout_marginTop="8dp" android:layout_marginEnd="8dp" android:layout_marginBottom="8dp" android:text="Air Conditioner" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.086" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintVertical_bias="0.416" /> <Switch android:id="@+id/switch1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="8dp" android:layout_marginTop="8dp" android:layout_marginEnd="8dp" android:layout_marginBottom="8dp" android:text="Mannual" android:visibility="gone" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.887" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintVertical_bias="0.258" /> <TextView android:id="@+id/textView5" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="8dp" android:layout_marginTop="8dp" android:layout_marginEnd="8dp" android:layout_marginBottom="8dp" android:text="Lights" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.073" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintVertical_bias="0.498" /> <Button android:id="@+id/button3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="8dp" android:layout_marginBottom="8dp" android:text="Menu" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.498" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintVertical_bias="0.749" /> <TextView android:id="@+id/textView6" android:layout_width="167dp" android:layout_height="38dp" android:layout_marginStart="8dp" android:layout_marginTop="140dp" android:layout_marginEnd="8dp" android:layout_marginBottom="8dp" android:text="Switch on to operate manually." app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.114" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintVertical_bias="0.0" /> <Switch android:id="@+id/toggleButton2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="8dp" android:layout_marginTop="8dp" android:layout_marginEnd="8dp" android:layout_marginBottom="8dp" android:text="AC" android:visibility="gone" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.808" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintVertical_bias="0.421" /> <Switch android:id="@+id/toggleButton3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="8dp" android:layout_marginTop="8dp" android:layout_marginEnd="8dp" android:layout_marginBottom="8dp" android:text="Lights" android:visibility="gone" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.811" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> </android.support.constraint.ConstraintLayout>5. El diseño de su aplicación se verá como la imagen a continuación.DisposiciónPaso 5: codificación de back-endEl código back-end es la parte más importante de cualquier aplicación. Es el puente principal entre el diseño frontal y la base de datos del proyecto. En nuestra aplicación, solo queremos enviar un “1” en la base de datos cuando el interruptor está encendido y un “0” en la base de datos cuando el interruptor está apagado. Siga los siguientes pasos para agregar el código en su aplicación1. En la esquina izquierda, haga clic en aplicación > java > com.ejemplo.mi aplicaciónmiaplicación > actividad_principal.2. Ahora en esta pantalla, copie el siguiente código en su clase.class automation : AppCompatActivity() { var database = FirebaseDatabase.getInstance() var myRef = database.reference internal lateinit var btnSwitch:Switch internal lateinit var btnSwitch1:Switch internal lateinit var btnSwitch2:Switch override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_automation) myRef.child("Toggle/switch").addValueEventListener(object : ValueEventListener{ override fun onCancelled(p0: DatabaseError) { } override fun onDataChange(p0: DataSnapshot) { switch1.visibility = View.VISIBLE if (p0.value.toString().equals("1")){ switch1.isChecked = true; toggleButton2.visibility = View.VISIBLE toggleButton3.visibility = View.VISIBLE myRef.child("automation/AC").addValueEventListener(object :ValueEventListener{ override fun onCancelled(p0: DatabaseError) { } override fun onDataChange(p0: DataSnapshot) { if(p0.value.toString().equals("1")){ toggleButton2.isChecked = true } else toggleButton2.isChecked = false } }) myRef.child("automation/light").addValueEventListener(object :ValueEventListener{ override fun onCancelled(p0: DatabaseError) { } override fun onDataChange(p0: DataSnapshot) { if(p0.value.toString().equals("1")){ toggleButton3.isChecked = true } else toggleButton3.isChecked = false } }) } else{ switch1.isChecked = false toggleButton2.visibility = View.GONE toggleButton3.visibility = View.GONE } // Log.d("ahsan", p0.value.toString()) } }) button3.setOnClickListener{ val intent = Intent(this, MainActivity::class.java) startActivity(intent) } btnSwitch = findViewById<View>(R.id.switch1) as Switch btnSwitch1 = findViewById<View>(R.id.toggleButton2) as Switch btnSwitch2 = findViewById<View>(R.id.toggleButton3) as Switch btnSwitch.setOnClickListener{ if(btnSwitch.isChecked) { myRef.child("Toggle/switch").setValue("1") btnSwitch1.setOnClickListener{ if(btnSwitch1.isChecked) { myRef.child("automation/AC").setValue("1") } else { myRef.child("automation/AC").setValue("0") } } btnSwitch2.setOnClickListener{ if(btnSwitch2.isChecked) { myRef.child("automation/light").setValue("1") } else { myRef.child("automation/light").setValue("0") } } } else { myRef.child("Toggle/switch").setValue("0") } } } }En este momento, el código puede dar algunos errores en algunos puntos porque no está conectado a la base de datos de Firebase en este momento. Crearemos una base de datos de Firebase y la conectaremos a la aplicación.Paso 6: conectar la aplicación a la base de datos FirebaseConectar la base de datos de Firebase a la aplicación de Android es casi el paso final. Vamos a crear una base de datos en Firebase. Firebase es una plataforma de mejora de aplicaciones web y móviles que proporciona a los diseñadores una gran cantidad de dispositivos y administraciones para permitirles desarrollar aplicaciones de primer nivel, desarrollar su base de clientes y obtener más beneficios. Firebase nos brinda dos servicios que son Real-Time Database y Firestore.Conectividad entre la aplicación y FirebaseCrearemos una base de datos en tiempo real en la que todos los valores se actualizarán en tiempo real con un retraso de algunos segundos. Siga los siguientes pasos para crear una base de datos en tiempo real en Firebase. Android Studio proporciona un método muy sencillo para realizar esta conexión. Siga los siguientes pasos para establecer esta conexión.1. Haga clic en Herramientas. Aparecerá un menú desplegable en el que seleccione Base de fuego.base de fuego2. Aparecerá un menú grande en el lado derecho de la pantalla que proporcionará el menú de casi todos los servicios que proporciona Firebase. Pero ahora nuestro enfoque principal está en la base de datos en tiempo real. Entonces haga clic en Base de datos en tiempo real. Un enlace a “Guardar y recuperar datos” aparecerá. Haga clic en ese enlace.Base de datos en tiempo real3. Conéctate Conectarse a Firebase botón. Lo llevará al navegador web predeterminado. Primero, le pedirá que inicie sesión en su cuenta de Gmail.Conéctate a Firebase4. Ahora haga clic en Agregue la base de datos en tiempo real a su aplicación del menú que se muestra en la imagen de arriba. Aparecerá un cuadro solicitando realizar algunos cambios. Haga clic en C.Aexcepto cambios. Verás que la aplicación comenzará a sincronizarse para conectarse a nuestra Base de Datos en Tiempo Real.5. Ahora ve a Consola de base de fuego. Allí verás un proyecto ya realizado. El logotipo de Android en el ícono de ese proyecto significa que ya pertenece a una aplicación de Android.Proyecto6. Desde el Desarrollar menú que aparece en el lado izquierdo de la pantalla, seleccione Base de datos. un botón de Crear base de datos aparecerá a la derecha. Haga clic en ese botón.7. Aparecerá un menú que le pedirá que configure el modo de su base de datos. Haga clic en Modo de prueba y luego haga clic Permitir.Modo de prueba8. Ahora un paso realmente importante para recordar es cambiar el Tienda de fuego en la nube a Base de datos en tiempo real. Para hacerlo, haga clic en el botón que se muestra en la imagen de abajo y cambie la opción deseada.Cambiar a la base de datos RT9. Ahora haga clic en el Normas y cambie las configuraciones a Verdadero. Una vez hecho todo, haga clic Publicar.Cambiar configuraciones10. Una cosa que debe hacer además de conectar Firebase es actualizar la versión de la base de datos. Para eso, haga clic en ir a documentos. Ahora haga clic en guías y seleccione Android Guías de la lista que aparece en la pantalla. Desplácese hacia abajo hasta que aparezca una tabla. Busque Base de datos en tiempo real en esa tabla y encuentre su versión. en mi caso es 19.1.0Versión11. Haga clic en guiones de Gradle, un menú en el lado izquierdo de la pantalla. Luego seleccione construido. gradle (Módulo: aplicación). Ahora en el código, busque la versión de la base de datos en tiempo real y reemplácela por la nueva.Versión actualizadaAhora nuestra conexión Firebase con nuestro Android La aplicación está completamente establecida. Ahora podemos continuar con la parte de prueba de nuestro proyecto.Paso 7: PruebaLa parte de prueba es muy sencilla. Sólo necesitas ir a tu Android dispositivo y habilite el Opciones de desarrollador desde el entorno. Entonces necesitarás habilitar el Depuración USB. Después de hacer todo esto, conecta tu Android dispositivo a su computadora y ejecute el proyecto de Android en Android Studio. Esto creará la aplicación en su dispositivo Android.Ahora, haga clic en los botones en su pantalla y automáticamente creará las entidades en su base de datos de Firebase. Verás que algunos valores se actualizarán en su entidad correspondiente a medida que presiones los botones. Tecnología
Tecnología Juegos de intercambio en Steam (Explicado) noviembre 4, 2023Steam es una de las plataformas de distribución de juegos más utilizadas en el mundo…. Read More
Tecnología El nitrógeno líquido lleva el i9-13900K de Intel a más de 8,0 GHz noviembre 19, 2023Overclocking del 13900K | Intel Intel Durante su Evento de innovación anunció su tan esperado… Read More
Tecnología ¿Cómo solucionar el error 0x8b050033 de Xbox One? diciembre 2, 2023Varios usuarios de Xbox One se quejan de que de repente no pueden acceder a… Read More