Skip to content

yoer/zego_uikits_flutter

Repository files navigation

Code Structure

lib/
├── app.dart                 # Application entry and global configuration
├── main.dart               # Main program entry
├── firebase_options.dart   # Firebase configuration
├── common/                 # Common components and utilities
├── data/                   # Data models and state management
├── firestore/             # Firestore database operations
├── kits/                  # ZEGO UI Kits integration
│   ├── call/             # Call functionality
│   │   ├── call_page.dart        # Call page
│   │   ├── call_invitation.dart  # Call invitation
│   │   └── call_settings.dart    # Call settings
│   ├── live_streaming/   # Live streaming functionality
│   │   ├── live_page.dart       # Live page
│   │   ├── pk_page.dart         # PK functionality
│   │   └── live_settings.dart   # Live settings
│   ├── audio_room/       # Audio chat room
│   │   ├── audio_room_page.dart    # Audio room page
│   │   └── audio_room_settings.dart # Audio room settings
│   ├── conference/       # Video conference
│   │   ├── conference_page.dart    # Conference page
│   │   └── conference_settings.dart # Conference settings
│   ├── chat/             # Instant messaging
│   │   ├── chat_page.dart      # Chat page
│   │   └── chat_settings.dart  # Chat settings
│   ├── cache.dart        # Cache management
│   ├── room_list.dart    # Room list management
│   ├── express_event_handler.dart # Event handling
│   └── kits_page.dart    # Kits page management
└── pages/                # Page components
    ├── splash.dart       # Splash page
    ├── loading.dart      # Loading page
    ├── login.dart        # Login page
    ├── home.dart         # Home page
    ├── settings.dart     # Settings page
    ├── about.dart        # About page
    ├── contact.dart      # Contact page
    ├── feedback.dart     # Feedback page
    ├── more_drawer.dart  # More drawer menu
    └── utils/            # Page utilities
        └── ...          # Page-related utility functions and components

Introduction

demo of zego-uikits

The demo introduces the basic functions of five kits, linking virtual users together simply through Firestore.

A purely personal project powered by love:

  1. No version plans, please like and encourage.
  2. No technical support, please raise issues for bugs and feature requests.

Getting Started

Before using, you need to register Firestore and ZEGO AppID/AppSign.

  1. Firestore

    • Related Features: Contacts, Live PK host list
    • Set up Firebase project:
      • Create a Firebase project: Visit Firebase Console and create a new project.
      • Enable Firestore: In the project, navigate to the "Firestore Database" section, select Create Database, and then select Start in Test Mode. Set the rules on the rules page:
        rules_version = '2';
        
        service cloud.firestore {
            match /databases/{database}/documents {
                match /{document=**} {
                allow read, write: if true;
                }
            }
        }
        
    • Download your own Google services file, then replace ./android/app/google-services.json and ./ios/Runner/GoogleService-Info.plist respectively.
    • follow the instructions on Add Firebase to your Flutter app
  2. AppID/AppSign of Zego Go to ZEGOCLOUD Admin Console, get the appID and appSign of your project. Then set it in the demo's system settings interface.

  3. Configure Offline Calls (Optional) Please follow the steps in 1. Firebase Console and ZEGO Console Configuration section of Configure your project.

Feature Introduction

splash

A brief introduction to the basic functions of the five kits.

Splash 1 Splash 2 Splash 3 Splash 4 Splash 5 Splash 6

global settings

You need to set ZEGO AppID/AppSign here, and you can also switch languages here.

system settings system settings

call

  • Settings

    Call
    Click the settings button in the upper right corner to enter the settings interface, where you can make some dynamic configurations.
  • Call Invitation

    • Dial Call

      Call
      Call the other party by direct dialing.
      Call
      Calling interface (caller).
      Call
      Calling interface (recipient).
      Call
      Calling interface (recipient).
      Call 2
      Press the " # " key to increase the number of callers for a group call.
      Call
      Group calling interface (caller).
    • Call History

    • Contacts

      Call
      Directly call back the other party from the call log.
      Call
      Directly call the other party from the contacts in the top toolbar.
  • 1v1/group

    • Preset Call Room List You can configure the call room list in the call settings page, and those entering the same call can converse with each other.
      Call
      Directly enter the preset call (1v1) from the preset call list.
      Call
      Directly enter the preset call (group) from the preset call list.
  • live

    • Live Streaming
      live
      Preset live list.
      live
      Host preview page.
      live
      Beauty filter.
      live
      Co-host.
      live
      Member list.
    • PK
      live
      Online idle host list.
      live
      Host invited for PK.
      live
      Some host status shows PK invitation in progress.
      live
      Some host status shows PK in progress.
      live
      Default PK interface.
    • Live List
      live
    • Swipe Switching
    • Multimedia Sharing
      live
      Host shares a movie.
      live
      Audience watches the host explain the movie.
  • audio room

    • Preset Room List
      audio room
      audio room
    • Multimedia Sharing
      audio room
      audio room
      Host plays a movie.
      audio room
      Other users.
  • conference

    • Preset Room List
      conference
      conference
      conference
      Chat interface.
    • Screen Sharing
      conference
      Watch someone else's screen sharing.
      conference
      Currently sharing screen.
  • chat

    chat
    Select contacts from the address book.
    chat
    Received messages from other users.
    chat
    Message list.

About

demo of uikits

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages