{"metadata":{"image":[],"title":"","description":""},"api":{"url":"","auth":"required","results":{"codes":[]},"settings":"","params":[]},"next":{"description":"","pages":[]},"title":"Updating from 2.x.x to 3.7.0.","type":"basic","slug":"updating-from-2xx-to-300-1","excerpt":"","body":"Version 3.0.0 is the next major release of the Pulsate SDK. There are a few changes that require Developers to update their current implementations. You can find a list of all important changes below.\n[block:api-header]\n{\n  \"title\": \"What's different in 3.7.0\"\n}\n[/block]\n1. \"*Pulsate.install(Application app)*\" has been removed. The Pulsate SDK now automatically starts with the Application. Please remove Pulsate.install(this) from your Application classes.\n\n2. The SDK uses the following versions of ROOT dependencies:\ncom.android.tools.build:gradle:4.2.1 \ncom.google.gms:google-services:4.3.8\norg.jetbrains.kotlin:kotlin-gradle-plugin:1.5.10\n\n3. The SDK uses the following versions of MODULE dependencies - https://gist.github.com/Jenovas/6bced45208a09e038e2c6acd1fe0a9d2\n\n4. The SDK uses the following Android Sdk Versions:\ncompileSdkVersion 30\nminSdkVersion 21\ntargetSdkVersion 30\n\n5. The SDK now uses AndroidX. Please migrate your App to AndroidX.\n\n6. Play Services have been updated. The SDK uses the following *play-services* libraries\nplay-services-location:18.0.0\nplay-services-maps:17.0.1\nPlease use the same versions to prevent any bugs caused by version mismatches.\n\n7. Firebase has been updated. The SDK uses the following *firebase* libraries\nfirebase-core:19.0.0\nfirebase-messaging:22.0.0 \nfirebase-storage:20.0.0 \nPlease use the same versions to prevent any bugs caused by version mismatches.\n\n8. The SDK now uses SQLCipher to encrypt data. SQLCipher is a native library and native libraries can increase App size. To reduce the App Size please read - https://pulsate.readme.io/v2.8/docs/reducing-apk-size-1.\n\n9. Location Permission changes - to be able to Geofence and Beacon Scan on Android Q and Android R require a new permission - android.permission.ACCESS_BACKGROUND_LOCATION. How to implement the new permission and more can be found here - https://pulsate.readme.io/v2.8/docs/android-permissions\n\n10. PulsateManager changes - isLocationUpdatesEnabled(), isMicrofencingEnabled(), isInAppNotificationEnabled(), isPushNotificationEnabled(), isUserAuthorized(), isNewThreadButtonEnabled(), isLocationWithBeaconEvents(), getPrivacy(), getLastKnownLocation() - no longer return values directly, these methods now return values to the new IPulsateValueListener.\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"pulsateManager.isInAppNotificationEnabled(new IPulsateValueListener<Boolean>() {\\n  :::at:::Override\\n  public void onSuccess(Boolean value) {\\n\\n  }\\n\\n  @Override\\n  public void onError(Throwable e) {\\n\\n  }\\n});\",\n      \"language\": \"java\"\n    }\n  ]\n}\n[/block]","updates":[],"order":1,"isReference":false,"hidden":false,"sync_unique":"","link_url":"","link_external":false,"_id":"5f2ab3b79e023206d473130d","createdAt":"2020-08-05T13:27:19.373Z","user":"57bc3654b9c7f0220009c77b","category":{"sync":{"isSync":false,"url":""},"pages":[],"title":"Updates","slug":"updates","order":4,"from_sync":false,"reference":false,"_id":"5f2ab205bc35e507e8cead35","createdAt":"2020-08-05T13:20:05.677Z","version":"5e5019b49e8f240011cc6ade","project":"54aa7f773b56130b0056c86e","__v":0},"version":{"version":"2.8","version_clean":"2.8.0","codename":"Android SDK","is_stable":false,"is_beta":false,"is_hidden":false,"is_deprecated":false,"categories":["5e5019b49e8f240011cc6a47","55781fe35129590d003ff4f9","55781fe35129590d003ff4fa","5e5019b49e8f240011cc6a48","5e5019b49e8f240011cc6a49","5e5019b49e8f240011cc6a4a","5e5019b49e8f240011cc6a4b","5e5019b49e8f240011cc6a4c","565b66c446118c0d00dcb0bb","56898269f8dc340d00308c13","5e5019b49e8f240011cc6a4d","5e5019b49e8f240011cc6a4e","5c73dd27e8fdc000572a206a","5e5019b49e8f240011cc6a4f","5e501b7e7c8bdc00450ea66a","5e53daa9884b750025b5cad4","5f2ab0dfbf70f7063ad0c4f3","5f2ab1e9448d87068b348f9c","5f2ab1f9c1644603559149ac","5f2ab205bc35e507e8cead35"],"_id":"5e5019b49e8f240011cc6ade","project":"54aa7f773b56130b0056c86e","forked_from":"5e4fbbbda8fb41028f1861fe","__v":6,"createdAt":"2015-06-10T11:30:42.700Z","releaseDate":"2015-06-10T11:30:42.700Z"},"project":"54aa7f773b56130b0056c86e","__v":0,"parentDoc":null}

Updating from 2.x.x to 3.7.0.


Version 3.0.0 is the next major release of the Pulsate SDK. There are a few changes that require Developers to update their current implementations. You can find a list of all important changes below. [block:api-header] { "title": "What's different in 3.7.0" } [/block] 1. "*Pulsate.install(Application app)*" has been removed. The Pulsate SDK now automatically starts with the Application. Please remove Pulsate.install(this) from your Application classes. 2. The SDK uses the following versions of ROOT dependencies: com.android.tools.build:gradle:4.2.1 com.google.gms:google-services:4.3.8 org.jetbrains.kotlin:kotlin-gradle-plugin:1.5.10 3. The SDK uses the following versions of MODULE dependencies - https://gist.github.com/Jenovas/6bced45208a09e038e2c6acd1fe0a9d2 4. The SDK uses the following Android Sdk Versions: compileSdkVersion 30 minSdkVersion 21 targetSdkVersion 30 5. The SDK now uses AndroidX. Please migrate your App to AndroidX. 6. Play Services have been updated. The SDK uses the following *play-services* libraries play-services-location:18.0.0 play-services-maps:17.0.1 Please use the same versions to prevent any bugs caused by version mismatches. 7. Firebase has been updated. The SDK uses the following *firebase* libraries firebase-core:19.0.0 firebase-messaging:22.0.0 firebase-storage:20.0.0 Please use the same versions to prevent any bugs caused by version mismatches. 8. The SDK now uses SQLCipher to encrypt data. SQLCipher is a native library and native libraries can increase App size. To reduce the App Size please read - https://pulsate.readme.io/v2.8/docs/reducing-apk-size-1. 9. Location Permission changes - to be able to Geofence and Beacon Scan on Android Q and Android R require a new permission - android.permission.ACCESS_BACKGROUND_LOCATION. How to implement the new permission and more can be found here - https://pulsate.readme.io/v2.8/docs/android-permissions 10. PulsateManager changes - isLocationUpdatesEnabled(), isMicrofencingEnabled(), isInAppNotificationEnabled(), isPushNotificationEnabled(), isUserAuthorized(), isNewThreadButtonEnabled(), isLocationWithBeaconEvents(), getPrivacy(), getLastKnownLocation() - no longer return values directly, these methods now return values to the new IPulsateValueListener. [block:code] { "codes": [ { "code": "pulsateManager.isInAppNotificationEnabled(new IPulsateValueListener<Boolean>() {\n @Override\n public void onSuccess(Boolean value) {\n\n }\n\n @Override\n public void onError(Throwable e) {\n\n }\n});", "language": "java" } ] } [/block]