[Q] Any good books on Android OS development? - General Questions and Answers

I was just wondering if there were any good books about developing the Android OS. I am talking about taking source Android and developing it into something phone specific. Like HTC sense or Samsung TouchWiz. (I know they are both completely different processes). So if anyone could point me in the direction of a book specifically about developing android from the ground up, that would be great. Thanks

Developing Android or developing apps for Android? Can't do the first as it's done by Google..
For apps, read some reviews on Deitel's Android for programmers or Busycoder's guide to Android development... The latter will teach you via examples.

Developing.
Ehtishams said:
Developing Android or developing apps for Android? Can't do the first as it's done by Google..
For apps, read some reviews on Deitel's Android for programmers or Busycoder's guide to Android development... The latter will teach you via examples.
Click to expand...
Click to collapse
I am talking about developing android ROMs and possibly something like Sense or TouchWiz from scratch. Not a port of either, but something like that. I have just realized that all either of them do is more or less a system of APKs strung together to form a sort of OS within an OS. So I guess I will take a look at app development. Anything along the lines of launcher development and replacement system apps would be great.

TekGadgt said:
I am talking about developing android ROMs and possibly something like Sense or TouchWiz from scratch. Not a port of either, but something like that. I have just realized that all either of them do is more or less a system of APKs strung together to form a sort of OS within an OS. So I guess I will take a look at app development. Anything along the lines of launcher development and replacement system apps would be great.
Click to expand...
Click to collapse
Thanks for starting this thread TekGadgt
I also wanted to learn how to develop ROMs (something like Cyanogenmod). Anyone please guide me how to proceed.

No luck
bharathexe said:
Thanks for starting this thread TekGadgt
I also wanted to learn how to develop ROMs (something like Cyanogenmod). Anyone please guide me how to proceed.
Click to expand...
Click to collapse
I know right? Some people like reading physical books, rather than a tutorial thread, to learn development. I still have no hits for a book on developing (or cooking) ROMs. I will keep a look out. Rather than wait, I have simply purchased a book on app development and am working on a launcher app. We will see how it goes.

Related

[Q] Android development for beginners

I know this isn't strictly the right place for this, but I don't have 10 posts yet, so I'm blocked from development related forums. Anyways, I know some visual basic, but as I understand it there is no way of developing android apps in VB.NET. Would anyone care to recommend any good resources for beginners to learn android programming? (Other than app inventor)
Hackaday has a whole series of tutorials for android development. Head over and check it out, it walks you through the basics all the way through GUI and I think some DB stuff.
dbzfanatic said:
Hackaday has a whole series of tutorials for android development. Head over and check it out, it walks you through the basics all the way through GUI and I think some DB stuff.
Click to expand...
Click to collapse
Thanks Seems pretty good. I'll work my way through them
I too need my 10 posts, so I am jumping in xD
You should check http://mono-android.net/, with this you can write Android apps in C# and .NET based apps. I don't know if it means you can write apps in Visual Basic, but you can have a try.
PsHegger said:
You should check mono-android, with this you can write Android apps in C# and .NET based apps. I don't know if it means you can write apps in Visual Basic, but you can have a try.
Click to expand...
Click to collapse
I looked at that one before, but it seems kinda complicated, and only works in vc++. Also, that requires that you already know xml as you have to code all the layouts from scratch
an android book will help
Where on a hackaday are the tutorials?
Am I just blind? =/
I must be blind also, I don't see it either.
here it is.
hackadaydotcom/2010/07/12/android-development-101-%E2%80%93-a-tutorial-series
This is pretty sweet. I'm gonna have to mess around with it!
Sent from my SCH-I500 using Tapatalk
waiting for 10 posts.............
Just joined, so i guess i need 10 posts too

YANPAT (Yet Another Noob Programming for Android Thread)

