Android Software Development - Android Software Development

Hi all,
I work in IT but have never done any programming at all before. I would like to get started in developing apps for Android. Does anyone have any pointers tips on doing this. Is Android the wrong place to start with programming or should I be ok? Does anyone know of any good resources which should get me started, either online or in book form?
Any advice appreciated,
Michael

Manning has a Developing for Android book. http://www.manning.com/ableson/ You'll need to learn Java so start there too. Or look into Titanium http://www.appcelerator.com/

Promoting your site, isn't a good idea

I don't necessarily want to discourage you, but doing proper software development isn't the easiest thing to learn. There's a pretty steep learning curve surrounding object-oriented development, and the alternative is something you'll either hate or misuse.
Most people starting to program first learn how to make things happen in code procedurally: do A, then when that's done do B, then when that's done do C. Trying to program user interfaces this way is awful because the user workflow does not necessarily follow each little action in a specific order (and the interface has to continue to be responsive while your program is working). Your code will almost certainly suck and you'll spend most of your time testing, fixing bugs, and rejecting feature requests because they are "impossible" until you learn the better way: break down the problem into discrete blocks of related data and resources (the objects), define all the ways each block can be manipulated (the methods on those objects), define the conditions under which different actions must take place (thread messaging, event handlers), and tie all of that together into an application.
If this sort of thing interests you, great! I myself used to work in IT and found software development to be a much more interesting, open, and creative field. Mobile development is an especially fun field because you can deal with smaller projects and your customers are normal people, not businesses. I caution you not to jump right into the deep end, though; read several books on java and OOP, start with a smaller project and redesign/rewrite it several times until it's perfect, then you'll be ready to take what you've learned and apply it to something incrementally bigger.

Related

Financial Application Development

I have barely developed anything since the BASIC days on the C64 and Amiga, and now feel inspired to create some financial applications for the Australian market - such as superannuation projections.
How hard is it to develop? A few standard calculations like you would see on a spreadsheet would work, with some graphing.
Most financial applications I have found are pretty basic and don't account for inflation in rising wages and fees, etc.
I believe I could attract at least a dollar for a well developed application for superannuation alone.
I have installed the Android 2.2 SDK and have no idea where to start. I presume this is some sort of emulated Android device I can test my applications on.
Are there any tutorials on how to get started? What's the development language?
All I need to do is create a simple text interface to input a few parameters to run some complex financial calculations on the back end.
A really sophisticated application would pull live interest rates or other data and enter that in.
Start with this:
developer.android. com/resources/tutorials/ hello-world.html
(take away the spaces, I cant post links yet )
These are all great tutorials that will walk you through the basic processes and applications/layouts. The only issue you will have is when/if you decide to go through the "Tabs View" tutorial, there are a lot of errors in the code, and I have no idea why no one have changed it, but you can PM me for the correct version.
If you want some basics on Java, just do a google search, there are a lot of great tutorials out there for beginning Java. I recommend doing this first, just so you have a good understanding of Java(which is the development language), it will *REALLY* help out. You can incorporate other languages, but for the time being, stick with Java.
Yes, the SDK comes with an emulator so that you can test your programs without having to install them on a real device. In addition to what Jimmy said (and I can't stres highly enough that you should start with the Android Developer's website and tutorials), you can go to Stack Overflow which is a programming Q&A website. People there are generally very helpful, as long as you've shown you've actually put some effort into solving your problem before you posted your question.
Fair enough... So it's basically about learning to programme for Java? How hard would it be, realistically, for someone with no application development experience?
You need a basic grasp of objected oriented design & programming, along with an understanding of the Java language. When it comes to gui aspects & all communication with other apps/data on the device, you have Android, rather than the usual Java class libraries such as awt or swing.
How hard? It's doable, imo, but will depend on aptitude. Start with Java & then add in Android when you feel like more material to get your head around.
So basically getting started requires me to learn application development like on any other platform, in OO and Java. I may as well do a course or something then. Would a few weeks doing some sort of intro course help?
I'm sure an appropriate course could be very helpful. Though I'd steer clear of those short courses claiming to turn anyone into a valuable skilled programmer in only xx weeks, if only because the tutor will probably know less than you on the subject. Better one which makes credible claims regarding its introductory nature. A couple of degree level intro modules on OO or Java should be of help.

