Upload
kevin-mcdonagh
View
1.588
Download
0
Tags:
Embed Size (px)
DESCRIPTION
About the likelihood of Android spreading across embedded devices. Given at OverTheAir 2010. #ota10
Citation preview
@kevinmcdonaghAndroid isn't just about phones
W3C standards'95 - HTML4'96 - XML'2012? - HTML5
New input element's in HTML5:tel, search, url, email,datetimedate, month,
week,time, datetime-localnumber,range, color
WebSocket APIWebSocket protocolServer-Sent EventsWeb Storage (localStorage and sessionStorage)Web SQL DatabaseGeolocationWorkersOffline
hasFeature("XHTML", "5.0")
Source: Isuppli Press release 201
Source: "Future of Embedded Systems Technology". BCC Report G-229R.
● Set Top boxes● GPS Units● Kiosks● Self-Checkout● Phones● Personal Computers● Medical Equipment
3,000,000 iPads in 80 Days
●Byte Code●One DEX file with shared constant pools●Dex files are read only & shared within processes●Alignment and Ordering to suit local system●Register based
Dalvik Optimisations
●Intents●Intent Receivers
• Broadcast Receivers• Intent Filters listen to Broadcast Intents
Intent Types
Activity Action Broadcast Intents
Intent intent = new Intent (......................); startActivity(intent);
Intent i = new Intent(); i.setAction("my.package.action"); i.putExtra("number", new Integer( 99 ) ); i.putExtra("text", new String( “foo”) );startSubActivity(i, ACTIVITY_INVOKE);
Intent intent = new Intent (Intent.ACTION_DIAL, Uri.parse(“tel:93675359”)); startActivity(intent);
Intent intent = new Intent (Intent.ACTION_VIEW, Uri.parse(“http://www.droidcon.co.uk”)); startActivity(intent);
<activity android:name=”.HelloWorld” android:label=”@string/app_name”><intent-flter>
<action android:name=”android.intent.action.VIEW”/><category android:name=”android.intent.category.DEFAULT”/><category android:name=”android.intent.category.BROWSABLE”/> <data android:scheme=”scheme”/>
</intent-flter> </activity>
Intent intent = new Intent (Intent.ACTION_VIEW, Uri.parse(“scheme://”)); startActivity(intent);
<activity android:name=”.HelloWorld” android:label=”@string/app_name”><intent-flter>
<action android:name=”android.intent.action.VIEW”/> <category android:name=”android.intent.category.DEFAULT”/> <category android:name=”android.intent.category.BROWSABLE”/>
<data android:scheme=”http” android:host=”droidcon.co.uk”/></intent-flter>
</activity>
Intent intent = new Intent (Intent.ACTION_VIEW, Uri.parse(“http://www.droidcon.co.uk”)); startActivity(intent);
<receiver android:name=”CameraPressedReceiver”><intent-flter>
<action android:name=”android.intent.action.CAMERA_BUTTON”/> </intent-flter>
</receiver>
public class CameraPressed extends Broadcast Receiver {
@Override public void onReceive(Context context, Intent intent) {
CRUD with HTTP verbs (post/get/put/delete)Simplicity in data sources through a unified interface
query() insert() update() delete() getType() onCreate()
Dim ScreensSuspend long tasksWarn about I/ODon't poll+ <add yours>
Receive messageCheck schemeCheck contentsIntercept SMSPass Extras
Generate suggested todosSuspend resourcesChange Answering machineAuto responders to emailSuspend ServicesAuto download shows/podcasts
28th/29th OctoberLargest everAndroid Conference!
In London!
www.droidcon.co.uk
@novodawww.novoda.com
@kevinmcdonaghTel: 07981932411