open intents aggregating apps

13
www.openintents.org [email protected] Droidcon London 2011, 7 October 2011 Historify and Other Aggregating Apps Friedger Müffke @fmdroid #openintents

Upload: friedger-mueffke

Post on 02-Dec-2014

605 views

Category:

Technology


0 download

DESCRIPTION

Talk about Historify and Aggregating Apps

TRANSCRIPT

Page 1: Open intents Aggregating Apps

www.openintents.org [email protected] Droidcon London 2011,7 October 2011

Historify and Other Aggregating Apps

Friedger Müffke

@fmdroid#openintents

Page 2: Open intents Aggregating Apps

@fmdroid – Historify and Aggregating Apps Droidcon London, 7 October 2011

OpenIntents.org

● Add „book a table“ to calendar

50 lines of code● Add „journey schedule“ to shopping list app

5 lines of code● Add „AR browser“ to post office app

1 library + 25 lines of code

Page 3: Open intents Aggregating Apps

@fmdroid – Historify and Aggregating Apps Droidcon London, 7 October 2011

Open Apps

1.Declare intent filters in your Manifest with CATEGORY_DEFAULT

2.Publish your intent filters on open-android-apps.appspot.com

3.Explore intents and which apps do offer the corresponding functionality

Page 4: Open intents Aggregating Apps

@fmdroid – Historify and Aggregating Apps Droidcon London, 7 October 2011

Study

● Analysize of apps in application store Appoke

● ~1500 apps (paid + free)

● 350 apps declare intent filter other than launcher

● Many wired and wrong intent filter

● 1% of apps declare useful intent filter

Looking for more apps stores to participate!

Page 5: Open intents Aggregating Apps

@fmdroid – Historify and Aggregating Apps Droidcon London, 7 October 2011

Google Summer of Code 2011

● Global program by Google

● Student stipends for OSS projects

● 175 organizations, first year for OpenIntents

● 57 applications received

● 2 students

● Accepted projects: Sensor Simulator, Historify

Page 6: Open intents Aggregating Apps

@fmdroid – Historify and Aggregating Apps Droidcon London, 7 October 2011

Historify

Page 7: Open intents Aggregating Apps

@fmdroid – Historify and Aggregating Apps Droidcon London, 7 October 2011

Possible Methods

● Server-sidee.g. Google Reader

● Broadcast intentse.g. Locale

● One content provider for allIntent.ACTION_INSERT_FROM_META_DATAe.g. OI Shopping List

● Many content providers with same structuree.g. Historify, Dependency Manager, Search

Page 8: Open intents Aggregating Apps

@fmdroid – Historify and Aggregating Apps Droidcon London, 7 October 2011

Historify – SharedSource

● Many content providers● 3rd party app registers via intent

1. Declare source, i.e. content provider authority

2. All declared sources are querried

3. Results are filtered and displayed

Page 9: Open intents Aggregating Apps

@fmdroid – Historify and Aggregating Apps Droidcon London, 7 October 2011

Historify – QuickPost

● One content provider for all● No content provider by 3rd-party app

1. declares event meta data

2. uses intents to insert event

Page 10: Open intents Aggregating Apps

@fmdroid – Historify and Aggregating Apps Droidcon London, 7 October 2011

Historify – SharedSource

● Many content providers● 3rd party app registers via intent

1. Declare source, i.e. content provider authority

2. All declared sources are querried

3. Results are filtered and displayed

Page 11: Open intents Aggregating Apps

@fmdroid – Historify and Aggregating Apps Droidcon London, 7 October 2011

Historify – more features

● Internal providers for SMS and telephony● Documentations on

code.google.com/p/openintents● SonyEricsson Timescape Compatibility Module● HistorifyBridge library

Page 12: Open intents Aggregating Apps

@fmdroid – Historify and Aggregating Apps Droidcon London, 7 October 2011

Tips and Tricks

● Choose appropriate method● Let 3rd parties declare intent filter● Declare meta data in Android Manifest.xml on

application level● AggregateCursor to dynamically add results

(see DependencyManager)

Page 13: Open intents Aggregating Apps

@fmdroid – Historify and Aggregating Apps Droidcon London, 7 October 2011

More infoWeb site:

www.openintents.orgDeveloper group: http://groups.google.com/group/openintents

Code repository: http://openintents.googlecode.com