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
26
Android開発の罠と、その避け方
nakawai
April 23, 2017
Tweet
Share
More Decks by nakawai
See All by nakawai
エンジニアがエンジニアリングマネージャーになって最初にやったこと
nakawai
2
1.1k
電卓アプリで再帰降下法を使った話
nakawai
0
180
AndroidでTensorflow
nakawai
0
29
テンプレート作ると爆速Android 開発できる?
nakawai
0
22
AndroidでSRCNN 2017
nakawai
0
32
AndroidでSRCNNできる?
nakawai
0
47
Other Decks in Programming
See All in Programming
Stackless и stackful? Корутины и асинхронность в Go
lamodatech
0
810
PHPとAPI Platformで作る本格的なWeb APIアプリケーション(入門編) / phpcon 2024 Intro to API Platform
ttskch
0
260
これが俺の”自分戦略” プロセスを楽しんでいこう! - Developers CAREER Boost 2024
niftycorp
PRO
0
190
Keeping it Ruby: Why Your Product Needs a Ruby SDK - RubyWorld 2024
envek
0
190
コンテナをたくさん詰め込んだシステムとランタイムの変化
makihiro
1
130
採用事例の少ないSvelteを選んだ理由と それを正解にするためにやっていること
oekazuma
2
1k
どうして手を動かすよりもチーム内のコードレビューを優先するべきなのか
okashoi
3
120
Zoneless Testing
rainerhahnekamp
0
120
「とりあえず動く」コードはよい、「読みやすい」コードはもっとよい / Code that 'just works' is good, but code that is 'readable' is even better.
mkmk884
3
470
17年周年のWebアプリケーションにTanStack Queryを導入する / Implementing TanStack Query in a 17th Anniversary Web Application
saitolume
0
250
創造的活動から切り拓く新たなキャリア 好きから始めてみる夜勤オペレーターからSREへの転身
yjszk
1
130
アクターシステムに頼らずEvent Sourcingする方法について
j5ik2o
4
290
Featured
See All Featured
4 Signs Your Business is Dying
shpigford
181
21k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
Optimising Largest Contentful Paint
csswizardry
33
3k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5k
Speed Design
sergeychernyshev
25
670
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
1.2k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
26
1.9k
YesSQL, Process and Tooling at Scale
rocio
169
14k
We Have a Design System, Now What?
morganepeng
51
7.3k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.1k
Optimizing for Happiness
mojombo
376
70k
Transcript
Android開発の ワナと、その避け方 @nakawai 2017/4/23 かものはし
開発中の ある日
原因を探ると Activity/Fragmentのメンバ変数 mHogeが、なぜかnull 再現不可
やりがち if(mHoge != null){...}
根本的な 原因は? なぜnullに?
答え: 再生成
Androidのメモリ管理 メモリが足りない ↓ backgroundのアプリを、いったん破棄 ↓ 必要なときに再生成
ルールを 知らないと、 状態が 復元されない
nullの理由 所定の手続きを 経ていなかった
主要コンポーネントの ライフサイクルを把握すれば 回避可能 • #onSavedInstanceState() • Fragment#setArguments() • Parcelable
テスト 「常にActivityを破棄」をON
微妙な点 コールバック記述が 冗長になる ダイアログなど
「Android開発の罠と、その避け方」 以上 なにか質問あれば