Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
O que há de novo no Android N
Search
Silvio Santos
July 07, 2016
Programming
50
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
O que há de novo no Android N
Silvio Santos
July 07, 2016
More Decks by Silvio Santos
See All by Silvio Santos
Whats new in Liferay Mobile SDK 2.0 for Android
sgosantos
0
170
Other Decks in Programming
See All in Programming
Vibes Containers 〜AIで変わるコンテナ設計と運用〜
tkikuc
3
550
AIエージェント時代のコードレビューを設計する
nogu66
6
2.7k
JPUG勉強会 OSSデータベースの内部構造を理解しよう(第2回)
oga5
0
240
ゲームコントローラやキーボードのファームウェアをSwiftで書く
kishikawakatsumi
1
240
AI活用は、個人から組織へ|マルチプレイヤーエージェントハーネス「QM」の社内活用事例 / AI use is moving from individuals to orgs
rkaga
1
110
手動確認はもう限界 〜XCUITestでCustom URL Schemeの遷移を起動種別ごとに自動テストする〜 / Testing Custom URL Schemes with XCUITest
otouto
0
290
WebRTC映像をAirPlayに対応させる挑戦.pdf
monolithic_adam
0
270
数年滞っていたダークモード対応をおよそ2週間で完了させる
chigichan24
0
710
Snowflakeで業務アプリを作ろう。 Snowflakeのアプリ機能解説&実践ガイド
ayumu_yamaguchi
1
280
更なる可用性を求めて、5年間運用したKotlinのアプリケーションをGoでリプレイスする話
ken_tunc
0
270
テストを司るデーモンに会いに行く 〜隔離した仮想マシンでテストを通すまで〜
h1d3mun3
1
420
新卒PdEのリアル
ryu1013
1
500
Featured
See All Featured
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
490
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.8k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.6k
Paper Plane
katiecoart
PRO
4
53k
Visualization
eitanlees
152
17k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
990
The Pragmatic Product Professional
lauravandoore
37
7.4k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.8k
Ten Tips & Tricks for a 🌱 transition
stuffmc
1
230
Git: the NoSQL Database
bkeepers
PRO
432
67k
Transcript
O que há de novo no Android N Silvio Santos
Silvio Santos mobile team lead
N de NOUGAT
MULTI- WINDOW
None
None
None
Activity que usuário interage fica no estado de resumida as
demais em estado de pausa
colocar em multi-window ou redimensionar uma activity implica em uma
mudança de configuração
apps que suportam portrait/ landscape funcionam automaticamente em multi-window
default é true android:resizeableActivity=["true" | “false"]
Activity.isInMultiWindowMode() Activity.isInPictureInPictureMode() Activity.onMultiWindowModeChanged() Activity.onPictureInPictureModeChanged()
NOTIFICATIONS
None
None
None
Builder.setGroup()
DOZE
None
economiza bateria
QUANDO?
na bateria tela desligada parado
Network Wakelocks Alarms Wifi scans Syncs adapters JobScheduler
mensagens de alta prioridade via GCM foreground services
None
None
LIGHT DOZE
na bateria tela desligada parado
menor intervalo entre janelas de manutenção restrição de acesso à
rede background jobs são retardados
None
None
MEMORY OPTIMIZATIONS
apps podem acordar a partir de broadcasts do sistema
TODOS os apps que escutam o broadcast são iniciados
None
None
remoção de static implicit broadcasts
CONNECTIVITY_CHANGE ACTION_NEW_PICTURE ACTION_NEW_VIDEO
None
JobScheduler js = (JobScheduler)context.getSystemService( Context.JOB_SCHEDULER_SERVICE); JobInfo job = new
JobInfo.Builder(MY_BACKGROUND_JOB, new ComponentName(context, MyJobService.class)) .setRequiredNetworkType(JobInfo.NETWORK_TYPE_UNMETERED) .setRequiresCharging(true) .build(); js.schedule(job);
API < L Firebase Job Dispatcher
SCOPED DIRECTORIES
permissão de acesso a diretórios específicos
StorageManager sm = (StorageManager)getSystemService( Context.STORAGE_SERVICE); StorageVolume volume
= sm.getPrimaryVolume(); Intent intent = volume.createAccessIntent( Environment.DIRECTORY_PICTURES); startActivityForResult(intent, request_code);
DATA SAVER
ConnectivityManager.getRestrictBackgroundStatus()
RESTRICT_BACKGROUND_STATUS_DISABLED RESTRICT_BACKGROUND_STATUS_ENABLED RESTRICT_BACKGROUND_STATUS_WHITELISTED
JAVA 8
lambda expressions method references type annotations
default and static interface methods repeatable annotations Streams
ART Android Runtime
JIT
AOT
None
JIT / AOT
profile guided compilation
métodos + usados chamados a partir da UI thread
compila código enquanto o device está carregando
None
?
OBRIGADO! @sgosantos