📖 Guide Information: This guide provides instructions for installing ChannelTalk SDK in general Flutter projects.
🚀 Sample Project: For installation and execution instructions for this sample project, please refer to README.md.
This guide provides step-by-step instructions for installing and setting up ChannelTalk SDK in a Flutter project.
This project was developed and tested in the following environment:
- Flutter: 3.35.2 (stable channel)
- Dart: 3.9.0
- DevTools: 2.48.0
- Xcode: 16.3 (Build 16E140)
- Swift: 6.1
- Minimum iOS Version: 15.0
- CocoaPods: 1.16.2
- Gradle: 8.12
- Minimum SDK: API 21 (Android 5.0)
- Target SDK: API 35 (Android 15)
- Compile SDK: API 35
- Android SDK: 13.1.2
- iOS SDK: Latest (version unspecified - automatic latest version)
- Flutter SDK: 3.0 or higher
- iOS: iOS 15.0 or higher (ChannelIOSDK requirement)
- Android: API 21 or higher (Android 5.0)
- Channel Talk: Paid service plan
First, add the ChannelTalk Maven repository to your android/build.gradle.kts file:
allprojects {
repositories {
google()
mavenCentral()
// ChannelTalk Android SDK repository (Required!)
maven { url = uri("https://maven.channel.io/maven2") }
}
}Important: Without this repository configuration, you will encounter "ChannelTalk SDK not found" error.
Then, add the following dependency to your android/app/build.gradle.kts file:
dependencies {
// Add ChannelTalk Android SDK
implementation("io.channel:plugin-android:12.13.0")
}Create android/app/src/main/kotlin/[package_name]/MainApplication.kt file:
package io.channel.channeltalk_sample
import android.app.Application
import com.zoyi.channel.plugin.android.ChannelIO
class MainApplication : Application() {
override fun onCreate() {
super.onCreate()
// Initialize ChannelIO Android SDK
ChannelIO.initialize(this)
}
}Register the Application class in android/app/src/main/AndroidManifest.xml:
<application
android:label="channeltalk_sample"
android:name=".MainApplication"
android:icon="@mipmap/ic_launcher">Add the following to your ios/Podfile:
platform :ios, '15.0' # ChannelIOSDK minimum requirement
target 'Runner' do
use_frameworks!
use_modular_headers!
flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__))
# Add ChannelTalk iOS SDK (automatic latest version)
pod 'ChannelIOSDK'
endRun the following command in terminal:
cd ios && pod installModify ios/Runner/AppDelegate.swift file as follows:
import Flutter
import UIKit
import ChannelIOFront
@main
@objc class AppDelegate: FlutterAppDelegate {
override func application(
_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
) -> Bool {
GeneratedPluginRegistrant.register(with: self)
// Initialize ChannelIO iOS SDK
ChannelIO.initialize(application)
return super.application(application, didFinishLaunchingWithOptions: launchOptions)
}
}flutter pub getcd ios && pod install && cd ..# Debug build (for development)
flutter run
# Build Release APK (Android)
flutter build apk --release
# iOS Build
flutter build ios --releaseTo use ChannelTalk push notification features, additional setup is required.
This project processes ChannelTalk push notifications through Firebase Cloud Messaging (FCM).
📬 Push Notification Setup Guide - Detailed Firebase FCM + ChannelTalk integration method
- Create new project in Firebase Console
- Register Android/iOS apps
- Download
google-services.json(Android) /GoogleService-Info.plist(iOS)
# pubspec.yaml
dependencies:
firebase_core: ^2.32.0
firebase_messaging: ^14.7.10- Android: Implement custom FCM service (handle ChannelTalk messages natively)
- iOS: Implement UNUserNotificationCenter delegate in AppDelegate
- Permissions: Android 13+
POST_NOTIFICATIONSpermission, iOS notification permission
- Upload Firebase service account key to Channel Desk
- Channel Settings > Security and Development > Mobile SDK Push
⚠️ Note: Push notifications can only be fully tested on real devices. (Simulator/Emulator limitations)
For detailed setup instructions, please refer to ChannelTalk official developer documentation:
- Issue: iOS 15.0 related error messages
- Solution: Check
platform :ios, '15.0'setting inios/Podfile
- Issue: minSdkVersion related error messages
- Solution: Verify Android API 21 or higher configuration
- Issue: Errors during Pod installation
- Solution:
cd ios pod deintegrate pod install --repo-update
- Flutter:
flutter clean && flutter pub get - iOS:
cd ios && pod install && cd .. - Android: Gradle Sync in Android Studio
- 💬 ChannelTalk Support Center - For technical inquiries, please contact ChannelTalk Support Center directly
-
Native Code Modification Required: Complete integration is not possible with Flutter alone; iOS and Android native code modification is essential.
-
Version Compatibility: Tested based on the environment versions specified above; compatibility issues may occur when using different versions.
-
Paid Service: ChannelTalk is a paid service, so a service plan subscription is required for actual use.
-
Plugin Key Required: A plugin key issued by ChannelTalk is required to use the SDK.
Need Help? Contact ChannelTalk Support for technical assistance.