Good afternoon,
I want to start learning programming for Android, as I am sure many before me have said. And as the title very well expresses, I am completely virginal in relation to programming. OK, some years ago I punched some Delphi lines, but what I learned about it can be amounted to zero
In order to commence the task, I count with a netbook, running Ubuntu 11.04, an Android phone (Xperia Play) and an Android tablet (Advent Vega), two "starting in Android" books, HTTrack in order to save websites for offline reading, a vacant summer, and the enthusiasm to learn something new. I don't have a specific goal in mind (is that a problem? Should I aim for something concrete to do as well?) but I think that, if I win certain knowledge, I will be able to create a useful app to share here.
The reason why I've opened this thread is because it should serve as a log of what I am doing concerning this endeavor, and maybe spark some support, some naysaying, some interesting discussions and some natter. At any rate, I hope to be able to contribute something good!
I am interested also. I was going to program for the iOS but can't bring myself to buy a MAC.
I have a lot of VB 6, VB.NET and Java - JSP development experience. My 10 year old daughter is a big gamer and wants to make games when she is older. I want to get her to help me make a small game so she can see what is involved in programming.
I still need to search for resources but if anyone has any good starter tutorials that would be great.
Sorry not trying to hijack your thread Logseman. Just don’t want to make more threads on the same topic.
Thanks
It's cool, in fact it'd be great if other people "out themselves" as potential programmers. It'd be a bit like a blog then, with the whole commenters sharing experiences . From what I've read your Java experience should make programming in Android quite easy, as the OS itself seems to be. I'm going to fire up my netbook and start the whole deployment. It can take the whole night easily...
After a whole night of downloads, I have deployed the SDK and eclipse on my netbook. They should make it more amenable, IMO, not only in this case but in installations in general. Installations are boring, as are videogame loading screens, but many of the latter feature something to make it worth your while.
I recently started android developing too (im 14 ) but since i was teaching myself it was hard to find a good book, but hello android by ed burnette easily teaches you how to make anything from 2D graphics to web views and 3D games. Tell me if you need a link, hope this helps
is that possible learn android programing without know any programing language before ?
kancil168 said:
is that possible learn android programing without know any programing language before ?
Click to expand...
Click to collapse
Sure you can. At the end of the day you have to start somewhere. Why not Android ?
I have an EEPC netbook with Ubuntu Linux also. I think I will pull it out and see what I can do with it.
Does anyone think it would be good for this or should I use my HP windows laptop?
I hope we can get some feedback from some experienced Android Devs.
Well, I am happy to see people sparked by the same idea! I hope we all get to do something worthwhile!
Ncaissie, I'd recommend the Linux netbook. It's more portable, which is particularly important for your assistant if she wants to handle part of the process and I have to say, after instaling many Linux distros, I find Ubuntu 11.04 a perfectly stable, quick and efficient OS, much more than Windows or other Linux distros. I am in fact pleasantly surprised as I was unconvinced by Unity in 10.10. Aside of that, since you're programming in Android, which is a mixture of Java and Linux, it reduces the confusion if you work with a Linux host as well, in my opinion.
About the learning process, I've been reading a bit about Activities and Services and Android building blocks. I've decided on my first milestone: a "Hello XDA" app. If time allows, I will have it done before this weekend. If I can't post it after this weekend, I'll stall the project as it would be clear I am not focused enough.
14yrolddeveloper said:
I recently started android developing too (im 14 ) but since i was teaching myself it was hard to find a good book, but hello android by ed burnette easily teaches you how to make anything from 2D graphics to web views and 3D games. Tell me if you need a link, hope this helps
Click to expand...
Click to collapse
have read good reviews for this book but I decided that I would learn Java before android since I'm planning on taking computer science anyway.
Sent from my SGH-T959 using XDA App
I was set to buy a cheapo Android phone as a development device. Turns out I made the worst choice: the Huawei U8110 Selina I chose seems to have issues about being recognised by ADB. Had I known this, I'd have taken some other one...
Fate conspires to keep me away from development Now my Xperia Play is not mounting the SDCards I feed it. I need to reflash it with FlashTool, but since I only had Linux installed on my computer and Flashtool requires Windows, I'm having to set up a dual boot environment, which implies wiping Linux, installing Windows and setting up two partitions, and then installing Linux again. Seriously, it's crap.
I really like this post,good luck with it.
Only one thing- I think it's important that you'd come with an idea for an app,rather than learning Android in general.
It will keep you motivated to move on and progress.
I've recently started developing for android too. While they get mildly bashed sometimes I've found that the apress books are pretty good. "Learn java for android development" by jeff friesen is long and very technical, and also requires that you be paying attention, but gets a pretty decent amount of java floating around inside your head before you even have to open up eclipse.
Honestly though I found it easier to work on a project and when I needed something that I didnt know to search around and find code snippets or dig through my books until I find the right answer and then move on to the next problem.
Good Luck
Sent from my SCH-I500 using XDA Premium App
tofira said:
I really like this post,good luck with it.
Only one thing- I think it's important that you'd come with an idea for an app,rather than learning Android in general.
It will keep you motivated to move on and progress.
Click to expand...
Click to collapse
I do have an idea in mind, and it is related with the security pattern grid. Is that part of Android opensourced?
Enviado desde mi VegaComb usando Tapatalk
I wasn't able to pick up the pace this weekend But my goal is clear for now. I'm up for a Hello XDA app.
Well, here comes my very first apk... plus source (complying with XDA's rules ) I managed to screw some things because I typed the code incorrectly. Eclipse moaned in two lines until I discovered two syntax mistakes. Just therefore, because I saw them, I think I did the proper thing in typing this example code even if I had it in front of me. I will try not to copy-paste code if I can avoid it.
I've installed HelloXDA in my XPlay and it works as intended, and per the source you can see there's no malware in the app. And I know that I'm making a bit of a fuss about a stupid HelloWorld app, but hey, it's MY HelloWorld app, I coded it
I like this thread. I'm also going into android programmins as a noob still in highschool. I've got a question: I am looking into creating a home screen replacement app, so what do you reccomend me to do: Learn java first or just read through the sections of the android books I've purchased that talk about homescreens?
Sent from my DROID2 GLOBAL using Tapatalk
Start with something smaller than a homescreen. Mess around with some tutorials.
roblikeschocolatecake said:
I like this thread. I'm also going into android programmins as a noob still in highschool. I've got a question: I am looking into creating a home screen replacement app, so what do you reccomend me to do: Learn java first or just read through the sections of the android books I've purchased that talk about homescreens?
Sent from my DROID2 GLOBAL using Tapatalk
Click to expand...
Click to collapse
what book is that?
Sent from my SGH-T959 using XDA App

Ok, I lied :-)

Ok guys, it's been brought to my attention that my post was
1. Cantankerous.
2. Seemingly disrespectful of devs great work on here.
3. Taken too seriously for being an internet forum.
I would like to say sorry, and explain what I mean I tihnk it would be awesome to pull together the necessary funding for our very talented developers to create an XDA exclusive, completely original ROM. I'm not sure if it is possible, but something that is just for the Thunderbolt alone and isn't sense, isn't AOSP, isn't MIUI, and DEFINITELY not like Motorboat... I mean Motorblur. I think we really are on to something with the work that the Dev's are doing with taking different roms and porting them/using other roms as bases and then building from them; lets see what we can do to completely change the way that this stuff is done(if possible) by polling ideas(not unreasonable wishlists) and putting it all together. Possibly coordinating between Team BAMF, Chingy, and some other the other recognized DEV's.
What does everyone else think?
htcdesirezgeorge said:
I'm not sure if it is possible, but something that is just for the Thunderbolt alone and isn't sense, isn't AOSP, isn't MIUI, and DEFINITELY not like Motorboat...
Click to expand...
Click to collapse
If it isn't sense/blur/touchwiz, it is AOSP. Miui is just modified AOSP (with no sources given back), just like all the other roms not sense/blur/touchwiz are also based on AOSP. You do know what AOSP means right? Android Open Source Project as in the android operation system that is the basis to all android phones just modded by the OEMs. What you're asking is similar to saying:
"Hey, I'm bored with linux, unix, osx and windows, can we make a new operating system totally not based on any of those for our computers?"
Perhaps rephrase your question one more time in a way that makes more sense? Third time is a winner
yareally said:
If it isn't sense/blur/touchwiz, it is AOSP. Miui is just modified AOSP (with no sources given back), just like all the other roms not sense/blur/touchwiz are also based on AOSP. You do know what AOSP means right? Android Open Source Project as in the android operation system that is the basis to all android phones just modded by the OEMs. What you're asking is similar to saying:
"Hey, I'm bored with linux, unix, osx and windows, can we make a new operating system totally not based on any of those for our computers?"
Perhaps rephrase your question one more time in a way that makes more sense? Third time is a winner
Click to expand...
Click to collapse
Ya got a point, I actually didn't know that! BUT, regardless of how its phrased, what do ya think it would require to do somethig like I mentioned? I, personally would love to see something excitingly new put out here. Like with the miui project, any chance of people putting their heads together to figure it out?
You've got OS's and you have UI's. Obviously it is entirely possible to custom build a UI, but its FAR more difficult than porting one over or mixing and mashing parts of Sense together. UberBAMF is definitely something new and out of the box. That's more radical than anything I ever expected... Or have ever seen elsewhere. UIs do a lot to sell a device, so its worth it for HTC or Samsung to invest in building one. Not so much for a team of volunteer devs.
htcdesirezgeorge said:
Ya got a point, I actually didn't know that! BUT, regardless of how its phrased, what do ya think it would require to do somethig like I mentioned? I, personally would love to see something excitingly new put out here. Like with the miui project, any chance of people putting their heads together to figure it out?
Click to expand...
Click to collapse
Chances are unlikely to get a new user interface geared to only one phone built from the ground up from the android source by a team for a few reasons:
1) Lack of like-minded (knowledgeable) developers for one device that are currently free. Developers are very opinionated (just from my own experience even if they don't want to admit it). What should/shouldn't go into it would be a mess to deal with and debate alone, especially since the opinions of developers are generally not the same as those that don't develop. The ones already developing most likely don't want to give up their current projects as well. Basically, the developers that want to develop already have their projects and most treat them like it's their "baby" and most likely not willing to give them up or put them on hold. That moves into issue #2
2) Time. It would take considerable amount of time and organization to do that. Probably to get something stable that's original would take longer than most people would keep their Thunderbolt. Guys that work on their phones do this part time for fun as well and that combined with other side projects would press for time.
3) True developers & designers. There's a big difference between hacking some already made stuff to work with things and actually writing object oriented software from scratch. Obviously some guys putting stuff out for the thunderbolt are true developers that code professionally and others are just hacking around making things work done by others. Both have their uses, but you need real development for something like this and I don't think there's enough of those willing.
Forgot to add that the only way change happens is to build interest, so don't let my pessimistic observations detour anyone from posting their thoughts and ideas in this thread

