Best products from r/androiddev

We found 118 comments on r/androiddev discussing the most recommended products. We ran sentiment analysis on each of these comments to determine how redditors feel about different products. We found 138 products and ranked them based on the amount of positive reactions they received. Here are the top 20.

Top comments mentioning products on r/androiddev:

u/TheAmazingSausage · 128 pointsr/androiddev

Android team lead here, I've been working with Android commercially since 2009 (before Android 2.0 was released) and have worked at, or done work for, some big companies (Mozilla, Intel, Google, HTC...). I was in a very similar situation to you in that I was a web development and was bored, I'd been playing with Android in my spare time; I got my first break by volunteering to do an android app at the company I worked for, and went from permanent employee to contractor fairly quickly after that and have been doing it ever since.

First thing to say is that if you can get your currently company to pay you to learn android and stay with them, that's a win win for both parties (you get to learn something new without a drop in salary and don't have to interview and they don't lose a good member of staff).

In terms of moving company, I don't know where you are based, but here in the UK I often see junior Android contract roles coming up for £200-300 a day. Failing that it's just a case of applying for lots of poisitions and really knowing your stuff.

What I would look for in a junior is to have read, understood and put in to practice Clean Code (https://www.amazon.co.uk/Clean-Code-Handbook-Software-Craftsmanship/dp/0132350882) and Design Patterns (https://www.amazon.co.uk/Head-First-Design-Patterns-Freeman/dp/0596007124). I would expect you to have a good understanding of basic Java and OOP; a working understanding of MVP or MVVM (https://news.realm.io/news/eric-maxwell-mvc-mvp-and-mvvm-on-android/, https://www.linkedin.com/pulse/understanding-difference-between-mvc-mvp-mvvm-design-rishabh-software); understand threading; know about all the major parts of Android (Services, Broadcast receviers, Activities, Fragments etc); know how to write a custom view; be able to efficiently design a layout in XML and correctly apply styles and themes; understand the support libraries - what they contain, why they exist and what they are used for (and also when you don't need them); understand the difference between unit testing and integration testing and know what makes for a good test; the Gradle build system is a really nice way of defining your project build - knowing the fundamentals is essential.

A few of the main libraries I'd expect you to know and have used would be OkHttp (https://github.com/square/okhttp), Retrofit (https://github.com/square/retrofit), Butterknife (https://jakewharton.github.io/butterknife/), Picasso (https://square.github.io/picasso/) or some other image loading library, GSON (https://github.com/google/gson) or Moshi (https://github.com/square/moshi) or some other json parsing library

If you want to level up then there are loads of advanced topics surrounding Android. Any of these following topics will take a while to learn, but will be worth it and will look good in interviews and on you CV:

u/AlphaOmegaTubbster · 3 pointsr/androiddev

Here are a few helpful resources to help you out.


Firstly, you probably need a beginners grasp on Java. For that, I would highly recommend:
http://www.amazon.com/Head-First-Java-2nd-Edition/dp/0596009208

You do not need to go through the entire book, But it would be more helpful to you.

Secondly, I highly recommend this android book:
http://www.amazon.com/Android-Programming-Ranch-Guide-Guides/dp/0321804333

They literally walk you step-by-step.


However, if you do not feel you can teach yourself programming there is always this option:
http://appinventor.mit.edu/explore/
I haven't personally messed around with it but it doesn't require any programming experience.



Here is a free online class that starts tomorrow if you have the time.
https://www.coursera.org/course/androidpart1

or this one that is already finished but you can still access the material.
https://www.coursera.org/course/androidapps101

You could also go at your own pace through it.


Here is also a udemy course that also teaches you java. I would get it now before the price goes back up to 200 bucks.
https://www.udemy.com/android-lollipop-complete-development-course/?dtcode=hfFhrtG2ans8

I haven't personally taken it, but a friend of mine has and he loves it.




Basically, just start reading and learning. The big nerd ranch book that I listed has some really great beginner apps that teach you the basics.



Persistence is the key. Don't give up, fight through the pain. Google like crazy.It's worth it, trust me.

u/vivalasteve · 5 pointsr/androiddev

As others had said, talk to another developer to see if it is even possible to make another Facebook app.

Other than that, if you have absolutely NO programming experience, learn the basics of Java first. I didn't have too much experience in Java, per se, but I was well versed in Python and Perl so picking up another language wasn't difficult.

Once you have Java down, you could do a few things. First and foremost, definitely go here and follow the steps to download everything you'll need, as well as the beginners guide to making your first app which will explain the basics of how android works. The videos from The New Boston didn't help me all that much, but if you want to take a look it wouldn't hurt. If you want a book, I would definitely get this one. It's written by Googles tech lead for android developer relations, and it will explain everything android to you.

Other than that, just think of basic applications, such as a calculator, photo viewer, stopwatch, etc, and just make them with the help of stack overflow and googles documentation on android.

Good luck!

u/0b_101010 · 1 pointr/androiddev

I recommend the book Head First Android. It is the best introduction to Android I've seen yet. This edition is three years old by now but it has pretty mich everything to help you delelop your first app, and then you can get into the shinier and more difficult bits.

I also recommend the Busy Coder's Guide to Android Development, it is more like a cookbook/encyclopedia but its well worth the investment, pretty much anything you'll want to do, it has a chapter on that.

u/miserium · 3 pointsr/androiddev

This might not exactly be what you're expecting, but I heartily recommend the book "Beginning Android Games" by Mario Zechner. Mario is actually the creator of libgdx.

His book creates a very nice framework for 2d canvas and OpenGL games. In fact, the author even says that you'll feel right at home with libgdx after reading the book because the engine he shows in the game is very similar to how libgdx is set up. It's probably one of the clearest and most helpful books on game programming you'll find.

Using his book I went from idea to having my game on Google Play in about a month. I still haven't even got into libgdx though because the engine in the book still has enough of what I need for the games I'll be making, but I plan on making the jump eventually.


Edit: If you're curious, this is the app I just released: Goblin Market

u/aztristian · 1 pointr/androiddev

That is a very broad question. To be a good programmer you have to practice (program) a lot and not just the same thing, but various kind of projects and challenges, there are just too many areas to list here and the challenges vary by programming language, operating system to the actual problem domain.

Choose a language or 2 from different paradigms (functional, OOP, structured) and try to solve the same problem in each of them.

You'll also want to spend time doing some reading, some well known books for example:

  • The Pragmatic Programmer
  • Clean Code
  • The Passionate Programmer

    For just the programming aspect you can start trying to solve leet code style questions such as the ones found in Coder Wars or Leet Code

    The following book does a much better job at providing an overview of what you can do as a programmer and the available career paths:

  • The Complete Software Developers Career Guide

    > And second question backend or mobile development(native) in future?

    For this I think you can be a successful professional in either, there are times when you can get away with not needing a "backend" with custom logic and you can just use a data store, but if you ever need to do some centralized processing or computation that requires more resources (memory, CPU) than a typical device can offer there's no escaping the need for backend development. The challenges in the backend are very different to the ones on the frontend (be it native or web based) and the approach is more focused on system design with a bit more traditional Computer Science topics.
u/bilateralconfusion · 2 pointsr/androiddev

I know how you feel. Games seem like a great place to start when learning to program, but they really aren't. Games are deceptively complex. There is a lot of stuff going on behind the scenes that needs to work well for a game to provide the player with a good experience.

That said I understand the motivation to make a game vs a note taking app. My suggestions are to first get an introductory android programming book. Something like this: http://www.amazon.com/Android-Absolute-Beginners-Wallace-Jackson/dp/1430234466/ref=pd_sim_b_1
It should get you up and running programming and help you understand the way that android works.

Then after you've worked your way through that book get this book: http://www.amazon.com/Beginning-Android-Games-Mario-Zechner/dp/1430230428/ref=pd_sim_b_2 which is written by the guy behind LibGDX which is referenced in the comment by Crossseyejack.

u/ColquhounCapital · 1 pointr/androiddev

This guide has been invaluable for me: http://www.amazon.com/Android-Programming-Ranch-Guide-Guides/dp/0321804333
I've made two Android apps now, and I started with no experience of any kind in making mobile apps. It has great step-by-step examples, and they really focus on explaining the reasons behind why they're taking each step.
Can't even begin to explain how thankful I am that someone recommended that book to me. Hope it helps you as much as it did me! Good luck programming!!

u/CMahaff · 1 pointr/androiddev

Books - always books :)

