© 2007 Intel Corporation
Software Development Kits for Mobile Applications, Gaming and Web 2.0
C.V. VickSr. Staff Software Architect
SSG003
3
Agenda
Mobile Software ConcernsPlatform and Context AwarenessIntel Mobile Software Development Kits- Intel Mobile Platform SDK- Intel Laptop Gaming TDK- Intel Web 2.0 TDK
Licensing TermsSummary
4
Legal Disclaimer
Any software source code reprinted in this document is furnishedunder a software license and may only be used or copied in accordance with the terms of that license.
To view the license, please visithttp://www.intel.com/cd/ids/developer/asmo-na/eng/336429.htm
5
Performance
Connectivity
Power
Impacts:- Power consumption- User experience
-Intermittent Connectivity-Variable Cost-Different Interfaces
Different devices have: -Input/output-Storage types/amounts-Display size/geometry
Mobile Software ConcernsMobile Software Concerns
Resources
-Finite Battery Power-Different power sources-System availability
6
Platform/Context Awareness
Platform Awareness is:- Understanding a platform’s configuration and
environment
- Understanding changes (events)
Applications can use the information to change their behavior (adaptive)
Example:- User unplugs the laptop power supply
- Application switches to a more power efficient approach
7
Intel Laptop Gaming TDK
Intel Mobile Software Development KitsIntel Mobile Software Development Kits
Intel Mobile Platform SDK
Intel Web 2.0 TDK
•C++/C Library•Programmer’s Guide•Full source code•Targeted at game developers
•JavaScript Library/API•C/C++ plug-ins IE6/7 & Firefox•Web page Widgets•Programmer’s Guide•Full source code•Targeted at AJAX developers
* Other names and brands may be claimed as the property of others.
•Multi-language
•C++/C API
•.NET API
•Java API
•Supports Windows* XP, Windows* Mobile 5.0, and others
•Native runtime
•Provides detailed information about platform devices
•Programmer’s Guide
•Targeted at native application ISVs
8
Performance
Connectivity
Power
- Type/Brand- Number of Cores- Features (HT, VT, etc.)- % Utilized
- Connection state/transitions- Wireless Signal Strength- Connection Type
-Available storage-Available Bandwidth-Display size/geometry
Gaming and Web 2.0 TDK Features*Gaming and Web 2.0 TDK Features*
Resources
- Power source state- Time Remaining- Percent Remaining
* Selected features
9
Example Usage - Gaming
* Other names and brands may be claimed as the property of others.
10
Example Usage - AJAX
Dynamic Widgets
Dynamic Status barIndicators
* Other names and brands may be claimed as the property of others.
11
Example - Adaptive BehaviorServer-side
Application collects platform and context information (using JavaScript) and sends it encoded as XML or JSON to server using HTTP
XML/JSON
Examples• Transcode streamed video content• Encrypt/compress content if dual
core• Take advantage of Intel platform
features• Alert user about impact on power
* Other names and brands may be claimed as the property of others.
Platform
Platform/OS specific library
Browser Integration
JavaScript Library
Server uses platform and context information to modify its interaction with the client
Optimized Stream
12
Valve* Half Life 2* Mobile Mod
* Other names and brands may be claimed as the property of others.
* Other names and brands may be claimed as the property of others.
class CGamingTDKObserver : public Notifiable
{
public:
CGamingTDKObserver()
: Notifiable()
virtual void notify(int event, long value = 0);
};
void CGamingTDKObserver::notify(int event, long value)
{
EnterCriticalSection(&cs);
if (event == BATTERY_LIFE_PRCNT_CHANGED ||
event == POWER_SRC_CHANGED) {
// Handle event here
}
if (event == CURRENT_CPU_UTIL) {
// Handle event here
}
LeaveCriticalSection(&cs);
}
CGamingTDKObserver observer;IGT RegisterEventObserver(POWER_SRC_CHANGED, &observer);
13
...
<script type="text/javascript" src="PowerIndicator.js"></script>
<script type="text/javascript"> function onPageLoad() {
powerIndicatorExample = new powerIndicator( "pwrSrc", "pwrSrcContainer", 10 ); } </script> ... <body onload="return onPageLoad();"> <div id="pwrSrcContainer"">...
powerIndicator Widget
14
Gaming/Web 2.0 TDK License
YES
YES
YES
YES
YES
YES
YES
Granted?
Redistribution or Sublicense Rights to licensee’s customer
Cannot be redistributed as the Web 2.0 TDK or Laptop Gaming TDK
Distribute derivative work as Object Code
Cannot be redistributed as the Web 2.0 TDK or Laptop Gaming TDK
Distribute derivative work as Source Code
Cannot be redistributed as the Web 2.0 TDK or Laptop Gaming TDKDistribute as Object Code
Cannot be redistributed as the Web 2.0 TDK or Laptop Gaming TDKDistribute as Source Code
Cannot be redistributed as the Web 2.0 TDK or Laptop Gaming TDKCreate derivative work
Reproduce Internally
NotesDistribution Rights
15
Summary
Mobile Use Models can adversely affect user experience and platform resources
Application should be aware of the platform context and adapt accordingly
Use the Mobile TDKs to make your games and AJAX applications Context-aware
Visit the ISN Mobile Developer Community and download the TDKs
Send us feedback
16
Please fill out the Session Evaluation Form
Thank You for your input, we use it to improve future Intel Developer Forum events
Save your date for IDFs this Fall:San Francisco, USA 2007 September 18 -20
Taipei, Taiwan, 2007 October 15 -16
17
Backup Slides
18
Mobile Developer Community on ISN
Create and grow the passionate community to provide central tech resources to software developers, connect developers with tech expertsIntel Software Network: http://www.intel.com/softwareIntel Mobile Developer Community: http://www.intel.com/software/mobile/
Ultra Mobile
Mobile PC
EngagingPlatforms
Intel® Mobile Platform SDK
Intel® Laptop Gaming TDK
InnovativeSoftware
Intel® Web 2.0 TDK
Informative Collaterals
Tech papers Videos
Demos Training
Interactive Conversation
BlogsDiscussion forum
Live chat Contest
19
Technical Documents
Software dev for UMPC
Spotlight: Game contest
Software dev for CMT platform
Community RSS feeds
Mobile experts’ Blogs
Intel Web 2.0 TDK
Intel laptop Gaming TDK
Software tools download
Tech docs for new comers
Demos
Featured commMembers
Link to ISPP
Tech forum for mobilized sw
FAQs
Video contents
20
Resource Page Intel Web 2.0 TDK http://www.intel.com/software/web20tdk/
Experts’ Blogs Developer Guide
Online installVideo - class
Hosted Demos
Forum