How important is it to know Gradle (Android Studio)? [closed] - android

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
After using Eclipse, back in 2010 I moved to IntelliJ IDEA and have been using it ever since. Although Android Studio took over the logic of IntelliJ IDEA, it implemented Gradle as its build system.
Gradle in its essence may be as perfect as they say on the Gradle website, but honestly it's rather confusing for those who first time open project created with Android Studio.
Will Gradle become very important in the future? How long can we not use it? Basically, how smart is it that I keep using IDEA without taking care of Gradle and Android Studio?
I know that at this point I don't need it, but I have to think about the future.

If IDEA is working for you, then it's good to stick with it -- if it ain't broke, don't fix it. IntelliJ will be supporting its existing non-Gradle build system at least through the 14 release and likely beyond that, as far as I know (though I don't speak for them). You can use non-Gradle projects with Android Studio if you already have one, but it's not really encouraged, and we don't provide you a means of creating a new one. It's not that there's much that's inherent to Android Studio that makes it not work with non-Gradle projects, but it's just not where our focus is. Besides, since IntelliJ uses the same Android plugin as Android Studio, most functionality you might want will be available on that side anyhow.
Gradle is the future as far we on Android are concerned, and we hope to eventually have a better story for all the people using Eclipse + ADT, so if you're looking to the long-term future, it's a direction you should eventually go, especially if your development becomes complex enough that the existing build system becomes a limitation. But it's not like your existing workflow is going to just suddenly stop working in the next year or two.

