SlideShare a Scribd company logo
1 of 59
The Android Experience
24/05/2012
                         Emanuele Di Saverio
                               Guido Parlato
intro                    ia           signature   gestures   multitask   wrap up




Android evolved into a ļ¬rst-class
design platform.
Today we really have an
Android Experience



Whymca Mobile Developer Conference 2012
intro                    ia           signature   gestures   multitask   wrap up




Who?
Guido Parlato
Interaction designer @
Interaction Designer and Information Architect
specializing in the area of mobile and web interface.


          @higui




Whymca Mobile Developer Conference 2012                                                3
intro                    ia           signature   gestures   multitask   wrap up




Who?
Emanuele Di Saverio
Senior Design Technologist @
Book Author @ http://www.androidavanzato.it
(with Stefano Sanna @gerdavax)


          @hazam




Whymca Mobile Developer Conference 2012                                                4
frog overview
what we do
frog drives innovation
for the connected world.


                       6
A global team



   Seattle                                   Amsterdam    Kiev & Vinnitsa
                         Boston
                                               Milano    Munich
San Francisco
                                  New York

                Austin                                                        Shanghai
                                                                  Bangalore




                                                          Johannesburg
Android Journey
Apr 09   Sep 09   Oct 09   May 10   Dec 10   Feb 11   Oct 11




Over the hills and Far away
http://d.android.com/design
Google launched an up-to date, accurate and structured web repository
for guidelines about application design
intro                    ia           signature   gestures   multitask   wrap up




With ICS has been developed a
new system of design guidelines to
combine beauty, simplicity and
purpose to create an exceptional
experience



Whymca Mobile Developer Conference 2012
Rule of thumb

                                          The thumb has limited range and ļ¬‚exibility,
                                          only about a third of the screen is in truly
                                          eļ¬€ortless

                                          Frequently used buttons should occupy the
                                          bottom of the screen for easy tapping, while
                                          other controls should be nudged out of
                                          harm's way

                                          Toolbars and navigation typically land at the
                                          bottom edge of phone interfaces




Whymca Mobile Developer Conference 2012                                            12
Rule of thumb

                                          Stacking controls in a touch
                                          interface should always be
                                          avoided, especially at screen
                                          bottom

                                          For Android, app navigation and
                                          controls should ļ¬‚oat to the top




                                          Foursquare
                                          Foursquare




Whymca Mobile Developer Conference 2012                              13
Rule of thumb

                                          It is not just a matter of thumb
                                          comfort, but also that ļ¬ngers
                                          obscure the screen.
                                          The bottom is where hovering
                                          hands are least likely to cover
                                          content




Whymca Mobile Developer Conference 2012                               14
Rule of thumb

                                          It is not just a matter of thumb
                                          comfort, but also that ļ¬ngers
                                          obscure the screen.
                                          The bottom is where hovering
                                          hands are least likely to cover
                                          content




Whymca Mobile Developer Conference 2012                               14
Rule of thumb

                                          It is not just a matter of thumb
                                          comfort, but also that ļ¬ngers
                                          obscure the screen.
                                          The bottom is where hovering
                                          hands are least likely to cover
                                          content




Whymca Mobile Developer Conference 2012                               14
intro                    ia           signature   gestures   multitask    wrap up




Almost 6 months ago



                                                                 Action bar

                                                                 Main navigation

                                                                 Filter bar

                                                                 Search bar


                                                                 Filter bar


Whymca Mobile Developer Conference 2012                                             15
intro                    ia           signature           gestures   multitask   wrap up




Foursquare                                             Foursquare
Before ICS release                                     After ICS release

             Whymca Mobile Developer Conference 2012                                                        16
intro                    ia           signature           gestures   multitask   wrap up




Foursquare                                             Foursquare
Before ICS release                                     After ICS release

             Whymca Mobile Developer Conference 2012                                                        16
intro                    ia           signature           gestures   multitask   wrap up




Foursquare                                             Foursquare
Before ICS release                                     After ICS release

             Whymca Mobile Developer Conference 2012                                                        16
intro                    ia           signature   gestures   multitask   wrap up




ActionBar




ā€¢ Navigation (tabs and drop down)
ā€¢ Up button
ā€¢ Action items
ā€¢ Option menu
ā€¢ Split action bar (contextualized action items)


Whymca Mobile Developer Conference 2012                                            17
intro                    ia           signature   gestures   multitask   wrap up




ā€œThe Action Bar is arguably the
most important structural element
of an Android app.ā€
                                                                 Android Design site




Whymca Mobile Developer Conference 2012
intro                    ia           signature   gestures   multitask   wrap up




Good boy
you can build neat UI following the rules


                                                                                       TED
                                                                                       TED Conferences




Whymca Mobile Developer Conference 2012                                            19
intro                    ia           signature   gestures   multitask   wrap up




Good boy                                                                                     Pocket
you can build neat UI following the rules                                               Read It Later




Whymca Mobile Developer Conference 2012                                            20
intro                    ia           signature   gestures   multitask   wrap up




so eļ¬€ective to be ported into iOS applications




Whymca Mobile Developer Conference 2012                                            21
intro                    ia           signature   gestures   multitask   wrap up




Style out Action Bar

Android has powerful styling
Decoupling is good but, every decoupling brings one level on indirectness
Styling is a matter of doc research (sometimes source code)

Small projects like Action Bar Style Generator can save days of research!
http://jeļ¬€gilfelt.com/




Whymca Mobile Developer Conference 2012                                            22
intro                    ia           signature    gestures         multitask          wrap up




 Style out Action Bar
  <resources>
	    <style name="Theme.example" parent="android:style/Theme.Holo.Light">
	    	    <item name="android:selectableItemBackground">@drawable/selectable_background_example</item>
	    	    <item name="android:popupMenuStyle">@style/example_PopupMenu</item>
	    	    <item name="android:dropDownListViewStyle">@style/example_DropDownListView</item>
        <item name="android:actionBarTabStyle">@style/example_ActionBarTabStyle</item>
        <item name="android:actionDropDownStyle">@style/example_DropDownNav</item>
	    	    <item name="android:actionBarStyle">@style/example_ActionBar</item>
	    </style>	
    <style name="example_ActionBar" parent="@android:style/Widget.Holo.Light.ActionBar">
        <item name="android:background">@drawable/ab_solid_example</item>
        <item name="android:backgroundStacked">@drawable/ab_stacked_solid_example</item>
        <item name="android:backgroundSplit">@drawable/ab_bottom_solid_example</item>
    </style>
	    <style name="example_PopupMenu" parent="android:style/Widget.Holo.Light.ListPopupWindow">
	    	    <item name="android:popupBackground">@drawable/menu_dropdown_panel_example</item>	
	    </style>
	    <style name="example_DropDownListView" parent="android:style/Widget.Holo.ListView.DropDown">
	    	    <item name="android:listSelector">@drawable/selectable_background_example</item>
	    </style>
    <style name="example_ActionBarTabStyle" parent="android:style/Widget.Holo.Light.ActionBar.TabView">
        <item name="android:background">@drawable/tab_indicator_ab_example</item>
    </style>
	    <style name="example_DropDownNav" parent="android:style/Widget.Holo.Light.Spinner">
	    	    <item name="android:background">@drawable/spinner_background_ab_example</item>
	    	    <item name="android:popupBackground">@drawable/menu_dropdown_panel_example</item>
	    	    <item name="android:dropDownSelector">@drawable/selectable_background_example</item>
	    </style>
</resources>


 Whymca Mobile Developer Conference 2012                                                            23
intro                    ia           signature   gestures    multitask   wrap up




Get in Control

ActionBar standard support does a lot of stuļ¬€, more importantly
does a lot of device-adaptive, platform compliant stuļ¬€.

Itā€™s possible to take complete control and build a custom title bar,
or do whatever.

Weigh your options!


    Build it
                         +            Scale it
                                                  +   Update it
                                                                  = $$$

Whymca Mobile Developer Conference 2012                                             24
intro                    ia           signature    gestures   multitask   wrap up




          Bad Boy
          Twist the Action Bar to give personality
Astrid Task                                                     Flud News
Astrid Inc.                                                     Flud




                                                                                              25




          Whymca Mobile Developer Conference 2012
intro                    ia           signature    gestures      multitask   wrap up




         Bad Boy
         Twist the Action Bar to give personality
Fancy                                                          Kaleidoscope
Thingd                                                         Inporia Inc




         Whymca Mobile Developer Conference 2012                                                26
intro                    ia           signature   gestures   multitask   wrap up




Get in Control

requestWindowFeature(Window.FEATURE_NO_TITLE);
getActionBar().hide();
better yet is to set it up on the app theme

    <style name="Theme.MyApp" parent="android:Theme.Holo.Light">
          <item name="android:windowNoTitle">false</item>
    </style>


