這是 Stream Chat 的官方 Android SDK,這是一項用於建立聊天和訊息應用程式的服務。該庫包括一個低階聊天 SDK 和一組可重複使用的 UI 元件。大多數使用者從 UI 元件開始,然後在想要自訂內容時退回到較低層級的 API。
我們很自豪地說,我們是第一個支援 Jetpack Compose 的 Android 聊天 SDK!我們在 Jetpack Compose 1.0 官方發布一天後發布了 Compose UI 元件,從那時起我們的團隊成員就一直在努力工作。
現在它已經足夠成熟和穩定,我們可以正式推薦它用於所有新應用程式和所有現代聊天實作。如果您正在尋找高度可自訂且性能極高的東西,請查看我們的 Compose SDK。
Android SDK 同時支援 Kotlin 和 Java,但我們強烈建議使用 Kotlin 。
注意:Compose SDK 僅支援 Kotlin,因為 Compose 使用 Kotlin 編譯器外掛程式來處理 UI。
對於大多數業餘專案和業餘愛好專案來說,Stream 是免費的。要獲得資格,您的專案/公司需要擁有 < 5 名團隊成員且每月收入 < 1 萬美元。有關完整的定價詳細信息,請訪問我們的聊天定價頁面。
此 SDK 包含兩個可用於建置的低階工件:
我們還有兩個 UI SDK 。您可以使用我們的 Compose UI 元件 SDK,或者如果您使用的是較舊的 UI 解決方案,則可以使用基於 XML 的 UI 元件:
透過造訪文件以了解有關模組的更多資訊。
最好的起點是撰寫聊天訊息教學。它教您使用 Compose Chat SDK 的基礎知識,並展示如何進行經常需要的更改。
注意:如果您使用的是較舊的 UI 工具包(例如 XML),您可以按照 Android 聊天訊息教學課程,其中包含基於 XML 的 UI 元件。
請參閱文件的依賴項和入門頁面。
我們的 Jetpack Compose 實作附帶了自己的範例應用程序,您可以使用它來了解 Compose 有多棒。
要運行範例應用程序,請先克隆此儲存庫:
git clone [email protected]:GetStream/stream-chat-android.git
接下來,打開Android Studio並打開新建立的專案資料夾。您需要執行stream-chat-android-compose-sample
模組。
由於 Compose 是一個高度可自訂的 SDK,因此我們渴望聽到您關於它如何幫助您建立複雜的聊天 UI 的回饋。加入我們此存儲庫的討論或發送推文@getstream_io!
但是,如果由於技術限制您仍在使用 XML,我們的 UI 元件 SDK 包含一個功能齊全的範例應用程序,具有線程、反應、輸入指示器、樂觀 UI 更新和離線儲存。要運行範例應用程序,請先克隆此儲存庫:
git clone [email protected]:GetStream/stream-chat-android.git
接下來,打開Android Studio並打開新建立的專案資料夾。您需要運行stream-chat-android-ui-components-sample
應用程式。
我們還在 GetStream/Android-Samples 上維護了一個專門的儲存庫,用於存放成熟的範例應用程式。
以下是 SDK 支援的一些開箱即用的功能:
有關更多信息,請參閱 SDK 的網站。
使用R8時,會自動套用收縮和混淆規則。
如果您使用ProGuard ,則需要將以下規則從 client、ui-common 和 Previewdata 模組新增到您的應用程式。
您可能還需要為 SDK 的依賴項 Coroutines、Retrofit 和 OkHttp 應用規則。
我們最近完成了 3800 萬美元的 B 輪融資,並且我們一直在積極發展。我們的 API 被超過 10 億最終用戶使用,您將有機會在全球最強大的工程師團隊中對產品產生巨大影響。查看我們目前的空缺職位並透過 Stream 網站進行申請。
Copyright (c) 2014-2022 Stream.io Inc. All rights reserved.
Licensed under the Stream License;
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
https://github.com/GetStream/stream-chat-android/blob/main/LICENSE
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.