SlideShare a Scribd company logo
1 of 45
Download to read offline
Android 

Marshmallow
+YossiElkrief
MaTriXy

Tikal Knowledge
+NirHartmann
nirhart

Drippler
Android 

Marshmallow
+YossiElkrief
MaTriXy

Tikal Knowledge
+NirHartmann
nirhart

Drippler
Android 

Marshmallow
+YossiElkrief
MaTriXy

Tikal Knowledge
+NirHartmann
nirhart

Drippler
Demos
Seeing is just the beginning
App Permissions
Visit The
Permission Lab
Runtime permissions
Voice Interactions
Getting follow-up user input
• Music App
• “play some music”
• “what genre?”
• Home Automation App
• “OK Google, turn on the lights”
• “which room?”
• Verifying that an activity should complete
• “Are you sure?”
Voice Interactions
VoiceInteractor 

used for response prompting and confirmation

<activity android:name=“com.demoapps.activities.DemoVoice”>

<intent-filter>

<action android:name=“com.demoapps.DEMO_ACTION_INTENT” />

<category android:name="android.intent.category.DEFAULT" />

<category android:name="android.intent.category.VOICE" />

</intent-filter>

</activity>
Voice Interactions
class DemoVoice extends Activity {

@Override

public void onResume() {

if (isVoiceInteraction()) {

// do our voice stuff here

}

finish();

}

}
Voice Interactions
class VoiceConfirm extends

VoiceInteraction.ConfirmationRequest {



public VoiceConfirm(String prompt) {

super(prompt, null);

}



@Override

public void onConfirmationResult(

boolean confirmed, Bundle null) {

if (confirmed) {

// do voice stuff

}

finish();

}

};
class DemoVoice extends Activity {

@Override

public void onResume() {

if (isVoiceInteraction()) {

getVoiceInteractor().
sendRequest(new
VoiceConfirm(userPromptString));

} else {

finish();

}
}
}
Now On Tap
“Google's 'Now on Tap' is Android's next killer feature” (CNET)
“Google Now on Tap is the coolest Android feature” (ANDROIDPIT)
“The next evolution of the digital concierge” (Tech Republic)
• Scans your screen only when you press and hold
the Home button
• Fully opt-in feature
• Work out of the box with any app
FLAG_SECURE
AssistContent
Activity.onProvideAssistData(Bundle)
Application.OnProvideAssistDataListener
Android Backup
RESTORATION SOFTWARE
Presented in Google IO 2015 by Christiaan Prins and Mike Procopio
Presented in Google IO 2015 by Christiaan Prins and Mike Procopio
Presented in Google IO 2015 by Christiaan Prins and Mike Procopio
Presented in Google IO 2015 by Christiaan Prins and Mike Procopio
Presented in Google IO 2015 by Christiaan Prins and Mike Procopio
Presented in Google IO 2015 by Christiaan Prins and Mike Procopio
Notifications
Look ma, We got an update
Icons in Notifications
Presented in Google IO 2015
Notification myNotification = new Notification.Builder(context)
.setSmallIcon(noti_icon).build();
Icon noti_icon = Icon.createWithResource(context,
R.drawable.app_ic_notification);
Icons in Notifications
Presented in Google IO 2015
Notification myNotification = new Notification.Builder(context)
.setSmallIcon(noti_icon).build();
Icon noti_icon = Icon.createWithResource(context,
R.drawable.app_ic_notification);
Icon noti_icon = Icon.createWithBitmap(myIconBitmap);
Icons in Notifications
Presented in Google IO 2015
Notification myNotification = new Notification.Builder(context)
.setSmallIcon(noti_icon).build();
Icon noti_icon = Icon.createWithResource(context,
R.drawable.app_ic_notification);
Icon noti_icon = Icon.createWithBitmap(myIconBitmap);
72°
android.graphics.drawable.Icon
Presented in Google IO 2015
Can be either:
Drawable resource id
Bitmap
PNG or JPEG represented by a byte[]
android.graphics.drawable.Icon
Presented in Google IO 2015
Pay Attention to guidelines
https://www.google.com/design/spec/style/icons.html
Text
Now you can float
Text Selection
Easier selection
Floating palette with action items
Default for TextView
Other views
set ActionMode.TYPE_FLOATING
Presented in Google IO 2015
Higher Quality Text Formatting
TextView.setBreakStrategy(int);
TextView.setHyphenationFrequency(int);
TextView.setIndents(int[] left, int[] right);
Presented in Google IO 2015
Higher Quality Text Formatting
TextView.setBreakStrategy(int);
TextView.setHyphenationFrequency(int);
TextView.setIndents(int[] left, int[] right);
Presented in Google IO 2015
App Linking
SEAMLESS HANDOFF FROM WEB TO APP
[{
"relation": ["delegate_permission/common.handle_all_urls"],
"target": {
"namespace": "android_app",
"package_name": "com.example.myapp",
"sha256_cert_fingerprints": ["01:23:45:67:89:AB:CD:..."]
}
}]
https://example.com/.well-known/statements.json
Presented in Google IO 2015
[{
"relation": ["delegate_permission/common.handle_all_urls"],
"target": {
"namespace": "android_app",
"package_name": "com.example.myapp",
"sha256_cert_fingerprints": ["01:23:45:67:89:AB:CD:..."]
}
}]
https://example.com/.well-known/statements.json
keytool -list -v -keystore release.keystore
Presented in Google IO 2015
Direct Share
BECAUSE SHARING IS CARING
Direct Share
<activity ... >