[DEV]Project Magenta, an iOS-like OS. Anyone interested? + Need devs!

http://crna.cc/magenta.html
Magenta is an implementation of Darwin/BSD on top of the Linux kernel. It is made
up of a number of kernel and userland components that work together. It is fully binary
compatible with iPhone OS 5.0 (as in, it uses the same binary format).
Click to expand...
Click to collapse
I am now chatting with the dev on IRC. I want to know if anyone is interested in this, so i know if i will continue the porting or not.
First we need to build the kernel, so we need a kernel dev. There's a DIFF that needs to be applied.
The files are here: http://crna.cc/magenta_source.html
What do you think? Also remember THIS IS A DEV TOPIC, so no asking for ETA & stuff. Nagging will result in locking the topic and discontinuing this.
EDIT: Remember, this has nothing to do with Apple. Everything is Open-Source, so we have the stability of C instead of Java, but also the openness of Android!
Edit 2: Looks like there aren't many devs interested about this, and also there would be no advantages. You can't run Android Apps, nor iOS apps...
What good points will this release have besides compability with iOS apps ?
Not just the "look like android", it can still have a android look but iOS compability, that sure opens a wide horizon. Cross platform apps. It's awesome i think.
MidnightDevil said:
Not just the "look like android", it can still have a android look but iOS compability, that sure opens a wide horizon. Cross platform apps. It's awesome i think.
Click to expand...
Click to collapse
It won't run iOS apps.. below was mentioned on project website
" to make it myself). * Will it run iPhone OS apps? * No, because I'm not aiming to have compatible high level frameworks. Just think about how much work is required to have a 100% compatible implementation of UIKit or Celestial. HOWEVER, the CoreOS part should be 100% (or 99%) compatible. Just not the higher level OS. If you're just interested in this because it will "run iOS apps" please go away."
Sent from my HTC Desire using xda premium
I can contribute, maybe even run the thing (no promises, in my spare time, won't support it just drop the thing for you, I'm busy next few days though)
Still working on kernel 3.0
Sent from my Desire HD
This has nothing to do with iOS' lockdown. It is as open and as free as Android.
In Layman terms; does this mean magenta just runs Android on C and not Java meaning more efficient execution of tasks?
So is it just a ios themed rom, or does it actually have some of the real advances from the ios?
Sent from my HTC Desire using xda premium
I'd be willing to dev, but I'm afraid I don't have too much experience.
I know my way around C++ and Python, and I can do Hello World in C. I can read most code though.
It's funny to see people excited with this when they don't know what benefits this development will actually bring :b
I'm not against this at all, please don't take this the wrong way, but to invest in such kind of development you need to have benefits, so, what are they ?
like to contribute
I would like to contribute on development.I know Objective C, worked on few Iphone Apps.
andreigherghe said:
http://crna.cc/magenta.html
I am now chatting with the dev on IRC. I want to know if anyone is interested in this, so i know if i will continue the porting or not.
First we need to build the kernel, so we need a kernel dev. There's a DIFF that needs to be applied.
The files are here: http://crna.cc/magenta_source.html
What do you think? Also remember THIS IS A DEV TOPIC, so no asking for ETA & stuff. Nagging will result in locking the topic and discontinuing this.
EDIT: Remember, this has nothing to do with Apple. Everything is Open-Source, so we have the stability of C instead of Java, but also the openness of Android!
Edit 2: Looks like there aren't many devs interested about this, and also there would be no advantages. You can't run Android Apps, nor iOS apps...
Click to expand...
Click to collapse
the most (and only - for me- ) interesting side of this project is having the stability of C instead of Java. Android will be stunning and awesome if it get over java. but iOS like !! nah.
and good luck with that cuz there is people who want it and seems excited about it :highfive:
I'm willing to help, will be getting my uart cable soon.
Sent from my GT-I9100 running CM10
icecreame said:
the most (and only - for me- ) interesting side of this project is having the stability of C instead of Java. Android will be stunning and awesome if it get over java.
Click to expand...
Click to collapse
You can easily develop for Android using C (Google NDK). What preventing YOU from doing it? But generally that is terrible idea unless someone have got tons of already written code that is too costly/time consuming to port/rewrite. And it is awful idea because it defy purpose of Java compatibility. We got phones out there that are running Android on top of x86/MIPS processors. And thous phones have no problem running absolute majority of Android applications. Plus few startups are developing new processor architectures, because Android would let them access huge software library transparently. And that is fundamental idea behind Android, let OS run on any processor, current or future one, with application developers having no need to port or even recompile their code for new architectures/processor models.
My friend is very intrested in this he is a programmer in c and c++ and c#
Thread closed per OP request, as development has stopped for good on this project.

