Git Product home page Git Product logo

sendbird-chat-sample-android's Introduction

Sendbird Chat sample for Android

Overview

This repository provides feature-level Chat samples with Kotlin to demonstrate how to use the Sendbird Chat SDK.

Requirements

Android Studio 2.0+

Running the app

Open this project in Android Studio and select 'run configurations' to view a dropdown of feature-level Chat samples to choose from.

Once a sample is chosen, create a device and run the app on an Android device or Android emulator.

Language

  • Kotlin

Version

  • Android SDK
    • compileSdk: 32
    • minSdk: 26
    • targetSdk: 32
  • Gradle Version
    • gradle: 7.2
    • android gradle plugin: 4.2.0

Project structure

.
├── commonmodule
│   ├── ui
│   │   ├── CustomViews
│   │   └── base
│   │        ├── BaseApplication
│   │        ├── BaseActivity
│   │        └── BaseFragment
│   └── utils
│       ├── Utils
│       └── Extension
├── groupchannel-basic
│   ├── groupchannel
│   ├── main
│   └── user
├── groupchannel-typingindicator
│   ├── groupchannel
│   ├── main
│   └── user
├── groupchannel-readnessage
│   ├── groupchannel
│   ├── main
│   └── user
├── groupchannel-unreadmessages
│   ├── groupchannel
│   ├── main
│   └── user
├── groupchannel-onlinemembers
│   ├── groupchannel
│   ├── main
│   └── user
├── groupchannel-membersandoperators
│   ├── groupchannel
│   ├── main
│   └── user
├── groupchannel-banned-and-muted-users
│   ├── groupchannel
│   ├── main
│   └── user
├── groupchannel-groupchannel-add-remove-operators
│   ├── groupchannel
│   ├── main
│   └── user
├── groupchannel-mention-members
│   ├── groupchannel
│   ├── main
│   └── user
├── groupchannel-report-user-message-channel
│   ├── groupchannel
│   ├── main
│   └── user
├── groupchannel-freeze-unfreeze
│   ├── groupchannel
│   ├── main
│   └── user
├── groupchannel-mute-user
│   ├── groupchannel
│   ├── main
│   └── user
├── groupchannel-admin-message
│   ├── groupchannel
│   ├── main
│   └── user
├── groupchannel-ban-unban-user
│   ├── groupchannel
│   ├── main
│   └── user
├── groupchannel-mark-message-read
│   ├── groupchannel
│   ├── main
│   └── user
├── groupchannel-push-notifications
│   ├── groupchannel
│   ├── main
│   └── user
├── groupchannel-update-message-operator
│   ├── groupchannel
│   ├── main
│   └── user
├── openchannel-basic
│   ├── openchannel
│   └── main
├── openchannel-user-online
│   ├── openchannel
│   └── main
├── openchannel-update-message
│   ├── openchannel
│   └── main
├── openchannel-delete-message
│   ├── openchannel
│   └── main
├── openchannel-copy-message
│   ├── openchannel
│   └── main
├── openchannel-mention-user
│   ├── openchannel
│   └── main
├── openchannel-report-message-user-channel
│   ├── openchannel
│   └── main
├── openchannel-admin-message
│   ├── openchannel
│   └── main
└── openchannel-feature-a
...

  • ui
    • Created for frequently used views.
    • Created activities commonly used such as Sign-Up, Splash, and UserInfo.
  • utils
    • Commonly used functions in Basic, Feature App

BasicSample

  • groupchannel-basic
  • openchannel-basic

FeatureSample

  • groupchannel-typingindicator
  • groupchannel-unreadmessages
  • groupchannel-readmessage
  • groupchannel-onlinemembers
  • groupchannel-membersandoperators
  • groupchannel-banned-and-muted-users
  • groupchannel-user-online
  • groupchannel-mention-members
  • openchannel-user-online
  • openchannel-delete-message
  • openchannel-update-message
  • openchannel-copy-message ...

Considerations in real world app

  • In this sample repo users are connecting to sendbird using a user ID (Sendbird Dashboard --> Security --> Read & Write). Read & Write is not secure and will create a new user automatically from the SDK if none exists. In production be sure to change the Sendbird Dashboard security settings to Deny login, and authenticate users with a Sendbird generated Session Token.

sendbird-chat-sample-android's People

Contributors

mihaimoiseanu avatar chrischabot avatar elliot-choic avatar james-a-rob avatar octa-george avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.