Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Continuous integration for androids
Search
Kirill Zotin
December 19, 2012
Programming
150
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Continuous integration for androids
Kirill Zotin
December 19, 2012
Transcript
13 slides
Continuous Integration of androids Kirill Zotin 19.12.2012
• 1 click build • Every commit is built and
tested • Fast feedback • Static code analysis • 1st step to Continuous Deployment Continuous integration
Build process
Ant • 'Make' for Java • Imperative (tell how to
compile, run tests, package) • No lifecycle support • No conventions • Easy to extend
• Declarative (describe result) • Default conventions, lifecycles, archetypes •
Dependencies management! • Repositories! • More difficult :(
Limitations • Dependency management • IDE integration • Different builds
of same project (Prod/test, proguard on/off, multiple apks) • Maven: Artifacts pushed to Remotes with delays
• The best of 2 worlds! • Power and flexibility
of ANT • Dependency management and conventions of Maven • Groovy DSL
gradle-android-plugin Goal - easy to: • Reuse code and resources
• Create several variants of an application, either for multi-apk distribution or for different flavors of an application • Extend and configure the build
gradle-android-plugin Current limitations: • No IDE integration • No support
for Renderscript • No support of NDK • No support for Proguard • No Lint integration • Etc...
gradle-android-plugin Product Flavors + Build Types = Build variants
Demo time!
Distribute • Email • Dropbox / Drive • TestFlight /
Launchpad / ... • Repository managers (Nexus, Archiva)
Thanks! Questions? Suggestions? ;) http://bit.ly/gdgdnipro
More Decks by Kirill Zotin
See All by Kirill Zotin
From idea to production with serverless architecture
painie
0
370
Android architecture patterns
painie
3
320
Modern android UI
painie
1
99
Android client-server interaction
painie
0
74
Other Decks in Programming
See All in Programming
Railsバージョンを4倍にした話
optim
0
1k
React Native経験者が Flutterを30⽇間触って驚いたこと
3saito
0
180
AIがコードを書いてくれる時代、我々は何を確かめるのか
yosuke_furukawa
PRO
13
5.9k
AI Augmentation Techniques with Liberty
ivargrimstad
1
470
Goコンパイラを作ってGoをもっと理解する / Build a Go compiler to better understand Go
ikura_hamu
0
130
AI時代のFlutter品質設計 — アプリ品質を守るQuality Layers
omatty198
0
380
まずはコードより業務と向き合う:テーブル解体のためにPdMを呼んだ話
sakawe_ee
0
230
作って学ぶSpring BootのAuto Configuration / JJUG Night Seminar 2026-10-19
rshindo
0
230
Performance Optimization With LLMs
xleitix
0
260
Apple Intelligenceとオンデバイス時代の到来
yahir0
0
240
Rails初心者がパスキーを実装してみて大変だったこと
ktombow
0
190
LLM 101: Exploring LLMs, Starting with Tokens.
dalinaum
0
110
Featured
See All Featured
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
380
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2.2k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
660
HDC tutorial
michielstock
2
1k
Designing for Performance
lara
612
70k
How to Talk to Developers About Accessibility
jct
2
620
Reflections from 52 weeks, 52 projects
jeffersonlam
356
22k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Amusing Abliteration
ianozsvald
1
390
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
320
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
620
A Soul's Torment
seathinner
9
3.9k