Java
Android
Fragment
AndroidStudio
カンファレンス・勉強会メモ
More than 1 year has passed since last update.

DroidKaigiに行ってきたので、そのメモや感想などです。

DroidKaigi

(DroidKaigi Tシャツ来て行きました)

DroidKaigi Tシャツ

DroidKaigi公式アプリ

DroidKaigi カンファレンスアプリ


Activity, Fragment, CustomView の使い分け -マッチョなActivityにさよならする方法-

あんざいゆき



Activity, Fragment, CustomView の使い分け -マッチョなActivityにさよならする方法-

関連資料

マッチョなActivity

マッチョじゃないActiviy

SquareのエンジニアによるFragmentやめるわ宣言

感想やメモ

(開始が10時と少し早かったので5分ほど遅刻しました)

マッチョなActivityを避けるため、可能な限りCustomeViewやFragmentに処理を移譲する話。

あとFragmentはお約束さえ守れば怖くないという話。

ただ、そのFragmentのお約束を、あんざいさんが書いてくれているMaster of Fragment(beta)には、まだ収録されていないissuesが22個くらい存在しているらしい。。。(まだお約束が20個以上ある?)


開発を効率的に進めるられるまでの道程

cattaka_net

資料

開発を効率的に進めるられるまでの道程

感想やメモ

効率的に開発を進めるためにはやはりテストがネック、ということでテスト自動化の話。

外部依存させないための方法など。

テストフレームワークは標準のものだけでも十分強力。

だいたい自分と同じ選択だった。

Androidのテスティングフレームワークを選定してみる

テストコードを書くことによって「壊す恐怖」から開放される、という感覚は大事な気がする。

これを体験するとテストを書くのが億劫にならなくなる。


絶対落ちないアプリの作り方

白山 文彦

資料

まだupされていないようです。

感想やメモ

絶対に落ちないアプリは存在しない。 が、プログラマの無知と怠慢は何とかしたい、という話。

AsyncTaskのダメっぷりなど。

自分は今まで「アシンク」と読んでだけど、登壇者の方は「エイシンク」と言ってた(正しく発音するならエイシンクなのかも)。

Androidのライフサイクルより長生きするものに注意する。

onSavedInstanceState矯正ギプス(開発者オプションの[アクティビティを保持しない]にチェックを入れたまま開発する)は真似しようと思った。

ApplicatioContextとActivityContextの使い分けはやっぱり悩ましい。

最後の「あとは資料で会いましょう!」が良かった。


初学者に嬉しいAndroid開発環境

hkusu

資料

初学者に嬉しいAndroid開発環境

感想やメモ

EventBus、Butter Knife、Retorofitをがっつり使ってみたくなった。


Android学ぶ君へ。生き抜くためのナレッジ共有

岡野 忍(@operandoOS)

資料

Android学ぶ君へ。生き抜くためのナレッジ共有

参考資料

DroidKaigiの資料もろもろ

感想やメモ

確かに、Viewの選定等できるくらいの判断材料を貯めこむの大事。

Google PlayのTRENDLINGは知らなかったので定期的に見てみる。

最近QiitaでAndroidのソースコードを読むときは以下を使うと書いたけど、

GrepCode.com - Java Source Code Search 2.0

android/platform_frameworks_base

Androidの暗黙的Intent発行後に表示されるダイアログのアプリ表示順について

androidXRefも使いやすそう。

便利コマンド

adb shell dumpsys activity top

adb shell input text hoge

Android Command Note

Pull Request時のCheck Listで、チェック範囲の認識を共有するの良さそう。


進化するランタイムART

kmt-t

資料

進化するランタイムART

関連資料

Androidの仮想マシン Dalvik編

感想やメモ

ARTのQuickコンパイラはDalvikのJITコンパイラがベースだったりするので、ART攻略の前にDalvikから攻略する必要がある(を買いましょう)。

実際、「リンカとローダ」あたりから自分の知らない世界の話が始まってしまったので、「Androidの仮想マシン Dalvik編」を買う(たぶん)。

やっぱり、あのへんのレイヤーがわかる人はすごいと思った。

あとARTのマスターブランチとkitkat-mr-releaseブランチの差分(539703)やばい。


ARTのメモリ管理

haru067

資料

ARTのメモリ管理

感想やメモ

ARTのセッションを連続で聞いてみた。

デブ専用車両の話がわかりやすかった。

Stop-The-World(STW)という言葉を覚えた(かっこいい)

logcatに出てくる

