ぼくのビルドは
にゃあとなく
Tomoki Yamashita
Profile
Tomoki Yamashita
@tomorrowkey
Android Engineer at COOKPAD
ねこが好き
目次
• こんなことはありませんか
• どうしてこうなった
• 対策
• ビルドが終わったら…
• まとめ
こんなことは
ありませんか
./gradle installDebug
10秒後…
20秒後…
遅いなぁ…
ちょっとFacebookでも見るかー
あー、いぬ、かわいい、いいね
Twitterも覗くかー
みんないっぱいつぶやいてんなー
仕事いつしてるんだろー
あーあと、はてブもちょっとだけ覗こうかな…
え、なに、
年収低いとなんでマンション買っちゃいけないんだろう
そもそも年収低い人ってどのくらいを指すのか気になるぞ
どれどれふむふむ
へー、あー、そうなんだ
ブクマもすこし読んでみるかー
あー、そうかー、みんないろんな意見があるんだなぁ
あ、そういやビルドしてたの忘れてた!
_人人人人人人人人_
> 忘れてた!! <
 ̄Y^Y^Y^Y^Y^ ̄
あーあ、とっくに終わってんじゃん…
どうしてこうなった
どうしてこうなった
• gradleビルドくそ遅い
• ビルドが終わったことに気づけない
対策
対策
• ビルドを速くする
• ビルドが終わったことを知らせる
デモ
ビルドが終わったら…
ビルドが終わったら
ネコがなくようにしよう!
仕組み
• ビルドスクリプトでビルド完了時に音を鳴らすコー
ドを書く
こんなコードを入れるだけ!!
ビルド完了時に
音を鳴らすコード
android.applicationVariants.all { variant ->

if (variant.install != null) {

variant.install.doLast {

S...
制限事項
• afplayはMacにインストールされている音楽再生
コマンドなので、Mac以外で動きません…
• Windowsは再生部分を差し替えて頑張ってくだ
さい
もしもネコが嫌いなら…
音楽再生部分を以下に差し替えればbeepに変更可能
3.times {

java.awt.Toolkit.getDefaultToolkit().beep()

System.sleep(100)

}
まとめ
まとめ
• ビルド完了に気づくことができるようになった
• きっとこれでより効率的に開発ができるようになる
はず!
• 切って貼ったコードなんで、詳しい人はもっとナウ
いコードにしてください
• ねこかわいい
おわり
Upcoming SlideShare
Loading in...5
×

ぼくのビルドはにゃあとなく

1,055

Published on

My build system crows meow

Published in: Technology
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,055
On Slideshare
0
From Embeds
0
Number of Embeds
7
Actions
Shares
0
Downloads
1
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

ぼくのビルドはにゃあとなく

  1. 1. ぼくのビルドは にゃあとなく Tomoki Yamashita
  2. 2. Profile Tomoki Yamashita @tomorrowkey Android Engineer at COOKPAD ねこが好き
  3. 3. 目次 • こんなことはありませんか • どうしてこうなった • 対策 • ビルドが終わったら… • まとめ
  4. 4. こんなことは ありませんか
  5. 5. ./gradle installDebug
  6. 6. 10秒後…
  7. 7. 20秒後…
  8. 8. 遅いなぁ…
  9. 9. ちょっとFacebookでも見るかー あー、いぬ、かわいい、いいね
  10. 10. Twitterも覗くかー みんないっぱいつぶやいてんなー 仕事いつしてるんだろー
  11. 11. あーあと、はてブもちょっとだけ覗こうかな…
  12. 12. え、なに、 年収低いとなんでマンション買っちゃいけないんだろう そもそも年収低い人ってどのくらいを指すのか気になるぞ どれどれふむふむ へー、あー、そうなんだ
  13. 13. ブクマもすこし読んでみるかー あー、そうかー、みんないろんな意見があるんだなぁ
  14. 14. あ、そういやビルドしてたの忘れてた!
  15. 15. _人人人人人人人人_ > 忘れてた!! <  ̄Y^Y^Y^Y^Y^ ̄
  16. 16. あーあ、とっくに終わってんじゃん…
  17. 17. どうしてこうなった
  18. 18. どうしてこうなった • gradleビルドくそ遅い • ビルドが終わったことに気づけない
  19. 19. 対策
  20. 20. 対策 • ビルドを速くする • ビルドが終わったことを知らせる
  21. 21. デモ
  22. 22. ビルドが終わったら…
  23. 23. ビルドが終わったら ネコがなくようにしよう!
  24. 24. 仕組み • ビルドスクリプトでビルド完了時に音を鳴らすコー ドを書く
  25. 25. こんなコードを入れるだけ!!
  26. 26. ビルド完了時に 音を鳴らすコード android.applicationVariants.all { variant ->
 if (variant.install != null) {
 variant.install.doLast {
 String url = http://example.com/sound.wav ;
 String path = "${project.buildDir}/finish_sound"
 
 def file = new File(path)
 
 if(!file.exists()) {
 new URL(url).withInputStream { input -> 
 file.bytes = input.bytes
 }
 }
 
 ['afplay', path].execute()
 }
 }
 } ※人のサーバを勝手に使うのはお行儀悪いのでやめましょう
  27. 27. 制限事項 • afplayはMacにインストールされている音楽再生 コマンドなので、Mac以外で動きません… • Windowsは再生部分を差し替えて頑張ってくだ さい
  28. 28. もしもネコが嫌いなら… 音楽再生部分を以下に差し替えればbeepに変更可能 3.times {
 java.awt.Toolkit.getDefaultToolkit().beep()
 System.sleep(100)
 }
  29. 29. まとめ
  30. 30. まとめ • ビルド完了に気づくことができるようになった • きっとこれでより効率的に開発ができるようになる はず! • 切って貼ったコードなんで、詳しい人はもっとナウ いコードにしてください • ねこかわいい
  31. 31. おわり
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×