Installation
Intercom for iOS supports iOS 8, iOS 9 and iOS 10.
CocoaPods
Add the Intercom pod into your Podfile and run pod install
.
target :YourTargetName do
pod 'Intercom'
end
Carthage
- Add
github "intercom/intercom-ios"
to your Cartfile. - Run carthage update.
- Go to your Xcode project's "General" settings. Drag
Intercom.framework
fromCarthage/Build/iOS
to the "Embedded Binaries" section. Make sure “Copy items if needed” is selected and click Finish.
Manual Installation
-
Download Intercom for iOS and extract the zip.
-
Go to your Xcode project's "General" settings. Drag
Intercom.framework
to the "Embedded Binaries" section. Make sure "Copy items if needed" is selected and click Finish. -
Create a new "Run Script Phase" in your app’s target’s "Build Phases" and paste the following snippet in the script text field:
bash "${BUILT_PRODUCTS_DIR}/${FRAMEWORKS_FOLDER_PATH}/Intercom.framework/strip-frameworks.sh"
This step is required to work around an App Store submission bug when archiving universal binaries.
Update Info.plist
When installing Intercom, you'll need to make sure that you have a NSPhotoLibraryUsageDescription
entry in your Info.plist
.
This is required by Apple for all apps that access the photo library. It is necessary when installing Intercom due to the image upload functionality. Users will be prompted for the photo library permission only when they tap the image upload button.
Example app
There is an example app provided here for both Objective-C and Swift.
Setup and Configuration
- Our installation guide contains full setup and initialisation instructions.
- Read "Configuring Intercom for iOS".
- Read our guide on Push Notifications.
- Please contact us on Intercom with any questions you may have, we're only a message away!
Cordova/Phonegap Support
Looking for Cordova/Phonegap support? We have a Cordova Plugin for Intercom 🎉
Upgrading to v3.0
Upgrading to the latest version of the iOS SDK is easy! 😉 Checkout out our upgrade guide for more info.
What about events, push notifications, company and user data?
Intercom for iOS has support for all these things. For full details please read our documentation.
Xcode Documentation
This documentation provides integrated help in Xcode for all public APIs in Intercom for iOS. Download the docset from the latest release and Copy the content into ~/Library/Developer/Shared/Documentation/DocSets
.
Migrating from legacy version of the SDK
To upgrade from SDK versions older then version 2.2.4 there are some method changes that you may want to be aware of. See installation instructions at the top of this page for more information on how to install the new version of the SDK.
iOS Method Name Changes | ||
---|---|---|
Old Name | Type | New Name |
From SDK version 2.0.x | ||
beginSessionForUserWithUserId | Name change. Dropped block parameter. | registerUserWithUserId |
beginSessionForUserWithEmail | Name change. Dropped block parameter. | registerUserWithEmail |
beginSessionForAnonymousUserWithCompletion | Name change. Dropped block parameter. | registerUnidentifiedUser |
updateUserWithAttributes | Dropped block parameter. | n/a |
logEventWithName | Dropped block parameter. | n/a |
From SDK version 1.x.x | ||
beginSessionForUserWithUserId | Name change. Dropped block parameter. | registerUserWithUserId |
beginSessionForUserWithEmail | Name change. Dropped block parameter. | registerUserWithEmail |
updateAttributes | Name change. Dropped block parameter. | updateUserWithAttributes |