GC_FOR_ALLOC

には気をつけるようにする。

「進化するランタイムART」でも言ってたけど、Dalvikと比較すると、ARTはやはり頑張っているらしい。


つかえるGradleプロジェクトの作り方

zaki50

資料

つかえるGradleプロジェクトの作り方

感想やメモ

build.gradleの{}はクロージャー。項目の設定はメソッド呼び出し。(あまり意識できていなかった)

今までversionCodeは1づつ上げてたけど(versionNameとは別)、versionCodeとversionNameを合わせるのも良さそう。

ビルドサーバーの高速化は真似したい。


アプリを公開する前に、最低限知っておきたいセキュリティ事項

Gaku Taniguchi

資料

アプリを公開する前に、最低限知っておきたいセキュリティ事項

参考資料

Androidアプリの脆弱性の学習・点検ツール AnCoLe

感想やメモ

開発時のオレオレ証明サーバ実装(例外無視)のままリリースしてしまう、、

AnCoLe、良さそうだけど、Eclipseプラグイン、、

アンドロイダーがなぜかこんなのやってる。

個別同意取得はダイアログ出す。

総務省では「個人情報」という言葉を使わず「利用者情報」を使っている。

(議論するときに使わない)





G社は全部同じポリシーを使っている




Material Designを取り入れたデザインリニューアル

ninjinkun, yuki930

資料

資料はまだupされていないようです。

感想やメモ

ガイドラインがリアルタイムに変わっていく、、

ガイドラインを順守するかユーザの使いやすさを重視するかで議論した。最終的にはユーザテストの結果に従った。

ついに日本語のフォントサイズに関するガイドラインが。

マージンやフォントサイズ変えるだけでもそこそこMaterial Designっぽくなる。

Retrofit使うとドキュメントとしても使えるI/Fができる。

RxJava良い。Promise的な。

先行実装するとGoogleからの評価が上がる。

BaseActivity的なの使うかどうかでかなり議論した(悩ましい)。


Fireside Chat

mhidaka, あんざいゆき, 長澤 太郎 (@ngsw_taro), ninjinkun, yuki930, Nkzn

暖炉の前でくつろいでいるように開発者の本音が聞けるセッション

感想やメモ

Q. Kotlinのアプリ開発事例ある?

A. 自分は聞いたことないですね。。

Q. BaseActivity的なやつ使ってますか?

A. 他人が書いた5段継承見て嫌になった。

使いたくなる誘惑に駆られる。

人によって判断する(この人はBaseActivity触ってもよい、この人はだめ、みたいな)

処理の共通化を目的とした継承はしない。処理を共通化したいなら移譲すべき。

Activityに関しては、Activityのライフサイクルをコールバックで受け取るクラスがあるので、それを使う。

(やっぱり悩ましい)

Q. サポートライブラリに入っていてほしい機能

A. PreferenceActivityとPreferenceFragmentの山岡士郎と海原雄山みたいな関係。AppCompatにPreferenceActivityがほしい。

継承元にサポートライブラリのクラスを使うのはどうなのか。

Material Design関連。Polymerには既ににあるやつとか。EditTextのバリデーションとか。4系と5系でMaterial Designサポートつらい。

Material Designに関しては頻繁に更新されそう。更新予定とかわかれば心が安らかになりそう。

Q. カンファレンスアプリついて

A. スタッフが今週の月曜日くらいから作った。

ABCアプリをベースに作った。

実は解決していない問題がある(クラッシュする)。

既存のバグを直してからソースコード公開する?

Q. IoT関連のセッションが少なかったけど?

A. BLE通信は闇

Q.OS対応バージョンについて

A.4系?

2.3みんな切りたいと思ってる。

今から作るなら4.4以上で良いのでは? Google自身が90%ルールを破ってくるのがアグレッシブ。

ICS以上?

新規で作るならAPI15(4.0.3)以上にしている。

ユーザー数によっては2系切って端末配ったほうが安いのでは?


Jakeと握手したい

登壇者や運営の方々お疲れ様でした。


あとで(聞けなかったセッション)

僕らのデータ同期プラクティス

AndroidとSELinux

新言語KotlinでAndroidプログラミング

Android - Bitmapは怖くない

CardboardのUXをカメラで向上する

ゲームアプリケーションのアップデートサイクル

アプリの企画、プロトタイプからリリースに至るまで

モバイルにおける電力最適化のための1プラクティス

デザイナーがXMLを書くことでできる改善しやすいアプリ開発