I haven't gotten through the whole thing, but this one served me pretty well: http://www.amazon.com/Beginning-Android-Games-Mario-Zechner/dp/1430230428 - I know java pretty well but went into this book knowing nothing about Android development and managed to make a simple game (I'm only in 12th grade). The book doesn't assume you know anything really. Only gripe I have is that at least one example in the book had a typo - but all the code is available online where that sort of thing has been fixed. This book focuses on game development, but also teaches you about the Android process life cycle, performance, etc. so it could really be applied to a normal app as well if you check out what classes you need to use on the Android developer website. Should mention that it does not cover XML layouts.

You can see the code examples for free here: http://code.google.com/p/beginning-android-games/

EDIT: Sorry if this is a tad incoherent, I'm very tired and it is late.

u/mfosker · 1 pointr/androiddev

I also came to Android development after a 10 years break from professional programming and no Java experience at all. I'd done some Javascript and Flash in the past, not much, but enough understand the Java syntax.

I found the Big Nerd Ranch Guide to be an excellent primer. I worked through about the first 3rd of the book to get to grips with the basics and then found that I understood the online tutorials a lot better. So I recommend that book.

I also recommend starting out with the Android Developer Tools bundle from Google, which includes Eclipse, the SDK and the Java stuff you need. Android Studio is better, but almost all the tutorials on the web and in books show you Eclipse. Once you've got your head around the Android part of it then have a look at moving to Android Studio.

