Làm cách nào để tạo một ứng dụng trò chuyện trong Android Studio?

Mặc dù ngày càng phổ biến, các ứng dụng trò chuyện và nhắn tin vẫn tiếp tục chậm triển khai. Điều này phần lớn là do tài liệu chính thức không tồn tại, trong khi các hướng dẫn không chính thức thì khan hiếm và thường lỗi thời

Hướng dẫn này là một nỗ lực để thu hẹp khoảng cách này

Tất cả chúng ta đều đã thấy các bong bóng trò chuyện đầy màu sắc chứa đầy văn bản, hình ảnh, thậm chí cả phương tiện có thể phát được – làm thế nào để họ xây dựng nó? . RecyclerViews, cùng với mẫu ViewHolder

Hướng dẫn này hướng dẫn bạn qua các bước cần thiết để xây dựng giao diện người dùng nhắn tin chất lượng, xây dựng nền tảng để hỗ trợ văn bản, hình ảnh và phương tiện có thể phát được đề cập ở trên

Hướng dẫn này xem xét việc tạo

  1. Giao diện nhắn tin
  2. Bộ điều hợp cho RecyclerView

  3. Hoạt động kênh

Hướng dẫn này yêu cầu

  1. Studio Android. 4. 0. 2

  2. Phiên bản android. 10API 29

  3. SDK lõi Sendbird. 3. 0. 148

Xin lưu ý rằng hướng dẫn này giả định sự quen thuộc cơ bản với phát triển Android

Bước 1. Tạo giao diện người dùng nhắn tin

Tạo giao diện người dùng hoạt động

Trong hướng dẫn này, chúng ta sẽ tạo một hoạt động dành riêng để lưu trữ các tin nhắn của mình. Đối với hoạt động này, chúng tôi sẽ cần một XML. Vì vậy, điều đầu tiên chúng ta sẽ làm là tạo activity_channel. xml

Thành phần chính trong hoạt động này là RecyclerView sẽ chiếm phần lớn màn hình. Bạn sẽ lưu ý rằng cũng có AppBarLayout với ToolBar. Chúng tôi sẽ không làm gì nhiều với điều này ngay bây giờ nhưng nói chung, bạn có thể thêm nút “Quay lại”, nút “Giới thiệu” hoặc thông tin về kênh tại đây. Điều cuối cùng chúng ta sẽ thêm là một RelativeLayout sẽ chứa các nút “EditText” và “Send”. Đây tương ứng sẽ là cách người dùng sẽ nhập văn bản và gửi nó. Trong RelativeLayout này, bạn cũng có thể thêm các biểu tượng để hỗ trợ thêm

Tạo một mục danh sách cho mỗi tin nhắn

Sử dụng một tệp XML riêng để xác định bố cục của từng mục [i. e. , tin nhắn] cho RecyclerView. Đó là thông lệ phổ biến cho mỗi tin nhắn chứa một cái gì đó giống như trên [tôi. e. tên người gửi, ảnh hồ sơ của họ và dấu thời gian]. Vì căn chỉnh của bong bóng trò chuyện thường cho biết chủ sở hữu của tin nhắn nên việc hiển thị ảnh hồ sơ và tên của người gửi cho mọi tin nhắn sẽ là thừa. Ví dụ: trong hình trên, bong bóng trò chuyện được căn phải cho biết nó thuộc về người gửi, vì vậy chúng tôi không cần đưa hình ảnh hoặc tên vào

Chúng ta cần tạo hai XML khác nhau. đầu tiên. xml sẽ dành cho tin nhắn từ phối cảnh “Tôi” hoặc tin nhắn được gửi bởi người dùng hiện tại. Đối với điều này, chúng tôi đã chọn có TextView cho thông báo thực tế được bao bọc trong Cardview. Bao quanh TextView này là các TextView khác cho những thứ như Date

Thư hai. xml sẽ dành cho các tin nhắn từ phối cảnh “Khác” – điều này có nghĩa là bất kỳ tin nhắn nào mà người dùng hiện tại không gửi. Giao diện người dùng này sẽ tương tự như giao diện người dùng “Tôi”. Tuy nhiên, nó được căn trái và chứa thông tin về người dùng “Khác”, chẳng hạn như ImageView cho ảnh hồ sơ và TextField cho tên người dùng. Ngoài ra, các quan điểm tương đối giống nhau

Bước 2. Tạo bộ điều hợp cho Recyclerview

Bây giờ chúng tôi đã tạo giao diện người dùng để trò chuyện, chúng tôi sẽ cần kết nối các tin nhắn với giao diện người dùng. Chúng tôi sẽ làm điều này với một RecyclerView. bộ chuyển đổi

Bộ điều hợp này sẽ hoàn thành ba điều. Nó sẽ

  • Lưu trữ danh sách Tin nhắn
  • Xác định xem một tin nhắn được gửi hay nhận
  • Thổi phồng bố cục thích hợp trong RecyclerView

Nhưng trước khi mạo hiểm hơn nữa, chúng ta cần một danh sách các tin nhắn

Kỹ thuật phụ trợ cho nhắn tin thời gian thực nằm ngoài phạm vi của hướng dẫn này. Do đó, chúng tôi sẽ tiếp tục với các mô hình trong SDK trò chuyện của Sendbird. Nó đại khái giả định cấu trúc sau

Mô hình người dùng và thông báo chung

class Message {
  String message;
  User sender;
  long createdAt;
}

class User {
  String nickname;
  String profileUrl;
}

Vì người ta thường thiết kế triển khai nhắn tin theo cách này, hy vọng bạn sẽ có thể làm theo hướng dẫn này với những thay đổi tối thiểu đối với mã của bạn

