From 74b0a9c70c87fd4aa9b0922e8f354d56bec9fc02 Mon Sep 17 00:00:00 2001 From: Wilber Hinojosa Date: Thu, 14 Sep 2023 21:31:15 -0400 Subject: [PATCH] Upgrade to latest zendesk chat and messaging versions --- README.md | 13 +++++ android/build.gradle | 49 ++++++++++--------- .../zendesk/RNZendeskChatModule.java | 15 +++--- package.json | 4 +- 4 files changed, 47 insertions(+), 34 deletions(-) diff --git a/README.md b/README.md index 4a5c102..f6b2004 100644 --- a/README.md +++ b/README.md @@ -184,6 +184,19 @@ compile project(':react-native-zendesk-chat') // Call this once in your Activity's bootup lifecycle Chat.INSTANCE.init(mReactContext, key, appId); ``` +## Troubleshoting +In Android, syncing gradle files fails to resolve zendesk libraries. +So, it requires to add the following in `android/build.gradle` file of your project: + +```gradle +allprojects { + repositories { + maven { + url 'https://zendesk.jfrog.io/zendesk/repo' + } + } +} +``` ## Contributing diff --git a/android/build.gradle b/android/build.gradle index 6ef11e2..3cefddc 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -1,42 +1,43 @@ apply plugin: 'com.android.library' def safeExtGet(prop, fallback) { - rootProject.ext.has(prop) ? rootProject.ext.get(prop) : fallback + rootProject.ext.has(prop) ? rootProject.ext.get(prop) : fallback } +def zendeskChatVersion = '3.4.0' +def zendeskMessagingVersion = '5.4.0' buildscript { - repositories { - jcenter() - google() - } - - dependencies { - classpath 'com.android.tools.build:gradle:3.2.1' - } + repositories { + mavenCentral() + google() + } + dependencies { + classpath 'com.android.tools.build:gradle:7.2.2' + } } -android { - compileSdkVersion safeExtGet('compileSdkVersion', 28) - buildToolsVersion safeExtGet('buildToolsVersion', "28.0.3") +android { + compileSdkVersion safeExtGet('compileSdkVersion', 33) + buildToolsVersion safeExtGet('buildToolsVersion', '33.0.0') defaultConfig { - minSdkVersion safeExtGet('minSdkVersion', 16) - targetSdkVersion safeExtGet('targetSdkVersion', 28) - versionCode 1 - versionName "1.0" + minSdkVersion safeExtGet('minSdkVersion', 16) + targetSdkVersion safeExtGet('targetSdkVersion', 28) + versionCode 1 + versionName "1.0" } } repositories { - mavenCentral() - jcenter() - google() - maven { url 'https://zendesk.jfrog.io/zendesk/repo' } + mavenCentral() + google() + maven { + url 'https://zendesk.jfrog.io/zendesk/repo' + } } dependencies { - implementation "com.facebook.react:react-native:+" - - api group: 'com.zendesk', name: 'chat', version: safeExtGet('zendeskChatVersion', '3.1.0') - api group: 'com.zendesk', name: 'messaging', version: safeExtGet('zendeskMessagingVersion', '5.1.0') + implementation "com.facebook.react:react-native:+" + implementation group: 'com.zendesk', name: 'chat', version: zendeskChatVersion + implementation group: 'com.zendesk', name: 'messaging', version: zendeskMessagingVersion } diff --git a/android/src/main/java/com/taskrabbit/zendesk/RNZendeskChatModule.java b/android/src/main/java/com/taskrabbit/zendesk/RNZendeskChatModule.java index 143efb9..d53dae8 100644 --- a/android/src/main/java/com/taskrabbit/zendesk/RNZendeskChatModule.java +++ b/android/src/main/java/com/taskrabbit/zendesk/RNZendeskChatModule.java @@ -13,6 +13,10 @@ import com.facebook.react.bridge.ReadableMap; import com.facebook.react.bridge.ReadableType; import com.facebook.react.bridge.WritableNativeMap; +import com.zendesk.service.ErrorResponse; +import com.zendesk.service.ZendeskCallback; + +import java.util.ArrayList; import zendesk.chat.Account; import zendesk.chat.AccountStatus; @@ -23,17 +27,12 @@ import zendesk.chat.ChatState; import zendesk.chat.ObservationScope; import zendesk.chat.Observer; -import zendesk.chat.ProfileProvider; import zendesk.chat.PreChatFormFieldStatus; +import zendesk.chat.ProfileProvider; import zendesk.chat.PushNotificationsProvider; import zendesk.chat.VisitorInfo; -import zendesk.messaging.MessagingActivity; -import zendesk.messaging.MessagingConfiguration; -import com.zendesk.service.ErrorResponse; -import com.zendesk.service.ZendeskCallback; - -import java.lang.String; -import java.util.ArrayList; +import zendesk.classic.messaging.MessagingActivity; +import zendesk.classic.messaging.MessagingConfiguration; public class RNZendeskChatModule extends ReactContextBaseJavaModule { private static final String TAG = "[RNZendeskChatModule]"; diff --git a/package.json b/package.json index 496501c..aa0de59 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ "license": "MIT", "devDependencies": { "prettier": "2.0.x", "eslint": "7.3.x" }, "peerDependencies": { - "react": "^16.11.0", - "react-native": "0.60.x | 0.61.x | 0.62.x | 0.63.x" + "react": "*", + "react-native": "*" } }