u/morihacky · 5 pointsr/androiddev
  1. storing activity references beyond their lifecycle:
    http://www.curious-creature.org/2008/12/18/avoid-memory-leaks-on-android/
    http://www.androiddesignpatterns.com/2013/04/activitys-threads-memory-leaks.html

  2. Using Hashmaps when SparseArrayMaps would have sufficed
  3. This is a heated topic, but using enums is apparently costlier than simple static final variables

    Less specific resources:

  4. See the android developer performance tips page.
  5. While the OP asked for Android specific ones, it's important to know the Java related operations too and for that one only has to look at Effective Java - Joshua Bloch - possibly the best book on Java tips.

    I vehemently disagree with the internal/getter/setter rules mentioned in android developer tips page. I personally use proguard and don't think twice about virtual setters etc. since they most definitely help with clarity
u/solaceinsleep · 2 pointsr/androiddev
  1. Learn basic programming concepts:
    I recommend you pick up a book or use online courses to learn a language or two. Which language you start with is up to you. It really doesn't matter which one because the concepts are not unique to the language (most of the time). In your case I would recommend starting with java (since you will need it for Android). One option is this course, it's not specific to java though, but it will get you thinking like a programmer: https://www.edx.org/course/introduction-computer-science-harvardx-cs50x.

  2. Learn the specifics of Android:
    I started with this book: http://www.amazon.com/dp/0134171454/. I recommend you do the same.

    Good luck.
u/slothwerks · 3 pointsr/androiddev

The Udacity course is great/free, but man, it gets really fast/dry midway through Lesson 4. I felt that the way they designed the app was a bit overkill for teaching what's supposed to be an intro to Android; in particular, the 4a/4b lessons on databases. Besides way too much copy/paste code in this section, I wasn't sold on the idea of a database for the app, especially given the amount of work. I found myself watching the video and copy/pasting a lot of code without really understanding it. I really enjoyed the first 3 lessons, but bailed during 4b.

