Skip to content

badgekeeper/BadgeKeeper-Android

Repository files navigation

Badge Keeper

Badge Keeper Android library will help add achievement system to your app easily.

More information you can find here: Badge Keeper official site

Test your project from web browser here: Badge Keeper Api

Build Status Maven Central Version License

Getting Started

Using Gradle:

compile 'net.badgekeeper.android:badgekeeper:0.1.5'

Using Maven:

<dependency>
    <groupId>net.badgekeeper.android</groupId>
    <artifactId>badgekeeper</artifactId>
    <version>0.1.5</version>
</dependency>

Usage

Basic Initialization

BadgeKeeper.setContext(this); // this = Context object
BadgeKeeper.setProjectId("Project Id from admin panel");
BadgeKeeper.setUserId("Your client id");
BadgeKeeper.setShouldLoadIcons(true); // default is false

That's all settings that need to be configured.

Callbacks

There are four callbacks that we will use to receive results from Badge Keeper service:

// 1 - Returns error code and error message if something goes wrong
public interface BadgeKeeperErrorCallback {
    public void onError(int code, String message);
}

// 2 - Returns array of BadgeKeeperAchievement elements
public interface BadgeKeeperProjectAchievementsCallback extends BadgeKeeperErrorCallback {
    public void onSuccess(BadgeKeeperAchievement[] achievements);
}

// 3 - Returns array of BadgeKeeperUserAchievement elements
public interface BadgeKeeperUserAchievementsCallback extends BadgeKeeperErrorCallback {
    public void onSuccess(BadgeKeeperUserAchievement[] achievements);
}

// 4 - Returns array of BadgeKeeperUnlockedAchievement elements
public interface BadgeKeeperAchievementsUnlockedCallback extends BadgeKeeperErrorCallback {
    public void onSuccess(BadgeKeeperUnlockedAchievement[] achievements);
}

Get project achievements (no userId required)

BadgeKeeper.getProjectAchievements(new BadgeKeeperProjectAchievementsCallback() {
	@Override
    public void onSuccess(BadgeKeeperAchievement[] achievements) {
		// Put logic here
	}
	
	@Override
    public void onError(int code, String message) {
    	// Put logic here
	}
});

Get user achievements

BadgeKeeper.getUserAchievements(new BadgeKeeperUserAchievementsCallback() {
    @Override
    public void onSuccess(BadgeKeeperUserAchievement[] achievements) {
    	// Put logic here
    }
	
	@Override
	public void onError(int code, String message) {
		// Put logic here
	}
});

Post user variables and validate completed achievements

BadgeKeeper.preparePostKeyWithValue("x", 0);

BadgeKeeper.postPreparedValues(new BadgeKeeperAchievementsUnlockedCallback() {
	@Override
	public void onSuccess(BadgeKeeperUnlockedAchievement[] achievements) {
		// Put logic here
	}

	@Override
	public void onError(int code, String message) {
		// Put logic here
    }
});

Increment user variables and validate completed achievements

BadgeKeeper.prepareIncrementKeyWithValue("x", 1);

BadgeKeeper.incrementPreparedValues(new BadgeKeeperAchievementsUnlockedCallback() {
	@Override
	public void onSuccess(BadgeKeeperUnlockedAchievement[] achievements) {
		// Put logic here
	}

	@Override
	public void onError(int code, String message) {
		// Put logic here
    }
});

Requirements

  • JDK version >=7.
  • We support all Android versions since API Level 14 (Android 4.0, 4.0.1, 4.0.2 Ice Cream Sandwich & above).

License

Copyright 2015 Badge Keeper

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

	http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

About

Badge Keeper Android client library. Easily add achievements to your app.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages