Download - Android L Preview - APIs e novidades da nova versão do Android

Transcript
Page 1: Android L Preview - APIs e novidades da nova versão do Android

Android L Preview APIS e novidades da próxima versão do Android Rio de Janeiro

Page 2: Android L Preview - APIs e novidades da nova versão do Android

Walmyr Carvalho @walmyrcarvalho

Page 3: Android L Preview - APIs e novidades da nova versão do Android

Android Developer @ Hotel Urbano

Page 4: Android L Preview - APIs e novidades da nova versão do Android

Do que vamos falar hoje?

Page 5: Android L Preview - APIs e novidades da nova versão do Android

developer.android.com/preview

Page 6: Android L Preview - APIs e novidades da nova versão do Android

developer.android.com/preview

Page 7: Android L Preview - APIs e novidades da nova versão do Android

Novas APIS!

Page 8: Android L Preview - APIs e novidades da nova versão do Android

Por baixo dos panos

Page 9: Android L Preview - APIs e novidades da nova versão do Android

ART Runtime padrão

Open GL ES 3.1 Suporte nativo

Page 10: Android L Preview - APIs e novidades da nova versão do Android

Lembrando que é necessário alterar a versão do OpenGL no

AndroidManifest.xml:

<manifest> ...

<uses-feature android:glEsVersion="0x00030001" /> ... </manifest>

Page 11: Android L Preview - APIs e novidades da nova versão do Android

Chromium WebView Padrão do L

Page 12: Android L Preview - APIs e novidades da nova versão do Android
Page 13: Android L Preview - APIs e novidades da nova versão do Android

Android NDK

Page 14: Android L Preview - APIs e novidades da nova versão do Android
Page 15: Android L Preview - APIs e novidades da nova versão do Android

64-bit Suporte nativo

x64

Page 16: Android L Preview - APIs e novidades da nova versão do Android

Material Theme

Page 17: Android L Preview - APIs e novidades da nova versão do Android

O Material Theme permite que você customize as cores dos widgets do app

definindo as cores direto no XML do tema.

Page 18: Android L Preview - APIs e novidades da nova versão do Android

O tema possui três variações: @android:style/Theme.Material (Escuro)

@android:style/Theme.Material.Light (Claro) @android:style/Theme.Material.Light.DarkActionBar

Page 19: Android L Preview - APIs e novidades da nova versão do Android

<resources> <style name="AppTheme" parent="android:Theme.Material"> <item name="android:colorPrimary">@color/primary</item> <item name="android:colorPrimaryDark">@color/primary_dark</item> <item name="android:colorAccent">@color/accent</item> </style> </resources>

Page 20: Android L Preview - APIs e novidades da nova versão do Android
Page 21: Android L Preview - APIs e novidades da nova versão do Android

RecyclerView

Page 22: Android L Preview - APIs e novidades da nova versão do Android

RecyclerView é versão mais avançada e flexível do ListView. Todo o sistema de reciclagem e manipulação de views foi otimizado.

Page 23: Android L Preview - APIs e novidades da nova versão do Android
Page 24: Android L Preview - APIs e novidades da nova versão do Android

<android.support.v7.widget.RecyclerView android:id="@+id/my_recycler_view" android:scrollbars="vertical" android:layout_width="match_parent" android:layout_height="match_parent"/>

Page 25: Android L Preview - APIs e novidades da nova versão do Android

public class MyActivity extends Activity { private RecyclerView mRecyclerView; private RecyclerView.Adapter mAdapter; private RecyclerView.LayoutManager mLayoutManager; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.my_activity); mRecyclerView = (RecyclerView) findViewById(R.id.my_recycler_view); // LayoutManager mLayoutManager = new LinearLayoutManager(this); mRecyclerView.setLayoutManager(mLayoutManager); // Adapter mAdapter = new MyAdapter(myDataset); mRecyclerView.setAdapter(mAdapter); }}

Page 26: Android L Preview - APIs e novidades da nova versão do Android

CardView

Page 27: Android L Preview - APIs e novidades da nova versão do Android

CardView é uma classe que herda de FrameLayout e consiste basicamente em um layout que replica um estilo de card, bem popular no Android.

Page 28: Android L Preview - APIs e novidades da nova versão do Android

<android.support.v7.widget.CardView xmlns:card_view="http://schemas.android.com/apk/res-auto" android:id="@+id/card_view" android:layout_gravity="center" android:layout_width="200dp" android:layout_height="200dp" card_view:cardCornerRadius=“4dp" card_view:cardBackgroundColor=“@color/white“> <TextView android:id="@+id/info_text" android:layout_width="match_parent" android:layout_height="match_parent" /> </android.support.v7.widget.CardView>

Page 29: Android L Preview - APIs e novidades da nova versão do Android

Palette

Page 30: Android L Preview - APIs e novidades da nova versão do Android

Palette é uma biblioteca que nos permite extrair cores predominantes de

um Bitmap.

Palette palette = Palette.generate(bitmap, 24);

Page 31: Android L Preview - APIs e novidades da nova versão do Android

É possível também usar o Palette assincronamente:

Palette.generateAsync(bitmap, new Palette.PaletteAsyncListener() { @Override public void onGenerated(Palette palette) {

// Use o palette aqui } });

Page 32: Android L Preview - APIs e novidades da nova versão do Android

palette.getVibrantColor(); palette.getMutedColor(); palette.getLightMutedColor(); palette.getLightVibrantColor(); palette.getDarkMutedColor(); palette.getDarkVibrantColor();

Page 33: Android L Preview - APIs e novidades da nova versão do Android

Cuidado: Caso ele não encontre uma cor equivalente, ele retorna null, então é

importante tratar isso:

PaletteItem item = palette.getVibrantColor(); if (item != null) { view.setBackgroundColor(item.getRgb()); }

Page 34: Android L Preview - APIs e novidades da nova versão do Android
Page 35: Android L Preview - APIs e novidades da nova versão do Android

O Palette está disponível na Support Library v7.

Page 36: Android L Preview - APIs e novidades da nova versão do Android

Concluindo…

Page 37: Android L Preview - APIs e novidades da nova versão do Android

Existem muitas outras APIs disponíveis no Android L, acessem

developer.android.com/preview/ e conheçam todo o resto!

Page 38: Android L Preview - APIs e novidades da nova versão do Android

Dúvidas?

?

?

???

? ?

??

?

? ??

?

??

? ?? ???

?? ?

? ?

Page 39: Android L Preview - APIs e novidades da nova versão do Android

Boa noite e muito obrigado! :)

VRio de Janeiro

Page 40: Android L Preview - APIs e novidades da nova versão do Android

Links citados no talk developer.android.com/preview/

developer.chrome.com/multidevice/webview/overview github.com/flavienlaurent/livepallete

github.com/gabrielemariotti/RecyclerViewItemAnimators