While I highly recommend checking out the Udacity course (since it's free), I've preferred http://www.amazon.com/Android-Programming-Ranch-Guide-Guides/dp/0321804333 The book teaches similar concepts, but instead of putting them all into one app, spreads them across several. I particularly liked the later chapters, where you build a simple Flickr client. These chapters were particularly relevant to me, since they cover how to interface with an API, download pictures, integrate search, etc...

u/nos4autoo · 2 pointsr/androiddev

I'm not terribly experienced, but I think there are a couple options. I've made a simple app, similar. Text and video, with some navigation. I went through a lot of this teamtreehouse.com tutorial. It gives some basic explanations and it's not terribly difficult, in my opinion.

I've also used Android Programming: The Big Nerd Ranch Guide (2nd Edition) book. It gives a good introduction to the process of programming Android apps, and uses example projects, much like Treehouse does.

Edit: Big Nerd Ranch book assumes you know some Java. It's a good second step in the process, and I feel it's a good resource.

u/katyne · 3 pointsr/androiddev

Forget Android studio for a time being, start with Eclipse. It's been around forever and most beginner tutorials use it, once you get the gist of how to integrate tools with IDEs you can proceed to AS.

Eclipse might complain about missing JRE (Java Runtime Environment) because although you have downloaded JDK/JRE, it doesn't know where to find it. Eclipse is integrated very close with Java(written in it to be exact) and it needs any JRE up from 1.5+, just for it to launch. If your particular project uses different Java/Runtime (like when you will use Dalvik VM and Android JDK for your Android projects, which are a somewhat different from Standard Edition Java) you can enter the ones you want later in Eclipse using Project settings).

When you first launch Eclipse it needs to load a JVM and complains if it doesn't find one. Search your computer for folders like jdk and jre, if you have none, download Java SE 6 or 7 64bit suitable for your OS. Extract to a folder of your choosing.

If you already have Java installed on your computer, you'll just have to update system-wide PATH environment variable to include the freshly-extracted Java subfolders which contain the executable (javaw.exe and jvm.dll if you're on windows, google "set up java path" if you're on Mac or Linux).

I would recommend practicing with plain Java first though. Android is an immensely complex framework and it heavily relies on such concepts as OOP and various design patterns which you have to understand or it's gonna be deer-in-headlights every time you read a new doc. You don't want your development experience to consist of copying and pasting other people's code, right? You'll have to do some homework then.


First, you need to have a solid Java/OOP foundation. Head First Java was a great OOP book for me, it's really intuitive and fun to follow (you don't have to finish all of it, for example, feel free to skip the applet and chat client parts, and bookmark serialization to revisit it later). You can download free pdfs of earlier editions, too. Then if you have the patience, follow up with "Head First Design Patterns" from the same publisher, again, familiar format, easygoing content structure, - once you get the hang of these two concepts you're somewhat good to go. I know some people will be all "you kidding right, TWO books before you even touch the thing? screw that just start coding" but I you will seriously need this knowledge if you ever want to even start navigating Android framework with some level of confidence.

It's a steep learning curve for someone learning or re-learning after such a long break (same here by the way) but it's so freakin' satisfying once you get the hang of it. Don't give up, most of these problems have been solved a hundred times before.

u/corbinbane · 1 pointr/androiddev

I would normally caution anyone using Android Studio this soon,but Eclipse feels just about as buggy as alpha software sometimes. "Where'd my project folder go? #$%@!! FU Eclipse!!!" :) Anyhow... it'll probably get the job done,just know its a very early software release.

Programming Android 2nd Edition multiple authors. ISBN:1449316646
AMAZON
A really useful book when you're trying to figure out the android framework or maybe a certain api. It doesn't cover EVERYTHING,but it'll get you going with most of the framework. It provides useful input on using Java with android as well. But still uses Eclipse and the ADT. Good luck!

u/BenDeitch · 1 pointr/androiddev

I had your same struggles trying to find a good free source. Eventually I wound up buying this book, and I liked it a lot. If you end up deciding to spend money, this would be a pretty good place to start.

u/rylexr · 5 pointsr/androiddev

First, welcome to the indie community! I'd recommend to start designing a small PoC. Grab some sheets of paper and start drawing your app's different views and interactions. The purpose of this is to clarify your ideas. At the beginning, that's all you need. Once you have something you think is "usable", then, just then, move to coding - it'll save you a lot of time. Just as a reference, I spent 7 months designing Memorigi 1.0 (no coding, just drawings).

​

How much programming you need? Well, there's no "right amount" IMO. If you want to go Java path, I recommend this book Android Programming: The Big Nerd Ranch Guide (https://www.amazon.com/Android-Programming-Ranch-Guide-Guides/dp/0134706056/ref=sr_1_2?ie=UTF8&qid=1551068980&sr=8-2). If however, you take Kotlin path this is my recommendation Kotlin in Action (https://www.amazon.com/Kotlin-Action-Dmitry-Jemerov/dp/1617293296).

​

One last advice, start small, then grow from there. Don't try to have your app fully complete in one pass. It's a recipe for discouragement and disaster. DM me if at some point you feel stuck and I'll do my best to help you.

​

Cheers!

u/andrsv · 3 pointsr/androiddev

I like this book:
http://www.amazon.com/Beginning-Android-Games-Mario-Zechner/dp/1430230428#reader_B005PZ282I

it starts out with simple game logic showing you a snake game using Android Canvas.

Then goes to OpenGL 2D and then a brief introduction to OpenGL 3D. It tells about how to organize your code so that it will run efficiently with OpenGL and how to use OpenGL as a valuable tool. The advanced math of OpenGL is mostly skipped (I'd recommend another book if you want to know the inner workings of OpenGL).

It is a bit outdated but works great for learning the basics. There are follow up books in the series, which I can't recommend because I haven't read them yet.

u/bruno_dmt · 8 pointsr/androiddev

Although old, this book does a very good job explaining the Android architecture https://www.amazon.com/Embedded-Android-Porting-Extending-Customizing/dp/1449308295

Given it was written for Android 4, it doesn't have all the new Treble staff (the basis are still the same, so I think it's still worth reading), but the author has a set of slides that you can read after the book to get the recent changes: https://www.slideshare.net/opersys/presentations

​

Another useful book is https://www.amazon.com/Embedded-Programming-Android-Bringing-Scratch/dp/0134030001 . This one focuses more on getting AOSP running on a new device, and not that much in its internals or customization.

​

