Skip to content

Releases: chabokpush/chabok-client-rn

v1.4.0

26 Jun 08:18
08cb5f9

Choose a tag to compare

  • Update Chabok iOS SDK (v1.20.0)
  • Update Chabok android SDK (v2.17.0)
  • Now Chabok supports user revenue with trackPurchase method.
  • Now Chabok supports direct/in-direct notification influence.
  • Now Chabok supports deferred deep linking with setDeeplinkCallbackListener method.
  • Add getUserAttributes and setUserAttributes method.
  • Add setDefaultNotificationChannel method for changing the default name of notification channel (Android 8 or higher).

Upgrade:

  • getUserInfo and setUserInfo is deprecated and replaced with getUserAttributes and setUserAttributes.

v1.3.0

11 May 12:53
3a96133

Choose a tag to compare

Changes:

  • Update Chabok iOS SDK (v1.19.0)

  • Update Chabok android SDK (v2.16.0)

  • Add setUserInfo method to send user information.

  • Add setDefaultTracker for tracking pre-install campaigns.

  • Add appWillOpenUrl method for sending attribution information in deeplinks.

  • Add notificationOpened event for receiving click on notifications (actions and dismiss).

  • Add registerAsGuest method for applications with guest users, and for tracking installs on app launch (just like Adjust).

Upgrade:

  • Android:
  • Support Google play INSTALL_REFERRER. Add the following dependency to your gradle.
    implementation 'com.android.installreferrer:installreferrer:1.0'
  • To get notification action, implement the following code in MainApplication class in onCreate method:
    @Override
    public void onCreate() {
        super.onCreate();
        SoLoader.init(this, /* native exopackage */ false);
        
        if (chabok == null) {
            chabok = AdpPushClient.init(
                    getApplicationContext(),
                    MainActivity.class,
                    "APP_ID/SENDER_ID",
                    "API_KEY",
                    "USERNAME",
                    "PASSWORD"
            );

+               //true connects to Sandbox environment  
+               //false connects to Production environment  
+             AdpPushClient.get().setDevelopment(DEV_MODE);

+            chabok.addNotificationHandler(new NotificationHandler(){
+                @Override
+                public boolean notificationOpened(ChabokNotification message, ChabokNotificationAction notificationAction) {
+                    ChabokReactPackage.notificationOpened(message, notificationAction);
+                   return super.notificationOpened(message, notificationAction);
+                }
+            });
        }
    }
  • iOS:
  • To get advertising id, add AdSupport.framework to Linked Frameworks and Libraries of your target project
  • Add notificationOpened: to send notification action event to React-Native
  • Add registerToUNUserNotificationCenter method to get notification actions by implementing the following code:
    (To display rich notification, make sure to read our documentation)
+ @interface AppDelegate ()<PushClientManagerDelegate>

+ @end

@implementation AppDelegate

 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
  {
    
+    [PushClientManager.defaultManager addDelegate:self];
+    [AdpPushClient registerToUNUserNotificationCenter];
  
    ...
    
    return true;
  }

+ -(void) userNotificationCenter:(UNUserNotificationCenter *)center didReceiveNotificationResponse:(UNNotificationResponse *)response withCompletionHandler:(void (^)(void))completionHandler{
+     [AdpPushClient notificationOpened:response.notification.request.content.userInfo actionId:response.actionIdentifier];
+ }
  
+ -(void) application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler{
+     [AdpPushClient notificationOpened:userInfo];
+ }
  
+ -(void) application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo{
+    [AdpPushClient notificationOpened:userInfo];
+ }
  
+ -(void)application:(UIApplication *)application handleActionWithIdentifier:(NSString *)identifier forRemoteNotification:(NSDictionary *)userInfo completionHandler:(void (^)())completionHandler{
+     [AdpPushClient notificationOpened:userInfo actionId:identifier];
+ }

v1.2.0

04 Dec 08:28
cc98d6e

Choose a tag to compare

Changes:

  • Fix in changing Chabok environment.

Upgrade note:

  • For change Chabok environments use devMode parameter in init method.
    init(APP_ID, API_KEY, USERNAME, PASSWORD, DEVMODE)
  • Remove appName parameter in initializeApp method.
    initializeApp(options)
  • The setDevelopment method is not available anymore. Use devMode parameter in init or devMode key in initializeApp method instead

v1.1.1

14 Nov 16:05
9ce1c20

Choose a tag to compare

  • Add onSubscribe and onUnsubscribe listener for getting subscribe and unsubscribe status.
  • Add onRegister listener to check user registration status

v1.1.0

12 Nov 13:28
e8f193f

Choose a tag to compare

  • Update Chabok android SDK version to v2.14.0
  • Update Chabok iOS SDK version to v1.18.0
  • Fix promise reject for calling getUserId and getInstallationId

v1.0.3

10 Nov 14:29
b219d21

Choose a tag to compare

  • Update Chabok android SDK version to v2.13.3

v1.0.2

06 Nov 12:26
fa3bd57

Choose a tag to compare

  • Update android bridge compileSdkVersion to 26

v1.0.1

03 Nov 12:54
0df26c2

Choose a tag to compare

  • Add publishEvent method.
  • Add onEvent listener to receive eventMessage.
  • Add subscribeEvent, unSubscribeEvent methods.
  • Add channel key to message object.

v1.0.0

17 Sep 06:36
156dd5a

Choose a tag to compare

  • Add unregister method.
  • Add resetBadge method issue #11.
  • Add addTags and removeTags method.
  • Add a new initializer init method.
  • Add getUserId and getInstallationId method.
  • Add track method for tracking the user interactions.
  • Add setDevelopment method to change the Chabok environments.
  • Fix issues #15 and #6 thanks to @Mr-Hqq
  • Fix crash iOS bridge when reloading the JS file.

Upgrade note:

  • Change the signature of unsubscribe to unSubscribe.
  • Change the signature of publish method it gets an object with {'content','userId','channel','data'}.