<intent-filter>

<action android:name="android.intent.action.SEND" />

</intent-filter>

<meta-data android:name="android.service.chooser.chooser_target_service"

android:value=".MyService" />

</activity>
Direct Share
<activity ... >

<intent-filter>

<action android:name="android.intent.action.SEND" />

</intent-filter>

<meta-data android:name="android.service.chooser.chooser_target_service"

android:value=".MyService" />

</activity>
Direct Share
<activity ... >

<intent-filter>

<action android:name="android.intent.action.SEND" />

</intent-filter>

<meta-data android:name="android.service.chooser.chooser_target_service"

android:value=".MyService" />

</activity>
<service android:name=".MyService"

android:permission="android.permission.BIND_CHOOSER_TARGET_SERVICE">

<intent-filter>

<action android:name="android.service.chooser.ChooserTargetService" />

</intent-filter>

</service>
Direct Share
<activity ... >

<intent-filter>

<action android:name="android.intent.action.SEND" />

</intent-filter>

<meta-data android:name="android.service.chooser.chooser_target_service"

android:value=".MyService" />

</activity>
<service android:name=".MyService"

android:permission="android.permission.BIND_CHOOSER_TARGET_SERVICE">

<intent-filter>

<action android:name="android.service.chooser.ChooserTargetService" />

</intent-filter>

</service>
public class MyService extends ChooserTargetService {

@Override

public List<ChooserTarget> onGetChooserTargets(ComponentName name, IntentFilter filter); {

// ...

}

}

Direct Share
<activity ... >

<intent-filter>

<action android:name="android.intent.action.SEND" />

</intent-filter>

<meta-data android:name="android.service.chooser.chooser_target_service"

android:value=".MyService" />

</activity>
<service android:name=".MyService"

android:permission="android.permission.BIND_CHOOSER_TARGET_SERVICE">

<intent-filter>

<action android:name="android.service.chooser.ChooserTargetService" />

</intent-filter>

</service>
public class MyService extends ChooserTargetService {

@Override

public List<ChooserTarget> onGetChooserTargets(ComponentName name, IntentFilter filter); {

// ...

}

}

Thank You!
+YossiElkrief
MaTriXy
+NirHartmann
nirhart
some slides were presented in Google IO 2015

More Related Content

Viewers also liked

The marsh mallow
The marsh mallowThe marsh mallow
The marsh mallow
Lynn DeLeon
 

Viewers also liked (18)

android marshmallow- latest android application version
android marshmallow-  latest android application versionandroid marshmallow-  latest android application version
android marshmallow- latest android application version
 
Android Marshmallow na prática
Android Marshmallow na práticaAndroid Marshmallow na prática
Android Marshmallow na prática
 
Android M - Runtime Permissions | Getting ready for Marshmallow
Android M - Runtime Permissions | Getting ready for MarshmallowAndroid M - Runtime Permissions | Getting ready for Marshmallow
Android M - Runtime Permissions | Getting ready for Marshmallow
 
Makalah pasca-panen-dan-mekanisasi
Makalah pasca-panen-dan-mekanisasiMakalah pasca-panen-dan-mekanisasi
Makalah pasca-panen-dan-mekanisasi
 
Instalasi Android 6.0 "Marshmallow"
Instalasi Android 6.0 "Marshmallow"Instalasi Android 6.0 "Marshmallow"
Instalasi Android 6.0 "Marshmallow"
 
Android interview questions
Android interview questionsAndroid interview questions
Android interview questions
 
android marshmallow
android marshmallowandroid marshmallow
android marshmallow
 
Have a look Google next operating system update : Android Marshmallow
Have a look Google next operating system update : Android MarshmallowHave a look Google next operating system update : Android Marshmallow
Have a look Google next operating system update : Android Marshmallow
 
Android Marshmallow
Android MarshmallowAndroid Marshmallow
Android Marshmallow
 
Tara Shears - Latest News from the LHC
Tara Shears - Latest News from the LHCTara Shears - Latest News from the LHC
Tara Shears - Latest News from the LHC
 
Android lollipop for developers
Android lollipop for developersAndroid lollipop for developers
Android lollipop for developers
 
Android Marsh mellow
Android Marsh mellowAndroid Marsh mellow
Android Marsh mellow
 
The marsh mallow
The marsh mallowThe marsh mallow
The marsh mallow
 
The App Developer's Guide to Android Lollipop
The App Developer's Guide to Android LollipopThe App Developer's Guide to Android Lollipop
The App Developer's Guide to Android Lollipop
 
Lucas King : Synergy Summit 2013 - Marshmallow Challenge
Lucas King : Synergy Summit 2013 - Marshmallow ChallengeLucas King : Synergy Summit 2013 - Marshmallow Challenge
Lucas King : Synergy Summit 2013 - Marshmallow Challenge
 
Android technology and Information with Presentation Project.
Android technology and Information with Presentation Project.Android technology and Information with Presentation Project.
Android technology and Information with Presentation Project.
 
Ppt on android
Ppt on androidPpt on android
Ppt on android
 
Android 6.0 marshmallow
Android 6.0 marshmallowAndroid 6.0 marshmallow
Android 6.0 marshmallow
 

Similar to Android Marshmallow demos

Lecture 12 - Maps, AR_VR_aaaaHardware.pptx
Lecture 12 - Maps, AR_VR_aaaaHardware.pptxLecture 12 - Maps, AR_VR_aaaaHardware.pptx
Lecture 12 - Maps, AR_VR_aaaaHardware.pptx
NgLQun
 
Google I/O 2011, Android Honeycomb Highlights
Google I/O 2011, Android Honeycomb HighlightsGoogle I/O 2011, Android Honeycomb Highlights
Google I/O 2011, Android Honeycomb Highlights
Romain Guy
 

Similar to Android Marshmallow demos (20)

Xamarin.Android Introduction
Xamarin.Android IntroductionXamarin.Android Introduction
Xamarin.Android Introduction
 
Building native mobile apps for all platforms using Codename One - Shai Almog...
Building native mobile apps for all platforms using Codename One - Shai Almog...Building native mobile apps for all platforms using Codename One - Shai Almog...
Building native mobile apps for all platforms using Codename One - Shai Almog...
 
Session #8 adding magic to your app
Session #8  adding magic to your appSession #8  adding magic to your app
Session #8 adding magic to your app
 
Rockstar Android Testing (Mobile TechCon Munich 2014)
Rockstar Android Testing (Mobile TechCon Munich 2014)Rockstar Android Testing (Mobile TechCon Munich 2014)
Rockstar Android Testing (Mobile TechCon Munich 2014)
 
Hieu Xamarin iOS9, Android M 3-11-2015
Hieu Xamarin iOS9, Android M  3-11-2015Hieu Xamarin iOS9, Android M  3-11-2015
Hieu Xamarin iOS9, Android M 3-11-2015
 
Lecture 12 - Maps, AR_VR_aaaaHardware.pptx
Lecture 12 - Maps, AR_VR_aaaaHardware.pptxLecture 12 - Maps, AR_VR_aaaaHardware.pptx
Lecture 12 - Maps, AR_VR_aaaaHardware.pptx
 
GDG GeorgeTown Devfest 2014 Presentation: Android Wear: A Developer's Perspec...
GDG GeorgeTown Devfest 2014 Presentation: Android Wear: A Developer's Perspec...GDG GeorgeTown Devfest 2014 Presentation: Android Wear: A Developer's Perspec...
GDG GeorgeTown Devfest 2014 Presentation: Android Wear: A Developer's Perspec...
 