Two newer books I have recently found (although I haven't had time to read them) are https://www.amazon.com/Android-System-Programming-customizing-debugging/dp/178712536X (same author as the previous one, content mostly related to building the kernel and getting AOSP running in a new device/emulator) and https://www.amazon.com/Learning-Embedded-Android-N-Programming-ebook/dp/B01841W9AU

They are still pre-treble, but they are probably still useful.

​

Besides those, if you want something more related to internals and not so much on how to "get the source code and build AOSP", you could check https://www.amazon.com/Android-Security-Internals-Depth-Architecture/dp/1593275811 and https://www.amazon.com/Android-Hackers-Handbook-Joshua-Drake/dp/111860864X

u/PurpleSquare · 2 pointsr/androiddev

I don't know of any free resources that cover that in much detail, but this book does a pretty good job:
https://www.amazon.com/gp/aw/d/1937785343/

u/pooerh · 3 pointsr/androiddev

You still need to write the game even if you're usign a framework. It simplifies stuff for you, stuff like loading textures, binding them to an opengl context, making draw calls. It's a lot of work, which is kinda tedious and every single game does it in the same manner, that's why people write those frameworks.

Now that I think of it, I can recommend something. Beginning Android Games is a book written by libgdx founder, Mario Zechner (/u/badlogicgames, he's active on reddit and posts on /r/gamedev). I'm not sure if I linked to the latest edition though. It might be a little outdated technologically (it talks about OpenGL ES 1.x, no one uses it anymore and just recently, libgdx dropped support for it) but the concepts are valid and you'll be able to write a working game with it.

The book goes in detail over the basics on how to start and in the process, you create a framework of your own, something that libgdx actually was born from. So if you decide to go with libgdx somewhere along the path, it should also make it easier for you.

u/bottjen244 · 2 pointsr/androiddev

I just started with android programming (well programming in general) in Oct 2011. I started out by following a book called Android Apps for Absolute Beginners which helped me get started with setting up eclipse and what not but I quickly found out that I needed to learn some java basics before I was going to get anywhere with it so I found this web site http://www.javavideotutes.com/lessons which helped me out a lot. After watching a few videos I made my first app Lottery Numbers which is some how my most profitable app still :-/ but anyway after that I decided to dive into working with databases and what not and have found stackoverflow.com to be very useful. Pretty much any question you could think of has been asked on that site. I'm no android expert but I've learned a lot by just keeping with it and learning as much as I can from the internet.

u/fmdthor · 5 pointsr/androiddev

http://www.amazon.com/Android-Programming-Ranch-Guide-Guides/dp/0321804333

This is a really good resource. I'm also learning and this resource seems to be one of the most recommended.

Also check out the wiki at the top of this sub, it has a lot of other really good resources.

u/MyUsernamePls · 2 pointsr/androiddev

You can take a look at this book it's a bit old but it was written by the creator of libgdx and from my experience provides a pretty good understanding of how the base engine works and how it's meant to be used.

u/tidderkrow · 2 pointsr/androiddev

http://corner.squareup.com/2013/05/retrofit-one-dot-oh.html

^ start there

DAOs & factory are design patterns. Old book but good: http://www.amazon.com/Head-First-Design-Patterns-Freeman/dp/0596007124

Caching + retrofit
https://gist.github.com/swankjesse/5889518

This example is dated. I'm using okhttp 2.0 + retrofit 1.6.1 so it doesn't quite look like this, as the example uses older libraries, but is similar.

I'd share code but I signed documents stating I wouldn't do that, and I like paychecks :P

u/unleashmysoul · 1 pointr/androiddev

The developer docs are a great place to learn the 'basic stuff' and terms like 'Bundle'.
I can recommend you this book: http://www.amazon.com/gp/aw/d/1118102274/ref=mp_s_a_1_1?qid=1370377881&sr=8-1&pi=SL75

Written by Reto Meier, a Google Android Advocate in the Android Relationship Team.

u/HohnJogan · 3 pointsr/androiddev

Can we get a sidebar for this question and beginner android resources in general? I see this question posted once a week. That being said here are the top answers/relevant links

u/liftdeadtrees · 5 pointsr/androiddev

Yes, this. If you need to learn java, go do this course on Stanfords website. Then head over to libgdx.badlogicgames.com and read through some of the examples, the wiki, and the documentation. And pick up the book jc4p mentioned, I bought it and it really is fantastic.

u/rosshettel · 1 pointr/androiddev

Back in my AP computer science days in high school, Head First Java was a great book. Really breaks down the topics and explains them very well. Here's an amazon link

u/jopforodee · 2 pointsr/androiddev

I highly recommend Java Concurrency in Practice if you don't mind buying a book. http://smile.amazon.com/Java-Concurrency-Practice-Brian-Goetz/dp/0321349601

It really demystified threading for me and I felt more comfortable with when something should be synchronized.

u/Zarokima · 6 pointsr/androiddev

This book by the guy behind libgdx is very good. I'm in the same boat as you now for my senior project, and this book has been really helpful.

u/the_argus · 2 pointsr/androiddev

I really liked this book. I wasn't sharp on Java and completely new to Android dev and it helped me understand the system better. Other than it I just use the examples on http://developer.android.com/training/index.html and that really got me started.

u/bompo · 4 pointsr/androiddev

Here is a good introduction to game development/canvas/OpenGL.
And this is a good framework to develop OpenGL in java for android and desktop.

u/Keckley · 1 pointr/androiddev

This book is well written, and walks you through the creation of a couple basic games like that from scratch. Though the author is the same guy who maintains LibGDX, so as the other poster said you could just use that.

u/rlfx · 2 pointsr/androiddev

Pleas read this book. It will help you to write better code without so many lines.

u/VasiliyZukanov · -7 pointsr/androiddev

I find it funny that this guy suggest his audience to read a book that hasn't been published yet.

And then he continues:

> That guy is one of the main guys behind clean architecture.

When the speaker puts in his slides references that he knows nothing about, it says a lot.

u/Dilligaf_Bazinga · 2 pointsr/androiddev

Something like the big nerd ranch for android is great:
Amazon Link

Focus more on the language and the Android SDK itself and less on the IDE.

u/lignux · 7 pointsr/androiddev

i am in the middle of this one and i love it. It teaches you Android development through making apps and i think this is why its so good and practical.

u/jumpkick · 1 pointr/androiddev

Buy this book: http://www.amazon.com/Java-Concurrency-Practice-Brian-Goetz/dp/0321349601 read chapters 1-5. Then read chapters 1-5 again.

Edit: it'll be the best $35 you'll ever spend on a Java book. When I interview people for position on my (Android dev) team, I specifically ask them concurrency questions. Knowing and understanding Java concurrency is an absolute must for professional Android development.

u/Miraculousname · 2 pointsr/androiddev

You can look into Cordova/Phonegap for development of hybrid apps. It might be easier and more straightforward to get something running on both IOS and Android if you're comfortable with web development. If you want to go native, there's a good Android intro course available here. It should set you on a right path (the course is over, but the material should be accessible). Also, you can consider this book

u/kishbi · 2 pointsr/androiddev

>ed? Well, there's no "right amount" IMO. If you want to go Java path, I recommend this book Android Programming: The Big Nerd Ranch Guide (
>
>https://www.amazon.com/Android-Programming-Ranch-Guide-Guides/dp/0134706056/ref=sr_1_2?ie=UTF8&qid=1551068980&sr=8-2
>
>). I

I'm glad that I read this comment.

u/donnfelker · 3 pointsr/androiddev

What books can help you expand your knowledge of design patterns?

u/dzjay · 1 pointr/androiddev

For android Big Nerd Ranch. You definitely need to get comfortable with Java, maybe watch some youtube tutorials, I think Udacity has a Java course too.

u/ekchang · 2 pointsr/androiddev

Beyond just Android resources, you're going to want to pick up a copy of Effective Java, which is the bible for Java development. It's also a very easy book to read; I say this as someone who has never completed a single "read x textbook pages" assignment in school because textbooks are awful. One of the things I look for in a developer is a strong Java foundation, more so than knowing the Android-specific nuances.

u/MaxoJggwp · 1 pointr/androiddev

IS this a good book? ANd whats an OOP concept?

u/stewadx · 1 pointr/androiddev

Check out Head First's Android Development. There should be some free pdfs floating around out there.

Also, to go more in depth, check out Fragmented's Activity Lifecycle episode (#76).

u/johnbentley · 1 pointr/androiddev

Android Programming: The Big Nerd Ranch Guide gets good reviews on Amazon.

By chance does it have a section on either of:

  • Creating an AsyncTask to persist through runtime configuration changes (such as when the user changes the screen orientation); or
  • Creating an AsyncTaskLoader with a Loader to persist through runtime configuration changes (such as when the user changes the screen orientation).

    ?

u/smesc · 1 pointr/androiddev

Programming concepts and fundamentals don't change much. Also read effective java for style/design patterns/anti-patterns etc. http://www.amazon.com/Effective-Java-Edition-Joshua-Bloch/dp/0321356683

u/hellobilly · 2 pointsr/androiddev

Check out the Porting and Tuning sections.
Also, the book Embedded Android is good (but getting old) and the guy who wrote it, Karim Yaghmour, as some videos on YouTube, if you prefer that.

u/isitaplane · 8 pointsr/androiddev

I used beginning android games. https://www.amazon.com/Beginning-Android-Games-Robert-Green/dp/1430246774. It takes you through building your game without using a framework/Engine. I have used this for creating "Chibble" which now has 700K downloads. PM me if you need help.

u/poppabaggins · 1 pointr/androiddev

if you only use the spritebatch, things shouldn't be too hard. check out Beginning Android Games by Mario Zechner. He's the guy who's largely responsible for libGDX, and the book is basically about how to design a similar framework. (there's also a version for android 4)

