Cách tạo ứng dụng Android cho hệ thống nhà thông minh của bạn trên Android Studio?

Bài viết này là phần hai của một bài báo khác Làm thế nào để tự động hóa nhà thông minh bằng mô-đun ESP32? trong đó đã cung cấp phương pháp tạo Hệ thống nhà thông minh. Trong bài viết này, chúng tôi sẽ trình bày quy trình từng bước về cách phát triển một ứng dụng android và kết nối nó với cơ sở dữ liệu firebase. Sau đó, ứng dụng di động này sẽ được sử dụng để chuyển đổi các thiết bị điện trong nhà.



Phát triển ứng dụng Android

Hệ thống nhà thông minh đã có mặt trên thị trường rất tốn kém. Nếu bạn có các thành phần cần thiết và một thiết bị Android, bạn có thể tạo một hệ thống tự động hóa gia đình tại nhà sẽ hiệu quả như nhau nhưng chi phí sẽ rất thấp. Xem qua hai bài viết này để tự tạo Hệ thống tự động hóa gia đình tại nhà.



Làm thế nào để phát triển một ứng dụng Android để tự động hóa tại nhà?

Chúng tôi sẽ phát triển một ứng dụng android sẽ được sử dụng làm điều khiển từ xa để điều khiển các thiết bị điện gia dụng được kết nối với mô-đun ESP32 trong bài viết khác. để chuyển sang bài viết khác, Bấm vào đây .



Bước 1: Phần mềm cần thiết

Khi chúng tôi chuẩn bị phát triển một ứng dụng Android, chúng tôi sẽ chỉ cần một phần mềm. Nhưng để chạy phần mềm đó, trước tiên chúng ta sẽ cần cài đặt một phần mềm khác. Bạn có thể tải chúng xuống từ các liên kết sau.



  • Android Studio.
  • JAVA JDK.

Bước 2: Tìm hiểu công việc chính

Chúng tôi sẽ tạo ra một ứng dụng có cả mã hóa front-end và back-end. Trên màn hình chính, nó sẽ chứa một số nút điều khiển việc chuyển đổi các thiết bị điện được kết nối với bảng vi điều khiển ESP32. Trong mã hóa back-end, Chúng tôi sẽ gửi “1” nếu công tắc đang bật và “0” nếu công tắc tắt.

Chúng tôi sẽ tạo cơ sở dữ liệu Firebase. Cơ sở dữ liệu này sẽ chứa 2 thực thể có tên là Light và AC. Đèn sẽ chứa giá trị chuyển đổi của đèn và AC sẽ chứa giá trị chuyển đổi của quạt. Giá trị này sau đó sẽ được gửi đến vi điều khiển và sau đó vi điều khiển sẽ gửi tín hiệu điều khiển đến module rơ le tương ứng.

Bước 3: Thiết lập Android Studio

Trước khi cài đặt Android Studio, chúng ta sẽ cài đặt JAVA JDK trước. Để cài đặt cái này, hãy nhấp vào exe tập tin mà bạn đã tải xuống từ liên kết trên và nhấp vào tiếp theo cho đến khi nó được cài đặt thành công. Bây giờ, hãy thực hiện các bước sau để dấu nhắc lệnh của bạn nhận ra java là lệnh bên ngoài hoặc lệnh bên trong.



  1. Mở Bảng điều khiển và nhấp vào Hệ thống và Bảo mật .
  2. Bấm vào Hệ thống .

    Hệ thống

  3. Bấm vào Cài đặt hệ thống nâng cao và sau đó nhấp vào Các biến môi trường .

    Cài đặt hệ thống nâng cao

  4. Trong phần Biến hệ thống, nhấp vào đường dẫn và sau đó nhấp vào chỉnh sửa. Một mới Chỉnh sửa biến môi trường hộp sẽ xuất hiện.

    Chỉnh sửa đường dẫn

  5. Bây giờ đi đến C: Program Files Java trong PC của bạn. Mở thư mục JDK, nhấp vào thư mục bin và sau đó sao chép đường dẫn của thư mục đó.

    Đường dẫn của thư mục bin

  6. Bây giờ, hãy chuyển đến hộp Chỉnh sửa biến môi trường và nhấp vào mới để tạo một biến mới. Dán đường dẫn mà bạn đã sao chép ở bước trên vào biến mới và lưu nó.
  7. Bây giờ để xác nhận, nếu nó đã được cài đặt hoàn chỉnh, hãy mở dấu nhắc lệnh và nhập java –version .

    Phiên bản JAVA

