@wmora wmora released this Dec 19, 2016


  • Fixed a crash when building HTTP headers with non-ASCII characters



@wmora wmora released this Dec 16, 2016 · 1 commit to master since this release

Text and Image Type Message Support

  • Full support for text and image type messages
  • image type messages now support text and actions in it



  • Firebase dependency updated to 10.0.1



@wmora wmora released this Nov 7, 2016 · 2 commits to master since this release

Bug fixes

  • Added missing attributes for RTL support



@jugarrit jugarrit released this Nov 2, 2016 · 3 commits to master since this release

Bug Fixes

  • Fixed a bug where calling login directly after init would sometimes cause user properties not to update.

Language updates

Added more complete german translations (credit to https://github.com/skolarianer)



@jugarrit jugarrit released this Sep 6, 2016 · 4 commits to master since this release

Bug Fixes

  • Fixed a bug where the 'Could not connect to server' banner would flash on the screen every time the user switched to/from the background
  • Fixed a bug where apps using SDK version < 17 would crash when receiving a button
  • Fixed compilation issues for apps using proguard
  • Attempt to fix ConcurrentModificationException that sometimes occurs in SmoochService



@jugarrit jugarrit released this Sep 1, 2016 · 5 commits to master since this release

Bug Fix

Fixed a bug where Smooch would attempt to use the wrong FileProvider if another app was installed with Smooch.



@jugarrit jugarrit released this Aug 31, 2016 · 6 commits to master since this release

Bug Fix

Fixed a bug where the app would crash when trying to fetch a photo from the library.



@jugarrit jugarrit released this Aug 24, 2016 · 8 commits to master since this release

File Provider conflicts

This release addresses a problem where any app which included their own FileProvider would fail building at compile time due to the following error:
Manifest merger failed : Attribute provider#android.support.v4.content.FileProvider@authorities

In order to replace the Smooch FileProvider with your own, please do the following:

  • Add tools:replace="android:authorities" to the <provider> entry.

  • Add the following path to your android.support.FILE_PROVIDER_PATHS resource file:

<external-path name="dcim" path="DCIM"/>
  • When initializing Smooch, call settings.setFileProviderAuthorities(authoritiesString); on the settings object.
Settings settings = new Settings(appToken);
Smooch.init(this, settings);

Bug Fixes

  • Fixed a bug where the conversation would fail to update correctly when initialized via REST API
  • Fixed a crash that would occur if FCM credentials were added to Smooch without the app supporting FCM
  • Changed namespace of com.devmarvel.creditcardentry to avoid future conflicts

API Changes


  • Added new method setFileProviderAuthorities
  • Added new method getFileProviderAuthorities



@jugarrit jugarrit released this Aug 19, 2016 · 9 commits to master since this release

Bug Fix

Fixed a bug where trying to install multiple apps with Smooch 4.0.0 would result in a [INSTALL FAILED CONFLICTING PROVIDER] error.



@jugarrit jugarrit released this Aug 18, 2016 · 10 commits to master since this release

Nougat Ready!

Google made some changes to the Android SDK in Nougat that cause Smooch to crash due to file permissions issues.
This issue has been resolved, and Smooch can now safely be built to target Nougat devices.


Firebase Cloud Messaging

Since Google has encouraged migrating from GCM to FCM, we've taken the opportunity to do so for Smooch as well.

In order to migrate from GCM to FCM, follow the instructions below:

Step 1. Remove unneccessary GCM configuration and generate a new google-services.json

  1. In your project level build.gradle file, update the google-services version to the following:

    classpath 'com.google.gms:google-services:3.0.0'
  2. Remove unnecessary permissions from your AndroidManifest.xml file

        android:protectionLevel="signature" />
    <uses-permission android:name="android.permission.WAKE_LOCK" />
    <uses-permission android:name="android.permission.CAMERA" />
    <uses-permission android:name="io.smooch.shellapp.permission.C2D_MESSAGE" />
  3. Remove the GCM Receiver

        android:permission="com.google.android.c2dm.permission.SEND" >
            <action android:name="com.google.android.c2dm.intent.RECEIVE" />
            <category android:name="<your_package>" />
  4. Import your existing Google project in the Firebase console.

  5. Once imported, click on the app settings and go to 'Manage'

  6. Download the google-services.json file and replace the existing one in your Android project

Step 2. Configure push notifications in Smooch

  1. Go to https://app.smooch.io and log into your account.

  2. On the Overview page, select Android

  3. Back in the Firebase console, go to the "Cloud Messaging" menu and copy your Server API Key and Sender ID into Smooch.

That's it!
Clean and rebuild your Android project, and you should have push notifications working correctly.

Get User Properties

Properties for the current user are now exposed via getters on the Smooch User object.
For example, to retrieve the current user's first name simply call the following:



Until now, Smooch was using OkHttp version 2.4.0. This has now been updated to 3.4.1.

API changes


  1. Class User.
    • Added new method getEmail
    • Added new method getFirstName
    • Added new method getLastName
    • Added new method getSignedUpAt
    • Added new method getProperties
    • Added new method getUserId
    • Added new method getSmoochId
  2. Class GcmService.
    • Changed name to FcmService
    • Renamed method triggerSmoochGcm to triggerSmoochNotification