u/octarino · 2 pointsr/androiddev

I would suggest you this book Android Programming:
The Big Nerd Ranch Guide
(2nd Edition)
. It's a very good starting point.

>What should I start with?

Learn Java first.

How much programming do you know?

u/[deleted] · 1 pointr/androiddev

ha! I was doing the same thing you did. Watched the coursera videos but it was boring. Did my research on amazon books for android (Books explain more in detail) and found Android Programming

I think it is important to try out and see what works for each person, and develop projects. Building something even if you don't know how it works.

u/Casanova_de_Seingalt · 1 pointr/androiddev

Was listening to 'This Week in Tech' podcast by Leo Laporte, they had the authors of Big Nerd Ranch Guide to Android Development there. From what I've heard, it seems like a solid and, most importantly, recent book. I wanted to get it myself but decided to stick with online resources for now and buy the book later if I have money for it :P

u/dogewatch · 2 pointsr/androiddev

You will need one or more, or some combination of these. Don't like the plethora of choices give you analysis paralysis, just pick one and stick with it for a while.

Videos/courses

  1. Android basics by Udacity -> graduate to Android Nanodegree
  2. Lynda Android path. You can access lydna for free with a library card.

    Course

  3. Recently updated (9/18) Android code labs + slides by Google

    Books

  4. Commons ware online book
  5. Professional Android
  6. Big Nerd Ranch
