Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
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
260
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
47
Building a Multiplatform library for iOS and Android
malmstein
9
1.2k
Unidirectional Data Flow on Android
malmstein
6
500
Introduction to Kotlin Coroutines
malmstein
0
110
A State Container Architecture for mobile applications
malmstein
0
110
Things I wish I knew before starting to work remote
malmstein
0
72
Remote, lonely and productive
malmstein
0
160
The source of all technical debt
malmstein
6
410
Android Architecture Blueprints
malmstein
0
250
Other Decks in Programming
See All in Programming
Kiroの仕様駆動開発から見えてきたAIコーディングとの正しい付き合い方
clshinji
1
170
ライブ配信サービスの インフラのジレンマ -マルチクラウドに至ったワケ-
mirrativ
2
270
管你要 trace 什麼、bpftrace 用下去就對了 — COSCUP 2025
shunghsiyu
0
480
Google I/O recap web編 大分Web祭り2025
kponda
0
2.9k
サーバーサイドのビルド時間87倍高速化
plaidtech
PRO
0
560
DockerからECSへ 〜 AWSの海に出る前に知っておきたいこと 〜
ota1022
5
1.8k
ECS初心者の仲間 – TUIツール「e1s」の紹介
keidarcy
0
110
TDD 実践ミニトーク
contour_gara
1
200
GitHub Copilotの全体像と活用のヒント AI駆動開発の最初の一歩
74th
8
3.2k
TanStack DB ~状態管理の新しい考え方~
bmthd
2
350
Oracle Database Technology Night 92 Database Connection control FAN-AC
oracle4engineer
PRO
1
260
testingを眺める
matumoto
1
120
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.5k
Practical Orchestrator
shlominoach
190
11k
KATA
mclloyd
32
14k
Agile that works and the tools we love
rasmusluckow
329
21k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
How to Think Like a Performance Engineer
csswizardry
25
1.8k
The World Runs on Bad Software
bkeepers
PRO
70
11k
Embracing the Ebb and Flow
colly
87
4.8k
Designing for humans not robots
tammielis
253
25k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
The Cult of Friendly URLs
andyhume
79
6.6k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
570
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 ???