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

1,556 views
1,444 views

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,556
On SlideShare
0
From Embeds
0
Number of Embeds
583
Actions
Shares
0
Downloads
4
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. おわり

×