Hi, I know there are probably many topics with people talking about this.. But, I have some very specific things I wanna ask.
So, What do I want to know how to do...
I would like to know how to edit and modify the android software. I want to make my own custom roms, kernels, all of that.
BTW: I have a Samsung Galaxy SII T-Mobile SGH-T989 rooted w/ (for now) Juggernaut v4.1 on it..
Couple ?'s
What can I use to make my own themes and other visual items? I want to modify like say, my clock widget so that the background is red... How can I do things like that?
What do I need to do serious modification to it, such as changing up the settings menu to include new things? I remember a program called ADB was used but idk if its still used.
No, with all this said, obviously there must be some coding knowledge needed, so, what coding and other software knowledge would I need to know in order to complete things like this successfully?
Thank you very much for all your help guys.
About modifying your clock widget background, you cannot do it unless the source code of your widget app is available for download and the license grants to you permission to modify it. You can contact the developer and request this feature.
Modify your system is more complicated, even more if you are not a developer. The Android system and the majority of apps are written in Java language.
All the softwares and knowledge you need you can find on developer dot android dot com (sorry I can't post links yet). Spend some time reading the informations about the platform and the developers guide.
If you don't know Java or isn't familiar with the Eclipse IDE I suggest you to start from these before trying to develop for Android. The SDK (software development kit), wich includes the adb that you mentioned, is available as a plugin for Eclipse which supports your development.
Related
Hello to all on this forum.
I have a Flash application that I want to develop into an Android app. I would not require some of the bells and whistles that are currently on the application, but a simple sub-set of how it works now. The flash application can be found here:
FastFood.com/nutrition/
(Hope this URL is allowed here as it will help people understand what I want to do.)
I have all the source files and programming for this and hoped they would be of some help in developing the Android app. But of course, I have no idea if this is any help at all to whoever develops the app for me.
Anyway, before trying to source a developer to do this for me, I thought I should ask a few questions to see if this is even something practical. So I hope some of you can give me some guidance regarding my questions.
1) Are most applications stand alone in the mobile phone, or is it common for some of these apps to access the network to get the necessary data required to operate? My purpose requires a database that is currently 14 megs, and must be accessible to the app, although only small portions of it are needed at any one time.
2) Are there varying systems within the Android family, or versions of the operating system that need to be accounted for?
3) Are there good reasons to develop for both Android and iPhone together? I mean from a cost to develop point of view? Or would it likely be just as effective to develop for Android, then move on to iPhone, or others, as is appropriate?
4) I am guessing that if you have looked at the flash version of our Calorie Counter, you could probably give an educated guess as to what it might cost to replicate a scaled down version for Android. So please, take a stab at it if you can.
Thanks
HI i was wondering if any of the devs could point me in the right direction to learn , read, etc... about Rom cooking, im willing to learn but seriously i have no way on how to start i do know a couple of things but thats about it.
thanks for any info and Help.
I am not a ROM developer, but I have seen developer's responses to questions like this (as I'd like to dive into app development myself):
http://forum.xda-developers.com/showpost.php?p=18935780&postcount=12
Things you will need to look into first include the java programming language (which is easy enough if you are familiar with another OOP language) and the Android SDK. While you can develop for Android in Windows it looks like most of the useful tools for ROM development are mainly available in linux, so you may also want to give linux a shot as well if you aren't familiar with linux and that style of developing.
Once you get a working SDK set up and have some java experience then you can move on to actually decompiling apps and ROMs and examining the code (using the tools that Raver mentioned in the post I linked to). The Android Developers site has great resources available for learning about nearly everything you will need to know Android-wise.
A couple of weeks ago I bought myself my first android device (a cheap LG GT540), and since then I've been playing a lot with it.
Noticed that android hackers community is quite big and there are lots of tools which can do kind of anything, but sadly I'm kind of disappointed because I'm having some issues in understanding HOW things work: in order to root my device, install custom ROMs, resize partitions and so on, I had to use a few tools that I have no idea of what they're doing.
To me it looks like that in this forums it's much easier to find a GUI that does everything you need, rather than understanding what needs to be done and how to do it. IMHO this is bad for a community of hackers.
In particular I'd like to understand how the following tools work (both for personal knowledge, and because some of these only work on windows, and I'd like to port it on Linux), and if available, I'd love to put my hands on their source code:
SwiftBootloaderBuilder: it's a tool used to resize flash partitions. I'm prone to think that it might just be a frontend for fastboot, but hum, the fastboot binary I own seems to be missing the capability of handling partitions...
KDZ: it's a tool to upgrade the firmware which I had to use in order to install on my device a custom ROM with fastboot enabled. How the heck does it work? This tool forced me to find and use a windows system to hack my GT540...
Android Developers is a great place to get started understanding how Android works. There you will find much of what you need to know to get a BASIC understanding of Android. If you follow the guides and advice you can create a basic apk that does little except teach you. CyanogenMod wiki is also a great place to learn. One thing about Android is that is is very much like Linux built for specific hardware. Many, and I do mean many, of the same principles apply to both systems. Digital signatures, ownership privileges, file permissions, compiling from source, git, gerrit, google code etc, are all things that a developer runs into everyday working with open source software of any kind. Go to every place I mentioned, sign up, and start asking more questions. Learn C++ and JAVA. Join freenode irc and find some friends who will answer questions while you learn. XDA is the least resource for the development community. XDA is the expression of ALL the other resources. I am new to this also, and have done what I suggest, except the programming languages, which I am working on. Use root explorer to look at your device file system. Ask the developers of the tools you mentioned to help you understand them. A LOT goes on behind the scenes, but it takes a little direction and determination. Cheers!
I was wondering what developers thought about using eclipse. Is it easy to use or is it not. When I look online most veteran programmers say its easy to pick up but when I tried it seem kind of tough. I read an articule about it here
http://eclipseandriod.blogspot.com/
The author seem to think it was tough but easy at same time which left me confused. What do you think?
I had very few problems getting set up to develop using Eclipse for Android Development.
Perhaps if you can give some details of the problems you are experiencing we could provide some guidance.
GingerBiscuit said:
I had very few problems getting set up to develop using Eclipse for Android Development.
Perhaps if you can give some details of the problems you are experiencing we could provide some guidance.
Click to expand...
Click to collapse
Same idea here. Just give some examples where you feel stuck and maybe we could help.
I think it really depends on your programming background. If you dont know Java, no IDE in the world is going to be easy to learn, however, if you do know Java and can understand how android layout are defined, then Eclipse is easy and straightforward!
Basically I dont know Java programming and Iam used to using visual tools like level editors where you can just code on the object after you place it on the screen. Are there any level editor type tools for eclipse?
The reason why Android uses Java is because the original goals of android was to make a fast spreading, open source smartphone OS that seats Google as the default search engine. Java had/has the largest community of developers. Because Android uses Java, applications can reuse lots of already written Java code saving programmers tons of time that it would've taken to rewrite in whatever other language they would have chosen.
As for a beginner trying to make an Android app -- there's no way to get around the coding. It could be much, much harder. Java's really popular and well documented language with lots of books on it. Learning it would be easier than lots of other languages they could've used.
First, I know there are some other topics out there asking the same exact thing, but I think my situation is kinda different.
So, want to learn how to develop for Android. Building custom ROMs, Android apps, tweaks, etc. But my actual knowledge is only user lever. I only know what a android user should know (flash ROMs, root, etc). Zero dev knowledge. Nothing.
I want to know with what should I start to learn to do Android dev. Nothing like: 1 hour and you're the best dev out there. I know it takes time. But I want to focus on Android.
So, what do you have to say?
In very general terms it would be to pick one of your favorite roms for your phone, pull it apart and then put it back together until you understand what is going on.
In more "specific" (though this is frankly scratching the surface) terms, you would first spend hours finding out how to back up your phone including the AAA key, the meid and so forth as well as other software compatible with your phone to restore it. As frankly since you're likely using your phone to test, you'll have more than one occasion it will be soft bricked.
Thereafter you would learn more in regards to development tools, in specific over at developer.android.com. Read the dev guide and so on.
Third, decide how you want to implement a unix/linux test environment, unless you're already on linux.
And forth you'd look at your favorite rom developer's build from their development site (the name of the domain escapes me) pull it apart and try to analyze the details.
Last but not least you'd FOLLOW new developments with android and the phone as well as learn to adjust to any new firmware that comes out from the manufacturer.
I'm in the process of learning how to develop myself but I've already discovered a lot more with the phone's underlying structure. That said, a lot of the answers are found in bits and pieces on this forum. But when you start to learn and ask specific questions like "what partition is the system mounted on for a Samsung Galaxy Ace" you'll begin to understand the file structure and then underlying software involved.
This was very helpful. I'm glad to see there are helpful people here that aren't going to talk down to a "new user" and I was also wondering how I could view files on windows 7. For example the structure of apk files or any of the others that say no program found to open this file
For example I want to begin by changing the boot screen from the solar flare looking Android boot screen to scrolling tiles or something of the sort then back can some explain that and I'm sure I can gain quite an understanding on the process that way
Sent from my SGH-I777 using xda premium
If you want to do programming you should start with the Android SDK: http://developer.android.com/sdk/index.html
An apk file is actually a zip file.
If you want to get an idea of all the stuff that is in there, just rename it to .zip and open with your favorite utility.
The contents of this archive file are also in binary form and compressed.
To get down to the lowest level you need to use something like apktool: http://code.google.com/p/android-apktool/
Much obliged I'll do that. Any Intel on boot.img
Sent from my SGH-I777 using xda premium