Bây giờ, hãy tạo một bộ điều hợp và đặt tên là MessageListAdapter. Điều này sẽ giữ một danh sách các Tin nhắn sẽ được hiển thị trong RecyclerView

Theo mặc định, bộ điều hợp yêu cầu ít nhất một Viewholder. Đây là một bố cục có thể được thổi phồng và ràng buộc bởi các đối tượng mà nó chứa. Trong trường hợp của chúng tôi, chúng tôi sẽ bắt đầu chỉ với hai. một SendMessageHolder và một ReceivedMessageHolder. Khi bạn thêm nhiều loại tin nhắn hơn, bạn có thể thêm nhiều chủ sở hữu hơn. Hướng dẫn này tập trung vào Tin nhắn của người dùng hoặc tin nhắn dựa trên văn bản

Để thực hiện điều này, chúng tôi sẽ có hai lớp bên trong riêng bên trong MessageListAdapter của chúng tôi

Mỗi ViewHolder giữ các dạng xem thành viên có thể được liên kết với thông tin cụ thể có trong một thông báo. Ví dụ: TextView messageText liên kết với nội dung của thư, trong khi nameText liên kết với tên của người gửi thư. Antonio Leiva gợi ý rằng chúng ta nên triển khai phương thức liên kết [đối tượng] trong lớp ViewHolder. Điều này cho phép xem liên kết với lớp ViewHolder thay vì onBindViewHolder. Do đó, nó tạo ra mã sạch hơn giữa nhiều ViewHolders và ViewTypes. Nó cũng cho phép chúng tôi dễ dàng thêm OnClickListener, nếu cần

Khi bạn hoàn thành ViewHolder, hãy quay lại bộ điều hợp và ghi đè các phương thức cần thiết để

  1. Nhận tin nhắn từ MessageList
  2. Xác định xem đó là tin nhắn đã gửi hay tin nhắn đã nhận
  3. Thổi phồng bố cục thích hợp cho ViewHolder
  4. Truyền tin nhắn cho ViewHolder để ràng buộc

Việc thực hiện quy trình này là tiêu chuẩn cho hầu hết các Bộ điều hợp và tương đối dễ hiểu;

Chúng tôi vừa hoàn thành Adapter. Giờ đây, chúng tôi có thể hiển thị danh sách cả tin nhắn đã gửi và đã nhận trong bong bóng trò chuyện mà chúng tôi đã xác định trước đó

Bước 3. Tạo hoạt động kênh

Chúng tôi đã tạo tất cả các thành phần và bây giờ chúng tôi cần khởi tạo chúng bên trong hoạt động của mình. Tạo một hoạt động gọi là MessageListActivity. Trong onCreate của bạn, hãy tạo một RecyclerView và MessageListAdapter với một danh sách các tin nhắn và thì đấy. Bạn vừa tạo giao diện người dùng nhắn tin của riêng mình

Phần kết luận

Bạn có thể xây dựng các tính năng nâng cao như xem trước hình ảnh, GIF động trong bong bóng trò chuyện, v.v. Xem các ví dụ về giao diện người dùng trò chuyện nâng cao tại ứng dụng giao diện người dùng mẫu mã nguồn mở của Sendbird. Điều này được xây dựng dựa trên việc sử dụng RecyclerViews và bộ điều hợp mà chúng tôi đã trình bày trong hướng dẫn này và sẽ giúp bạn tạo một ứng dụng trò chuyện cấp sản xuất với nhiều tính năng khác nhau

Làm cách nào tôi có thể tạo ứng dụng trò chuyện của riêng mình?

Các bước phát triển ứng dụng trò chuyện. Tổng quan về quy trình .
Tạo một thư mục và cài đặt phụ thuộc. .
Xây dựng giao diện Front-End Chat & Chat Client. .
Tạo và/hoặc Kết nối Back End [Máy chủ Trò chuyện].
Ưu tiên mở rộng tính năng dựa trên phản hồi của người dùng

Làm cách nào để tạo một ứng dụng nhắn tin Android?

Cách tạo ứng dụng trò chuyện [Danh sách kiểm tra cuối cùng] .
Nghiên cứu thị trường
Xác định đối thủ cạnh tranh của ứng dụng nhắn tin tức thời của bạn
Chọn các tính năng phù hợp để tạo ứng dụng trò chuyện
Chọn [các] nền tảng đầu tiên để tạo ứng dụng trò chuyện cho
Suy nghĩ về chiến lược kiếm tiền cho ứng dụng nhắn tin tức thì của bạn
Viết suy nghĩ của bạn xuống

Làm cách nào để tạo ứng dụng trò chuyện trong Android Studio bằng Firebase?

Firebase Android Codelab - Xây dựng trò chuyện thân thiện .
Lấy mã mẫu
Cài đặt Firebase CLI
Kết nối với Bộ giả lập Firebase
Chạy ứng dụng khởi động
Bật xác thực
đọc tin nhắn
gửi tin nhắn
Xin chúc mừng

Làm cách nào để tạo ứng dụng SMS trong Android Studio?

Mở Android Studio và bắt đầu Dự án Android Studio mới. .
Bạn có thể chọn tên ứng dụng của mình và chọn vị trí lưu trữ dự án của bạn. .
Bây giờ, chọn phiên bản Android và chọn thiết bị Android mục tiêu. .
Bây giờ, thêm hoạt động và nhấp vào nút "Tiếp theo"
Thêm tên Hoạt động và nhấp vào "Hoàn tất"

Chủ Đề