Releases: forcedotcom/ServiceSDK-Android
November 2018 Patch Release
Service Cloud Snap-Ins for Android Release Notes
This patch release (SDK version 216.0.1) applies to the following component versions:
- Knowledge version 4.2.0
- Live Agent Chat version 3.2.0
- Case Management version 4.1.3
- SOS version 4.0.3
- Common version 7.1.0
For more info about the SDK, see the Snap-Ins SDK Product Page. Check out the version release history to learn about past versions of the SDK.
Summary
Patch release that fixes a potential crash when using Case Management.
See the October 2018 Major Release for general details about the SDK.
Fixes
- Case Management: Fixed a crash that could occur when re-launching the app after the process has been killed by the OS.
Known Issues
- Case Management: Case SDK Activity instances that are restarted by the OS may not display any content until the SDK is re-initialized within the app. Workaround: Create a
CaseUIClient
duringApplication.onCreate()
to avoid this problem. - Knowledge: The order in which articles and categories are displayed on Knowledge UI may differ while the device is offline compared to when it is online.
- Knowledge: Articles and categories that have been unpublished or re-categorized in your community knowledge base may still appear in the UI while the device is offline. At this time, articles and categories are not removed from the cache.
- Knowledge: Search accuracy is limited to matching terms found within article titles and article summaries while offline. Online search makes use of the remote server's ability to view the entirety of the knowledge base for obtaining search results.
- Live Agent Chat: If you use an incorrect button ID in your chat configuration, the chat will fail and your
SesssionStateListener
will report aChatEndReason
ofNetworkError
. Workaround: If you receive aNetworkError
, verify that the button ID is correct. - Live Agent Chat: Case creation using the
ChatEntity
class does not work for Omni-Channel routing without a setup change to your org. Workaround: Raise a ticket with Salesforce.com to ensure that Omni-Channel is enabled to create a Case in your org. Note that Contact creation works fine with Omni-Channel, and Live Agent routing works correctly for both Cases and Contacts. - Case Management: If the "Edit Read Only Fields" permission is turned on in your org, a community user can see (and seemingly edit) read only fields when creating a case. Workaround: Turn off the "Edit Read Only Fields" permission so that read only fields are not shown when creating a case. See this Knowledge article for more information.
October 2018 Major Release
Service Cloud Snap-Ins for Android Release Notes
This release (216.0.0) applies to the following component versions:
- Knowledge version 4.2.0
- Live Agent Chat version 3.2.0
- Case Management version 4.1.2
- SOS version 4.0.3
- Common version 7.1.0
For more info about the SDK, see the Snap-Ins SDK Product Page. Check out the version release history to learn about past versions of the SDK.
Summary
This release includes hyperlink previews in chat sessions, hyperlinks between knowledge articles, and other enhancements to the SDK.
New Features
- SDK now targets Android Pie (Android 9, API 28).
- Chat: Chat sessions display a hyperlink preview for supported sites when an agent sends a URL. This preview can contain an image from the page, along with the title and some of the content. To learn more, see Live Agent Chat in the Snap-Ins SDK for Android. To disable hyperlink previews, set
enableHyperlinkPreview
on theChatUIConfiguration
builder tofalse
. - Added an on-screen indicator when the internet connection is lost.
- Knowledge: Added support for hyperlinks ("smart links") to navigate between Knowledge articles.
- Knowledge: Added support for images embedded in non-public articles.
- Knowledge: Added a new API to directly display the details of an article:
KnowledgeUIClient.launchArticle(Context, ArticleSummary)
. - Chat: Improved the appearance of the "agent typing" indicator.
- Chat: Added support for full-screen chat. Applications wishing to start chat sessions in full-screen mode instead of the classic minimized view can configure it using the
defaultToMinimized
method on theChatUIConfiguration
builder. - Chat: Added the option to hide the character counter on a pre-chat field using the
counterEnabled
method on thePreChatTextInputField
builder. - SOS: Removing dependency on Volley.
API Changes
- Chat: Added a
SalesforceConnectionBanner
XML style which can be styled as desired. This banner is used during a chat session if the device loses network connectivity. - Chat: Added the
enableHyperlinkPreview
method on theChatUIConfiguration
builder. - Chat: Added the
defaultToMinimized
method on theChatUIConfiguration
builder. - Chat: Added the
counterEnabled
method on thePreChatTextInputField
builder. - Knowledge: Added
KnowledgeUIClient.launchArticle(Context, ArticleSummary)
.
Fixes
- Knowledge: Fixed a problem that prevented Japanese users from searching with a single character.
- Knowledge: Improved the accuracy of search results.
- Knowledge: Fixed a rare crash that could occur while scrolling through a long list of article summaries while pressing the back button.
- Chat: Minimized view unread message count now increments when an agent joins and when the session ends.
- Cases: Fixed a problem where picklist options would display in alphabetical order.
- SOS: Improving stability on the LG G4 devices.
Known Issues
- Knowledge: The order in which articles and categories are displayed on Knowledge UI may differ while the device is offline compared to when it is online.
- Knowledge: Articles and categories that have been unpublished or re-categorized in your community knowledge base may still appear in the UI while the device is offline. At this time, articles and categories are not removed from the cache.
- Knowledge: Search accuracy is limited to matching terms found within article titles and article summaries while offline. Online search makes use of the remote server's ability to view the entirety of the knowledge base for obtaining search results.
- Live Agent Chat: If you use an incorrect button ID in your chat configuration, the chat will fail and your
SesssionStateListener
will report aChatEndReason
ofNetworkError
. Workaround: If you receive aNetworkError
, verify that the button ID is correct. - Live Agent Chat: Case creation using the
ChatEntity
class does not work for Omni-Channel routing without a setup change to your org. Workaround: Raise a ticket with Salesforce.com to ensure that Omni-Channel is enabled to create a Case in your org. Note that Contact creation works fine with Omni-Channel, and Live Agent routing works correctly for both Cases and Contacts. - Case Management: If the "Edit Read Only Fields" permission is turned on in your org, a community user can see (and seemingly edit) read only fields when creating a case. Workaround: Turn off the "Edit Read Only Fields" permission so that read only fields are not shown when creating a case. See this Knowledge article for more information.
Upgrade Instructions
Push Notification for Chat Upgrade Info
For those who use our connected-app
module to consume Apex push notifications, we have migrated from GCM to Firebase Messaging. This requires some modifications to your app. For complete information, see Push Notifications with the Snap-Ins SDK for Android. In summary, this change requires that you:
- Set up Firebase in your app: Add Firebase to Your Android Project.
- Remove any references to GCM in your build dependencies and your
AndroidManifest.xml
file. - If you experience a
NoClassDefError
which claims thatGcmReceiver
is missing, it may be included in your final merged manifest by one of your dependencies, such as the Salesforce Mobile SDK. To resolve the error, add the following remove instruction to yourAndroidManifest.xml
:<receiver android:name="com.google.android.gms.gcm.GcmReceiver" tools:node="remove"/>
. - Update your
connected-app
dependency version to7.1.0
. - Update your
PushNotificationListener.onPushNotificationReceived
method to receive aRemoteMessage
parameter instead ofBundle
.
September 2018 Patch Release
Service Cloud Snap-Ins for Android Release Notes
This patch release (SDK version 214.0.2) applies to the following component versions:
- Knowledge version 4.1.0
- Case Management version 4.1.1
- Live Agent Chat version 3.1.0
- SOS version 4.0.2
- Common version 6.1.0
For more info about the SDK, see the Snap-Ins SDK Product Page. Check out the version release history to learn about past versions of the SDK.
Summary
Patch release that fixes a few Case Management issues.
See the June 2018 Major Release for general details about the SDK.
Fixes
- Case Management: Fixed a problem where pre-chat picklist only displayed the default value.
- Case Management: Fixed an issue where the create case button didn't appear if there were no cases in the case list.
- Case Management: Previously, an empty view appeared if there were no cases in the case list. Now a friendly message appears.
- Case Management: Fixed a scenario where chatter posts from unauthenticated users prevented the case feed from showing in the app.
Known Issues
- SOS: Unable to start an SOS session when running Android 9 Pie on apps that target API level 28. Workaround: App developers should target API level 27 or earlier until we release an update.
- Knowledge: The order in which articles and categories are displayed on Knowledge UI may differ while the device is offline compared to when it is online.
- Knowledge: Articles and categories that have been unpublished or re-categorized in your community knowledge base may still appear in the UI while the device is offline. At this time, articles and categories are not removed from the cache.
- Knowledge: Search accuracy is limited to matching terms found within article titles and article summaries while offline. Online search makes use of the remote server's ability to view the entirety of the knowledge base for obtaining search results.
- Live Agent Chat: If you use an incorrect button ID in your chat configuration, the chat will fail and your
SesssionStateListener
will report aChatEndReason
ofNetworkError
. Workaround: If you receive aNetworkError
, verify that the button ID is correct. - Live Agent Chat: Case creation via pre-chat entity mapping does not work when using Omni-Channel routing. Contact creation still works correctly. Workaround: Use Live Agent routing instead, or avoid creating cases with pre-chat fields. Note that Live Agent routing is currently only available in Salesforce Classic.
- Case Management: If the "Edit Read Only Fields" permission is turned on in your org, a community user can see (and seemingly edit) read only fields when creating a case. Workaround: Turn off the "Edit Read Only Fields" permission so that read only fields are not shown when creating a case. See this Knowledge article for more information.
June 2018 Release 2 (Patch Release)
Service Cloud Snap-Ins for Android Release Notes
This patch release (214.0.1) applies to the following component versions:
- Knowledge version 4.1.0
- Case Management version 4.1.0
- Live Agent Chat version 3.1.0
- SOS version 4.0.2
- Common version 6.1.0
For more info about the SDK, see the Snap-Ins SDK Product Page. Check out the version release history to learn about past versions of the SDK.
Summary
Patch release that fixes a potential crash during an SOS session.
See the June 2018 Major Release for general details about the SDK.
Fixes
- SOS: Fixed a logging-related crash that may occur when starting an SOS session.
Known Issues
- Knowledge: The order in which articles and categories are displayed on Knowledge UI may differ while the device is offline compared to when it is online.
- Knowledge: Articles and categories that have been unpublished or re-categorized in your community knowledge base may still appear in the UI while the device is offline. At this time, articles and categories are not removed from the cache.
- Knowledge: Search accuracy is limited to matching terms found within article titles and article summaries while offline. Online search makes use of the remote server's ability to view the entirety of the knowledge base for obtaining search results.
- Live Agent Chat: If you use an incorrect button ID in your chat configuration, the chat will fail and your
SesssionStateListener
will report aChatEndReason
ofNetworkError
. Workaround: If you receive aNetworkError
, verify that the button ID is correct. - Live Agent Chat: Case creation via pre-chat entity mapping does not work when using Omni-Channel routing. Contact creation still works correctly. Workaround: Use Live Agent routing instead, or avoid creating cases with pre-chat fields. Note that Live Agent routing is currently only available in Salesforce Classic.
- Case Management: If the "Edit Read Only Fields" permission is turned on in your org, a community user can see (and seemingly edit) read only fields when creating a case. Workaround: Turn off the "Edit Read Only Fields" permission so that read only fields are not shown when creating a case. See this Knowledge article for more information.
June 2018 Release
Service Cloud Snap-Ins for Android Release Notes
This release (214.0.0) applies to the following component versions:
- Knowledge version 4.1.0
- Case Management version 4.1.0
- Live Agent Chat version 3.1.0
- SOS version 4.0.1
- Common version 6.1.0
For more info about the SDK, see the Snap-Ins SDK Product Page. Check out the version release history to learn about past versions of the SDK.
Summary
This release supports the use Einstein bots to complement the chat experience with a smart, automated system that saves your agents time and keeps your customers happy. To learn more, see Use Einstein Bots with Live Agent Chat. We've also made some general enhancements to the SDK.
New Features
- Live Agent Chat: Added Einstein bot support in a chat session. Chat bot context menus, buttons, and persistent footer menus are all supported. To learn more, see Use Einstein Bots with Live Agent Chat.
- Live Agent Chat: Added support for displaying a custom chat bot avatar and a custom chat bot banner. To learn more, see Use Einstein Bots with Live Agent Chat.
- Live Agent Chat: Improved the user experience for chat agent transfers.
- Knowledge: Updated caching strategy to improve performance when articles have been previously cached.
- Case Management: Updated caching strategy to improve performance when content has been previously cached.
- SOS: Updated to version 2.14.0 of OpenTok.
API Changes
- Live Agent Chat: Added
AgentInformation.isChatBot()
to identify chat bot agents. - Live Agent Chat: Added chat bot footer menu support in the core API. To learn more, see Build Your Own UI with the Live Agent Core API. Specifically, the following APIs were added:
- Live Agent Chat: Added chat bot choice button support in the core API. To learn more, see Build Your Own UI with the Live Agent Core API. Specifically, the following APIs were added:
- Live Agent Chat: Added
ChatUIConfiguration.Builder.chatBotAvatar()
, which accepts aDrawable
resource to be used as a chat bot avatar. To learn more, see Use Einstein Bots with Live Agent Chat. - Live Agent Chat: Added
ChatUIConfiguration.Builder.enableChatBotBanner()
, which accepts aLayout
resource to be used as a chat bot banner. To learn more, see Use Einstein Bots with Live Agent Chat. - Live Agent Chat: Deprecated pre-chat classes in favor of a simplified API that decouples the pre-chat user experience from the function of passing user data to the agent when a session starts. To learn more, see Show Pre-Chat Fields to User
and Find or Create Salesforce Records from a Chat Session. Specifically:PreChatField
is deprecated in favor ofChatUserData
for programmatically sending data to your Salesforce org, andPreChatTextInputField
orPreChatPickListInputField
for building a pre-chat form for your users.PreChatEntity
is deprecated in favor ofChatEntity
.PreChatEntityField
is deprecated in favor ofChatEntityField
.ChatConfiguration.Builder.preChatFields()
is deprecated in favor ofChatConfiguration.Builder.chatUserData()
.ChatConfiguration.Builder.preChatEntities()
is deprecated in favor ofChatConfiguration.Builder.chatEntities()
.ChatConfiguration.getPreChatFields()
is deprecated in favor ofChatConfiguration.getChatUserData()
, and the former returns an empty list if any of the fields specified are not of the deprecatedPreChatField
type, in order to preserve stability.ChatConfiguration.getPreChatEntities()
is deprecated in favor ofChatConfiguration.getChatEntities()
, and the former returns an empty list if any of the entities specified are not of the deprecatedPreChatEntity
type, in order to preserve stability.
- Removed unused class
PreChatConfiguration
.
Fixes
- Knowledge: Fixed broken anchor tags within Knowledge article view.
Known Issues
- Knowledge: The order in which articles and categories are displayed on Knowledge UI may differ while the device is offline compared to when it is online.
- Knowledge: Articles and categories that have been unpublished or re-categorized in your community knowledge base may still appear in the UI while the device is offline. At this time, articles and categories are not removed from the cache.
- Knowledge: Search accuracy is limited to matching terms found within article titles and article summaries while offline. Online search makes use of the remote server's ability to view the entirety of the knowledge base for obtaining search results.
- Live Agent Chat: Case creation via pre-chat entity mapping does not work when using Omni-Channel routing. Contact creation still works correctly. Workaround: Use Live Agent routing instead, or avoid creating cases with pre-chat fields. Note that Live Agent routing is currently only available in Salesforce Classic.
- Case Management: If the "Edit Read Only Fields" permission is turned on in your org, a community user can see (and seemingly edit) read only fields when creating a case. Workaround: Turn off the "Edit Read Only Fields" permission so that read only fields are not shown when creating a case. See this Knowledge article for more information.
Upgrade Tips
Pre-Chat Changes
- If you are using
PreChatField
and related classes to pass user data through the chat session, migrate to usingChatUserData
,ChatEntity
andChatEntityField
instead. Ensure that you
are providing these objects toChatConfiguration.Builder.chatUserData()
andChatConfiguration.Builder.chatEntities()
. To learn more, see [Find or Create Salesforce Records fr...
February 2018 Release
Service Cloud Snap-Ins for Android Release Notes
NOTE: The certificate for the server used for our original Snap-ins SDK repository just expired. We've changed the location of our repository. Workaround: Replace the salesforcesos.com
maven repository in your gradle scripts to
https://s3.amazonaws.com/salesforcesos.com/android/maven/release
This release (212.0.0) applies to the following component versions:
- Knowledge version 4.0.0
- Case Management version 4.0.0
- Live Agent Chat version 3.0.0
- SOS version 4.0.0
- Common version 6.0.0
For more info about the SDK, see the Snap-Ins SDK Product Page.
See the version release history to learn about past versions of the SDK.
New Features
- The Snap-ins SDK no longer requires the Salesforce Mobile SDK as a dependency. This reduces the footprint of the Snap-ins SDK in your app.
- Updated the authentication behavior so that the Salesforce Mobile SDK is optional when authenticating. See Authentication with the Snap-Ins SDK for Android.
- Minimum supported API version number is now 21 (Lollipop).
- Case Management: Updated the push notification behavior so that it no longer requires the Salesforce Mobile SDK. See Push Notifications with the Snap-Ins SDK for Android.
- Knowledge: Clearing or deleting the cache using
KnowledgeCore
now clears or deletes theOfflineResourceCache
in addition to the database. - Live Agent Chat: Added support for agent transfer. See Transfer Chats to an Agent.
- Live Agent Chat: Added new analytics for file transfers (requested, initiated, completed, failed, cancelled). See Analytics with the Snap-Ins SDK for Android.
- Live Agent Chat: Added a new Chat UI configuration option for hiding a customer's queue position while waiting for an agent:
ChatUIConfiguration.Builder.hideQueuePosition(boolean)
. - SOS: Updated OpenTok to version 2.12.1.
API Changes
- Added
AuthenticatedUser
andAuthTokenProvider
for authentication. See Authentication with the Snap-Ins SDK for Android. - Added
PushNotificationListener
to handle push notifications from your org. See Push Notifications with the Snap-Ins SDK for Android. - Knowledge: Removed
KnowledgeClient.cleanup()
andKnowledgeClient.addUserLogoutListener()
. - Knowledge: Replaced
KnowledgeConfiguration.withUserAccount
withKnowledgeConfiguration.withAuthConfig
. We now have a different authentication mechanism. See Authentication with the Snap-Ins SDK for Android. - Knowledge: Replaced
KnowledgeCore.deleteCacheForUser(Context, UserAccount)
withKnowledgeCore.deleteCacheForUser(Context, AuthenticatedUser)
. - Knowledge: Replaced
KnowledgeCore.clearCacheForUser(Context, UserAccount)
withKnowledgeCore.clearCacheForUser(Context, AuthenticatedUser)
. - Knowledge: Made changes to
OfflineResourceCache
.- Added
OfflineResourceConfig.builder()
, which returns aBuilder
instance for customizing the cache. - Added
OfflineResourceConfig.defaults()
, which returns anOfflineResourceCache
configured with default values. - Added
OfflineResourceCache.clearCache(Context, AuthenticatedUser)
for clearing an existing cache. - Added
OfflineResourceCache.deleteCache(Context, AuthenticatedUser)
for deleting an existing cache. - Added
OfflineResourceCache.deleteCache(Context)
for deleting existing caches for all users. - Removed
OfflineResourceConfig.withPath(Context, String)
. Cache files are now created automatically. - Removed
OfflineResourceConfig.fromContext(Context)
.
- Added
- Case Management: Changes to case-updated notifications, as the Case SDK no longer handles push notifications directly or displays notifications. See Push Notifications with the Snap-Ins SDK for Android.
- Added
notifyCaseUpdated(String)
toCaseUIClient
, which accepts a Case ID as a string. This enables an application to handle push notifications with their own implementation using theconnected-app
module. - Removed
CaseUIConfiguration.create(CaseConfiguration, int)
for specifying notification importance. CaseUI no longer creates Android notifications. - Removed
enablePush(int)
,isPushEnabled()
, andgetNotificationIcon()
fromCaseConfiguration
. - Removed
CaseClientCallbacks.handleBackgroundNotification(Bundle)
. - Removed
CaseClientCallbacks.handleForegroundNotification(Bundle)
.
- Added
- Case Management: Renamed
CreateCaseQuickActionRequest.getResource()
toCreateCaseQuickActionRequest.getQuickActionName()
. - Case Management: Replaced
CaseConfiguration.Builder.withUserAccount
withCaseConfiguration.Builder.withAuthConfig
. We now have a different authentication mechanism. See Authentication with the Snap-Ins SDK for Android. - Case Management: Removed
CaseUIClient.isAuthenticated()
. - SOS: Deprecated
SosConfiguration.builder()
. UseSosConfiguration.Builder()
instead.
Fixes
- Live Agent Chat: Fixed file transfer for remote images that are not saved on the device.
- Live Agent Chat: Improved TalkBack support on the minimized view during an active chat session.
- Live Agent Chat: Fixed an unresponsive "End Session" button when the session ends while the dialog is present on the screen.
- Live Agent Chat: Fixed a bug that prevented a session from ending promptly by the user if network connection is lost.
- SOS: Fixed a crash on some Lollipop devices that occurred during a screen orientation change from the onboarding view.
- Case Management: Fixed an issue where the post button remained enabled after posting a message to the case feed.
Known Issues
- The certificate for the server used for our Snap-ins SDK repository just expired. We've changed the location of our repository. Workaround: Replace the
salesforcesos.com
maven repository in your gradle scripts to:https://s3.amazonaws.com/salesforcesos.com/android/maven/release
- Live Agent Chat: Case creation via pre-chat entity mapping does not work when using Omni-Channel routing. Contact creation still works correctly. Workaround: Use Live Agent routing instead, or avoid creating cases with pre-chat fields. Note that Live Agent routing is currently only available in Salesforce Classic.
- Case Management: If the "Edit Read Only Fields" permission is turned on in your org, a community user can see (and seemingly edit) read only fields when creating a case. Workaround: Turn off the "Edit Read Only Fields" permission so that read only fields are not shown when creating a case. See this Knowledge article for more information.
Upgrade Tips
Authentication
Authentication has changed since the last version. It now uses AuthenticatedUser
and AuthTokenProvider
. Also...
December 2017 Release
Service Cloud Snap-Ins for Android Release Notes
This release (210.1.0) applies to the following component versions:
- Knowledge version 3.0.0
- Case Management version 3.0.0
- Live Agent Chat version 2.0.1
- SOS version 3.1.0
For more info about the SDK, see the Snap-Ins SDK Product Page.
See the version release history to learn about past versions of the SDK.
Summary
Patch release that addresses a few Chat and SOS bugs.
See the October 2017 release for general details about the SDK.
Fixes
- Live Agent Chat: Fixed problem where agent availability would not return a result in the event of a Live Agent server switch.
- Live Agent Chat: Fixed a problem with missing translations for strings present in
chat-ui
. Previously, only English text existed for the following strings:chat_dialog_select_image_source_choose
chat_session_ended_by_agent
chat_feed_content_description
chat_file_transfer_requested
chat_file_transfer_canceled
chat_file_transfer_failed
chat_image_selection_failed
chat_permission_not_granted
pre_chat_toolbar_title
pre_chat_button_start
pre_chat_field_list_description
pre_chat_banner_text
salesforce_message_input_hint
- SOS: Minor adjustment to the SOS session timeout value to reduce the possibility of a dropped call.
Known Issues
- KitKat (Android 4.4) devices crash when using the Snap-ins SDK and Google Play Services Security Provider. Workaround: Avoid invoking
ProviderInstall
on KitKat devices by checking the current build version in your code. - Live Agent Chat: Case creation via pre-chat entity mapping does not work when using Omni-Channel routing. Contact creation still works correctly. Workaround: Use Live Agent routing instead, or avoid creating cases with pre-chat fields. Note that Live Agent routing is currently only available in Salesforce Classic.
- Knowledge: When caching content for offline use, the log may show "Error inserting using {redacted sql} into {TableName}". There is no impact on the application behavior beyond this log statement.
October 2017 Release
Service Cloud Snap-ins for Android Release Notes
This release (210.0.0) applies to the following component versions:
- Knowledge version 3.0.0
- Case Management version 3.0.0
- Live Agent Chat version 2.0.0
- SOS version 3.0.0
For more info about the SDK, see the Snap-ins SDK Product Page.
See the version release history to learn about past versions of the SDK.
New Features
- Supports Android API level 26 (Android O).
- Added support for Android notification channels.
- Uses Salesforce Mobile SDK version 5.3.
- Live Agent Chat: Supports pre-chat entity mapping. Now you can map fields in your pre-chat form in your app to fields in a record in your org. See Show Pre-Chat Fields to User.
- Live Agent Chat: Added sensitive data rules for Chat. You can specify a regular expression in your org that detects when sensitive data is typed by the user (such as a credit card number or social security number) and then prevent that data from getting sent to the agent. See Block Sensitive Data in a Chat Session.
- Live Agent Chat: Chat sessions now attempt to reconnect to the server in the event of a connection interruption.
- Knowledge: Added the ability to embed a knowledge article directly into your own layout using
ArticleWebView
. See Show Knowledge Articles. - Case Management: Added the ability to specify push notification importance when configuring the Case UI by using
CaseUIConfiguration.create(caseConfiguration, IMPORTANCE)
. - SOS: Updated OpenTok to 2.12.0
API Changes
- Live Agent Chat: The
PreChat
class, which was used to fetch fields, has been removed. UsePreChatField
andPreChatEntity
instead. - Live Agent Chat: Added a
PreChatEntity
object and aPreChatField
object. - Live Agent Chat: Added a
preChatEntities
property toChatConfiguration.Builder
. - Live Agent Chat: The
customDetail
property in theChatConfiguration.Builder
class has been removed. Use thepreChatFields
property instead. - Live Agent Chat: Added a new model,
ChatSentMessageReceipt
, which contains information about any Sensitive Data Rule violations found in an outgoing chat message. - Live Agent Chat: Changed the method signature of
ChatClient.sendChatMessage(String)
to returnAsync<ChatSentMessageReceipt>
instead ofAsync<Void>
. - Live Agent Chat:
ChatClient.sendChatMessage(String)
now provides aSessionDoesNotExistException
to yourErrorHandler
instead of aRuntimeException
when it is invoked without an active session. - Live Agent Chat:
ChatClient.sendChatMessage(String)
provides anEmptyChatMessageException
to yourErrorHandler
if the provided string is empty, or the string has been scrubbed clean of offending text after processing with Sensitive Data Rules. If the latter is true, the exception contains a list of related Sensitive Data Rules that were triggered to produce an empty string. - Knowledge: Added
ArticleWebView
API so that you can launch articles to without navigating the Knowledge tree. - Case Management: Added the ability to specify push notification importance when configuring the Case UI. Default value is
IMPORTANCE_HIGH
. UseCaseUIConfiguration.create(caseConfiguration, IMPORTANCE_LOW)
to configure the importance. - Case Management: Changed the default notification priority to be
PRIORITY_HIGH
for API < 26. Priority changes to match the IMPORTANCE provided toCaseUIConfiguration.create(caseConfiguration, IMPORTANCE)
.
Fixes
- Live Agent Chat: “Chat with Agent” button now has background set to 30% opacity when required fields aren't filled out, and button cannot be pressed.
- Live Agent Chat: Fixed a bug where the title text color on the pre-chat UI was not being set to
salesforce_toolbar_inverted
. - Fixed a bug where the
NetworkError
end reason was being reported twice. End reasons will only be reported toonSessionEnded(ChatEndReason)
during theEnding
state. - Knowledge: Fixed a bug where long data category titles would overlap with the expand/collapse chevron.
- Knowledge: Fixed bug causing offline caching to break when using the core API to fetch articles directly for known IDs.
- SOS: SOS Halo UI now shows a play icon when it is paused, instead of a pause icon regardless of state.
- SOS: Updated the “back to app” bar and information icon animations in the two-way video mode.
- SOS: Fixed a crash that occurred when the
SosConfigurationBuilder
was configured withconnectingUi(false)
. - SOS: Fixed a crash when the name of the agent did not arrive before the SOS session connects.
- SOS: Fixed an existing issue where the device screen appears zoomed on the agent console during screen sharing if a live agent org migration occurs.
- SOS: Fixed a bug where the mute and two-way video controls on the SOS Halo UI disappear when the agent pauses an SOS session.
- SOS: Fixed a bug where the SOS Halo UI would not accept user actions after rotating the device.
- Case Management: Fixed crash on startup caused when offline cases database cannot be read.
Known Issues
- KitKat (Android 4.4) devices crash when using the Snap-ins SDK and Google Play Services Security Provider. Workaround: Avoid invoking
ProviderInstall
on KitKat devices by checking the current build version in your code. - Live Agent Chat: Case creation via pre-chat entity mapping does not work when using Omni-Channel routing. Contact creation still works correctly. Workaround: Use Live Agent routing instead, or avoid creating cases with pre-chat fields. Note that Live Agent routing is currently only available in Salesforce Classic.
- Live Agent Chat: There are missing translations for strings present in
chat-ui
. Currently, only English text exists for the following strings:chat_dialog_select_image_source_choose
chat_session_ended_by_agent
chat_feed_content_description
chat_file_transfer_requested
chat_file_transfer_canceled
chat_file_transfer_failed
chat_image_selection_failed
chat_permission_not_granted
pre_chat_toolbar_title
pre_chat_button_start
pre_chat_field_list_description
pre_chat_banner_text
salesforce_message_input_hint
- Knowledge: When caching content for offline use, the log may show "Error inserting using {redacted sql} into {TableName}". There is no impact on the application behavior beyond this log statement.
September 2017 Release 2
Service Cloud Snap-ins for Android Release Notes
This release (208.4.0) applies to the following component versions:
- Knowledge version 2.1.1
- Case Management version 2.0.0
- Live Agent Chat version 1.1.1
- SOS version 2.2.0
For more info about the SDK, see the Snap-ins SDK Product Page.
Summary
Patch release that fixes a bug related to Live Agent Chat file transfer.
See the June 2017 release for general details about the SDK.
Fixes
- Live Agent Chat: Fixed a crash that occurred during file transfer when selecting photos from certain applications, such as Samsung's Gallery app.
Known Issues
- Knowledge and Case Management: The app crashes if it receives any GCM push notification and you haven’t initialized the Salesforce Mobile SDK (using
SmartStoreSDKManager.initNative
). Workaround: Explicitly initialize the Salesforce Mobile SDK in your app’s initialization code. - Case Management: Read-only fields in Case Action layouts display as editable fields when creating a new case using the SDK’s Case Publisher. Workaround: Ensure that there are no read-only fields in the Case Action layout you use to create cases with the SDK.
- Live Agent Chat: If the user exits the app during a full screen chat session and then the agent ends the session, the app crashes when it's relaunched if the OS has to reload the app into memory.
- Live Agent Chat: If the user loses the connection during a chat session, their message appears to get sent to the agent even when there's a network failure. Workaround: Detect connectivity issues explicitly and prompt user when they occur.
- SOS crashes when the app uses
SosConfigurationBuilder.builder().connectingUi(false)
and the session ends before the agent connects. This affects all versions of SOS. - SOS: If agent availability returns a status of Unknown, it means that we're not able to determine if an agent is available before attempting a session. Typically, SOS can still function normally in this case; we recommend that you allow customers to attempt SOS sessions even with an Unknown status. This status could be due to a network failure or that the pod server URL has changed. Check your org setup to see if the pod URL has changed. If it has, then update your app accordingly.
- SOS: Android's TalkBack accessibility feature is not supported during screen sharing.
September 2017 Release
Service Cloud Snap-ins for Android Release Notes
This release (208.3.0) applies to the following component versions:
- Knowledge version 2.1.1
- Case Management version 2.0.0
- Live Agent Chat version 1.1.0
- SOS version 2.2.0
For more info about the SDK, see the Snap-ins SDK Product Page.
Summary
Patch release that fixes a bug related to access to the SmartStore database.
See the June 2017 release for general details about the SDK.
Fixes
- Knowledge: Fixed a bug where an error initializing the SmartStore database would delete all SmartStores. This may have impacted customers using SmartStore for their own apps.
Known Issues
- Knowledge and Case Management: The app crashes if it receives any GCM push notification and you haven’t initialized the Salesforce Mobile SDK (using
SmartStoreSDKManager.initNative
). Workaround: Explicitly initialize the Salesforce Mobile SDK in your app’s initialization code. - Case Management: Read-only fields in Case Action layouts display as editable fields when creating a new case using the SDK’s Case Publisher. Workaround: Ensure that there are no read-only fields in the Case Action layout you use to create cases with the SDK.
- Live Agent Chat: If the user exits the app during a full screen chat session and then the agent ends the session, the app crashes when it's relaunched if the OS has to reload the app into memory.
- Live Agent Chat: If the user loses the connection during a chat session, their message appears to get sent to the agent even when there's a network failure. Workaround: Detect connectivity issues explicitly and prompt user when they occur.
- SOS crashes when the app uses
SosConfigurationBuilder.builder().connectingUi(false)
and the session ends before the agent connects. This affects all versions of SOS. - SOS: Android's TalkBack accessibility feature is not supported during screen sharing.