Why no iOS development section?

I love Android, just saying and I understand this is a Android community, but seeing as we have Windows Phone development, why not have iOS hacking as well? I mean, as a full on Android loving Google sucking nerd I dislike Apple as much as the next guy, but a section on jailbreaking and hardware hacking for Apple would be nice to see. I get that it's mostly proprietary so there's no point, but the same could be said for Windows. Anyway, that's my question
GhostCode64 said:
I love Android, just saying and I understand this is a Android community, but seeing as we have Windows Phone development, why not have iOS hacking as well? I mean, as a full on Android loving Google sucking nerd I dislike Apple as much as the next guy, but a section on jailbreaking and hardware hacking for Apple would be nice to see. I get that it's mostly proprietary so there's no point, but the same could be said for Windows. Anyway, that's my question
Click to expand...
Click to collapse
Android is a open source project means we can make custom roms, mods and other. But iOS is closed source project. So, we can't make custom roms and mods for iOS.
If someone tries to do so it may they have to suffer from some legal issues.
Ashwinrg said:
Android is a open source project means we can make custom roms, mods and other. But iOS is closed source project. So, we can't make custom roms and mods for iOS.
If someone tries to do so it may they have to suffer from some legal issues.
Click to expand...
Click to collapse
Yes, but we aren't making custom ROMs for Windows are we?
Sent from my Moto G4 Play using XDA Labs
GhostCode64 said:
Yes, but we aren't making custom ROMs for Windows are we?
Click to expand...
Click to collapse
XDA not have iPhone section. But XDA launching new site for iPhone users. For more info you can go to these link
https://www.xda-developers.com/iphone-developers-officially-launches/

Categories

Resources