Upgrading from 3.x to 4.x
Important
Helpshift’s Legacy SDKs (SDK Version <=7.x.x) reached their end of life on 31 Dec 2022, and end of support on 31 March 2023. Please upgrade to the Latest SDKif you haven't already.
Upgrading from 3.x to 4.x
The Helpshift SDK v4.x is a major update and we have moved all Helpshift support APIs to a new namespace. If you have questions or feedback, please Contact Us
Upgrading
When migrating from the Helpshift SDK 3.12.0 or older, you will need to take care of the following changes -
Changes in Helpshift Delegate
com.helpshift.HelpshiftDelegate
has been renamed tocom.helpshift.support.Delegate
.helpshiftSessionBegan()
method of the delegate is renamed tosessionBegan()
helpshiftSessionEnded()
method of the delegate is renamed tosessionEnded()
Changes in
HSAlertToRateAppListener
HSAlertToRateAppListener
has been renamed toAlertToRateAppListener
Helpshift.HS_RATE_ALERT
enum has been replaced with integer. Now you have to use the final integers from theRateAlert
class.
For example,
AlertToRateAppListener actionListener = new AlertToRateAppListener() {
@Override
public void onAction(int action) {
String msg = "";
switch (action) {
case Support.RateAlert.CLOSE:
msg = "CLOSE";
break;
case Support.RateAlert.FEEDBACK:
msg = "FEEDBACK";
break;
case Support.RateAlert.SUCCESS:
msg = "SUCCESS";
break;
case Support.RateAlert.FAIL:
msg = "FAIL";
break;
}
Toast.makeText(getApplicationContext(), msg, Toast.LENGTH_SHORT).show();
}
}Now the
ENABLE_CONTACT_US
enum has been replaced with integer. Now you have to use the final integer from theEnableContactUs
class.For example,
HashMap config = new HashMap ();
config.put("enableContactUs", Helpshift.EnableContactUs.ALWAYS);
Helpshift.showFAQs(MyActivity.this, config);Changes in
HSCallable
HSCallable
has been renamed toCallable
For example,
Support.setMetadataCallback(new Callable() {
public HashMap call() {
k.put("userType", preferences.getString("customMetaId_userType", ""));
k.put("timestamp", ts.format(new Date()));
String[] tags = preferences.getString("customTags", "").split(",");
k.put(Support.TagsKey, tags);
return k;
}
List of API changes
3.x API | New API |
---|---|
Helpshift.install(...); | Core.init(Support.getInstance()); Core.install(...) |
Helpshift.showFAQs(...); | Support.showFAQs(...); |
Helpshift.showSingleFAQ(...); | Support.showSingleFAQ(...); |
Helpshift.showFAQSection(...); | Support.showFAQSection(...); |
Helpshift.showConversation(...); | Support.showConversation(...); |
Helpshift.setNameAndEmail(...); | Core.setNameAndEmail(...); |
Helpshift.registerDeviceToken(...); | Core.registerDeviceToken(...); |
Helpshift.handlePush(...); | Core.handlePush(...); |
Helpshift.login(...); | Core.login(...); |
Helpshift.logout(...); | Core.logout(); |
Helpshift.clearBreadCrumbs(); | Support.clearBreadCrumbs(); |
Helpshift.getNotificationCount(...); | Support.getNotificationCount(...); |
Helpshift.leaveBreadCrumb(); | Support.leaveBreadCrumb(); |
Helpshift.setDelegate(...); | Support.setDelegate(...); |
Helpshift.setMetadataCallback(...); | Support.setMetadataCallback(...); |
Helpshift.setSDKLanguage(...); | Support.setSDKLanguage(...); |
Helpshift.setUserIdentifier(...); | Support.setUserIdentifier(...); |
Helpshift.showAlertToRateApp(...); | Support.showAlertToRateApp(...); |
Helpshift.HSTagsKey | Support.TagsKey |
Helpshift.HSCustomMetadataKey | Support.CustomMetadataKey |