Bây giờ là bạn đã cài đặt thành công Java JDK trên máy tính của mình. Bây giờ hãy để chúng tôi cài đặt Android Studio trên máy tính của bạn. Cài đặt phần mềm này rất dễ dàng. Bạn cần mở tệp đã tải xuống và nhấp vào tiếp theo cho đến khi phần mềm của bạn được cài đặt hoàn chỉnh.

Bước 4: Tạo bố cục

Chúng tôi sẽ tạo một bố cục chứa một số nút sẽ gửi lệnh 0 hoặc 1 đến cơ sở dữ liệu firebase. Đây sẽ là một bố cục đơn giản sẽ chứa một số nút. Trong ứng dụng của tôi, tôi sẽ chỉ bao gồm hai nút sẽ điều khiển đèn và quạt. Nếu bạn muốn thêm nhiều nút cho nhiều thiết bị gia dụng hơn, hãy sao chép cùng một đoạn mã trong chương trình chính và tạo một biến mới trong cơ sở dữ liệu. Không lãng phí thời gian, chúng ta hãy tiến tới các bước tạo bố cục đơn giản cho ứng dụng của mình.

1. Trước hết, hãy truy cập Tệp> Mới> Dự án mới. Một menu sẽ xuất hiện. Lựa chọn Dự án trống rỗng.

2. Bây giờ đặt tên cho dự án và đặt KOTLIN là ngôn ngữ lập trình của bạn.

3. Bây giờ ở góc bên trái, nhấp vào app> res> layout> activity_main.xml.

Activity_main

4. Tại đây, hãy thêm mã sau vào bên dưới mã đã được cung cấp trong studio android của bạn. Chúng tôi đang tạo một bố cục hạn chế. Đoạn mã sau sẽ thêm một tiêu đề Phòng tự động hóa ở trên cùng. Sau đó, nó được thêm vào 3 công tắc. một công tắc cho phép bạn chọn có muốn vận hành các thiết bị gia dụng theo cách thủ công hay không. Hai công tắc còn lại sẽ vận hành quạt và đèn tương ứng.

 

5. Bố cục của ứng dụng của bạn sẽ giống như hình dưới đây.

Bố trí

Bước 5: Mã hóa Back-End

Mã back end là phần quan trọng nhất của bất kỳ ứng dụng nào. Nó là cầu nối chính giữa bố cục front-end và cơ sở dữ liệu của dự án. Trong ứng dụng của chúng tôi, chúng tôi chỉ muốn gửi “1” trong cơ sở dữ liệu khi công tắc bật và “0” trong cơ sở dữ liệu khi công tắc tắt. Thực hiện các bước sau để thêm mã vào ứng dụng của bạn

1. Ở góc bên trái, nhấp vào app> java> com.example.my applicationmyapplication> main_activity.

2. Bây giờ trên màn hình này, hãy sao chép đoạn mã sau vào lớp của bạn.

tự động hóa lớp: AppCompatActivity () {var database = FirebaseDatabase.getInstance () var myRef = database.reference internal lateinit var btnSwitch: Chuyển nội bộ lateinit var btnSwitch1: Chuyển nội bộ lateinit var btnSwitch2: Chuyển sang ghi đè fun onCreate (saveInstanceState: Gói?) .onCreate (saveInstanceState) setContentView (R.layout.activity_automation) myRef.child ('Toggle / switch'). addValueEventListener (object: ValueEventListener {override fun onCancelling (p0: DatabaseError) {} override fun onDataChange1pshot (p0 .visibility = View.VISIBLE if (p0.value.toString (). equals ('1')) {switch1.isChecked = true; toggleButton2.visibility = View.VISIBLE toggleButton3.visibility = View.VISIBLE myRef.child ('tự động hóa /AC').addValueEventListener(object: ValueEventListener {override fun onCancelt (p0: DatabaseError) {} ghi đè fun onDataChange (p0: DataSnapshot) {if (p0.value.toString (). Equals ('1')) {toggleButton2. isChecked = true} else toggleButton2.isChecked = fals e}}) myRef.child ('Automation / light'). addValueEventListener (object: ValueEventListener {override fun onCancelt (p0: DatabaseError) {} ghi đè fun onDataChange (p0: DataSnapshot) {if (p0.value.toString (). bằng ('1')) {toggleButton3.isChecked = true} else toggleButton3.isChecked = false}})} else {switch1.isChecked = false toggleButton2.visibility = View.GONE toggleButton3.visibility = View.GONE} // Nhật ký. d ('ahsan