Android Studio 2.3 has been released.
We are most excited about the quality improvements in Android Studio 2.3 but you will find a small set of new features in this release that integrate into each phase of your development flow. When designing your app, take advantage of the updated WebP support for your app images plus check out the updated
ConstraintLayout
library support and widget palette in the Layout
Editor. As you are developing, Android Studio has a new App Link Assistant which helps you build and have a consolidated view of your URIs in your app. While building and deploying your app, use the updated run buttons for a more intuitive and reliable Instant Run experience. Lastly, while testing your app with the Android Emulator, you now have proper copy & paste text support.
I hear a lot of negativity regarding Android Studio, but since I’m not a developer, I can’t really make heads or tails of it. Is it really as bad as some people make it out to be?
I both expect and see a lot of hate towards all IDEs (and a lot of passion for them, too). Developers are all torn between simplicity and features, and it shows itself in the holy wars between editors in particular, from XCode and Visual Studio all the way back to vi and emacs.
I’ve used Android Studio a little, and I don’t have anything bad to say about it in particular. I really dislike how Android packages are constructed, how Gradle works, and how much XML is used to make Android apps, but this is hardly an issue with Android Studio.
In food competitions it’s a bad idea to offer a dish that has 3 different items, because the judges are likely to offer a score commiserate with the least successful item.
So it is with IDEs. The problem is the are integrated (integrated development environment – IDE). Folks will pick the least successful part and pick on it.
For more Unixy standalone development tools this is less of a problem for the opposite reason. Those tools, like Emacs, Vim, SublimeText, etc. they only do a small number of things (or just one thing) and tend to do it well. The criticism of those focus usually on some esoteric aspect of how it does a thing, or is simply “it’s not an IDE”, etc.
But you don’t have to use all the features of an IDE, and they generally do things that the standalone editors aren’t quite as fantastic at – like auto-complete or intenseness. Some argue you don’t need those if you use a good language that doesn’t require so much boiler plate. These arguments can go round and round.
Anyway, I haven’t use Android Studio much, but I’d bet the Java language is the problem 😛
I’m a big fan of IntelliJ IDEA which Android Studio is built off of. IntelliJ and Visual Studio are the only IDEs that haven’t felt like a massive chore to work with. Haven’t tested Android Studio itself though, but I know people have a love/hate relationship with IntelliJ. I wouldn’t be too surprised if that transferred over to Android Studio.
Gradle itself is something I’ve found a bit complex, but I’ve always found Android Studio to be perfectly usable, and a big improvement on Eclipse. Could do with having better syntax highlighting for native code but that is probably just me not doing it right! :-p
I used it regularly and found it to be a big improvement over Eclipse. I am quite happy with it.
No matter how bad it is (I haven’t used it), it can’t be worse than, or even as bad as eclipse.
Sadly it can and it made me love Eclipse again.
On my dual core, 8 GB, 512 GB HDD, Eclipse and Visual Studio 2015 run just fine while Android Studio is only usable configured in laptop mode with several plugins disabled.
I already tried the new 2.3 version and it appears to finally have improved the situation.
And Gradle, oh well, it needs a background running daemon to be able to match Maven in compilation management.
Core i5 2C4T, 8GB, 256GB SSD. When opening phpstorm + android studio + chrome, with windows 10, under 2 hour will run out of memory. And compiling takes forever, too.
As owner of a app + cloud development company, I have been in touch with various development environments.
Android Studio is a pretty good tool for the task it should do. A good IDE with heap of small tools that increases the productivity of the developer.
Nevertheless, app development remains a PITA both on iOS and Android. The fact that you develop on a PC but deploys on smartphone, makes a full cycle of change, compile, run, debug a time consuming procedure.
On Android the development environment itself is not really pleasant. Java is great for back end IT systems but a kind of nightmare for UI and app development. The extensive use of XML and things like Gradle don’t help at all. Android Studio does its job in writing and maintaining code, but the UI design part has room for improvement.
Xcode on iOS is better job in designing the UI but lacks a lot of small utilities Android Studio has (e.g. the excellent search). Objective C is even worse than Java. Once Swift has an extensive library of utilities, this will be a big improvement.
Taken into account that putting an app in production is neither a smooth operation, I am looking closely to Progressive Web Apps, which could be (certainly on Android) the future.
Interesting to hear that ObjC is worse than Java and XCode behing Android Studio. I myself am mainly iOs developer with occasiona Android projects here and there, and can say that XCode is very stable and fast environment. On my Mac Mini with SSD I see no slowdown what so ever and I’ve been using the same system now over 3 years and upgraded OS X several times without a single clean reainstall. System is stable and snappy as the day I got it brand new. I really don’t get the complaints towards Objective-C. It works wonderfully and you really need to understand the highly asynchronous API approach that Apple has taken – the callbacks and delegates are everywher and you need to constantly think in tyerms of multiple threads, where the callback is executed in totally different thread than the initial call. I still fail to see, what can Swift possibly bring that I already don’t have with ObjC.
And I can concur that Android development is quite a bit slower because of the extra Gradle steps required to deploy and run the project. XCode is much more integrated. Just attach device and hit run … and it just works.
And I am not even going to complain about the ridiculous approach of Android lifecycle where the destruction/creation of fragments and activities happen all the time and you constantly have to remember to store the state as on the next second all your instances may be recreated from scratch. No such thing in iOS.
As other people have mentioned, the unholy combination of Java and XML which goes into Android app development is the problem.
I haven’t had a chance to use it for a real project, but am intrigued by Kotlin for Android development.
https://kotlinlang.org/docs/tutorials/kotlin-android.html
Android Studio make app development much simpler. Creating a first Android Project in Eclipse make a dizzying array of files that make little sense to a new user. Android Studio works more like Visual Studio, where it assists you in the task at hand. Of course, if you are part of the macho brigade that considers anything beyond text editors and build scripts something only the weak-willed use, then of course Android Studio sucks. I found it very useful, and now that they’ve improved the performance and resource issues, a good product for learning Android Development.
Of course, my money is still on tools that are platform neutral, that can target iOS or Android. But if you want to squeeze out the last bit of performance, or ensure the best native experience, then XCode and Android Studio are a reasonable combination.
Historically I preferred Eclipse to IntelliJ (on which Android Studio is based), but it became clear a few years ago that all the new tooling to support Android development would be done with Android Studio, so I switch over. The IntelliJ part of the experience I find average, but I think the support tooling that is part of the Android Studio plugin is top notch.
I also really like the use of Gradle as the build system, it’s nice to be able to build via the IDE or from the command line using the same configuration, and Gradle, as it is used in Android Studio, is one of the better organized build management systems I’ve had to use.