Hi my name is Corey.
I'm starting this thread to get a better understanding from the developers point of view on the hardships, annoyances and general dislikes about android development. Stuff like the current tools, what feature you would like, and more importantly what parts of these IDE's you hate. I myself have been developing for android for about 6 months now and the first part for me is the interface, the fact that the IDE makes me do all the work instead of being automated in some way, and the setup process I have to go through to make sure the IDE is working on every new machine.
Yes i do have an entrepreneurial spirit but i think its a valid question and as a learning developer one i thought I'd get some background on.
Thanks for taking the time to help me out..
You should do some work for the galaxy mega 6.3 i9205........we need it.
2SHAYNE
coreybain3 said:
Hi my name is Corey.
I'm starting this thread to get a better understanding from the developers point of view on the hardships, annoyances and general dislikes about android development. Stuff like the current tools, what feature you would like, and more importantly what parts of these IDE's you hate. I myself have been developing for android for about 6 months now and the first part for me is the interface, the fact that the IDE makes me do all the work instead of being automated in some way, and the setup process I have to go through to make sure the IDE is working on every new machine.
Yes i do have an entrepreneurial spirit but i think its a valid question and as a learning developer one i thought I'd get some background on.
Thanks for taking the time to help me out..
Click to expand...
Click to collapse
Probably those impatient people who are constant asking for the next update/revision on roms lol
Related
So, I've been a member for a while, and I've done my fair share of using everyone elses ROMs on my phones, starting from HeroC, to Moment, to Epic, to OG Evo, then on to TMo phones like the MT4G and Nexus S.
Now that I'm back on Sprint and rocking this beast of an Evo 3D, I'd like to actually CONTRIBUTE to the community. I give you Dev's/Chefs mad respect for what you do, and I'd like to be a part of that as well.
So, here's the actual questions for this Q&A thread: Is there any special programming knowledge I need to start cooking roms, or starting to dev? Do I need to know code? Do I need to be fearless with my own device? (lol) Is there a *For Dummies*-ish site/thread/forum that would be a good idea to read up on?
I realize that there are probably a million threads like this, spread all over the interwebz and these are PROBABLY some "OMG NOOB SEARCH" questions, but in my opinion the best place to go for information is directly from the source
Believe or not...the best source of info IS searching...not us...learn the basics...adb, java, XML, start small...learn Linux and learn, learn, learn....all great developers and chefs...are self taught...because what you learn on your own...you learn to ask questions to yourself,,,for yourself...it is either in you or not..a passion for knowledge in programming and or modifications of system cannot be taught for the drive..because if you search first and learn by doing with the tutorials...then and only then can you ask the right questions..
^^^ I've never seen so many ellipses. :s
@OP Yeah, I'm trying to do the same thing. I've picked up a book at B&N titled "Android Apps for Absolute Beginners", by Wallace Jackson. It's pretty up-to-date, and includes Honeycomb bits.
It's readable (as opposed to reference-able), and it's taught me quite a bit. I recommend you have a super basic background in Java (any object-oriented language would be good, but all the code in the book is Java and XML), something like Introduction to Computer Science or similar would do fine.
Good luck with that, and lemme know if you find any resources I should know about.
Zak Jones! said:
^^^ I've never seen so many ellipses. :s
@OP Yeah, I'm trying to do the same thing. I've picked up a book at B&N titled "Android Apps for Absolute Beginners", by Wallace Jackson. It's pretty up-to-date, and includes Honeycomb bits.
It's readable (as opposed to reference-able), and it's taught me quite a bit. I recommend you have a super basic background in Java (any object-oriented language would be good, but all the code in the book is Java and XML), something like Introduction to Computer Science or similar would do fine.
Good luck with that, and lemme know if you find any resources I should know about.
Click to expand...
Click to collapse
It's a bad habit.. I commend you on what you are doing...my background was I taught myself 8086 assembler for the at class back awhile ago. Nobody would help so I digested book after book and line after line of assembler and a language called Force. To make a Long story short, I wrote my first commercial assembler library with over 1600 functions! That's a lot of code. I was one person that wrote it, the manual and support over compuserve. I was very proud of and I believe no other language library even came near it. It was at the time the most feature rich one available with another library called Funcky II with around 1400+ functions. Both were C callable, large memory model. Today's hardware do not need that crap. Then eventually went into programming full time a little after that. So I speak from experience. It is one thing to ask for guidance and another for specific items. Every good programmer, without exception was self taught..yes they went to college for computer programming or others like me that did not..they shared a common theme which is self motivation and the discipline not to quit. I once asked a very good programmer what is the secret to becoming a great one and his reply was simply code and code away. A very good reference for programmers is in fact the library source. It is invaluable. Hope this helps a little bit. I did tout my horn, yes, but you needed to get a background so you would not think I was as my dad used to say "speaking out of my a?s".
life64x said:
It's a bad habit.. I commend you on what you are doing...my background was I taught myself 8086 assembler for the at class back awhile ago. Nobody would help so I digested book after book and line after line of assembler and a language called Force. To make a Long story short, I wrote my first commercial assembler library with over 1600 functions! That's a lot of code. I was one person that wrote it, the manual and support over compuserve. I was very proud of and I believe no other language library even came near it. It was at the time the most feature rich one available with another library called Funcky II with around 1400+ functions. Both were C callable, large memory model. Today's hardware do not need that crap. Then eventually went into programming full time a little after that. So I speak from experience. It is one thing to ask for guidance and another for specific items. Every good programmer, without exception was self taught..yes they went to college for computer programming or others like me that did not..they shared a common theme which is self motivation and the discipline not to quit. I once asked a very good programmer what is the secret to becoming a great one and his reply was simply code and code away. A very good reference for programmers is in fact the library source. It is invaluable. Hope this helps a little bit. I did tout my horn, yes, but you needed to get a background so you would not think I was as my dad used to say "speaking out of my a?s".
Click to expand...
Click to collapse
Nice, programming in assembler is no small feat. If you're familiar with Linux and Java you should have no problem figuring ROMs out. Dsixda has a kitchen he posted in the Android Chef's section that is very useful and apktool along with either WinMerge or Meld can be used to learn from the different ROMs.
It was a labor of love. I just seemed so cool in asm. Actually, what I want to write is a decompiler for the android with near perfect retrieval of code back. I seen the engine in smali and just do it for the heck of it. It has the parser in it..but I don't know java that well. Can't even write a hello world..) I was darn good in Delphi with windows and would be more comfortable with that. If somebody wrote simply a lexical for the small/ Bali output then that would all you would need for that type of program. I did not study java's reflection that good and it's another route. I want to give others who want develop the fun and passion I had. This was a hobby when I started. Years later, that hobby never left me. I respect the **** out of you and other developers out there, no matter what phone, tablet or computer because yes you are programming..you are giving something of yourself to others. Non programmers really do not know that developers for all the bugs and crap that comes with it...it is our soul, hearts and emotions that go into every line..every file we put out.
This you don't learn from a book..this you learn by making come alive what is inside our brains.
Thanks for the responses guys! Much appreciated. Looking forward to diving in head first!
Bigirish said:
Thanks for the responses guys! Much appreciated. Looking forward to diving in head first!
Click to expand...
Click to collapse
Have fun! I took xHausx suggestion and went to chefs central and it will help all new developers. Last night, went to the android forum section in there..hit last page of it and went backwards reading page by page and in that night investment..I found resources that are invaluable. I recommend you do the same. One thing I should tell you many out developer wanna bees out there...the only thing that sperates the ones who are and not is the simple fact..if they had a problem, they did give up. This may sound simple..but when you get frustrated...it is easy to throw in the towel.
Hey XDA.
That disclaimer video in the forum registration gave me quite the scare. Hope you guys don't eat me alive haha. I made a post on one of the android subreddits on Reddit in regards to android development and was referred here.
I'll try to keep this nice and simple: in short, I want to dive into the world of Android development. Although I don't currently have an Android device, I will have the Galaxy Nexus in hand within a few days, as well as a Kindle Fire (I realize the Fire isn't "open", but more on that later...). I'm a current CE/CS student so I have some background in both hardware and software.
My interest in Android development lies in the actual porting of the OS to new devices (hence, the Kindle Fire); app development is secondary, and after looking through available documentation I don't expect to run into any significant trouble developing apps as I have fairly good experience with Java to boot.
All this in mind, I have very little experience with Linux and lower-level tinkering - the kind required for porting a kernel etc. In addition, I can't seem to find any material to at least get me started. I fear my inexperience and ignorance in this area has me not even knowing what exactly I'm looking for.
My ultimate aim is to help contribute to the efforts of porting Android to new devices - like the Kindle Fire. I've been following some of the threads on XDA on getting ICS over to the Fire and it looks like challenging and interesting work, and I think I would learn a lot from it.
I'm sorry if I've been vague, it is only due to my ignorance. I am eager to learn and am hoping some of the more experienced android devs could help point me in the right direction!
Thanks a lot!
Hi guys,
I think I have been an xda user long enough..so I though, why dont I try my hand in developing and be more of a giver than a taker in this great community.
Problem is, I dont know where to start. So if you dev guys could give me an effective learning path(study this first, then this, then this)..I would be most greatful!
Im not a developer by training(an accountant, of all things!!), however, I did get into IT audit so I know a little bit about the different flavors of unix..and I love coding(we use some scripting software in the trade, i know i know, its different) and i am never happier than trying to figure out how to make things work using code..
I know some of you may laugh at me, but I really am interested in this.
Thanks!
There's a great site here with lots of useful info
If your endgame is to develop for Android it might be best for you to jump in the deep end and start learning Java immediately. Don't worry about learning it by developing Android applications, just focus on developing on PC and you will have a much easier time. Once you've picked up the basics of Object Orientated programming then it's time to take a look at the Android APIs and go through some tutorials so you can see how the apps come together.
At the end of the day it's going to be a big job for you because you have very little experience. Unfortunately theres no real easy way out so you just have to put in the hours.
Yep!! Sleepless nights! Just like a real dev..hehehe... I do know some languages like vb..python..javascript..but that was just me muckin around..nothin serious also..already had the netbeans ide setup...and got my java hello world cherry popped..hahaha..so lame
Sent from my GT-I9100 using XDA App
DreadPirateDan said:
There's a great site here with lots of useful info
Click to expand...
Click to collapse
Thanks man!!! Looks good!
Sent from my GT-I9100 using XDA App
saunderez said:
If your endgame is to develop for Android it might be best for you to jump in the deep end and start learning Java immediately. Don't worry about learning it by developing Android applications, just focus on developing on PC and you will have a much easier time. Once you've picked up the basics of Object Orientated programming then it's time to take a look at the Android APIs and go through some tutorials so you can see how the apps come together.
At the end of the day it's going to be a big job for you because you have very little experience. Unfortunately theres no real easy way out so you just have to put in the hours.
Click to expand...
Click to collapse
Yes..that is my endgame..but i was hoping you guys could point me to some android specific stuff..like how kernerls work..etc..basically i want to know the environment first...using google doesnt really yield in depth stuff
Sent from my GT-I9100 using XDA App
Android is basically Linux with a custom UI.
If you want to know how kernels work (and you really shouldn't(!) if your goal is to make apps, as that's REALLY in-depth lowlevel stuff) just check out how Linux works - there's a million million articles on the net about the internals of Linux.
Android specific app development stuff, incl. tutorials and samples are here:
http://developer.android.com/guide/index.html
Maybe you just wanna setup the SDK and try to get the "Hello World" working, continue from there.
SDK: http://developer.android.com/sdk/index.html
Hello, I currently own an SGH-i717 and would like to start rom developing for it and would like to know where to start. If I was a complete noob and compared to most of the people here I might be, how would I download 4.0.3 source code, use adb with my phone and etc etc. I find it all very interesting but I have no idea where to start.
I am asking for help with this specific device, then maybe onto porting for other devices but this model has a very sore lack of developers for it and since I own an ATT Note I would like to start the development for it regarding ICS and etc. Also why is there a lack of developers for this model's roms?
Thanks for any and all help regarding this issue and I am excited to get started developing for you guys!
I think you need something called android sdk
Sent from the only smartphone designed by Chuck Norris
So what do I win if I vote in the poll?
KangKilla said:
Hello, I currently own an SGH-i717 and would like to start rom developing for it and would like to know where to start. If I was a complete noob and compared to most of the people here I might be, how would I download 4.0.3 source code, use adb with my phone and etc etc. I find it all very interesting but I have no idea where to start.
I am asking for help with this specific device, then maybe onto porting for other devices but this model has a very sore lack of developers for it and since I own an ATT Note I would like to start the development for it regarding ICS and etc. Also why is there a lack of developers for this model's roms?
Thanks for any and all help regarding this issue and I am excited to get started developing for you guys!
Click to expand...
Click to collapse
google search, ever heard of it before? and there is no lack of devs here unless you consider quantity over quality to be better
LOL
Underground_XI said:
google search, ever heard of it before? and there is no lack of devs here unless you consider quantity over quality to be better
Click to expand...
Click to collapse
If that was the case, then why aren't there ice cream sandwich roms for att note?
and also, what do I search for? I'm very busy so I don't have time to mess with google all day. I need someone who is willing to work with me on educating a new developer, that maybe in turn had someone to learn from before them that appreciates a new (quality)developer.
To keep things simple here... Please refrain from jerky comments as I am trying to maintain progression in this area and again I am a very busy person so I would appreciate it if we kept this thread professional.
Thanks again for any help you care to give! I apologize for being a beginner, but everyone has to start somewhere... right?
kevinjgray88 said:
I think you need something called android sdk
Sent from the only smartphone designed by Chuck Norris
Click to expand...
Click to collapse
I already have the Android SDK, but I'm not sure how to use it for developing. I tried once and ended up frustrated with it. Are there easy to understand tutorials somewhere around here that might help a beginner?
I've managed to unbrick my captivate using ADB once but it was very foreign to me and I was kinda impressed I even pulled off sending it into download mode. Thanks for helping!
jpeg42 said:
So what do I win if I vote in the poll?
Click to expand...
Click to collapse
Tell em what he's won Johnny!!! - A BRAND NEEW ICE CREAM SANDWICH!!!!! - ::And teh crowd goes wild!::
It's good to see someone with a lot of drive to develop, but the biggest hurdle isn't building AOSP from source. You need to get a working kernel that is compatible with ICS and all the Notes hardware. You can't google search how to do that. In reality it's almost impossible to do if you don't have extensive experience with that sort of thing.
We need the source code from Samsung for the Note and as far as I know, there is no source code out yet for the Note (for any version of Android). The roms you are seeing right now (two that Im aware of) are basically rigged versions of the stock rom where things have been removed (bloatware) and a few things have been added that conveniently worked out of the box without messing with code.
The real work will come when we have some source code to work with.
Ok, what's next?
macked said:
It's good to see someone with a lot of drive to develop, but the biggest hurdle isn't building AOSP from source. You need to get a working kernel that is compatible with ICS and all the Notes hardware. You can't google search how to do that. In reality it's almost impossible to do if you don't have extensive experience with that sort of thing.
Click to expand...
Click to collapse
Okay well that's a start... does anyone know where I can find a stock version of ICS to study it's code and experiment? I found source codes for SGH-i717 here
opensource(dot)samsung(dot)com
(I need more posts to make that a link, lol)
I searched for i717 and it came up with four source results on samsung's opensource search bar but I don't know what the four results are for and what the difference between them all are(unless it means it is for att or tmobile or etc, etc.), if you can tell me any info on these then I would be greatly appreciative.
Yeah, I have no clue how to do most things with coding for android but I do understand how to flash correctly, root and all that jazz. I just lack the programming skills and work flow it takes to make all this. I am downloading java for dummies and learning how to use XML files, but I am wondering if there is something else I should study too?
It sucks that I came here starting from scratch basically but I have learned a lot from here in a short amount of time, I appreciate all of the developers who have made the roms I love along the way, I am just growing impatient with the far and few between updates for your devices and I want to see updates for our devices come faster and the only way to do that is to do something about it. So I am very grateful for any help I get regarding this.
Where can I start with the kernel search? Is that what everyone is waiting on to start developing ICS for this phone? Does anyone know if one exists?
Another Question
What's the difference between a kernel and a rom? Basically.. what the heck is it in lamen's terms?
KangKilla said:
What's the difference between a kernel and a rom? Basically.. what the heck is it in lamen's terms?
Click to expand...
Click to collapse
This is a great place to start.
http://developer.android.com/guide/basics/what-is-android.html
Thread closed
This is not the place to learn how to develop, go to Android Development and Hacking forums and start studying.
Hi xda-developers,
I am an Embedded developer with vastnexperience in Firmware development in C programming (for microcontrollers), pcb designing, corel draw/photoshop (intermediate level) . Now I am looking to stretch my self a lil further by trying my hands on Android Programming. I have no prior experience in Software development. It would be kind of experienced developers out here to guide me with possible approaches that I can give to Android development without a much steep learning curve. As I would be practicing android development mostly on weekends (as of now), I would like to get started with things that I can relate with already. That way it would keep me going. Help me out with:
1. Possible applications I should work on. Something that can also be helpful for the community of users and developers.
2. Starting point and other obstacles I would come across while development.
3. Application ideas.
P.S: I also have a rPi lying around catching dust.
Some of the features still cant use on this. Libraries could be use.
Start with "Hello World"
Regardless of your software development capabilities you should always just mess around with the tools that are available and see what you like and what you don't like.
Try every tool you can, when you feel like you know those inside out have a go at extending the functionality of one of those.
For me when it comes to learning a new technology like Android SDK just playing with it inspires me to want to create real and practical applications.
Goodluck and have fun.
PS: I would stick around and see what happens with the release of Qt 5.2 Hint hint...
Yea. Android like embedded requires you to set up a Dev environment so get that up first. ROM building vs app developing are hugely different. Decide which and download the tools. (May require you to install a whole new os and tweak it heavily. Last time I ventured to compile a ROM it was a day to set up my Linux distro of choice)
And like what was said before start with hello world and move up in small bites. You will gain better understanding of how things work and will be less frustrated. Don't expect a full featured app to appear. Once you play around with all the little components eventually you will see a big picture and the building blocks for the "big app" will be there ready to use.
Sent from my One using xda app-developers app