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

  • 884 views
Uploaded on

My build system crows meow

My build system crows meow

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
884
On Slideshare
0
From Embeds
0
Number of Embeds
6

Actions

Shares
Downloads
1
Comments
0
Likes
3

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. ぼくのビルドは にゃあとなく Tomoki Yamashita
  • 2. Profile Tomoki Yamashita @tomorrowkey Android Engineer at COOKPAD ねこが好き
  • 3. 目次 • こんなことはありませんか • どうしてこうなった • 対策 • ビルドが終わったら… • まとめ
  • 4. こんなことは ありませんか
  • 5. ./gradle installDebug
  • 6. 10秒後…
  • 7. 20秒後…
  • 8. 遅いなぁ…
  • 9. ちょっとFacebookでも見るかー あー、いぬ、かわいい、いいね
  • 10. Twitterも覗くかー みんないっぱいつぶやいてんなー 仕事いつしてるんだろー
  • 11. あーあと、はてブもちょっとだけ覗こうかな…
  • 12. え、なに、 年収低いとなんでマンション買っちゃいけないんだろう そもそも年収低い人ってどのくらいを指すのか気になるぞ どれどれふむふむ へー、あー、そうなんだ
  • 13. ブクマもすこし読んでみるかー あー、そうかー、みんないろんな意見があるんだなぁ
  • 14. あ、そういやビルドしてたの忘れてた!
  • 15. _人人人人人人人人_ > 忘れてた!! <  ̄Y^Y^Y^Y^Y^ ̄
  • 16. あーあ、とっくに終わってんじゃん…
  • 17. どうしてこうなった
  • 18. どうしてこうなった • gradleビルドくそ遅い • ビルドが終わったことに気づけない
  • 19. 対策
  • 20. 対策 • ビルドを速くする • ビルドが終わったことを知らせる
  • 21. デモ
  • 22. ビルドが終わったら…
  • 23. ビルドが終わったら ネコがなくようにしよう!
  • 24. 仕組み • ビルドスクリプトでビルド完了時に音を鳴らすコー ドを書く
  • 25. こんなコードを入れるだけ!!
  • 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. 制限事項 • afplayはMacにインストールされている音楽再生 コマンドなので、Mac以外で動きません… • Windowsは再生部分を差し替えて頑張ってくだ さい
  • 28. もしもネコが嫌いなら… 音楽再生部分を以下に差し替えればbeepに変更可能 3.times {
 java.awt.Toolkit.getDefaultToolkit().beep()
 System.sleep(100)
 }
  • 29. まとめ
  • 30. まとめ • ビルド完了に気づくことができるようになった • きっとこれでより効率的に開発ができるようになる はず! • 切って貼ったコードなんで、詳しい人はもっとナウ いコードにしてください • ねこかわいい
  • 31. おわり