Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Android開発の罠と、その避け方
Search
nakawai
April 23, 2017
Programming
0
30
Android開発の罠と、その避け方
nakawai
April 23, 2017
Tweet
Share
More Decks by nakawai
See All by nakawai
エンジニアがエンジニアリングマネージャーになって最初にやったこと
nakawai
2
1.1k
電卓アプリで再帰降下法を使った話
nakawai
0
200
AndroidでTensorflow
nakawai
0
30
テンプレート作ると爆速Android 開発できる?
nakawai
0
24
AndroidでSRCNN 2017
nakawai
0
32
AndroidでSRCNNできる?
nakawai
0
49
Other Decks in Programming
See All in Programming
一休.com のログイン体験を支える技術 〜Web Components x Vue.js 活用事例と最適化について〜
atsumim
0
520
昭和の職場からアジャイルの世界へ
kumagoro95
1
380
楽しく向き合う例外対応
okutsu
0
140
PHP ステートレス VS ステートフル 状態管理と並行性 / php-stateless-stateful
ytake
0
100
データの整合性を保つ非同期処理アーキテクチャパターン / Async Architecture Patterns
mokuo
47
17k
Multi Step Form, Decentralized Autonomous Organization
pumpkiinbell
1
750
Honoとフロントエンドの 型安全性について
yodaka
7
1.3k
2,500万ユーザーを支えるSREチームの6年間のスクラムのカイゼン
honmarkhunt
6
5.3k
Lottieアニメーションをカスタマイズしてみた
tahia910
0
130
仕様変更に耐えるための"今の"DRY原則を考える / Rethinking the "Don't repeat yourself" for resilience to specification changes
mkmk884
2
470
Unity Android XR入門
sakutama_11
0
160
定理証明プラットフォーム lapisla.net
abap34
1
1.8k
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
172
14k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Product Roadmaps are Hard
iamctodd
PRO
50
11k
Testing 201, or: Great Expectations
jmmastey
42
7.2k
Statistics for Hackers
jakevdp
797
220k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Build The Right Thing And Hit Your Dates
maggiecrowley
34
2.5k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.7k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.5k
A Modern Web Designer's Workflow
chriscoyier
693
190k
The Invisible Side of Design
smashingmag
299
50k
Transcript
Android開発の ワナと、その避け方 @nakawai 2017/4/23 かものはし
開発中の ある日
原因を探ると Activity/Fragmentのメンバ変数 mHogeが、なぜかnull 再現不可
やりがち if(mHoge != null){...}
根本的な 原因は? なぜnullに?
答え: 再生成
Androidのメモリ管理 メモリが足りない ↓ backgroundのアプリを、いったん破棄 ↓ 必要なときに再生成
ルールを 知らないと、 状態が 復元されない
nullの理由 所定の手続きを 経ていなかった
主要コンポーネントの ライフサイクルを把握すれば 回避可能 • #onSavedInstanceState() • Fragment#setArguments() • Parcelable
テスト 「常にActivityを破棄」をON
微妙な点 コールバック記述が 冗長になる ダイアログなど
「Android開発の罠と、その避け方」 以上 なにか質問あれば