Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Gradle, and the beauty of the command line
Search
David González
November 26, 2013
Programming
4
270
Gradle, and the beauty of the command line
David González
November 26, 2013
Tweet
Share
More Decks by David González
See All by David González
A comprehensive guide to tracker protection on Android
malmstein
1
56
Building a Multiplatform library for iOS and Android
malmstein
9
1.2k
Unidirectional Data Flow on Android
malmstein
6
510
Introduction to Kotlin Coroutines
malmstein
0
120
A State Container Architecture for mobile applications
malmstein
0
140
Things I wish I knew before starting to work remote
malmstein
0
76
Remote, lonely and productive
malmstein
0
170
The source of all technical debt
malmstein
6
420
Android Architecture Blueprints
malmstein
0
270
Other Decks in Programming
See All in Programming
dotfiles 式年遷宮 令和最新版
masawada
1
670
How Software Deployment tools have changed in the past 20 years
geshan
0
27k
Microservices rules: What good looks like
cer
PRO
0
540
Integrating WordPress and Symfony
alexandresalome
0
120
TypeScript 5.9 で使えるようになった import defer でパフォーマンス最適化を実現する
bicstone
1
1k
UIデザインに役立つ 2025年の最新CSS / The Latest CSS for UI Design 2025
clockmaker
17
6.6k
Building AI Agents with TypeScript #TSKaigiHokuriku
izumin5210
6
1.2k
All(?) About Point Sets
hole
0
260
関数の挙動書き換える
takatofukui
4
770
なあ兄弟、 余白の意味を考えてから UI実装してくれ!
ktcryomm
10
11k
関数実行の裏側では何が起きているのか?
minop1205
1
560
C-Shared Buildで突破するAI Agent バックテストの壁
po3rin
0
180
Featured
See All Featured
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
How to Ace a Technical Interview
jacobian
280
24k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Building an army of robots
kneath
306
46k
[RailsConf 2023] Rails as a piece of cake
palkan
58
6.1k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.3k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
Documentation Writing (for coders)
carmenintech
76
5.2k
Code Review Best Practice
trishagee
73
19k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Transcript
@dggonzalez +David González
Process!
None
None
None
None
None
project structure
testing unit tests instrumentation tests robolectric monkey
None
None
None
None
None
None
None
None
flavours
! ! debug betaRelease release amazon
buildTypes { debug { packageNameSuffix ".debug" versionNameSuffix "-debug" } !
betaRelease { debuggable false jniDebugBuild false signingConfig signingConfigs.arteBetaRelease } ! release { debuggable false jniDebugBuild false signingConfig signingConfigs.arteRelease } }
custom config ! String tag = createBuildConstant("TAG", "ARTE_DEBUG") ! buildConfig
syncFrequency, providerAuthority, suggestionsAuthority, pushVersion, tag, xitiDomain, xitiSiteId, gcmServer ! Log.d(BuildConfig.TAG, ”stupid log”)
signing
! arteBetaRelease arteGooglePlay arteAmazon
publishing
! apply plugin: ‘deploygate' ! Properties props = new Properties()
props.load(new FileInputStream(file(project.property("DEPLOY.properties")))) ! arteRelease { storeFile file("../team-props/arte-android-keystore") storePassword props['signing.release.storePassword'] keyAlias props['signing.release.keyAlias'] keyPassword props['signing.release.keyPassword'] } arteBetaRelease { storeFile file("../team-props/arte.keystore") storePassword "THEPASSWORD" keyAlias "THEALIAS" keyPassword "THEALIASPASSWORD" } }
issues
! testing is slow no google play console almost weekly
updates backwards compatibility
advantages ! right direction Google support almost weekly updates flavours
customisable
contribute ! https://github.com/novoda/ AndroidBuildTools/issues ! https://github.com/novoda/gradle-android- test-plugin ! https://github.com/novoda/gradle-android- command-plugin
None
@dggonzalez www.novoda.com/blog
[email protected]
+David González ???