Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in
  • B B4S-Android-SDK
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Container Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Code review
    • Issue
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Francois Reboursier
  • B4S-Android-SDK
  • Wiki
  • Migration guide

Migration guide · Changes

Page history
Migration guide added authored Nov 12, 2015 by Eric Kok's avatar Eric Kok
Hide whitespace changes
Inline Side-by-side
Migration-guide.md 0 → 100644
View page @ 63c76570
Migration guide
===============
Please refer to each individual version step when migrating to a newer SDK. .x release typically require a small update such as changed manifest definitions, while .x.x releases may rename or move a method or constant too.
The [main integration document](https://github.com/ezeeworld/B4S-Android/blob/master/README.md) always describes the most up-to-date integration requirements.
## Upgrade to 1.5.4
No changes required.
## Upgrade to 1.5.2
If multiple B4S apps are installed, the SDK will now automatically choose the most recent SDK version to scan for beacons. This requires additional intent filter definitions for the `MonitoringManager` service. Please ensure that it is defined as:
```xml
<service
android:name="com.ezeeworld.b4s.android.sdk.monitor.MonitoringManager"
android:exported="true"
tools:ignore="ExportedService">
<intent-filter>
<action android:name="com.ezeeworld.b4s.android.sdk.monitor.B4S_ENSURE_SCANNING" />
<action android:name="com.ezeeworld.b4s.android.sdk.monitor.B4S_QUERY_SCHEDULE" />
<action android:name="com.ezeeworld.b4s.android.sdk.monitor.B4S_SCHEDULE_RESULT" />
<action android:name="com.ezeeworld.b4s.android.sdk.monitor.B4S_QUERY_VERSION" />
<action android:name="com.ezeeworld.b4s.android.sdk.monitor.B4S_REPORT_VERSION" />
</intent-filter>
</service>
```
## Upgrade to 1.5.0
It is no longer necessary (nor should you) to extend from the `B4SNotificationActivity` or manage a `B4SNotificationPopup` manually. Please remove manual references to these class from your code. Not that, as part of this change, you DO have to supply your `Application` object to the `B4SSettings.init(Application, String)` method.
The deep linking intent extra field constants, such as `INTENT_TITLE` and `INTENT_ACTIONID`, were moved from the `MonitoringManager` to the `NotificationService` class.
The scanning service was updated for greater speed and reliability, especially on devices with poor Bluetooth hardware. The demo mode (which was exclusively used for testing) is deprecated so the `B4SSettings.setDemoMode(boolean)` was removed.
On Android 6.0 a new runtime permission system was introduced, and this is now natively supported. When the user has not (yet) given permissions for the `android.permission-group.LOCATION` group, the SDK will show a request pop-up. Note that no alerts (pop-ups) will be shown if location services or bluetooth are disabled, although this [may now be configured](https://github.com/ezeeworld/B4S-Android-SDK/blob/master/README.md#alert-for-requirements).
The `B4SSettings.storeCustomerFields()` method was slightly changed, as it is no longer needed to supply a location while a `userId` parameter was added.
## Upgrade to 1.4.5
[Push messaging support](https://github.com/ezeeworld/B4S-Android-SDK/blob/master/README.md#push-messaging) was added, for which a new `B4SSettings.setPushMessagingSenderId(String)` method was introduced. As part of the feature, the notification generation was moved and a new service declaration is required:
```xml
<service
android:name="com.ezeeworld.b4s.android.sdk.notifications.NotificationService"
android:exported="false" />
```
For push messaging integration itself, please refer to the [full integration document](https://github.com/ezeeworld/B4S-Android-SDK/blob/master/README.md#configure-the-sdk).
Clone repository
  • Home
  • Installation with Eclipse Ant
  • Installation with Gradle
  • Integration guide
  • Migration guide