BlackBerry Jam Asia 2013 - Take Your Apps and Games Social with BBM and Scoreloop SDKs

Preview:

DESCRIPTION

Slide presentation by Christopher Saunders (Application Development Consultant, BlackBerry) on BlackBerry Jam Asia 2013 in Hong Kong, September 27 2013 titled "Take Your Apps and Games Social with BBM and Scoreloop SDKs".

Citation preview

Take your Apps and Games Social with BBM and Scoreloop SDKs JAM824

Christopher Saunders

David Patterson

September 27th, 2013

Agenda

2

Why. How. What.

$$$

BBM: A Vibrant Social Network

60 Million+ Monthly Active Users

30 Million+ BBM Groups Users

60% of BBM users use BBM Daily

BBM growth is viral

3

BBM is your private social network for active, real conversations

It’s immediate.

You trust it.

You control it.

Advantages of BBM Social Platform

The BBM platform offers a number of benefits for developers:

Increased discoverability

Increased engagement and app stickiness

Increased monetization

4

BBM Social Platform

A set of BBM specific APIs that allow developers to integrate their applications with BBM

Available in core Native, Cascades and WebWorks

Features include:

BBM Contact List & Invitations

User Profile Updates

Application Box Updates in User Profile

Invoke BBM through Invocation APIs

Invite to BBM, initiate chat, share content

5

BBM Contact List and Invitations

Ability to Invite your BBM contacts to download an application (Integrated with BlackBerry World)

Obtain a list of BBM contacts that have the application installed and registered

Listen for changes to profiles of these contacts

Status change to -> “Wants to play SlingShot 5000 with someone”

Local app could prompt the user to start a multiplayer game

6

Best Practice: Make it easy for users to find the invite

button…but try to make it feel integrated into the application

BBM Contact List and Invitations

7

BBM Contact List and Invitations

8

BBM Contact List and Invitations

9

BBM Contact List and Invitations

10

BBM Contact List and Invitations

11

BBM Contact List and Invitations

12

User Profile Updates

Ability to update the user’s BBM Profile information

Personal Status Message

Avatar

Availability

App that makes the change shows up in the context of the update in the BBM Updates tab

13

Best Practice: Make the updates relevant for example:

“Checked into Starbucks at location X” instead of “I’m

using Foursquare”

User Profile Updates

14

User Profile Updates

15

User Profile Updates

16

User Profile Updates

17

User Profile Updates

18

User Profile Updates

19

User Profile Updates

20

User Profile Updates

21

User Profile Updates

22

Application Box Updates in User Profile

23

BBM Connected apps are listed in a users BBM Profile

Clicking items launch the apps (or BlackBerry World)

Add items within your app’s Profile Box

Achievements, high scores, current track, important news

Best Practice: Take advantage of Profile Box Items…coming

soon is ability to launch your app and pass it context!

BBM Social Platform APIs

BlackBerry 10

C BlackBerry Platform Services (bps) APIs

Add to existing applications using bps

Qt style APIs

Integration with Cascades applications

WebWorks APIs

AIR APIs

BlackBerry OS 5-7

Java APIs

WebWorks APIs

24

BBM Social Platform APIs

Use the BBM SP seamlessly between BlackBerry 10 and BlackBerry OS 5-7!

25

BBM Social Platform

IMPORTANT – Use the same SKU in App World!!!

BBM SP Registration

First step for any BBM Social Platform application

User must allow the registration

User can enable/disable BBM SP access at any time

Register on app startup or before using BBM SP feature

In 10.2, registration progress dialog removed!

26

BBM SP Invite to Download

27

m_messageService = new

bb::platform::bbm::MessageService(m_context,

this);

m_messageService->sendDownloadInvitation();

BBM SP Profile Boxes

//Create a profile box with item

bb::platform::bbm::ProfileBox* m_profileBox m_profileBox = new

bb::platform::bbm::ProfileBox(m_context, this);

m_profileBox->requestRegisterIcon(iconId[id],

bb::platform::bbm::ImageType::Png, iconArray);

m_profileBox->requestAddItem(QString("New High Score: 2!"),

QString(iconId[id]),

QString("cookie").append(iconId[id]));

28

BBM SP Profile Page

//Grab the user's Profile.

bb::platform::bbm::UserProfile m_userProfile = new

bb::platform::bbm::UserProfile(m_context, this);

//Update the user's personal message.

m_userProfile->requestUpdatePersonalMessage("New Message");

29

BBM SP Contacts

Obtain a list of BBM contacts that have the application installed and registered