School Science Fair Project

Hey guys, over the summer I began learning Java, so that I could code Android Applications. Unfortunatley, I stopped for whatever the reason(got busy I guess) but now want to get back into it.
For my very first application I would like to create an app for my school as my science fair project entry. This would be my first ever project when creating any type of mobile application. However I do have knowledge in web based programming such as PHP.
The purpose of this message is to ask any willing android developers to help me on this seemingly daunting task. Even if it's just a push into the right direction. I feel that android developing is in my future and now I know where to start.
Thanks for any consideration in regards to my topic. If you are serious about giving me some help, feel free to contact me via pm or in a response to this message.
The Android Developers site is pretty good:
http://developer.android.com/resources/tutorials/hello-world.html
Of course those tutorials assume you can already program in Java, so you might want to find yourself a good "Learn Java" type book first, so that you understand the basics before jumping in to the Android side

How challenging is making an app?

I am not to sure if this is the correct area for this. But I am wondering how hard it is to make a Android game? This isn't something I want to just jump into, but learn while I am doing it and take my time.
So how challenging is it to someone who has no experience?
Thank You
Do you have any programming experience at all?
If you know languages like C++ or Java you're pretty close already. Android is programmed in Java, and you need to be familiar with Java's memory management to understand what happens behind the scenes since memory is critical on a mobile device. Also you should get some experience with multithreaded programming, since most times you'll need threads to complete tasks without getting the UI stuck.
Android uses a component based architecture that might be a bit unfamiliar in the beginning, since there's no 'main' entrypoint and you have to split your app into 'activities' that talk to each other through 'intents'.
Games present additional challenges, since they often require you to take care of several things involved with graphics and audio, so maybe they're not the ideal first step into programming.
I started programming for my phone on my Touch HD (windows mobile 6.5, using c#). I'd done some java (not a lot, really, and I hated it), some c (a bit, liked it much more) and quite a few script languages.
I have to say, I got into c# with the compact .NET framework VERY easily. It was very straightforwards, nicely syntaxed ... it was just programming as I'd known it. I've made some office apps, one or two games (just for fun, although the apps were meant to be sold ... **** MS for going wp7 and incompatible!; they were solid pieces of software engineering, if I say so myself)
Two weeks ago I got my Desire HD and a few books on programming Android ( O'Reilly, Sam's) and went looking through developer.android.com .
And I have to say, I find it hard! The concepts and how they work together are a bit ... uhm ... distributed. Good software design, but hard on the programmer (and ****ing verbose to actually type in the porgamming! Sheesh!). It took me a while to grok how all these systems are fitting together: to be honest, I'm still trying to make it all jell. All these intents, services, activities, broadcast receivers ... very interesting, but just thinking of the best (or even correct!) way of setting up your porgram is kinda difficult.
But, that's just me, in two weeks time in my spare time. I am getting it now and it is interesting (and, actually, very well set up for what they want android to do/be). c# was just easier, friendlier and faster to get into.
Sorry if this sounds negative: learning a new language isn't EASY, but it is FUN And very informative. If you have a few hours to start off with and then an hour a day, go for it ... but keep in mind there are easier/more straightforwards programming languages/environments than android (or so I think).
I would like to know this too because I got my HTC Wildfire for a few months now and I just rooted my phone yesterday to get into the whole development and modding.
I would like to learn how to make a widget first and then move onto a app/game. My goal would be to know how to create a 2D based side scroller, I would like to recreate "Bio Menace" for the Android. (I have the sprites and maps, now I only need to learn to make it into a game). (Bio Menace was my all-time favorite game when I was a child and I sometimes still play it on dosbox, but I would like to take it with me on transits to work)
I have no experience in Programming at all, I only did graphical stuff (Photoshop, 3DS Max) I know a little html for basic websites, but this was also more in Dreamweaver with the layout to designer.
So I found these books on android, but before I begin to read any of them. Can somebody tell me which book is best to start on first or which book to skip? I also like a video tutorial, but has anybody seen it? Is it any good?
Ebooks
Apress: Beginning Android 2 http://apress.com/book/view/9781430226291
Apress: Pro Android Games http://apress.com/book/view/9781430226475
Apress: Pro Android 2 http://apress.com/book/view/9781430226598
CommonsWare LLC The Busy Coders Guide to Android Development http://commonsware.com/Android/
Sam's Sams Teach Yourself Android Application Development in 24 Hours http://www.amazon.com/Teach-Yourself-Android-Application-Development/dp/0321673352
O'Reilly Media: Building Android Apps with HTML CSS and JavaScript http://oreilly.com/catalog/0636920010067
O'Reilly Media: Hello Android 3rd Edition http://oreilly.com/catalog/9781934356562
Video tutorial
O'Reilly Media: Developing Android Applications with Java, Part 1 http://oreilly.com/catalog/0636920001690
Sorry to threadjack you, but it made no sense to me to start a new thread on the same topic. There really should be an own section for noobs or a good sticky with this kind of information for noobs.
lol Im in the process of learning java right now, basic java though.
Mathods
Interfaces
Static Methods
Im pretty interested in what I need to know for development on the andriod platform. By mid/late spring I should know quite a bit more. Taking an Advanced java course. Current I only know C#, C++, and Visual Basics.
Never worked on a GUI before =(.

Where to start in Android application development?

Hello everybody, long time lurker, first time poster. I'm posting to ask about where to get started in developing Android applications? I have half a degree in computer science, am familiar with coding, and work in Android software QA, but I'm trying to get my skillset up to the next level and actually start developing applications on Android. Is there any specific books or literature I should read to get me started on my journey? I'm also a long time IT guy on both Windows and Unix-based systems, so I'm by no means computer illiterate. I'm also a long time phone modder as I've been tweaking Android phones since the original G1 running 1.0. Thanks in advance!
Take a look at the Android Developer guide. It has samples and tutorials. If you google, there are also several free PDFs on the subject.
A good Java book will also help a lot. Just start to write a few trial apps and you will get there quickly!
The best place to learn for me, is android web page:
Here you have everything to start:
http://developer.android.com/guide/index.html
And to set up the environment for developing:
http://developer.android.com/sdk/index.html
If you want to learn from the scratch, the links I posted are your point. You can also take a look to the tutorials:
http://developer.android.com/intl/es...llo-world.html
You can also start with java, if you want.. I reccomend you take a look to this:
http://download.oracle.com/javase/tu...ava/index.html
http://download.oracle.com/javase/tutorial/
and start from Java SE 6 (http://download.oracle.com/javase/6/docs/)
http://www.oracle.com/technetwork/ja...sp-135888.html
I don't know what your college classes are like for CS, but you should have the basics of programming, why not start writing some Android apps?
Start with the basic "Hello World". Get used to working with main.xml and TextViews, EditViews, ListViews, Buttons and Listeners. Android is mostly JAVA, some Android-specific operations and your xml files.
Take some of your CS 101 type programs and try to write them on Android. The more programs you write, the more you learn.
Try to learn something new everyday and in no time at all you'll be impressed with how far you have come.
Rootstonian said:
I don't know what your college classes are like for CS, but you should have the basics of programming, why not start writing some Android apps?
Start with the basic "Hello World". Get used to working with main.xml and TextViews, EditViews, ListViews, Buttons and Listeners. Android is mostly JAVA, some Android-specific operations and your xml files.
Take some of your CS 101 type programs and try to write them on Android. The more programs you write, the more you learn.
Try to learn something new everyday and in no time at all you'll be impressed with how far you have come.
Click to expand...
Click to collapse
Yes this is really a good advice
Just start writting little programs and you will go up soon
You could use the sample code that comes with the sdk, and start with different things: First, layout, xml and the like. You could then start with some othe things, like services, broadcast receivers, content providers, to get the feel of them. And finally, work with the hardware: Internet (wifi or 3g), bluetooth..
Hey guys, Sorry to get off Track but I've been trying to Complete my ROM for Everyone that's Currently using it. Anyways... Reading All the Posts in this Thread it seems to me that there Definitely are some Well-Seasoned Veteran Developers here, so Forgive Me but I have to ask, Is there Anyone that can maybe Help assist me with getting FlashLite Working on my Rom.... Please?
The link to my Rom Thread is in my Signature... and my phone is a (CDMA) Sprint Hero!
Thanx in Advance!!
*Sent on My*
Fast as its Ever Been....
"Sprint" Hero.... Running My, *ExEnHeroC* Rom, w/Kifno's Twist, Also The XDA-BLUE.apk!! "Page 10" of My Thread!!
http://forum.xda-developers.com/showthread.php?t=957867
http://www.megaupload.com/?d=WTMLMK6M
http://www.mediafire.com/?bb1axugm0bw7oro
http://m.youtube.com/index?desktop_uri=/&gl=US#/profile?user=PMGRANDS
At Barnes and Noble there is a book called Android App Development in 24 Hours. It is a freaking great book. Helped me a lot when I started. It breaks down the chapters in to hours with exercises and explanations. Being familiar with Java fundamentals would be good, but not necessary. The first couple hours(chapters) explains the a general overview of the history of the OS and helps you build your first app. My favorite part of the book is how it teaches you to build and app piece by piece over the rest of the chapters adding new features each hour. So, by the end you have and app with quite a bit of features that work and you actually understand how and why. At the end, you have an app that has a lot of Android features as well as knowledge of how they work and can be used. It doesn't go into the more advanced features, but it is well worth the money for beginners. I still use it as a reference because of the easy to understand instructions. Sometimes, the Internet guides assume you have been using Java for 10 years and skip how and why they are doing something. And even then I doubt every veteran Java programmer remembers everything. I am half asleep so forgive any grammar errors.
Ken
Sent from my iPhone with the bigger Gee Bees.
http://www.youtube.com/watch?v=SVZ1P35xgNQ
Really good tutorial for the first basic steps. In terms of installing eclipse/java and hello world. He continues with his tutorial in part 2, part 3 and so on.
Android/fruItphone app. idea needs help...
If there is anyone who has knowledge on building apps for Android, I would be extremely interested to share with them an idea for an app. I'd hope this app would be able to work on that other fruIt based dumbphone, too.
Well, there is planty of developers out here I'm one of them (thought not the smartest ) so, if you want to share the knowledge, feel free to PM me

[Q] Question regarding watch face creation (dynamic watch face background)

Hey, <insert request that you ignore the fact that I have no clue what I'm doing/am a noob here> I was wondering if it's possible to create a watch face background that changes based on the card being previewed, similarly to the "simple" watch face that came as a watch face for the moto 360. If it is possible, are there any guides, resources, etc. that you guys could point me towards, or if someone has recreated that face or a similar one and the code is available that would be fantastic.
Thank you all very much!
Note: while I really appreciate any and all help, I'm relatively inexperienced with programming, and entirely new to programming for android, so explanations will likely confuse me; developer resources or tutorials, or even better, sample code, would probably be a lot more helpful, so I can jump in and start changing things, or dig through the syntax and stuff as some sort of context for the code I'm looking at (I'm more experienced with graphic design and have just started to get into programming outside of basic stuff with C#, VB.net, and python).
BioToxic737 said:
Hey, <insert request that you ignore the fact that I have no clue what I'm doing/am a noob here> I was wondering if it's possible to create a watch face background that changes based on the card being previewed, similarly to the "simple" watch face that came as a watch face for the moto 360. If it is possible, are there any guides, resources, etc. that you guys could point me towards, or if someone has recreated that face or a similar one and the code is available that would be fantastic.
Thank you all very much!
Note: while I really appreciate any and all help, I'm relatively inexperienced with programming, and entirely new to programming for android, so explanations will likely confuse me; developer resources or tutorials, or even better, sample code, would probably be a lot more helpful, so I can jump in and start changing things, or dig through the syntax and stuff as some sort of context for the code I'm looking at (I'm more experienced with graphic design and have just started to get into programming outside of basic stuff with C#, VB.net, and python).
Click to expand...
Click to collapse
Hey BioToxic! Nice to meet you.
I am porting a friends Watch Face to Android. I can tell you that it is entirely possible, you can pretty much modify and manipulate the background to anything of like. I've been working in the Watch Face environment for a few weeks now and have a good solid understanding of how it works (previous knowledge helped, of course)
There is a lot of Java coding involved, if you are not familiar with that or familiar with how Android works it might be tough, you'll be writing code and not understand how it works.
A good starting point would be looking at the classes available in the WatchFace API.
[developer.android.com/reference/android/support/wearable/watchface/package-summary.html
Another good starting point would be getting your feet wet with the emulator, or better yet an actual device. Play around with the sample modules available.

Categories

Resources