Skip to content

Latest commit

 

History

History
170 lines (120 loc) · 5.75 KB

README.md

File metadata and controls

170 lines (120 loc) · 5.75 KB

OpenIM Flutter Demo 💬💻

OpenIM DocsOpenIM Serveropenim-sdk-coreopen-im-sdk-flutter


A OpenIM flutter demo, only support android and ios.

Tech Stack 🛠️

Official demo use

  • Download the experience app

    Android

Dev Setup 🛠️

  1. Android Studio/VsCode
  2. Flutter version 3.22.3

Build 🚀

  1. Git clone https://github.com/OpenIMSDK/Open-IM-Flutter-Demo.git
  2. Modify the server address in the config.dart file to the server address built by yourself
  static const _host = "your-server-ip/domain";
  1. Please replace the IM SDK version
// openim_common/pubspec.yaml
// openim_live/pubspec.yaml
// pubspec.yaml

  flutter_openim_sdk: lastest
  1. Get dependencies and perform compilation operations.
 $ flutter pub get
 $ flutter run     # If you are using the iOS platform, please use a real device.

Issues 📑

1. Does it support multiple languages?

A: Support, follow the system language by default

2. Which platforms are supported?

A: The demo currently supports android and ios.

3. The debug of the android installation package can run, but the release starts with a white screen?

A: The release package of flutter is obfuscated by default. You can use the command: flutter build release --no -shrink. If this command is invalid, you can do the following

Add the following configuration to the release configuration configured in android/app/build.gradle

release {
    minifyEnabled false
    useProguard false
    shrinkResources false
}
4. What should I do if the code must be confused?

A: Add the following rules to the obfuscation rules

-keep class io.openim.**{*;}
-keep class open_im_sdk.**{*;}
-keep class open_im_sdk_callback.**{*;}
5. The android installation package cannot be installed on the emulator?

A: Because the Demo has removed some cpu architectures, if you want to run it on the emulator, please do the following:

Add in android/build.gradle configuration

ndk {
    abiFilters "armeabi-v7a",  "x86"
}
6, ios run/build release package error

A: Please set the CPU architecture to arm64, and then operate as follows

  • flutter clean
  • flutter pub get
  • cd ios
  • rm -f Podfile.lock
  • rm -rf Pods
  • pod install
  • Run Archive after connecting to the real device

ios cpu

7. What is the minimum version number for ios to run?

A: 13.0

8. Some developers encountered the following problems:

Could not build the precompiled application for the device.
Error (Xcode): Signing for "TOCropViewController-TOCropViewControllerBundle" requires a development team. Select a development team
in the Signing & Capabilities editor.

Error (Xcode): Signing for "DKImagePickerController-DKImagePickerController" requires a development team. Select a development team
in the Signing & Capabilities editor.

Error (Xcode): Signing for "DKPhotoGallery-DKPhotoGallery" requires a development team. Select a development team in the Signing &
Capabilities editor.

Add the following code to Podfile:

post_install do |installer|
    installer.pods_project.targets.each do |target|
      target.build_configurations.each do |config|
        config.build_settings['EXPANDED_CODE_SIGN_IDENTITY'] = ""
        config.build_settings['CODE_SIGNING_REQUIRED'] = "NO"
        config.build_settings['CODE_SIGNING_ALLOWED'] = "NO"      end
   end
end

Community 👥

Community Meetings 📆

We want anyone to get involved in our community and contributing code, we offer gifts and rewards, and we welcome you to join us every Thursday night.

Our conference is in the OpenIM Slack 🎯, then you can search the Open-IM-Server pipeline to join

We take notes of each biweekly meeting in GitHub discussions, Our historical meeting notes, as well as replays of the meetings are available at Google Docs 📑.

Who are using OpenIM 👀

Check out our user case studies page for a list of the project users. Don't hesitate to leave a 📝comment and share your use case.

License 📄

OpenIM is licensed under the Apache 2.0 license. See LICENSE for the full license text.