Listen for changes to profiles of these contacts

Status change to -> “Wants to play SlingShot 5000 with someone”

Local app could prompt the user to start a multiplayer game

30

Invoking BBM

31

Use the Invocation Framework to

Invoke the BBM Client to…

• Start chat with specific contact(s)

• Start chat, user chooses contact(s)

• Set BBM Avatar Image

• Invite Contact to BBM

• Share Text with contact

• Starts chat with pre-populated

message

• Share Image with contact

• Share Custom File

Start BBM Chat

InvokeActionItem {

title: "Start BBM Chat“

query {

invokeActionId: "bb.action.BBMCHAT"

uri: "pin:2100000A"

}

}

32

Application Specifies Contact

Start BBM Multi Person Chat

InvokeRequest request;

request.setTarget("sys.bbm.conferencehandler");

request.setAction("bb.action.BBMCONF");

request.setMimeType("vnd.bb.bbm/contactlist");

//Can specify contacts here.

InvokeManager invokeManager;

InvokeTargetReply *reply = invokeManager.invoke(request);

33

Start BBM Multi Person Chat

QVariantMap map;

QVariantList contactList;

QVariantMap contact1;

contact1["pin"] = "2100000A";

contactList.append(contact1);

map["contacts"] = contactList;

QVariantMap root;

root["conference"] = map;

request.setData(bb::PpsObject::encode(root));

34

Specifying Contacts

Start Group Chat

35

User Selects Contact App Selects Contact

OR

Share Text Over BBM

InvokeActionItem {

title: "Share Text Over BBM"

query {

mimeType: "text/plain"

invokeTargetId: "sys.bbm.sharehandler"

invokeActionId: "bb.action.SHARE" data: "This is some text to share."

}

onTriggered: {

data = "This is some new text."

}

}

36 User Selects Contact

Share Text Over BBM

37 User Selects Contact Text/Data Can Be Empty

Social Gaming in a Nutshell

• Leaderboards

• BBM Integration

• Online User Profiles

• Achievements

• Challenge player

• In-Game Currencies

• Virtual Goods

• Default UI

38

Scoreloop

39

Scoreloop connects games and the people who

play them

Scoreloop is Cross platform including BlackBerry 10, Android, iOS, WP, Marmalade, Unity

Active Games: over 3,500

Total users: 350M

Daily Active Users: 3.5M

Monthly Active Users: 39M

Over 10B high scores

The Games App

The Games App is a preloaded application on the home screen of BlackBerry 10. It is the best position to promote your games!

As a central gaming experience on BlackBerry it enhances social and viral discovery of Scoreloop enabled games.

40

Games App Feature Overview

Connect with other BlackBerry 10 gamers

Find friends on BBM

Discover your friends’ games

See friends' gaming activities

Compare gaming skills with friends

41

Feature: See & Compare

See friends’ gaming activities.

Compare gaming skills with friends.

42

Feature: Find

Find friends on BBM.

Other options available to find friends.

Choose from friends already playing and invite others.

43

Feature: Connect

Connect with other BlackBerry 10 gamers.

Invite by email and add your BBM contacts.

Receive achievement and challenge news updates from friends and stay engaged.

44

Feature: Discover

Discover your friends’ games.

Find the most popular games, your friends’ favorites and all new social games.

Download games directly from BlackBerry World.

45

The Scoreloop SDK

1) Integrate with the Games app for ultimate visibility on BlackBerry 10

2) Make your game better with social features

Scoreloop SDK lets game developers integrate a

set of social gaming features into their games.

46

Scoreloop Feature Overview

User profile

Leaderboard

Achievements

Challenges

Data storage

Default UI

47

Feature: User Profile

Build a gaming identity that persists across games.

48

Feature: Challenge

Challenge friends directly from within games. Choose an opponent, play a game and submit a score. Wait for the other player to finish his game.

Re-match to continue playing with the same friend.

49

Feature: Leaderboard

See global Leaderboards & your friends’ ranking.

Compare gaming scores and achievements and compete with BBM friends to see who is the best gamer.

50

Feature: Default/Custom UIs

Create a custom UI for challenges and leaderboards or use the default UI to make it fast and easy.

51

Publish now to BlackBerry 10

52

For More Information…

developer.blackberry.com/cascades

For More Information…

developer.blackberry.com/cascades

For More Information…

developer.blackberry.com/cascades

For More Information…

Devblog.blackberry.com

57

Unity Game

Thank you.

JAM824

Christopher Saunders

David Patterson

September 27th, 2013

Recommended