What is Android Studio?
Who uses Android Studio?
Android Studio Integrations
Why developers like Android Studio?
Here are some stack decisions, common use cases and reviews by companies and developers who chose Android Studio in their tech stack.
As a Engineering Manager & Director at SmartZip, I had a mix of front-end, back-end, #mobile engineers reporting to me.
Sprints after sprints, I noticed some inefficiencies on the MobileDev side. People working multiple sprints in a row on their Xcode / Objective-C codebase while some others were working on Android Studio. After which, QA & Product ensured both applications were in sync, on a UI/UX standpoint, creating addional work, which also happened to be extremely costly.
Our resources being so limited, my role was to stop this bleeding and keep my team productive and their time, valuable.
After some analysis, discussions, proof of concepts... etc. We decided to move to a single codebase using React Native so our velocity would increase.
After some initial investment, our initial assumptions were confirmed and we indeed started to ship features a lot faster than ever before. Also, our engineers found a way to perform this upgrade incrementally, so the initial platform-specific codebase wouldn't have to entirely be rewritten at once but only gradually and at will.
Feedback around React Native was very positive. And I doubt - for the kind of application we had - no one would want to go back to two or more code bases. Our application was still as Native as it gets. And no feature or device capability was compromised.
I've recently switched to using Expo for initializing and developing my React Native apps. Compared to React Native CLI, it's so much easier to get set up and going. Setting up and maintaining Android Studio, Android SDK, and virtual devices used to be such a headache. Thanks to Expo, I can now test my apps directly on my Android phone, just by installing the Expo app. I still use Xcode Simulator for iOS testing, since I don't have an iPhone, but that's easy anyway. The big win for me with Expo is ease of Android testing.
The Expo SDK also provides convenient features like Facebook login,
MapView, push notifications, and many others. https://docs.expo.io/versions/v31.0.0/sdk/
Personally, I never like installing too many applications / programs on my system. Even if it is a small one. For me, it is better to have aliases for commands and use them via terminal rather than having a program do that for me. Also, who needs aliases too if you're using Zsh autocompletion!
Thus when it came to developing a React Native application ( I started native mobile application development a few months ago ) -- I preferred using Google's Android Emulator rather than using third-party softwares that provide virtual devices to run the app. But also, I didn't want to install Android Studio which I'm never going to use anyways except for the emulator. So I ended up installing and using it through command line and also wrote a blog around it for #Mac , #Linux and #Windows users.
But after a few days, I started using USB Debugging with an external device whenever possible. Emulators just hog the device memory IMO.
I use Git with GitLab because is cool and easier than other versioning systems like subversion. For android development, I use Kotlin (and sometimes still use Java ). For IDE, of course use Android Studio (and also IntelliJ IDEA ) I use PHP and Python for backend API
Android Studio's features
- Flexible Gradle-based build system.
- Build variants and multiple APK generation.
- Expanded template support for Google Services and various device types.
- Rich layout editor with support for theme editing.
- Lint tools to catch performance, usability, version compatibility, and other problems.
- ProGuard and app-signing capabilities.
- Built-in support for Google Cloud Platform, making it easy to integrate Google Cloud Messaging and App Engine.