Instant Messaging
Android
Getting Started
Introduction
Overview
Features
Limits
Features
Account Integration and Login
Group Chat
Chat Room
Chat Room Tags
Multi-device Login
Statistics Monitoring
Integration
Interface Overview
Integrate and Initialize SDK
Login
Message Sending
Message Receiving
Recent Chats
Server Sessions
User Profile
User Relationship
Online Status Subscription
System Notification
Push and Message Alert
Team
Superteam
Chat Room
Moderation
Chat Extension
Miscellaneous Features
Best Practice
Traffic Control in Chat Rooms
API Reference
Android API Reference
Android Status Codes

macOS Development Integration

Update time: 2021/12/06 15:54:40

Overview

macOS NIM SDK and iOS NIM SDK are developed with the same code. It shares the identical feature with iOS NIM SDK. Although they are compatible with macOS 10.10, they only support x86_64 framework, instead of i386.

Prerequisites

macOS NIMSDK currently provides a manual integration method only.

  • Download related version of macOS NIM SDK, get NIMSDK.framework and import the project as required;

  • Import libraries dependencies in Libs;

  • Add other macOS NIM SDK dependent libraries;

    • CoreServices.framework
    • AVFoundation.framework
    • libc++.tbd
    • libsqlite3.0.tbd
    • libz.tbd
  • Add the option -ObjC under Build Settings -> Other Linker Flags.

  • Execute import <NIMSDK/NIMSDK.h> at the place where macOS NIM SDK is required

Using the SDK

As mentioned above, macOS NIM SDK has almost identical features with iOS NIM SDK. For information on specific features and APIs, see the corresponding documents.

In some cases, macOS NIM SDK and iOS NIM SDK are different, such as push notifications and some class names.

Push notifications

Push notifications are critical in iOS NIM SDK integration. CommsEase macOS NIM SDK provides the full-featured long connection to push notifications. Therefore, we do not provide push notifications on the macOS platform.

Class name

macOS NIM SDK and iOS NIM SDK share the same code. Therefore, most of codes are cross-platform. However, to integrate the specific SDK, developers need to flexibly deal with the difference. To ensure the compatibility of iOS NIM SDK, we focus on two class names by using @compatibility_alias. For more information, see the header file NIMPlatform.h`.

Was this topic helpful?
Yes
No
  • Overview
  • Prerequisites
  • Using the SDK
  • Push notifications
  • Class name