At the beginning of each layout
     <LinearLayout
       android:layout_width="match_parent"
       android:layout_height="match_parent"
       android:orientation="vertical"
       android:background="@drawable/app_bkg">
       <include layout="@layout/header_layout" />
           ...

Whymca Mobile Developer Conference 2012                                            27
Signature Element
intro                    ia           signature   gestures   multitask   wrap up




ā€œCreating an identity for your app
goes beyond the action bar.
Your app communicates its identity through
its data, the way that data is arranged, and
how people interact with it. ā€
                                                                  Android Design site




 Whymca Mobile Developer Conference 2012
intro                   ia           signature   gestures         multitask   wrap up




Foodspotting                                                               Skitch
Foodspotting                                                               Evernote Corp.



          Whymca Mobile Developer Conference 2012                                                  30
intro                    ia           signature   gestures   multitask   wrap up




     A Custom View
     public class CustomView extends View {

	    private Paint mPaint;
	    private RectF mRect;
	    public CustomView(Context context, AttributeSet attrs) {
	    	   super(context, attrs);
	    	   mPaint = new Paint(); mPaint.setAntiAlias(true);
	    	   mRect = new RectF();
	    }
	
	    @Override
	    protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
	    	   setMeasuredDimension(
	    	   	    	   MeasureSpec.getSize(widthMeasureSpec),
	    	   	    	   MeasureSpec.getSize(heightMeasureSpec));
	    }

	    @Override
	    protected void onDraw(Canvas canvas) {
	    	   super.onDraw(canvas);
	    	   final Paint paint = mPaint;
	    	   paint.setStyle(Style.FILL); paint.setColor(Color.RED);
	    	   final RectF oval = mRect;
	    	   oval.left = 0; oval.right = getWidth();
	    	   oval.top = 0; oval.bottom = getHeight();
	    	   canvas.drawArc(mRect, 0, 90, true, paint);
 	   }}


     Whymca Mobile Developer Conference 2012                                            31
intro                    ia           signature   gestures   multitask   wrap up




     A Custom Animation
     private float delta = 0;
	    @Override
	    protected void onDraw(Canvas canvas) {
	    	   super.onDraw(canvas);
	    	   final Paint paint = mPaint;
	    	   paint.setStyle(Style.FILL); paint.setColor(Color.RED);
	    	   final RectF oval = mRect;
	    	   oval.left = 0; oval.right = getWidth();
	    	   oval.top = 0; oval.bottom = getHeight();
	    	   canvas.drawArc(mRect, 0 + delta, 90, true, paint);
	    }

	    @Override
	    public void onClick(View v) {
	    	   ValueAnimator va = ValueAnimator.ofFloat(0, 360).setDuration(2000);
	    	   delta = 0;
	    	   va.addUpdateListener(new AnimatorUpdateListener() {
	    	   	
	    	   	    @Override
	    	   	    public void onAnimationUpdate(ValueAnimator animation) {
	    	   	    	   delta = (Float) animation.getAnimatedValue();
	    	   	    	   invalidate();
	    	   	    }
	    	   });
	    	   va.setInterpolator(new DecelerateInterpolator());
	    	   va.start();
 	   	   invalidate();


     Whymca Mobile Developer Conference 2012                                            32
Wide Gestures
Unleash your ļ¬nger
intro                    ia           signature   gestures     multitask    wrap up




                                             ICS and swipes

                                             IceCreamSandwich uses and sponsors
                                             simple gestural control to quickly navigate
                                             between detail views or tabs

                                             Swipe is a simple way to express ā€œmove
                                             awayā€ intent

                                             Easier than clicking somewhere - target
                                             area is whole screen (Fittā€™s Law)

                                             Easier than free scrolling - the content is
                                             paged (Hickā€™s Law)




Whymca Mobile Developer Conference 2012                                               34
intro                    ia           signature   gestures   multitask   wrap up




Whymca Mobile Developer Conference 2012                                            35
intro                    ia           signature   gestures   multitask   wrap up




Swipe made easy

Historically, Android developers had an hard time with this

Scrolling, inertias, bounce, attraction, paging
(and android.widget.Gallery	
 Ā is not apt for the purpose)

Lots of eļ¬€orts from the community, only few high-quality ones
      ā€¢ Googleā€™s ViewPager	
 Ā +	
 Ā (Jake Whartonā€™s ViewPagerIndicators)
      ā€¢ Cyril Mottierā€™s PagedView


ViewPager	
 Ā Included in Compatibility Package v4 and v13
http://goo.gl/JRqfC




Whymca Mobile Developer Conference 2012                                            36
intro                    ia           signature   gestures   multitask   wrap up




DIY: a shortcut
Opening activities with swipe

An easy way to be faithful to the Design Guidelines without
sweating too much is detach animation from gestures


   SwipeDetector component that detects a discrete
   UP/DOWN/RIGHT/LEFT


                                                +
    Context.startActivity(Intent	
 Ā i);
    Context.overridePendingTransition(R.anim.swipe_i
    n,	
 Ā 0);



Whymca Mobile Developer Conference 2012                                            37
intro                    ia           signature   gestures   multitask   wrap up




SwipeDetector
  public class SwipeDetector implements View.OnTouchListener {
       ....
  case MotionEvent.ACTION_DOWN:
      downX = event.getX();
      downY = event.getY();
      downT = event.getEventTime();
      return true;

  case MotionEvent.ACTION_UP:
      if (mListener == null || event.getEventTime() - downT > 1000)
           return false;

               final float deltaX = downX - event.getX();
               final float deltaY = downY - event.getY();
               // swipe vertical?
               if (Math.abs(deltaY) > yThreshold
                    && Math.abs(deltaX) < whoKnowsThreshold) {
                    // top or down
                    if (deltaY < 0) {
                        mListener.onSwipeDown();
                     } else {
                        mListener.onSwipeUp();
                     }
                     return true;
	      	       }



Whymca Mobile Developer Conference 2012                                            38
intro                    ia           signature   gestures   multitask   wrap up




  Oldies but goldies
Jake Whartonā€™s DirectionalViewPager                                SlidingDrawer




  Whymca Mobile Developer Conference 2012                                            39
Prepare to multi-task
(seriously)
intro                    ia           signature   gestures   multitask   wrap up




                                          Android lets people combine
                                          applications into new workļ¬‚ows
                                          through multitasking, notiļ¬cations,
                                          and sharing across apps.




Whymca Mobile Developer Conference 2012                                            41
Whymca Mobile Developer Conference 2012   X
intro                    ia           signature   gestures   multitask   wrap up




Multi-tasking++

Android has always been characterized by the
ability to keep multiple app running at once.

Even if not really running, system components
are ā€œpausedā€ resumed, stopped and restarted
              ,
whenever the system feels like.

ā€œAll apps running at the same timeā€




Whymca Mobile Developer Conference 2012                                            42
intro                    ia           signature             gestures             multitask             wrap up




Do your homework

Activities should save and restore their status:
Activity.onSaveInstanceState(Bundle	
 Ā b);	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 
Activity.onRestoreInstanceState(Bundle	
 Ā b);

Views should use:
Parcelable	
 Ā View.onSaveInstanceState();	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 
View.onRestoreInstanceState(Parcelable	
 Ā state);

When changing conļ¬guration (device rotation):
Activity.onRetainNonConfigurationInstance()	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 	
 Ā 
Activity.getLastNonConfigurationInstance()	
 Ā 
are deprecated! Use Fragment.setRetainInstance()




Whymca Mobile Developer Conference 2012                                                                              43
intro                    ia           signature   gestures   multitask   wrap up




Fragment (ation?)

Lifecycle-aware modularization of UI chunks
http://slidesha.re/iHxTqO




Whymca Mobile Developer Conference 2012                                            44
intro                    ia           signature   gestures   multitask   wrap up




1. Itā€™s a lifecycle concept: donā€™t use it like an <include	
 Ā />!

2. getLastNonConfigurationInstance() is deprecated
  setRetainInstance()

3. cannot be nested!

4. in/out animation and back stack together donā€™t work

5. you can use fragments in ViewPager

6. onCreateDialog() is deprecated
   android.app.DialogFragment

7. only viable option is with Android Compatibility library
   Fragment API is fragmented (???)




Whymca Mobile Developer Conference 2012                                            45
Floating windows
Enhancing multitasking
intro                    ia           signature   gestures   multitask   wrap up




                                                                                  AirCalc
                                                                                  MBFG




Whymca Mobile Developer Conference 2012                                            47
OverSkreen
                                              MBFG




Whymca Mobile Developer Conference 2012   X
intro                    ia           signature   gestures   multitask   wrap up




Overlays

The key to implement ļ¬‚oating, always on top views is exploiting
overlays, through the usage of WindowManager system service

Android displays views on diļ¬€erent layers (+15 layer types)
Application usually manage a Window.TYPE_APPLICATION

Examples of other window types:
Status Bar, Application Dialog, System Dialog, IME




Whymca Mobile Developer Conference 2012                                            48
intro                   ia           signature   gestures       multitask       wrap up


            public class FloatingButtonService extends Service {

        	     public void onCreate() {
        	     	   super.onCreate();
        	     	   mButton = new Button(this);
        	     	   mButton.setText("Forever Here");
        	     	   mButton.setOnTouchListener(new OnTouchListener() {
        	     	   	    ...something...
        	     	   });
        	     	   WindowManager.LayoutParams params = new WindowManager.LayoutParams(
        	     	   	    	   WindowManager.LayoutParams.WRAP_CONTENT,
        	     	   	    	   WindowManager.LayoutParams.WRAP_CONTENT,
        	     	   	    	   WindowManager.LayoutParams.TYPE_SYSTEM_ALERT,
        	     	   	    	   LayoutParams.FLAG_NOT_FOCUSABLE
        	     	   	    	   	    	   | LayoutParams.FLAG_NOT_TOUCH_MODAL,
        	     	   	    	   PixelFormat.TRANSLUCENT);
        	     	   params.gravity = Gravity.CENTER;
        	     	   mWm = (WindowManager) getSystemService(WINDOW_SERVICE);
        	     	   mWm.addView(mButton, params);
        	     }

        	     public void onDestroy() {
        	     	   mWm.removeView(mButton);
        	     	   super.onDestroy();
        	     }


Intent serv = new Intent(this,                               <uses-permission android:name=
   FloatingButtonService.class);                               "android.permission.SYSTEM_ALERT_WINDOW" />
startService(serv);




       Whymca Mobile Developer Conference 2012                                                      49
And so what?
intro                    ia           signature   gestures   multitask   wrap up




Android is the service design
platform.
Capabilities are limitless
Headaches are limitless
Step your game up.



Whymca Mobile Developer Conference 2012
intro                    ia           signature   gestures   multitask   wrap up




Links

http://d.android.com/design

http://code.google.com/p/androidavanzato/

http://slidesha.re/GSalF6 - @gerdavax on NFC

http://www.frogdesign.com




Whymca Mobile Developer Conference 2012                                            52
Emanuele Di Saverio
            emanuele.disaverio@gmail.com
                @hazam


            Guido Parlato
            guido@higui.it
                 @higui




Ā© 2011 frog. All rights reserved.

More Related Content

What's hot

Large Multitouch infographic
Large Multitouch infographicLarge Multitouch infographic
Large Multitouch infographicAndreas Kƶster
Ā 
Ultrabook Development Using Touch - Intel Ultrabook AppLab Berlin
Ultrabook Development Using Touch - Intel Ultrabook AppLab BerlinUltrabook Development Using Touch - Intel Ultrabook AppLab Berlin
Ultrabook Development Using Touch - Intel Ultrabook AppLab BerlinIntel Developer Zone Community
Ā 
UX archetypes secondary
UX archetypes secondaryUX archetypes secondary
UX archetypes secondaryNicholas Evans
Ā 
DeltaAIrlines User Experience Vision Ć  7 ans 2008 - 2015
DeltaAIrlines User Experience  Vision Ć  7 ans 2008 - 2015DeltaAIrlines User Experience  Vision Ć  7 ans 2008 - 2015
DeltaAIrlines User Experience Vision Ć  7 ans 2008 - 2015Christophe Cotin Valois
Ā 
What you can do in Android that you can't in iOS
What you can do in Android that you can't in iOSWhat you can do in Android that you can't in iOS
What you can do in Android that you can't in iOSjnedumgottil
Ā 
User Interface Design for Web and Mobile Devices
User Interface Design for Web and Mobile DevicesUser Interface Design for Web and Mobile Devices
User Interface Design for Web and Mobile DevicesIRJET Journal
Ā 
Organic Design UI (2010)
Organic Design UI (2010)Organic Design UI (2010)
Organic Design UI (2010)Mirco Pasqualini
Ā 
TheFuture of Mobile Application and Media Tablets
TheFuture of Mobile Application and Media TabletsTheFuture of Mobile Application and Media Tablets
TheFuture of Mobile Application and Media TabletsSoftware Park Thailand
Ā 
APPNATION IV - The State of Security in the Mobile Enterprise - Cesare Garlati
APPNATION IV - The State of Security in the Mobile Enterprise - Cesare GarlatiAPPNATION IV - The State of Security in the Mobile Enterprise - Cesare Garlati
APPNATION IV - The State of Security in the Mobile Enterprise - Cesare GarlatiMasha Geller
Ā 
Monetizing The Keypad Real Estate On Mobile Devices 9.2009
Monetizing The Keypad Real Estate On Mobile Devices   9.2009Monetizing The Keypad Real Estate On Mobile Devices   9.2009
Monetizing The Keypad Real Estate On Mobile Devices 9.2009www.webhub.mobi by Yuvee, Inc.
Ā 
Mobile Apps & Social Network Trends : Impact on Airline Business
Mobile Apps & Social Network Trends : Impact on Airline BusinessMobile Apps & Social Network Trends : Impact on Airline Business
Mobile Apps & Social Network Trends : Impact on Airline BusinessSoftware Park Thailand
Ā 

What's hot (15)

Large Multitouch infographic
Large Multitouch infographicLarge Multitouch infographic
Large Multitouch infographic
Ā 
Windows phone
Windows phoneWindows phone
Windows phone
Ā 
Ultrabook Development Using Touch - Intel Ultrabook AppLab Berlin
Ultrabook Development Using Touch - Intel Ultrabook AppLab BerlinUltrabook Development Using Touch - Intel Ultrabook AppLab Berlin
Ultrabook Development Using Touch - Intel Ultrabook AppLab Berlin
Ā 
UX archetypes secondary
UX archetypes secondaryUX archetypes secondary
UX archetypes secondary
Ā 
DeltaAIrlines User Experience Vision Ć  7 ans 2008 - 2015
DeltaAIrlines User Experience  Vision Ć  7 ans 2008 - 2015DeltaAIrlines User Experience  Vision Ć  7 ans 2008 - 2015
DeltaAIrlines User Experience Vision Ć  7 ans 2008 - 2015
Ā 
What you can do in Android that you can't in iOS
What you can do in Android that you can't in iOSWhat you can do in Android that you can't in iOS
What you can do in Android that you can't in iOS
Ā 
User Interface Design for Web and Mobile Devices
User Interface Design for Web and Mobile DevicesUser Interface Design for Web and Mobile Devices
User Interface Design for Web and Mobile Devices
Ā 
Organic Design UI (2010)
Organic Design UI (2010)Organic Design UI (2010)
Organic Design UI (2010)
Ā 
Android
AndroidAndroid
Android
Ā 
TheFuture of Mobile Application and Media Tablets
TheFuture of Mobile Application and Media TabletsTheFuture of Mobile Application and Media Tablets
TheFuture of Mobile Application and Media Tablets
Ā 
Mobile application design & development
Mobile application design & developmentMobile application design & development
Mobile application design & development
Ā 
APPNATION IV - The State of Security in the Mobile Enterprise - Cesare Garlati
APPNATION IV - The State of Security in the Mobile Enterprise - Cesare GarlatiAPPNATION IV - The State of Security in the Mobile Enterprise - Cesare Garlati
APPNATION IV - The State of Security in the Mobile Enterprise - Cesare Garlati
Ā 
Mobile Games
Mobile GamesMobile Games
Mobile Games
Ā 
Monetizing The Keypad Real Estate On Mobile Devices 9.2009
Monetizing The Keypad Real Estate On Mobile Devices   9.2009Monetizing The Keypad Real Estate On Mobile Devices   9.2009
Monetizing The Keypad Real Estate On Mobile Devices 9.2009
Ā 
Mobile Apps & Social Network Trends : Impact on Airline Business
Mobile Apps & Social Network Trends : Impact on Airline BusinessMobile Apps & Social Network Trends : Impact on Airline Business
Mobile Apps & Social Network Trends : Impact on Airline Business
Ā 

Viewers also liked

Home automation
Home automationHome automation
Home automationahmkashwa
Ā 
seminar presentation on Project ara
seminar presentation on Project araseminar presentation on Project ara
seminar presentation on Project araGeorgekutty Francis
Ā 
Sixth sense-final-ppt
Sixth sense-final-pptSixth sense-final-ppt
Sixth sense-final-pptThedarkangel1
Ā 
Introduction to computer network
Introduction to computer networkIntroduction to computer network
Introduction to computer networkAshita Agrawal
Ā 
Internet Protocol version 6
Internet Protocol version 6Internet Protocol version 6
Internet Protocol version 6Rekha Yadav
Ā 
The sixth sense technology complete ppt
The sixth sense technology complete pptThe sixth sense technology complete ppt
The sixth sense technology complete pptatinav242
Ā 
Montreal Girl Geeks: Building the Modern Web
Montreal Girl Geeks: Building the Modern WebMontreal Girl Geeks: Building the Modern Web
Montreal Girl Geeks: Building the Modern WebRachel Andrew
Ā 
The Future Of Work & The Work Of The Future
The Future Of Work & The Work Of The FutureThe Future Of Work & The Work Of The Future
The Future Of Work & The Work Of The FutureArturo Pelayo
Ā 

Viewers also liked (11)

Home automation
Home automationHome automation
Home automation
Ā 
Google's project ara
Google's project araGoogle's project ara
Google's project ara
Ā 
seminar presentation on Project ara
seminar presentation on Project araseminar presentation on Project ara
seminar presentation on Project ara
Ā 
Virtual machine
Virtual machineVirtual machine
Virtual machine
Ā 
Fogscreen
FogscreenFogscreen
Fogscreen
Ā 
Sixth sense-final-ppt
Sixth sense-final-pptSixth sense-final-ppt
Sixth sense-final-ppt
Ā 
Introduction to computer network
Introduction to computer networkIntroduction to computer network
Introduction to computer network
Ā 
Internet Protocol version 6
Internet Protocol version 6Internet Protocol version 6
Internet Protocol version 6
Ā 
The sixth sense technology complete ppt
The sixth sense technology complete pptThe sixth sense technology complete ppt
The sixth sense technology complete ppt
Ā 
Montreal Girl Geeks: Building the Modern Web
Montreal Girl Geeks: Building the Modern WebMontreal Girl Geeks: Building the Modern Web
Montreal Girl Geeks: Building the Modern Web
Ā 
The Future Of Work & The Work Of The Future
The Future Of Work & The Work Of The FutureThe Future Of Work & The Work Of The Future
The Future Of Work & The Work Of The Future
Ā 

Similar to The Android Experience

Sencha touch in the wild
Sencha touch in the wildSencha touch in the wild
Sencha touch in the wildcarr
Ā 
Touch UIs are Quite Different
Touch UIs are Quite DifferentTouch UIs are Quite Different
Touch UIs are Quite DifferentPanu Korhonen
Ā 
2011 VMI DEMO Conference Highlights
2011 VMI DEMO Conference Highlights2011 VMI DEMO Conference Highlights
2011 VMI DEMO Conference HighlightsJulie_Vasquez
Ā 
Android
AndroidAndroid
AndroidmmJRiest
Ā 
Introduction to Mobile Development
Introduction to Mobile DevelopmentIntroduction to Mobile Development
Introduction to Mobile DevelopmentFoteini Valeonti
Ā 
How to scale enterprise mobility and improve roi
How to scale enterprise mobility and improve roiHow to scale enterprise mobility and improve roi
How to scale enterprise mobility and improve roiApperian
Ā 
Designing the New Android Experience - The Golden Age of Android
Designing the New Android Experience - The Golden Age of AndroidDesigning the New Android Experience - The Golden Age of Android
Designing the New Android Experience - The Golden Age of AndroidMutual Mobile
Ā 
Embracing mobile platforms | nascent at carmel ventures
Embracing mobile platforms | nascent at carmel venturesEmbracing mobile platforms | nascent at carmel ventures
Embracing mobile platforms | nascent at carmel venturesnascent
Ā 
Ficod - Optimizing android ux a case study
Ficod - Optimizing android ux a case studyFicod - Optimizing android ux a case study
Ficod - Optimizing android ux a case studyJerome Nadel
Ā 
Bluemonitor Android Consulting Services
Bluemonitor Android Consulting ServicesBluemonitor Android Consulting Services
Bluemonitor Android Consulting Servicesbluemonitor
Ā 
Dribbble inkod 2013
Dribbble inkod 2013Dribbble inkod 2013
Dribbble inkod 2013Ilan Dray
Ā 
TiTokyo conference in Tokyo, Japan for Appcelerator community
TiTokyo conference in Tokyo, Japan for Appcelerator communityTiTokyo conference in Tokyo, Japan for Appcelerator community
TiTokyo conference in Tokyo, Japan for Appcelerator communityJeff Haynie
Ā 
Siruna session at Drupalcon Paris 2009
Siruna session at Drupalcon Paris 2009Siruna session at Drupalcon Paris 2009
Siruna session at Drupalcon Paris 2009Tom Deryckere
Ā 
Webinar: Mobile trends and their impact on Nordic enterprises
Webinar: Mobile trends and their impact on Nordic enterprisesWebinar: Mobile trends and their impact on Nordic enterprises
Webinar: Mobile trends and their impact on Nordic enterprisesTieto Corporation
Ā 
Big M Conference - Future Mobile Innovations
Big M Conference - Future Mobile InnovationsBig M Conference - Future Mobile Innovations
Big M Conference - Future Mobile InnovationsPaul Golding
Ā 
Camerjam mobile marketing masterclass 12snap
Camerjam mobile marketing masterclass 12snapCamerjam mobile marketing masterclass 12snap
Camerjam mobile marketing masterclass 12snapJames Cameron
Ā 
Customer experience and marketing become one
Customer experience and marketing become oneCustomer experience and marketing become one
Customer experience and marketing become oneFjord
Ā 
Apple iPad Publishing Best Practices | Jim Nasr | Armedia
Apple iPad Publishing Best Practices | Jim Nasr | ArmediaApple iPad Publishing Best Practices | Jim Nasr | Armedia
Apple iPad Publishing Best Practices | Jim Nasr | ArmediaArmedia LLC
Ā 

Similar to The Android Experience (20)

Sencha touch in the wild
Sencha touch in the wildSencha touch in the wild
Sencha touch in the wild
Ā 
Touch UIs are Quite Different
Touch UIs are Quite DifferentTouch UIs are Quite Different
Touch UIs are Quite Different
Ā 
2011 VMI DEMO Conference Highlights
2011 VMI DEMO Conference Highlights2011 VMI DEMO Conference Highlights
2011 VMI DEMO Conference Highlights
Ā 
Android
AndroidAndroid
Android
Ā 
Introduction to Mobile Development
Introduction to Mobile DevelopmentIntroduction to Mobile Development
Introduction to Mobile Development
Ā 
How to scale enterprise mobility and improve roi
How to scale enterprise mobility and improve roiHow to scale enterprise mobility and improve roi
How to scale enterprise mobility and improve roi
Ā 
Designing the New Android Experience - The Golden Age of Android
Designing the New Android Experience - The Golden Age of AndroidDesigning the New Android Experience - The Golden Age of Android
Designing the New Android Experience - The Golden Age of Android
Ā 
Embracing mobile platforms | nascent at carmel ventures
Embracing mobile platforms | nascent at carmel venturesEmbracing mobile platforms | nascent at carmel ventures
Embracing mobile platforms | nascent at carmel ventures
Ā 
Ficod - Optimizing android ux a case study
Ficod - Optimizing android ux a case studyFicod - Optimizing android ux a case study
Ficod - Optimizing android ux a case study
Ā 
Mobilemonday b2b flow pilots
Mobilemonday b2b   flow pilotsMobilemonday b2b   flow pilots
Mobilemonday b2b flow pilots
Ā 
Bluemonitor Android Consulting Services
Bluemonitor Android Consulting ServicesBluemonitor Android Consulting Services
Bluemonitor Android Consulting Services
Ā 
Dribbble inkod 2013
Dribbble inkod 2013Dribbble inkod 2013
Dribbble inkod 2013
Ā 
TiTokyo conference in Tokyo, Japan for Appcelerator community
TiTokyo conference in Tokyo, Japan for Appcelerator communityTiTokyo conference in Tokyo, Japan for Appcelerator community
TiTokyo conference in Tokyo, Japan for Appcelerator community
Ā 
Siruna session at Drupalcon Paris 2009
Siruna session at Drupalcon Paris 2009Siruna session at Drupalcon Paris 2009
Siruna session at Drupalcon Paris 2009
Ā 
Open mic monday may 11 2015
Open mic monday may 11 2015Open mic monday may 11 2015
Open mic monday may 11 2015
Ā 
Webinar: Mobile trends and their impact on Nordic enterprises
Webinar: Mobile trends and their impact on Nordic enterprisesWebinar: Mobile trends and their impact on Nordic enterprises
Webinar: Mobile trends and their impact on Nordic enterprises
Ā 
Big M Conference - Future Mobile Innovations
Big M Conference - Future Mobile InnovationsBig M Conference - Future Mobile Innovations
Big M Conference - Future Mobile Innovations
Ā 
Camerjam mobile marketing masterclass 12snap
Camerjam mobile marketing masterclass 12snapCamerjam mobile marketing masterclass 12snap
Camerjam mobile marketing masterclass 12snap
Ā 
Customer experience and marketing become one
Customer experience and marketing become oneCustomer experience and marketing become one
Customer experience and marketing become one
Ā 
Apple iPad Publishing Best Practices | Jim Nasr | Armedia
Apple iPad Publishing Best Practices | Jim Nasr | ArmediaApple iPad Publishing Best Practices | Jim Nasr | Armedia
Apple iPad Publishing Best Practices | Jim Nasr | Armedia
Ā 

More from Emanuele Di Saverio

Programming Sideways: Asynchronous Techniques for Android
Programming Sideways: Asynchronous Techniques for AndroidProgramming Sideways: Asynchronous Techniques for Android
Programming Sideways: Asynchronous Techniques for AndroidEmanuele Di Saverio
Ā 
Android 1.5 to 3.0: a compatibility journey
Android 1.5 to 3.0: a compatibility journeyAndroid 1.5 to 3.0: a compatibility journey
Android 1.5 to 3.0: a compatibility journeyEmanuele Di Saverio
Ā 
Dive Into Android [ITA] - Long
Dive Into Android [ITA] - LongDive Into Android [ITA] - Long
Dive Into Android [ITA] - LongEmanuele Di Saverio
Ā 
Whymca Dive into Android [ITA]
Whymca Dive into Android [ITA]Whymca Dive into Android [ITA]
Whymca Dive into Android [ITA]Emanuele Di Saverio
Ā 
Android Bluetooth Hacking Java Day2010 Eng
Android Bluetooth Hacking Java Day2010 EngAndroid Bluetooth Hacking Java Day2010 Eng
Android Bluetooth Hacking Java Day2010 EngEmanuele Di Saverio
Ā 

More from Emanuele Di Saverio (6)

In a Material world
In a Material worldIn a Material world
In a Material world
Ā 
Programming Sideways: Asynchronous Techniques for Android
Programming Sideways: Asynchronous Techniques for AndroidProgramming Sideways: Asynchronous Techniques for Android
Programming Sideways: Asynchronous Techniques for Android
Ā 
Android 1.5 to 3.0: a compatibility journey
Android 1.5 to 3.0: a compatibility journeyAndroid 1.5 to 3.0: a compatibility journey
Android 1.5 to 3.0: a compatibility journey
Ā 
Dive Into Android [ITA] - Long
Dive Into Android [ITA] - LongDive Into Android [ITA] - Long
Dive Into Android [ITA] - Long
Ā 
Whymca Dive into Android [ITA]
Whymca Dive into Android [ITA]Whymca Dive into Android [ITA]
Whymca Dive into Android [ITA]
Ā 
Android Bluetooth Hacking Java Day2010 Eng
Android Bluetooth Hacking Java Day2010 EngAndroid Bluetooth Hacking Java Day2010 Eng
Android Bluetooth Hacking Java Day2010 Eng
Ā 

Recently uploaded

Case Study of Hotel Taj Vivanta, Pune
Case Study of Hotel Taj Vivanta, PuneCase Study of Hotel Taj Vivanta, Pune
Case Study of Hotel Taj Vivanta, PuneLukeKholes
Ā 
Verified Trusted Call Girls AdugodišŸ’˜ 9352852248 Good Looking standard Profil...
Verified Trusted Call Girls AdugodišŸ’˜ 9352852248  Good Looking standard Profil...Verified Trusted Call Girls AdugodišŸ’˜ 9352852248  Good Looking standard Profil...
Verified Trusted Call Girls AdugodišŸ’˜ 9352852248 Good Looking standard Profil...kumaririma588
Ā 
Best VIP Call Girls Noida Sector 44 Call Me: 8448380779
Best VIP Call Girls Noida Sector 44 Call Me: 8448380779Best VIP Call Girls Noida Sector 44 Call Me: 8448380779
Best VIP Call Girls Noida Sector 44 Call Me: 8448380779Delhi Call girls
Ā 
Escorts Service Nagavara ā˜Ž 7737669865ā˜Ž Book Your One night Stand (Bangalore)
Escorts Service Nagavara ā˜Ž 7737669865ā˜Ž Book Your One night Stand (Bangalore)Escorts Service Nagavara ā˜Ž 7737669865ā˜Ž Book Your One night Stand (Bangalore)
Escorts Service Nagavara ā˜Ž 7737669865ā˜Ž Book Your One night Stand (Bangalore)amitlee9823
Ā 
Fashion trends before and after covid.pptx
Fashion trends before and after covid.pptxFashion trends before and after covid.pptx
Fashion trends before and after covid.pptxVanshNarang19
Ā 
Kurla Call Girls Pooja NehwalšŸ“ž 9892124323 āœ… Vashi Call Service Available Nea...
Kurla Call Girls Pooja NehwalšŸ“ž 9892124323 āœ…  Vashi Call Service Available Nea...Kurla Call Girls Pooja NehwalšŸ“ž 9892124323 āœ…  Vashi Call Service Available Nea...
Kurla Call Girls Pooja NehwalšŸ“ž 9892124323 āœ… Vashi Call Service Available Nea...Pooja Nehwal
Ā 
WAEC Carpentry and Joinery Past Questions
WAEC Carpentry and Joinery Past QuestionsWAEC Carpentry and Joinery Past Questions
WAEC Carpentry and Joinery Past QuestionsCharles Obaleagbon
Ā 
(AISHA) Ambegaon Khurd Call Girls Just Call 7001035870 [ Cash on Delivery ] P...
(AISHA) Ambegaon Khurd Call Girls Just Call 7001035870 [ Cash on Delivery ] P...(AISHA) Ambegaon Khurd Call Girls Just Call 7001035870 [ Cash on Delivery ] P...
(AISHA) Ambegaon Khurd Call Girls Just Call 7001035870 [ Cash on Delivery ] P...ranjana rawat
Ā 
Peaches App development presentation deck
Peaches App development presentation deckPeaches App development presentation deck
Peaches App development presentation decktbatkhuu1
Ā 
VIP Call Girls Service Bhagyanagar Hyderabad Call +91-8250192130
VIP Call Girls Service Bhagyanagar Hyderabad Call +91-8250192130VIP Call Girls Service Bhagyanagar Hyderabad Call +91-8250192130
VIP Call Girls Service Bhagyanagar Hyderabad Call +91-8250192130Suhani Kapoor
Ā 
AMBER GRAIN EMBROIDERY | Growing folklore elements | Root-based materials, w...
AMBER GRAIN EMBROIDERY | Growing folklore elements |  Root-based materials, w...AMBER GRAIN EMBROIDERY | Growing folklore elements |  Root-based materials, w...
AMBER GRAIN EMBROIDERY | Growing folklore elements | Root-based materials, w...BarusRa
Ā 
CALL ON āž„8923113531 šŸ”Call Girls Kalyanpur Lucknow best Female service šŸ§µ
CALL ON āž„8923113531 šŸ”Call Girls Kalyanpur Lucknow best Female service  šŸ§µCALL ON āž„8923113531 šŸ”Call Girls Kalyanpur Lucknow best Female service  šŸ§µ
CALL ON āž„8923113531 šŸ”Call Girls Kalyanpur Lucknow best Female service šŸ§µanilsa9823
Ā 
Design Inspiration for College by Slidesgo.pptx
Design Inspiration for College by Slidesgo.pptxDesign Inspiration for College by Slidesgo.pptx
Design Inspiration for College by Slidesgo.pptxTusharBahuguna2
Ā 
The history of music videos a level presentation
The history of music videos a level presentationThe history of music videos a level presentation
The history of music videos a level presentationamedia6
Ā 
Kala jadu for love marriage | Real amil baba | Famous amil baba | kala jadu n...
Kala jadu for love marriage | Real amil baba | Famous amil baba | kala jadu n...Kala jadu for love marriage | Real amil baba | Famous amil baba | kala jadu n...
Kala jadu for love marriage | Real amil baba | Famous amil baba | kala jadu n...babafaisel
Ā 
Best VIP Call Girls Noida Sector 47 Call Me: 8448380779
Best VIP Call Girls Noida Sector 47 Call Me: 8448380779Best VIP Call Girls Noida Sector 47 Call Me: 8448380779
Best VIP Call Girls Noida Sector 47 Call Me: 8448380779Delhi Call girls
Ā 
The Art of Batik, template ppt aesthetic
The Art of Batik, template ppt aestheticThe Art of Batik, template ppt aesthetic
The Art of Batik, template ppt aestheticTiaFebriani
Ā 
CALL ON āž„8923113531 šŸ”Call Girls Aminabad Lucknow best Night Fun service
CALL ON āž„8923113531 šŸ”Call Girls Aminabad Lucknow best Night Fun serviceCALL ON āž„8923113531 šŸ”Call Girls Aminabad Lucknow best Night Fun service
CALL ON āž„8923113531 šŸ”Call Girls Aminabad Lucknow best Night Fun serviceanilsa9823
Ā 
VIP Call Girls Service Mehdipatnam Hyderabad Call +91-8250192130
VIP Call Girls Service Mehdipatnam Hyderabad Call +91-8250192130VIP Call Girls Service Mehdipatnam Hyderabad Call +91-8250192130
VIP Call Girls Service Mehdipatnam Hyderabad Call +91-8250192130Suhani Kapoor
Ā 

Recently uploaded (20)

Case Study of Hotel Taj Vivanta, Pune
Case Study of Hotel Taj Vivanta, PuneCase Study of Hotel Taj Vivanta, Pune
Case Study of Hotel Taj Vivanta, Pune
Ā 
Verified Trusted Call Girls AdugodišŸ’˜ 9352852248 Good Looking standard Profil...
Verified Trusted Call Girls AdugodišŸ’˜ 9352852248  Good Looking standard Profil...Verified Trusted Call Girls AdugodišŸ’˜ 9352852248  Good Looking standard Profil...
Verified Trusted Call Girls AdugodišŸ’˜ 9352852248 Good Looking standard Profil...
Ā 
Best VIP Call Girls Noida Sector 44 Call Me: 8448380779
Best VIP Call Girls Noida Sector 44 Call Me: 8448380779Best VIP Call Girls Noida Sector 44 Call Me: 8448380779
Best VIP Call Girls Noida Sector 44 Call Me: 8448380779
Ā 
Escorts Service Nagavara ā˜Ž 7737669865ā˜Ž Book Your One night Stand (Bangalore)
Escorts Service Nagavara ā˜Ž 7737669865ā˜Ž Book Your One night Stand (Bangalore)Escorts Service Nagavara ā˜Ž 7737669865ā˜Ž Book Your One night Stand (Bangalore)
Escorts Service Nagavara ā˜Ž 7737669865ā˜Ž Book Your One night Stand (Bangalore)
Ā 
Call Girls Service Mukherjee Nagar @9999965857 Delhi šŸ«¦ No Advance VVIP šŸŽ SER...
Call Girls Service Mukherjee Nagar @9999965857 Delhi šŸ«¦ No Advance  VVIP šŸŽ SER...Call Girls Service Mukherjee Nagar @9999965857 Delhi šŸ«¦ No Advance  VVIP šŸŽ SER...
Call Girls Service Mukherjee Nagar @9999965857 Delhi šŸ«¦ No Advance VVIP šŸŽ SER...
Ā 
Fashion trends before and after covid.pptx
Fashion trends before and after covid.pptxFashion trends before and after covid.pptx
Fashion trends before and after covid.pptx
Ā 
Kurla Call Girls Pooja NehwalšŸ“ž 9892124323 āœ… Vashi Call Service Available Nea...
Kurla Call Girls Pooja NehwalšŸ“ž 9892124323 āœ…  Vashi Call Service Available Nea...Kurla Call Girls Pooja NehwalšŸ“ž 9892124323 āœ…  Vashi Call Service Available Nea...
Kurla Call Girls Pooja NehwalšŸ“ž 9892124323 āœ… Vashi Call Service Available Nea...
Ā 
WAEC Carpentry and Joinery Past Questions
WAEC Carpentry and Joinery Past QuestionsWAEC Carpentry and Joinery Past Questions
WAEC Carpentry and Joinery Past Questions
Ā 
(AISHA) Ambegaon Khurd Call Girls Just Call 7001035870 [ Cash on Delivery ] P...
(AISHA) Ambegaon Khurd Call Girls Just Call 7001035870 [ Cash on Delivery ] P...(AISHA) Ambegaon Khurd Call Girls Just Call 7001035870 [ Cash on Delivery ] P...
(AISHA) Ambegaon Khurd Call Girls Just Call 7001035870 [ Cash on Delivery ] P...
Ā 
Peaches App development presentation deck
Peaches App development presentation deckPeaches App development presentation deck
Peaches App development presentation deck
Ā 
VIP Call Girls Service Bhagyanagar Hyderabad Call +91-8250192130
VIP Call Girls Service Bhagyanagar Hyderabad Call +91-8250192130VIP Call Girls Service Bhagyanagar Hyderabad Call +91-8250192130
VIP Call Girls Service Bhagyanagar Hyderabad Call +91-8250192130
Ā 
AMBER GRAIN EMBROIDERY | Growing folklore elements | Root-based materials, w...
AMBER GRAIN EMBROIDERY | Growing folklore elements |  Root-based materials, w...AMBER GRAIN EMBROIDERY | Growing folklore elements |  Root-based materials, w...
AMBER GRAIN EMBROIDERY | Growing folklore elements | Root-based materials, w...
Ā 
CALL ON āž„8923113531 šŸ”Call Girls Kalyanpur Lucknow best Female service šŸ§µ
CALL ON āž„8923113531 šŸ”Call Girls Kalyanpur Lucknow best Female service  šŸ§µCALL ON āž„8923113531 šŸ”Call Girls Kalyanpur Lucknow best Female service  šŸ§µ
CALL ON āž„8923113531 šŸ”Call Girls Kalyanpur Lucknow best Female service šŸ§µ
Ā 
Design Inspiration for College by Slidesgo.pptx
Design Inspiration for College by Slidesgo.pptxDesign Inspiration for College by Slidesgo.pptx
Design Inspiration for College by Slidesgo.pptx
Ā 
The history of music videos a level presentation
The history of music videos a level presentationThe history of music videos a level presentation
The history of music videos a level presentation
Ā 
Kala jadu for love marriage | Real amil baba | Famous amil baba | kala jadu n...
Kala jadu for love marriage | Real amil baba | Famous amil baba | kala jadu n...Kala jadu for love marriage | Real amil baba | Famous amil baba | kala jadu n...
Kala jadu for love marriage | Real amil baba | Famous amil baba | kala jadu n...
Ā 
Best VIP Call Girls Noida Sector 47 Call Me: 8448380779
Best VIP Call Girls Noida Sector 47 Call Me: 8448380779Best VIP Call Girls Noida Sector 47 Call Me: 8448380779
Best VIP Call Girls Noida Sector 47 Call Me: 8448380779
Ā 
The Art of Batik, template ppt aesthetic
The Art of Batik, template ppt aestheticThe Art of Batik, template ppt aesthetic
The Art of Batik, template ppt aesthetic
Ā 
CALL ON āž„8923113531 šŸ”Call Girls Aminabad Lucknow best Night Fun service
CALL ON āž„8923113531 šŸ”Call Girls Aminabad Lucknow best Night Fun serviceCALL ON āž„8923113531 šŸ”Call Girls Aminabad Lucknow best Night Fun service
CALL ON āž„8923113531 šŸ”Call Girls Aminabad Lucknow best Night Fun service
Ā 
VIP Call Girls Service Mehdipatnam Hyderabad Call +91-8250192130
VIP Call Girls Service Mehdipatnam Hyderabad Call +91-8250192130VIP Call Girls Service Mehdipatnam Hyderabad Call +91-8250192130
VIP Call Girls Service Mehdipatnam Hyderabad Call +91-8250192130
Ā 

The Android Experience

  • 1. The Android Experience 24/05/2012 Emanuele Di Saverio Guido Parlato
  • 2. intro ia signature gestures multitask wrap up Android evolved into a ļ¬rst-class design platform. Today we really have an Android Experience Whymca Mobile Developer Conference 2012
  • 3. intro ia signature gestures multitask wrap up Who? Guido Parlato Interaction designer @ Interaction Designer and Information Architect specializing in the area of mobile and web interface. @higui Whymca Mobile Developer Conference 2012 3
  • 4. intro ia signature gestures multitask wrap up Who? Emanuele Di Saverio Senior Design Technologist @ Book Author @ http://www.androidavanzato.it (with Stefano Sanna @gerdavax) @hazam Whymca Mobile Developer Conference 2012 4
  • 6. frog drives innovation for the connected world. 6
  • 7. A global team Seattle Amsterdam Kiev & Vinnitsa Boston Milano Munich San Francisco New York Austin Shanghai Bangalore Johannesburg
  • 9. Apr 09 Sep 09 Oct 09 May 10 Dec 10 Feb 11 Oct 11 Over the hills and Far away
  • 10. http://d.android.com/design Google launched an up-to date, accurate and structured web repository for guidelines about application design
  • 11. intro ia signature gestures multitask wrap up With ICS has been developed a new system of design guidelines to combine beauty, simplicity and purpose to create an exceptional experience Whymca Mobile Developer Conference 2012
  • 12. Rule of thumb The thumb has limited range and ļ¬‚exibility, only about a third of the screen is in truly eļ¬€ortless Frequently used buttons should occupy the bottom of the screen for easy tapping, while other controls should be nudged out of harm's way Toolbars and navigation typically land at the bottom edge of phone interfaces Whymca Mobile Developer Conference 2012 12
  • 13. Rule of thumb Stacking controls in a touch interface should always be avoided, especially at screen bottom For Android, app navigation and controls should ļ¬‚oat to the top Foursquare Foursquare Whymca Mobile Developer Conference 2012 13
  • 14. Rule of thumb It is not just a matter of thumb comfort, but also that ļ¬ngers obscure the screen. The bottom is where hovering hands are least likely to cover content Whymca Mobile Developer Conference 2012 14
  • 15. Rule of thumb It is not just a matter of thumb comfort, but also that ļ¬ngers obscure the screen. The bottom is where hovering hands are least likely to cover content Whymca Mobile Developer Conference 2012 14
  • 16. Rule of thumb It is not just a matter of thumb comfort, but also that ļ¬ngers obscure the screen. The bottom is where hovering hands are least likely to cover content Whymca Mobile Developer Conference 2012 14
  • 17. intro ia signature gestures multitask wrap up Almost 6 months ago Action bar Main navigation Filter bar Search bar Filter bar Whymca Mobile Developer Conference 2012 15
  • 18. intro ia signature gestures multitask wrap up Foursquare Foursquare Before ICS release After ICS release Whymca Mobile Developer Conference 2012 16
  • 19. intro ia signature gestures multitask wrap up Foursquare Foursquare Before ICS release After ICS release Whymca Mobile Developer Conference 2012 16
  • 20. intro ia signature gestures multitask wrap up Foursquare Foursquare Before ICS release After ICS release Whymca Mobile Developer Conference 2012 16
  • 21. intro ia signature gestures multitask wrap up ActionBar ā€¢ Navigation (tabs and drop down) ā€¢ Up button ā€¢ Action items ā€¢ Option menu ā€¢ Split action bar (contextualized action items) Whymca Mobile Developer Conference 2012 17
  • 22. intro ia signature gestures multitask wrap up ā€œThe Action Bar is arguably the most important structural element of an Android app.ā€ Android Design site Whymca Mobile Developer Conference 2012
  • 23. intro ia signature gestures multitask wrap up Good boy you can build neat UI following the rules TED TED Conferences Whymca Mobile Developer Conference 2012 19
  • 24. intro ia signature gestures multitask wrap up Good boy Pocket you can build neat UI following the rules Read It Later Whymca Mobile Developer Conference 2012 20
  • 25. intro ia signature gestures multitask wrap up so eļ¬€ective to be ported into iOS applications Whymca Mobile Developer Conference 2012 21
  • 26. intro ia signature gestures multitask wrap up Style out Action Bar Android has powerful styling Decoupling is good but, every decoupling brings one level on indirectness Styling is a matter of doc research (sometimes source code) Small projects like Action Bar Style Generator can save days of research! http://jeļ¬€gilfelt.com/ Whymca Mobile Developer Conference 2012 22
  • 27. intro ia signature gestures multitask wrap up Style out Action Bar <resources> <style name="Theme.example" parent="android:style/Theme.Holo.Light"> <item name="android:selectableItemBackground">@drawable/selectable_background_example</item> <item name="android:popupMenuStyle">@style/example_PopupMenu</item> <item name="android:dropDownListViewStyle">@style/example_DropDownListView</item> <item name="android:actionBarTabStyle">@style/example_ActionBarTabStyle</item> <item name="android:actionDropDownStyle">@style/example_DropDownNav</item> <item name="android:actionBarStyle">@style/example_ActionBar</item> </style> <style name="example_ActionBar" parent="@android:style/Widget.Holo.Light.ActionBar"> <item name="android:background">@drawable/ab_solid_example</item> <item name="android:backgroundStacked">@drawable/ab_stacked_solid_example</item> <item name="android:backgroundSplit">@drawable/ab_bottom_solid_example</item> </style> <style name="example_PopupMenu" parent="android:style/Widget.Holo.Light.ListPopupWindow"> <item name="android:popupBackground">@drawable/menu_dropdown_panel_example</item> </style> <style name="example_DropDownListView" parent="android:style/Widget.Holo.ListView.DropDown"> <item name="android:listSelector">@drawable/selectable_background_example</item> </style> <style name="example_ActionBarTabStyle" parent="android:style/Widget.Holo.Light.ActionBar.TabView"> <item name="android:background">@drawable/tab_indicator_ab_example</item> </style> <style name="example_DropDownNav" parent="android:style/Widget.Holo.Light.Spinner"> <item name="android:background">@drawable/spinner_background_ab_example</item> <item name="android:popupBackground">@drawable/menu_dropdown_panel_example</item> <item name="android:dropDownSelector">@drawable/selectable_background_example</item> </style> </resources> Whymca Mobile Developer Conference 2012 23
  • 28. intro ia signature gestures multitask wrap up Get in Control ActionBar standard support does a lot of stuļ¬€, more importantly does a lot of device-adaptive, platform compliant stuļ¬€. Itā€™s possible to take complete control and build a custom title bar, or do whatever. Weigh your options! Build it + Scale it + Update it = $$$ Whymca Mobile Developer Conference 2012 24
  • 29. intro ia signature gestures multitask wrap up Bad Boy Twist the Action Bar to give personality Astrid Task Flud News Astrid Inc. Flud 25 Whymca Mobile Developer Conference 2012
  • 30. intro ia signature gestures multitask wrap up Bad Boy Twist the Action Bar to give personality Fancy Kaleidoscope Thingd Inporia Inc Whymca Mobile Developer Conference 2012 26
  • 31. intro ia signature gestures multitask wrap up Get in Control requestWindowFeature(Window.FEATURE_NO_TITLE); getActionBar().hide(); better yet is to set it up on the app theme <style name="Theme.MyApp" parent="android:Theme.Holo.Light"> <item name="android:windowNoTitle">false</item> </style> At the beginning of each layout <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:background="@drawable/app_bkg"> <include layout="@layout/header_layout" /> ... Whymca Mobile Developer Conference 2012 27
  • 33. intro ia signature gestures multitask wrap up ā€œCreating an identity for your app goes beyond the action bar. Your app communicates its identity through its data, the way that data is arranged, and how people interact with it. ā€ Android Design site Whymca Mobile Developer Conference 2012
  • 34. intro ia signature gestures multitask wrap up Foodspotting Skitch Foodspotting Evernote Corp. Whymca Mobile Developer Conference 2012 30
  • 35. intro ia signature gestures multitask wrap up A Custom View public class CustomView extends View { private Paint mPaint; private RectF mRect; public CustomView(Context context, AttributeSet attrs) { super(context, attrs); mPaint = new Paint(); mPaint.setAntiAlias(true); mRect = new RectF(); } @Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { setMeasuredDimension( MeasureSpec.getSize(widthMeasureSpec), MeasureSpec.getSize(heightMeasureSpec)); } @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); final Paint paint = mPaint; paint.setStyle(Style.FILL); paint.setColor(Color.RED); final RectF oval = mRect; oval.left = 0; oval.right = getWidth(); oval.top = 0; oval.bottom = getHeight(); canvas.drawArc(mRect, 0, 90, true, paint); }} Whymca Mobile Developer Conference 2012 31
  • 36. intro ia signature gestures multitask wrap up A Custom Animation private float delta = 0; @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); final Paint paint = mPaint; paint.setStyle(Style.FILL); paint.setColor(Color.RED); final RectF oval = mRect; oval.left = 0; oval.right = getWidth(); oval.top = 0; oval.bottom = getHeight(); canvas.drawArc(mRect, 0 + delta, 90, true, paint); } @Override public void onClick(View v) { ValueAnimator va = ValueAnimator.ofFloat(0, 360).setDuration(2000); delta = 0; va.addUpdateListener(new AnimatorUpdateListener() { @Override public void onAnimationUpdate(ValueAnimator animation) { delta = (Float) animation.getAnimatedValue(); invalidate(); } }); va.setInterpolator(new DecelerateInterpolator()); va.start(); invalidate(); Whymca Mobile Developer Conference 2012 32
  • 38. intro ia signature gestures multitask wrap up ICS and swipes IceCreamSandwich uses and sponsors simple gestural control to quickly navigate between detail views or tabs Swipe is a simple way to express ā€œmove awayā€ intent Easier than clicking somewhere - target area is whole screen (Fittā€™s Law) Easier than free scrolling - the content is paged (Hickā€™s Law) Whymca Mobile Developer Conference 2012 34
  • 39. intro ia signature gestures multitask wrap up Whymca Mobile Developer Conference 2012 35
  • 40. intro ia signature gestures multitask wrap up Swipe made easy Historically, Android developers had an hard time with this Scrolling, inertias, bounce, attraction, paging (and android.widget.Gallery Ā is not apt for the purpose) Lots of eļ¬€orts from the community, only few high-quality ones ā€¢ Googleā€™s ViewPager Ā + Ā (Jake Whartonā€™s ViewPagerIndicators) ā€¢ Cyril Mottierā€™s PagedView ViewPager Ā Included in Compatibility Package v4 and v13 http://goo.gl/JRqfC Whymca Mobile Developer Conference 2012 36
  • 41. intro ia signature gestures multitask wrap up DIY: a shortcut Opening activities with swipe An easy way to be faithful to the Design Guidelines without sweating too much is detach animation from gestures SwipeDetector component that detects a discrete UP/DOWN/RIGHT/LEFT + Context.startActivity(Intent Ā i); Context.overridePendingTransition(R.anim.swipe_i n, Ā 0); Whymca Mobile Developer Conference 2012 37
  • 42. intro ia signature gestures multitask wrap up SwipeDetector public class SwipeDetector implements View.OnTouchListener { .... case MotionEvent.ACTION_DOWN: downX = event.getX(); downY = event.getY(); downT = event.getEventTime(); return true; case MotionEvent.ACTION_UP: if (mListener == null || event.getEventTime() - downT > 1000) return false; final float deltaX = downX - event.getX(); final float deltaY = downY - event.getY(); // swipe vertical? if (Math.abs(deltaY) > yThreshold && Math.abs(deltaX) < whoKnowsThreshold) { // top or down if (deltaY < 0) { mListener.onSwipeDown(); } else { mListener.onSwipeUp(); } return true; } Whymca Mobile Developer Conference 2012 38
  • 43. intro ia signature gestures multitask wrap up Oldies but goldies Jake Whartonā€™s DirectionalViewPager SlidingDrawer Whymca Mobile Developer Conference 2012 39
  • 45. intro ia signature gestures multitask wrap up Android lets people combine applications into new workļ¬‚ows through multitasking, notiļ¬cations, and sharing across apps. Whymca Mobile Developer Conference 2012 41
  • 46. Whymca Mobile Developer Conference 2012 X
  • 47. intro ia signature gestures multitask wrap up Multi-tasking++ Android has always been characterized by the ability to keep multiple app running at once. Even if not really running, system components are ā€œpausedā€ resumed, stopped and restarted , whenever the system feels like. ā€œAll apps running at the same timeā€ Whymca Mobile Developer Conference 2012 42
  • 48. intro ia signature gestures multitask wrap up Do your homework Activities should save and restore their status: Activity.onSaveInstanceState(Bundle Ā b); Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Activity.onRestoreInstanceState(Bundle Ā b); Views should use: Parcelable Ā View.onSaveInstanceState(); Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  View.onRestoreInstanceState(Parcelable Ā state); When changing conļ¬guration (device rotation): Activity.onRetainNonConfigurationInstance() Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Ā  Activity.getLastNonConfigurationInstance() Ā  are deprecated! Use Fragment.setRetainInstance() Whymca Mobile Developer Conference 2012 43
  • 49. intro ia signature gestures multitask wrap up Fragment (ation?) Lifecycle-aware modularization of UI chunks http://slidesha.re/iHxTqO Whymca Mobile Developer Conference 2012 44
  • 50. intro ia signature gestures multitask wrap up 1. Itā€™s a lifecycle concept: donā€™t use it like an <include Ā />! 2. getLastNonConfigurationInstance() is deprecated setRetainInstance() 3. cannot be nested! 4. in/out animation and back stack together donā€™t work 5. you can use fragments in ViewPager 6. onCreateDialog() is deprecated android.app.DialogFragment 7. only viable option is with Android Compatibility library Fragment API is fragmented (???) Whymca Mobile Developer Conference 2012 45
  • 52. intro ia signature gestures multitask wrap up AirCalc MBFG Whymca Mobile Developer Conference 2012 47
  • 53. OverSkreen MBFG Whymca Mobile Developer Conference 2012 X
  • 54. intro ia signature gestures multitask wrap up Overlays The key to implement ļ¬‚oating, always on top views is exploiting overlays, through the usage of WindowManager system service Android displays views on diļ¬€erent layers (+15 layer types) Application usually manage a Window.TYPE_APPLICATION Examples of other window types: Status Bar, Application Dialog, System Dialog, IME Whymca Mobile Developer Conference 2012 48
  • 55. intro ia signature gestures multitask wrap up public class FloatingButtonService extends Service { public void onCreate() { super.onCreate(); mButton = new Button(this); mButton.setText("Forever Here"); mButton.setOnTouchListener(new OnTouchListener() { ...something... }); WindowManager.LayoutParams params = new WindowManager.LayoutParams( WindowManager.LayoutParams.WRAP_CONTENT, WindowManager.LayoutParams.WRAP_CONTENT, WindowManager.LayoutParams.TYPE_SYSTEM_ALERT, LayoutParams.FLAG_NOT_FOCUSABLE | LayoutParams.FLAG_NOT_TOUCH_MODAL, PixelFormat.TRANSLUCENT); params.gravity = Gravity.CENTER; mWm = (WindowManager) getSystemService(WINDOW_SERVICE); mWm.addView(mButton, params); } public void onDestroy() { mWm.removeView(mButton); super.onDestroy(); } Intent serv = new Intent(this, <uses-permission android:name= FloatingButtonService.class); "android.permission.SYSTEM_ALERT_WINDOW" /> startService(serv); Whymca Mobile Developer Conference 2012 49
  • 57. intro ia signature gestures multitask wrap up Android is the service design platform. Capabilities are limitless Headaches are limitless Step your game up. Whymca Mobile Developer Conference 2012
  • 58. intro ia signature gestures multitask wrap up Links http://d.android.com/design http://code.google.com/p/androidavanzato/ http://slidesha.re/GSalF6 - @gerdavax on NFC http://www.frogdesign.com Whymca Mobile Developer Conference 2012 52
  • 59. Emanuele Di Saverio emanuele.disaverio@gmail.com @hazam Guido Parlato guido@higui.it @higui Ā© 2011 frog. All rights reserved.

Editor's Notes

  1. \n
  2. Soltanto oggi, dopo quasi 4 anni dal lancio della piattaforma, possiamo dire di avere una esperienza d&amp;#x2019;uso Android raffinata e di grande qualita&amp;#x2019;.\nTratti fortemente caratteristici, deisgneata adeguatamente e Paragonabile per qualita&amp;#x2019; a quelle che hanno storicamente costituito lo stato\ndell&amp;#x2019;arte delle UX mobile moderna (iPhone, Windows Phone, WebOS)\n
  3. \n
  4. \n
  5. \n
  6. la mission di frog e&amp;#x2019; guidare l&amp;#x2019;innovazione per il mondo connesso, progettando e disegnando i servizi e i prodotti del futuro.\nQueste sono alcune foto prese da progetti recenti. \n
  7. Frog e&amp;#x2019; distribuita su tutto il globo, e fornisce servizi di consulenza d&amp;#x2019;innovazione multidisciplinare: Design digitale ed industriale, consulenza strategica, tecnologia.Un ambito nel quale siamo molto forti e&amp;#x2019; il mobile, che e&amp;#x2019; anche il nostro focus principale.\n
  8. \n
  9. jjj\n
  10. \n
  11. \n
  12. \n\nL&amp;#x2019;ergonomia della nostra mano \n\nquindi l&amp;#x2019;euristica pi&amp;#xF9; accreditata afferma che le toolbars e le barre di navigazione debbano trovarsi nella parte bassa dello schermo\n
  13. \n
  14. \n
  15. \n
  16. Non potendo quindi suddividere la navigazione in posizioni distinte, in molte applicazioni asi \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. Modifiche delle guidelines android\nmodifica degli pattern attraverso delle contaminazioni con IOS (popover)\nreinterpretazione delle linee guida per assecondare le esigenze di navigazione\n
  28. Esigenze di design\nprincipalmente legate all&amp;#x2019;architettura e modelli di navigazione \nsperimentazione di nuovi pattern, che si stanno affermando come standard\n\n
  29. \n
  30. \n
  31. \n
  32. SIGNATURE INTERACTIONS\n\nAndroid Widget library is fairly complete, most apps should get away with just styling those\nRemember the style.xml!\n\nCraft a &amp;#x201C;signature&amp;#x201D; element that sticks around in the user mind\n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n
  39. \n
  40. \n
  41. \n
  42. \n
  43. \n
  44. \n
  45. \n
  46. \n
  47. \n
  48. \n
  49. \n
  50. \n
  51. \n
  52. \n
  53. \n
  54. \n
  55. Soltanto oggi, dopo quasi 4 anni dal lancio della piattaforma, possiamo dire di avere una esperienza d&amp;#x2019;uso Android raffinata e di grande qualita&amp;#x2019;.\nTratti fortemente caratteristici, deisgneata adeguatamente e Paragonabile per qualita&amp;#x2019; a quelle che hanno storicamente costituito lo stato\ndell&amp;#x2019;arte delle UX mobile moderna (iPhone, Windows Phone, WebOS)\n
  56. \n
  57. \n