As your app code gets larger and more complex, it makes sense to break your project out into smaller reusable components. But what’s the best way to do this? How can you clearly version your internal libraries? What kind of setup and maintenance can you expect? How much could it slow down development time?
In this talk we’ll dive into the various ways you can manage internal library dependencies. We’ll chat about the current state of Android dependency management, Gradle multi-project builds, Git submodules, and creating a private maven repository in Artifactory. The speaker will share real-world examples, and the pros and cons of each approach.
75. Cons
Magic is involved:
Working with a detached head
Pulling down latest submodule
Adding & tracking submodule reference
Library versions are commit SHAs
103. Pros
Versioning is a “flexible” version of git
Versions are clearly defined in one place
104. Pros
Versioning is a “flexible” version of git
Versions are clearly defined in one place
One Android Studio project
105. Pros
Versioning is a “flexible” version of git
Versions are clearly defined in one place
One Android Studio project
Code access
106. Pros
Versioning is a “flexible” version of git
Versions are clearly defined in one place
One Android Studio project
Code access
It’s cool because AOSP uses it
173. Photo Credits
Neverending Story Book
http://www.dailyrecord.co.uk/entertainment/tv-radio/flashback-friday-neverending-story-proves-4948514
Unicorn w/ Rainbows
http://souloftruth.com/the-race-to-nowhere/
John Wayne
http://patch.com/california/sanclemente/best-ways-recycle-water-during-californias-dry-spell
Space Pic
http://wallpapershidef.com/outer-space-desktop-wallpaper.html
Computer
https://commons.wikimedia.org/wiki/File:Gnome-computer.svg
Crying Pikachu
http://gifrific.com/wp-content/uploads/2012/06/Picachu-crying-pokemon.gif
Branch
http://townhack.github.io/git-101/img/git-branch.png