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
34
Building a Multiplatform library for iOS and Android
malmstein
9
1.1k
Unidirectional Data Flow on Android
malmstein
6
480
Introduction to Kotlin Coroutines
malmstein
0
95
A State Container Architecture for mobile applications
malmstein
0
92
Things I wish I knew before starting to work remote
malmstein
0
65
Remote, lonely and productive
malmstein
0
150
The source of all technical debt
malmstein
6
390
Android Architecture Blueprints
malmstein
0
210
Other Decks in Programming
See All in Programming
GitHub Actions × RAGでコードレビューの検証の結果
sho_000
0
260
定理証明プラットフォーム lapisla.net
abap34
1
1.8k
Honoのおもしろいミドルウェアをみてみよう
yusukebe
1
210
SpringBoot3.4の構造化ログ #kanjava
irof
2
990
PHPカンファレンス名古屋2025 タスク分解の試行錯誤〜レビュー負荷を下げるために〜
soichi
1
190
『GO』アプリ バックエンドサーバのコスト削減
mot_techtalk
0
140
個人アプリを2年ぶりにアプデしたから褒めて / I just updated my personal app, praise me!
lovee
0
340
社内フレームワークとその依存性解決 / in-house framework and its dependency management
vvakame
1
560
GAEログのコスト削減
mot_techtalk
0
120
データベースのオペレーターであるCloudNativePGがStatefulSetを使わない理由に迫る
nnaka2992
0
150
Writing documentation can be fun with plugin system
okuramasafumi
0
120
DROBEの生成AI活用事例 with AWS
ippey
0
130
Featured
See All Featured
Six Lessons from altMBA
skipperchong
27
3.6k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
240
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Building an army of robots
kneath
303
45k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Music & Morning Musume
bryan
46
6.3k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.2k
Adopting Sorbet at Scale
ufuk
74
9.2k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
193
16k
Why Our Code Smells
bkeepers
PRO
336
57k
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 ???