7. Readers Hub Samsung Apps
Music Hub Game Hub
Learning Hub
Media Hub
8. Monetization: InApp Purchase
In App Purchase offers an easy and effective way to monetize
while keeping users interested and involved in an app.
or
9. Monetization: AdHub
Mobile & Tablet PC Advertising
Monetize Applications with Easy-to-use Tools
Mobile & Tablet Device bada & Android OS
Various Types of AD Support for several
Click-to-actions
Mobile Mobile TV
In App Web In App
Landing Page App down Call
10. Monetization: Try’n Play & Rent’n Play
Time-limited application trying or renting.
Apps can be used for certain period and extended.
* Application information may differ from the actual product appearance.
11 / 문서의 제목
22. MARKETING SUPPORT: PROMOTION
Boost sellers’ profit by providing a variety of promotion opportunities
through seasonal/theme promotions or seller promotions
Seasonal/Theme Promotions Seller Promotions
23. MARKETING SUPPORT: BANNER/FEATURE
Select high quality apps to be bannered/featured to maximize
the degree of exposure of apps in the storefront.
50 개국
(1/19)
24 / 문서의 제목
24. MARKETING SUPPORT: SOCIAL MEDIA
Get connected with Samsung Apps Fans or Followers for the latest
Samsung Apps news, events and any on-going promotions through SNS
marketing activities
twitter.com/samsungapps
youtube.com/samsungapps
27. WHAT IS S PEN?
A New type of input device
EMR (Electromagnetic Resonance) Solution
- Based on dual capacitive touch and EMR pen technology
Advantages of S Pen
Precise and quick response
1
Supports pen pressure
No power consumption
2
Lightweight hardware
Side button, pen hovering
3
A new UX
28. APPLICATION AREA EXTENSION
Various possibilities with the S Pen in various app categories
Graphics Memo & Game
Planner
SNS Education B2B
29. NEW UX SCENARIO : BASIC
INTERACTION
Can replace existing touch input methods
XX : 0.0
: 130.0
590.0 Y :Y1060.20
Y : 1160.20
960.20
850.36
750.36
650.36
550.36
450.36
350.36
250.36
150.36
: 0.0
Activation, Touch
Pen
Coordinates,
Pressure
30. New UX Scenario: Pen Hovering
Recognize pen events without contact
No contact
Screen
31. New UX Scenario: Side Button
Recognize the side button with or without contact
Side Button
Recognition
Call a
Function
32. USING SDK
To get the new version of the S Pen SDK, please visit :
- http://developer.samsung.com/android/spen.sdk
Contents of the SDK
libspen22.jar Sample
Dev Guide
Application (with
source code)
33. USING SDK
Adding the JAR file to your project
Java Build Path Libraries Add External JARs libspen22.jar
Libraries
Java Build Path libspen22.jar
Add External JARs…
36. CODE
2. Packages to import
Import com.samsung.spensdk.*
Import com.samsung.sdraw.*
Packages to use S Pen features
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.RelativeLayout;
import com.samsung.spensdk.SCanvasConstants;
import com.samsung.spensdk.SCanvasView;
public class MainActivity extends Activity {
39. CODE
5. Pen/Eraser button handler
OnClickListener mBtnClickListener = new OnClickListener() {
@Override
public void onClick(View v) {
int nBtnID = v.getId();
// If the mode is not changed, open the setting view. If the mode is
same, close the setting view.
if(nBtnID == mPenBtn.getId()){
if(mSCanvas.getCanvasMode()==SCanvasConstants.SCANVAS_MODE_
INPUT_PEN){
mSCanvas.toggleShowSettingView(SCanvasConstants.SCANVAS_SET
TINGVIEW_PEN);
}
else{
mSCanvas.setCanvasMode(SCanvasConstants.SCANVAS_MODE_INPUT_
PEN);
mSCanvas.showSettingView(SCanvasConstants.SCANVAS_SETTINGVI
EW_PEN, false);
updateModeState();
}
...
40. CODE
6. Undo/Redo button handler
private OnClickListener undoNredoBtnClickListener = new OnClickLis
tener() {
@Override
public void onClick(View v) {
if (v.equals(mUndoBtn)) {
mSCanvas.undo();
} else if (v.equals(mRedoBtn)) {
mSCanvas.redo();
}
mUndoBtn.setEnabled(mSCanvas.isUndoable());
mRedoBtn.setEnabled(mSCanvas.isRedoable());
}
};
43. ChatON Main Features
Multi & Cross Platform Enhanced 1:1 & Multimedia Content Sharing &
Messaging Service Group Chat Trunk
Animation Message (AMS) Anicon (Animated Emoticons)
44. The ChatON API
Open APIs allowing 3rd party apps to…
Access ChatON services and user base
Utilize ChatON features (messaging, etc.)
ChatON Service 3rd Party Apps
API
45. The ChatON API: Server-side and Client-side
ChatON Service 3rd Party Apps
API
Client-side API Server-side API
46. Client-side API
•Get buddy list •Get my profile
Graph
•Get profile picture
•Add buddy
•Open a chat room •Sent multimedia message
Message
•Send text message •Sent multimedia message
•Send text message with url with text
Utility
•Check ChatON installation
•Open ChatOn download page
47. 1. Get Buddy List
Client-side API Graph API
GraphAPI.addBuddy(context, phoneNumber)
The following steps describes how to add a buddy to my buddy list:
1.Select AddBuddy
2.Type in the buddy’s phone number
3.Click “Add Buddy” button
4.Add Buddy screen gets displayed
5.Click “+” button to complete add buddy
48. CODE
public void clickHandler(View v) {
if( mEditPhoneNumber == null ) {
return;
}
String phoneNumber = mEditPhoneNumber.getText().toString();
switch(v.getId()) {
case R.id.buttonAddBuddy:
// call addBuddy API
int nResult = GraphAPI.addBuddy(this, phoneNumber);
if( nResult == ChatONAPI.RESULT_CODE_FAIL_EXCEPTION_ILLEGAL_ARGUMENT )
{
Toast.makeText(this, "PhoneNumber's length must be greater than or
equals to 1 and be less than or equals to 20", Toast.LENGTH_SHORT).show();
}
else if( nResult == ChatONAPI.RESULT_CODE_FAIL_API_NOT_AVAILABLE )
{
Toast.makeText(this, "API isn't availble. please check your ChatON
version.", Toast.LENGTH_SHORT).show();
}
break;
}
}
49. 1. Get Buddy List
Client-side API Message API
MessageAPI.sendTextMessageWithURL(context, text, url)
The following steps describes how to send a message and an URL to ChatON buddies:
1. Select SendTextMessageWithURL
2. Type in a message and an URL
3. Click “Send Text Message With URL” button
4. Buddy list screen appears to allow you to select target buddies or a chat room
5. The typed in message will be delivered when the selection is completed
50. CODE
public void clickHandler(View v) {
if( mEditSendText == null || mEditSendUrl == null ) {
return;
}
String text = mEditSendText.getText().toString();
String url = mEditSendUrl.getText().toString();
if( TextUtils.isEmpty(text) || TextUtils.isEmpty(url) )
{
Toast.makeText(this, "Illegal Argument!!nPlease, check argument", Toast.LENGTH_SHORT).show();
return;
}
switch(v.getId()) {
case R.id.buttonSendTextUrl:
if( text.length() > 0 ) {
// call API
int nResult = MessageAPI.sendTextMessageWithURL(this, text, url);
// check result
switch(nResult) {
case ChatONAPI.RESULT_CODE_FAIL_EXCEPTION_ILLEGAL_ARGUMENT:
Toast.makeText(this, "Illegal Argument!!nPlease, check argument", Toast.LENGTH_SHORT).show();
break;
case ChatONAPI.RESULT_CODE_FAIL_EXCEPTION:
Toast.makeText(this, "Exception!!nPlease, check argument", Toast.LENGTH_SHORT).show();
break;
case ChatONAPI.RESULT_CODE_FAIL_TEXT_LIMIT_EXCEEDED:
Toast.makeText(this, "Message(Text + Url)'s length must be greater than or equals to 1 and be
less than or equals to 2000", Toast.LENGTH_SHORT).show();
break;
case ChatONAPI.RESULT_CODE_FAIL_API_NOT_AVAILABLE:
Toast.makeText(this, "API isn't availble. please check your ChatON version.",
Toast.LENGTH_SHORT).show();
break;
}
}
break;
} // switch(v.getId())
}
51. 1. Get Buddy List
Client-side API Utility API
MessageAPI. UtilityAPI.isChatONInstalled(context)
public class IsChatONInstalledActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.is_chaton_installed);
}
public void clickHandler(View v) {
switch(v.getId()) {
case R.id.buttonIsChatONInstalled:
// call API
boolean isInstalled = UtilityAPI.isChatONInstalled(this);
// check result
if( isInstalled ) {
Toast.makeText(this, "ChatON is installed !!", Toast.LENGTH_SHORT).show();
}
else {
Toast.makeText(this, "ChatON is not installed !!", Toast.LENGTH_SHORT).show();
}
break;
}
}
}
52. USING SDK
To get the new version of the ChatON SDK, please visit :
- http://innovator.samsungmobile.com/clientApi.do?platformId=16&pgId=03
Contents of the SDK
ChatONAPI.jar
Online Guide + Sample Application (with source code)
53. Using ChatON API
1. Request API Access Key
2. Download and include ChatONAPI.jar library
3. Include access key into AndroidManifest.xml
<uses-permission android:name="com.sec.chaton.TOKEN_XXXXX" />
4. Code !