u/t0s · 3 pointsr/androiddev

A very good book and up to date since it was published earlier this year is :Big nerd ranch

u/ed7coyne · 3 pointsr/androiddev

This book is far and away the best resource I have found for Android internals: https://www.amazon.com/Embedded-Android-Porting-Extending-Customizing/dp/1449308295

Unfortunately it is out of print, I read it on safaribooksonline.com but you can probably find copies elsewhere too.

u/lacronicus · 1 pointr/androiddev

http://www.amazon.com/Professional-Android-Application-Development-Guides/dp/1118102274

pick it up for 30 bucks, read it, do the stuff. It'll get you where you need to be for most of the things you'd want to do on android.

u/MrFancyPant · 1 pointr/androiddev

I'm wondering how much Java would I need to know to start developing apps. I learned it during college as part of my program, but outside of that I haven't used it at all. I have a decent amount of understanding of the fundamental of programming (object oriented, polymorphism, etc). Would this be enough or should I consider getting some resource such as this book to brush up on it.

Also any thoughts on this book to learn android dev?

u/ItWasAValuedRug · 4 pointsr/androiddev

I've never read the book you mentioned, but for me getting started with Android was a combination of The Commonsware Series, Reto Meier's book, and Lynda's Java Beginners series.

However, I did have a little more than a basic understanding of Java.

u/odkken · 2 pointsr/androiddev

http://www.amazon.com/Beginning-Android-Games-Mario-Zechner/dp/1430230428

(unfortunately?) I got a job halfway through my work with it, so I can't comment further, but what did get through was pristine.

u/LuXunMaster102 · 3 pointsr/androiddev

Yes, you should definitely avoid sources that are 2 years old. Try going for a book on Android that was recently published. These books cover the nuances of features only present in later Android OS. Heres a suggestion:

http://www.amazon.com/Android-Programming-Ranch-Guide-Guides/dp/0321804333

Googling of course helps you when you're stuck or don't know what to do, but I find internet resources are not the best at teaching you the ways of Android programming.

u/Gossun · 6 pointsr/androiddev

If you're looking for a straight up tutorial in paper form, I'd pick up The Big nerd Ranch Guide.

u/chazzlabs · 9 pointsr/androiddev

> 5 - I've always struggled with this, anyone i talk to says comment your code, i just never see the use for me. ITs something im working on.

Clean Code: A Handbook of Agile Software Craftsmanship

Read that book, and start applying the techniques as you finish each chapter.

u/be54002 · 2 pointsr/androiddev

I knew more than enough Java to understand everything in the Big Nerd Ranch book, which is how I started learning Android. I probably couldn't just code anything I could think up (still can't), but having a good Java foundation makes it so much easier to understand all the Android docs and guides.

u/rosenasty_ · 3 pointsr/androiddev

I've done Android for 5-6 years. It put me through college, got me a job after. It pays well, but I'm moving to another development position because I can't envision a career in android development. Keep your career goals in mind. They may be radically different from mine, and that's fine, but know them.

As for coding: Effective Java Dat gud shit. A little dated, but it's unlikely to steer you wrong. Android lags behind the latest Java versions. Android will get Java 8 Java 9 when the sun is dead.

Androiddev Protip: Don't be afraid of reading the Android source code when you're trying to understand something. I'm a veteran, and I do it probably every other day. The internet is full of lies.

EDIT: fistshake @ /u/little_z for torpedoing my genius witticism