What's new in Android Lollipop
What's new in Android LollipopWhat's new in Android Lollipop
What's new in Android Lollipop
 
Selendroid - Selenium for Android
Selendroid - Selenium for AndroidSelendroid - Selenium for Android
Selendroid - Selenium for Android
 
Top Tips for Android UIs - Getting the Magic on Tablets
Top Tips for Android UIs - Getting the Magic on TabletsTop Tips for Android UIs - Getting the Magic on Tablets
Top Tips for Android UIs - Getting the Magic on Tablets
 
TechGarage Hackaton
TechGarage HackatonTechGarage Hackaton
TechGarage Hackaton
 
2012 star west-t10
2012 star west-t102012 star west-t10
2012 star west-t10
 
Best Practice iPhone SDK App Design
Best Practice iPhone SDK App DesignBest Practice iPhone SDK App Design
Best Practice iPhone SDK App Design
 
Android Wear Development
Android Wear DevelopmentAndroid Wear Development
Android Wear Development
 
Hello world ios v1
Hello world ios v1Hello world ios v1
Hello world ios v1
 
Reinventing Identity and Social Graphs with Digits
Reinventing Identity and Social Graphs with DigitsReinventing Identity and Social Graphs with Digits
Reinventing Identity and Social Graphs with Digits
 
Deep Inside Android Hacks
Deep Inside Android HacksDeep Inside Android Hacks
Deep Inside Android Hacks
 
Titanium appcelerator sdk
Titanium appcelerator sdkTitanium appcelerator sdk
Titanium appcelerator sdk
 
Google I/O 2011, Android Honeycomb Highlights
Google I/O 2011, Android Honeycomb HighlightsGoogle I/O 2011, Android Honeycomb Highlights
Google I/O 2011, Android Honeycomb Highlights
 
Android Unit Testing With Robolectric
Android Unit Testing With RobolectricAndroid Unit Testing With Robolectric
Android Unit Testing With Robolectric
 

Recently uploaded

Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
VictoriaMetrics
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Medical / Health Care (+971588192166) Mifepristone and Misoprostol tablets 200mg
 

Recently uploaded (20)

WSO2CON 2024 - Architecting AI in the Enterprise: APIs and Applications
WSO2CON 2024 - Architecting AI in the Enterprise: APIs and ApplicationsWSO2CON 2024 - Architecting AI in the Enterprise: APIs and Applications
WSO2CON 2024 - Architecting AI in the Enterprise: APIs and Applications
 
WSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - Keynote
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
 
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
 
WSO2Con2024 - Unleashing the Financial Potential of 13 Million People
WSO2Con2024 - Unleashing the Financial Potential of 13 Million PeopleWSO2Con2024 - Unleashing the Financial Potential of 13 Million People
WSO2Con2024 - Unleashing the Financial Potential of 13 Million People
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
WSO2CON 2024 - Building a Digital Government in Uganda
WSO2CON 2024 - Building a Digital Government in UgandaWSO2CON 2024 - Building a Digital Government in Uganda
WSO2CON 2024 - Building a Digital Government in Uganda
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptx
 
WSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaS
 
WSO2Con2024 - Hello Choreo Presentation - Kanchana
WSO2Con2024 - Hello Choreo Presentation - KanchanaWSO2Con2024 - Hello Choreo Presentation - Kanchana
WSO2Con2024 - Hello Choreo Presentation - Kanchana
 
WSO2CON 2024 - Lessons from the Field: Legacy Platforms – It's Time to Let Go...
WSO2CON 2024 - Lessons from the Field: Legacy Platforms – It's Time to Let Go...WSO2CON 2024 - Lessons from the Field: Legacy Platforms – It's Time to Let Go...
WSO2CON 2024 - Lessons from the Field: Legacy Platforms – It's Time to Let Go...
 
WSO2CON2024 - Why Should You Consider Ballerina for Your Next Integration
WSO2CON2024 - Why Should You Consider Ballerina for Your Next IntegrationWSO2CON2024 - Why Should You Consider Ballerina for Your Next Integration
WSO2CON2024 - Why Should You Consider Ballerina for Your Next Integration
 
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
 
WSO2Con2024 - Low-Code Integration Tooling
WSO2Con2024 - Low-Code Integration ToolingWSO2Con2024 - Low-Code Integration Tooling
WSO2Con2024 - Low-Code Integration Tooling
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
 
WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!
WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!
WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!
 

Android Marshmallow demos