I found Gradle very confusing initially and it took me a long time to wrap my head around it. Android Studio is using Gradle as the preferred build system. Just keep practising with it and you'll slowly learn it. Then if/when you're forced to use Gradle it won't be an insurmountable task. That's what I did and eventually I adopted Gradle, and now I don't have any problems with it.
So I think if you like working with Android Studio and you anticipate you'll be using it for future projects, it's a good idea to familiarise yourself with Gradle in case it eventually does become the only supported build system (and that's looking increasingly likely).
I'd say it's not smart to neglect learning about Gradle it if you're already an Android Studio user.. but it is a subjective question.

Related

Beginner in Git, Starting from Android Studio [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 7 years ago.
Improve this question
I'm working in a project in Android Studio and up to now, I've copied my files in other directory to change my code for adding new improvements in my program.
And this way is very overwhelming for me.
But I heard that is a good idea use Git when developing, and I want to try it. But I have some questions:
My app is not published yet, should I use Git or other VCS?
How can I use Git from Android Studio?
Is there any risks to my app in development get messed while trying a VCS?
What is VCS and why should you use it?
There are many benefits of using a version control system for your projects.
Collaboration
Without a VCS in place, you're probably working together in a shared folder on the same set of files.It's extremely error-prone as sooner or later, someone will overwrite someone else's changes.
With a VCS, everybody on the team is able to work absolutely freely - on any file at any time. The VCS will later allow you to merge all the changes into a common version.
Storing Versions (Properly)
Saving a version of your project after making changes is an essential habit. But without a VCS, this becomes tedious and confusing very quickly:
Restoring Previous Versions
Being able to restore older versions of a file (or even the whole project) effectively means one thing: you can't mess up! If the changes you've made lately prove to be garbage, you can simply undo them in a few clicks. Knowing this should make you a lot more relaxed when working on important bits of a project.
Understanding What Happened
Every time you save a new version of your project, your VCS requires you to provide a short description of what was changed. Additionally (if it's a code / text file), you can see what exactly was changed in the file's content. This helps you understand how your project evolved between versions.
Backup
A side-effect of using a distributed VCS like Git is that it can act as a backup; every team member has a full-blown version of the project on his disk - including the project's complete history.
How to use GIT on Android Studio
Have a look here

Android Studio vs Eclipse with ADT (2015) [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 6 years ago.
Improve this question
As of 2015, I see that Android studio is an official IDE for developing android applications according to information on their official site and on each page of their site, there is a note suggesting to go for Android studio rather than Eclipse with ADT.
Note: If you have been using Eclipse with ADT, be aware that Android Studio is now the official IDE for Android, so you should migrate to Android Studio to receive all the latest IDE updates.
But I haven't found any latest article about the pros and cons in choosing the IDE or eclipse with ADT. If some one can throw some light on it then it would help other beginners like me in choosing the right app for android development
IMO everything you can do with Android Studio (gradle, maven, etc) you can do it with Eclipse faster and easier and i mean "faster, easier" because in Eclipse if any problems arises like "error XX" you do a quick search on yahoo/google/whatever and thousands of results appears of guys who had the same problem and how to fix it.
I've been programming with Eclipse for C/C++ and Java over 8 years already switching to IntelliJ for me is a total waste of time with translates in a huge loss of money, all my clients wants their apps for yesterday and i can't have the luxury of "playing" and wasting time tweaking a really different IDE while i have bills to pay. So in my case i will 100% stay with Eclipse.
Indexing. Causes AStudio to load up in a matter of years. Afterwards, same a Eclipse. +E
Language support. +A
Perspectives. One has to actually start fumbling for the different
windows in AStudio once they need to switch between design / debug /
code. This hassle was completely taken care of by the use of
Perspectives. +E
Debugger. Incredibly slow to launch in AStudio. Even Running an app
takes ages to complete in AStudio. And on the rare occasions it
doesn't, one ends up with all sorts of exceptions in his app under
development or plainly app won't install any longer. +E
Support. StackOverflow is the main resource in both cases. Just that
with Eclipse there is not much need for it. +E
UI: AStudio is just eye cancer. Eclipse is such a breeze. +E
Building: gradle > ant; but Eclipse also offers mvn. Also, this is
the main reason of slow run/debug -ing in AStudio and there is no way
around it. You just have to swallow the pill and wait 15-20 seconds
every time you change a line of code. +E
Auto-save: just makes me think Google felt I was retarded and this feature would save my life. +E
Final score:
A : E
1 : 7
Which begs the question of why in the world did they switch to AStudio. That being said, we naturally have no say in this, we just blindly follow the Man.
First, Android Studio is created and maintained by Google toolkit development team. That means that seemingly every latest update of Android Development will be pushed to AS at the first time. Second, AS is an integration of different Android Development Tools, including ADT, IntelliJ, Gradle, Maven, Ant...You know, ADT could be pluggin in many different open-source development tools, like Eclipse, IntelliJ, NetBeans...When you migrate projects from one to another, some problems could be caused because they have different programming rules and formats which pains not only developers but also Google's and Android's. That is a question. So Android Studio may be a solution for this.
I am a seasoned developer in eclipse adt and recently switched to AS ( Dec 2015) . I should say eclipse is definitely better than AS! True eclipse crashes but so does AS and even more! Eclipse know how a Java developer thinks and thus is very very intuitive. AS crashes blatantly throwing NPEs which is embarrassing! As of now AS is definitely over-hyped. I am sure intellij has done some evil deals with google to push its IDE. People who are voting for AS have definitely not worked in eclipse for long. This debate is becoming more of "Who knows what!" rather than "Which is better!"
Here is an article that I am currently writing. Its high somebody raise his voice:
http://pissedoff-techie.blogspot.in/2016/01/why-android-studio-sucks-over-eclipse.html
Android Studio's primary problems:
Very slow compilation for debugging. For some of my project Eclipse - 11 sec AS 5 min!
String completion is unusable. For example, completion without parameters. No completion for some operators, for example if, else, for etc.
AS dramatically slows the PC down: mouse and keyboard are periodically freezing.
Project structure is intricated.
So, how to continue using Eclipse if new version of Google Play Services (V30 and higher) is not available for Eclipse but only for AS? This is info how to prepare AS libs (Analytic, ADS, etc) for Eclipse.
Eclipse is far more superior to AS. It is much easier to use, more intuitive, much less buggy (even though alot buggier than VISUAL Studio, but we're comparing to AS), and will probably make your work more productive. It's 2016 now and I'm planning to keep using Eclipse as long as it's possible.
I am new and I started with AS, but soon grew frustrated when it came down to using other developers repositories in my project. The whole aggrevating process and guesswork of migrating them over to the gradle and configuring manually just became over bearing to me, so I went retroactive and downloaded Mars1 and gave it a try. I found it to be a little unintuitive at first, but once it I learned the navigation I fell in love with the openness of it.. I still intend to use Android Studio for all or my releases, but eclipse is now my goto ide right now unless Google tries making some API that is only used in Studio. I like options and hate it when companies try to streamline they lose great experienced developers that way. Also #mistersmith...you probably cannot afford to be that naive. You are going to go the way of the dodo thinking their is only one solution and feeding into corporate garbage. You may not know it, but google is grooming people like you into believing AS is the only practical solution. Just wait until you are forced to migrate to something differnent in the future after buying into AS for all of your mobile application needs.
In my opinion:
Android Studio is official IDE for Android developer which was provided by Google. So, we can have latest support for updating or any official change from google.
Using Android Studio is better than Eclipse for layout. You can code the layout and see the preview [at least, when I answer this question, Android Studio is better than Eclipse]
With build.gradle we can easily access share library of others on github.
We also can avoid some silly bugs with code analyzer tool of Android Studio (without add any plug-in). And we also can have many other help from it to improve coding style or logic, ...
I feel mad with the problem of generate R.java on Eclipse. Sometimes, my Eclipse does not generate this file, so I have to find many solutions to solve it. On Android Studio, we can easily deal with this problem (this problem almost occurs due to define resource).
If you familiar with Shortcuts (combination key) on Eclipse (Mac OS or Windows,...) you can configure to get this on Android Studio: Go to File -> Settings -> KeyMap -> Keymaps dropdown Option. Select from them.
But, Android Studio is not always good. Specially, when you work on a big project, which includes many projects (each project will generate a apk file). Android Studio is not possible to open two projects in a single window. New projects can only either be opened in a new window or replace the project in the existing window. Someone talks that Module in Android Studio is same as project on Eclipse and Project in Android Studio is same as workspace on Eclipse. But, I think it is not equivalent.
gradle and indexing process on Android Studio is so heavy for wooden PC (just like laptop core-i5 + RAM 4GB + HDD sata), it will result in showing Android Studio is not responding
There's a question already here which answer this perfectly.
To add my bits, Android Studio is the one which is getting the latest update and is going to be the only official IDE for the future, so I think everyone should move to Android Studio.
Android Studio is far better, stable and lightweight IDE. Eclipse has been crashing on me since I started Android Development, while Android Studio had a lot less crashing. On top of that we have a very good integration of Maven for libraries in Android Studio.
The future is here with Gradle, ANT is a thing of past.
Here are some thoughts about how Android Studio team has not been able to become a product of a lot better than Eclipse and why, in my opinion, Google Android Studio will close the project in the near future due to some chronic problems: http://turbocolour.blogspot.com/p/eclipse-adt-vs-android-studio.html
Interesting topic for me:
I used to think that Eclipse was a hell of IDE for building Android apps... ironically, now that I am using AS things got worst.
For sure AS is much more integrated with the android platform but that is why I would have expected something smoother and hassle free: Eclipse had the excuse of being a general purpose IDE after all.
I think the problem lies in the android architecture itself and the related dev tools that makes coding awkward, unpleasant with much lower throughput compared to other more stable platforms.
Google seems not to care too much about changing API and forcing project/code upgrades to make possible to update projects written for previous versions.
They seem to not care at all about backward compatibility.
They introduce changes their libs, even stripping away entire APIs from the core (apache for instance in Android 6), think about play services (that is becoming now bigger than the OS itself), admob, analytics....they keep on changing and changing forcing to upgrade / change source / re deploy.
Every time I see a popup in the dev console about a new feature I feel shivers down my spine.
What about the fact they discontinued eclipse while their studio was still unstable and most important not giving decent reliable tools for porting projects ? Have you guys tried to port a big old project into AS ? It’s a kind of hell...
I just think they don't care that much about coders cause we ARE A LOT, We do not pay them and want it or not you will have to conform if you want to stay in.
I cannot even think about for example Microsoft or Apple doing the same with their dev tools, but it is also true that in such cases you pay them.
My opinion of course.
#Eugene
The reason you say this is the same reason aged developers end up without jobs.
Hey kid, RESPECT.
Have a look to what the previous generations of coders did for the IT and what your one is doing and then think about what you write.
Just give you some names to start your homework: Stallman Knuth Torvalds Berners Lee Wozniak Ritchie Codd Thomson Engelbart and I could continue ....
I tried android studio(AS) and it makes your computer very very slow. I have a intel I5 core processor but it takes a lifetime to open AS. I tried to code a little and i see that auto-completion is great in AS. I tried to search the internet how to make AS fast so try it a little more. There are bunch of tutorials that say it can make the AS fast including disabling other programs. With all the hardwork you have to input just to make AS fast, i switched back to Eclipse. Eclipse is a lot lot lot faster than AS. Installing AS just wasted one day of my life.
As of May 2015, Android Studio support for NDK has significantly improved. You can choose between automatic native lib generation, or using your own Android.mk in more complex cases. But AS still does not provide a way to debug native parts of an app (if you are using JNI). This may be the last reason to keep Eclipse on one's desktop.
Update, a year later: Android Studio 2.2.1 provides decent NDK support, and is almost fully compatible with the old Android.mk - based configuration. And it does support C++ debug, much easier than Eclipse ever did.
The main Pro now is one has to use it for Android dev. The main con is many other tools still use Eclipse. Even Appium automated test framework for Android.
Nowadays one must use Android Studio. It has great features such as code search: one can context click on
Find Usages
when a class is highlighted and find uses in the code. (nevermind the word "usages" is incorrect English. :-) It's the Google way. Swim with it.
It has some tighter integration than was accomplished with Eclipsed such as the nice feature to context menu on an xml layout file and find where in code it is used. Useful.
Also, it uses Gradle so people can write their own build processes rather than having an IDE do it automatically. I think this frees Google from having to waste time figuring out how to make the IDE handle all the configuration mess.
While our build went from 2+ minutes with AS 1.x to 17 minutes with AS 2.x, this could be attributable to how we have our Gradle files laid out. We need a build programmer to make sure our build configuration is correct.
As you can see, the main Pro is one has to use it and the putative Pros are it has better support for Android code navigation and screen designers. The main Con is it moves from the standard IDE used for most all other Java development and it doesn't provide drastic improvements in performance. Another Con is it arguably introduces the need for a new role of build engineer; but many projects already were bogged down into manual build definitions with Maven; so, that may not be a Con depending on your team's speed.
For Android development definitely Android Studio is better than Eclipse. I have worked on Eclipse for almost 4 years but when I switched to Android Studio, I felt the difference. Below are few points I have noticed:
Performance:
Android Studio's performance is better than Eclipse and improving with each new release.
Intelligent:
Android Studio is more intelligent than Eclipse. It gives you suggestions more accurate and fast
More options:
You can build multi flavor APKs at once in build.gradle
Summary:
After working on Android Studio if you will work on Eclipse you will feel the same as driving a entry level car of Toyota after driving Lamborghini Aventador :)
I felt this difference
Update:
Android Studio 2.0 is coming. Its very very fast than current Android Studio. http://android-developers.blogspot.jp/2015/11/android-studio-20-preview.html
Update:
Android Studio 3.0 is released. As I mentioned 2 years ago about the difference, Android Studio is getting better day by day. Have a look into AS 3.0 : https://android-developers.googleblog.com/2017/10/android-studio-30.html
Update:
Android Studio 3.3 has been released last month. Please check here for more details: https://android-developers.googleblog.com/2019/01/android-studio-33.html

Difference between Android Studio and Eclipse for development and debugging [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
What are the pro's and con's of using android studio instead of eclipse ?
Note:: I have looked into the answers here answered by CommonsWare but it was not much clear in debugging tools
Does Android Studio offers special debugging features which are not
in eclipse ?
If so what are those ?
I have used extensively both IDE's. IMHO Android Studio is much better than Eclipse.
Some obvious advantages are:
It supports gradle (this allows you to really have control over the build, create different application flavors, different signing configurations and so on).
In the layout view you have the option to view both the actual layout and the xml at the same time, while in Eclipse you must choose between the two tabs.
It feels better. From doing a refactoring (like renaming a method, to extracting a class) to viewing the Logcat. The refactorings seem more solid and the Logcat does not "disappear" as it happens in Eclipse (although it must be noted that the filtering does not work that well).
Its the future. Sooner or later this is going to be the standard, as Google is actively developing it.
On the downside I can notice three things:
Still it is not that stable. For example if you want to view your project modules in the module view (as of v0.4.2 for Windows) I cannot see all of them. This actually means that in certain cases the only thing you can do is to build from command line and edit the gradle script.
Because is something relative new, many libraries are not supporting it out of the box, whereas in Eclipse, since it has been around for so long, everything is more or less trivial.One example of this, is Robolectric (the library that allows you to run android unit tests on your pc - i.e. over any jvm). I have really struggled to set up Robolectric in a gradle project, and I never managed to do it. In Eclipse it was quite easy.
The last thing is also related to the other ones: Since Android Studio is quite new, you may not find answers online for the problems that you face.
To sum up, sorry I went a bit beyond the debugging tools (although both of them use the same ddms, so there is no difference there, but I noticed Logcat has a difference, as mentioned above). There is no actual dilemma which one is better. Android Studio is, period. The point is when are you going to switch to it.
Just my two pennies.
Android studio is much clever. It understands context in which you are working (because it's built over IDEA). And for now it is stable enough to work with. I changed IDE from eclipse to IDEA and then to ADS, six month ago and very happy about this.
No, both of them give you full functionality of debugging process.

Should I get into Android Studio or should i stick to Eclipse? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
I started programming a few months ago, and learned python and I started learning Java about a month ago.
I've been using sublime text for coding Java programs, and now as I am getting into Android Programming, I found two official IDEs --> Eclipse and Android Studio.
After two hours of research, I've learned a few things: Android studio is an early preview, and it is not recommended for beginners.
However, Android Studio shows so much promise that I think it will be taking over eclipse in the next few years, assuming that google will publish an official polished version in early 2014.
I have nothing against Eclipse, but it just seems like Android Studio is the way to go if I'm looking to program Android apps 5+ years later.
What are you guys' opinion on it?
I know the basic idea of how android programming works, including xml, and wanted some recommendation on whether I should get into Android Studio or not.
As Android Studio is a rolling release, it's not like I would have to start all over when new versions come out, so I think updating versions is not a problem
So, will it benefit me in the future if I get into using Android Studio rather than sticking to traditional Eclipse with Android sdk?
Need some answers from experienced developers who use/used Eclipse and have tried Android Studio.
Thanks
It is a matter of personal preference. I have used android studio and eclipse and also used sublime text for android programming. For starters eclipse is the best(my view). Android Studio is great too(layout support) but you should know that it is in preview as of now. Honestly I suggest using eclipse for a while then after you gain some experience switch to android studio. Also visit the following links:
Android studio vs ecllipse
This one too
Theoretically you shouldn't need either - I knew someone that used text editor and compile from command line, that is basically what Eclipse/Studio are doing, but with some clever UI design tools, and a "run" button instead of setting up and running an ant build.
I would tend to prefer Eclipse, since it can be used for many other things than Java/Android, has a large following, and is mature with very good Android tools, right now. I doubt that will change soon.
Can't give a exact answer for this. I like to deal with Eclipse. Another one may like to deal with Android Studio. It is vary with different developers. If Eclipse makes you comfortable with coding, use Eclipse. If Android Studio makes you comfortable with coding, use Android Studio.
I personally would like to continue with eclipse due to years of practice on it! Yes, but you can surely try to use Android studio where you are not working on critical projects cz you don't have time to search for things regarding adt again and again until you are comfortable!
well i figure out this from this content you must read as well
Working with eclipse can be difficult at times, probably when debugging and designing layouts Eclipse sometimes get stuck and we have to restart eclipse from time to time. Also you get problems with emulators.
Android studio was releases very recently and this IDE is not yet heavily used by developers. Therefor it may contain certain bugs.
This describes the difference between android android studio and eclipse project structure:
Android Studio Project Structure (v.s. Eclipse Project Structure)
This teaches you how to use the android studio:
http://www.infinum.co/the-capsized-eight/articles/android-studio-vs-eclipse-1-0

Is using Scala on Android worth it? Is there a lot of overhead? Problems? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 6 years ago.
Improve this question
I was thinking of building an app on Android with Scala instead of the regular Java (or the equivalent I guess). Is it worth it?
Any problems and unnecessary headaches?
Working with Scala should be mostly painless, as the dex compiler just works with bytecode - which is exactly what Scala produces.
Your biggest problem then is the dependency on scala-library, as dex expects everything to be in a single Jar. This is best handled with Proguard (which will also remove unused code and give you a smaller executable, ideal for mobile)
Current best practice is to use SBT with the Android plugin; It'll take care of everything for you: http://github.com/jberkel/android-plugin
If you must use Eclipse and the plugin supplied by Google, then you're going to have a non-standard directory structure. I also wrote an article on how to deal with this: http://www.assembla.com/wiki/show/scala-ide/Developing_for_Android
But be warned... it takes a lot more effort that way!
There is a talk by guys from bu.mp on Scala Days 2011.
Disclaimer: While they talk a lot about issues they've faced, the overall experience was definitely positive. Moreover, this were the problems of one particular team and they are minor ones.
Summary:
Memory usage. Closures eat memory. Scala has closures all over the place. While it is not a relative big problem (memory overheads) on your table PC, it should be considered when you develop for mobile phone. You may ask: how they solved it? They had a hunt for a tight loops and then optimized them (rewritten in closureless scala/java). (26th minute) I think Java 8 with native closures support will ease this problem Next scala release will target java 8 platform with a new backend and aim for much better performance. Discussion on roadmap is here.
Slower compiler (as Michal Galpin said they have 15 seconds for Java code compilation, about a minute for Scala and about an order a magnitude more for Proguard, but note that it depends on your code base and machines, but I suspect that ratio will be the same). It especially annoying when you making UI, like moving pixels, buttons and so on, and want to quickly see the result. (7th minute)
There were some issues with inner classes which are quite common for Android (look at 23:00 for details).
There were rare bugs in scalac (scala compiler) in scala-java-collections interop. The problems were solved by writing this things explicitly (I suspect that is not a lot of boilerplate at all).
While he talks about IDEs too, I don't think that it is a problem (look this post, about Scala environment). Guys that do Scala IDE and IntelliJ do their work well and IDE support is getting better and better.
For unit testing one could use RoboSpecs (allows you to run unit tests inside JVM, not inside emulator), which is faster.
One of the biggest problems I've stumbled upon is the limitations of the dex format (no more than 65536 method references per dex file). Scala library simply doesn't fit into limits, so you have to workaround that by:
using Proguard that will trim the fat from scala lib. But it is really slow on my laptop, and is just wasting time in the development stage (but is much much helpfull when you are releasing your app to the Google Play)
using predexed library. The bad thing is that this project is a little abandoned and contains only 2.9.0-1 version.
preinstalling scala on your phone
Some guys claiming that there are problems with IDEs, but things getting changed fast: the current version of the IntelliJ IDEA 12 not only has a good support of Scala as a plugin, but also contains UI Designer for Android. Moreover, you can use Eclipse which has a support from both Android (by Google) and Scala (by Typesafe) sides. Android Studio (the new IDE based on IDEA which was announced on Google IO '13 and is developed by Google) support IDEA plugins thus Scala.
We discussed this at Scala Lift Off London last Friday and the consensus seemed to be that it generally works fine as long as you avoid Actors. Also, the sbt-android-plugin was highly recommended. Nathan Hamblen's blog has many posts on Android and the ones also tagged Scala have a lot of gotchas worth looking out for.

Categories

Resources