Hello! Me and a buddy of mine are going to do some Android ROM development, the specific development device is the Sony Ericsson Xperia Arc S (both he and I own this godly lovely beauty of cellphone) and my biggest concern to get an stable ground in this development project / projects is locating the best and most userfriendly development software that is 100% working with every device out there, specially the Xperia Arc S and Xperia 2011 line-up.. Crossover development is never something bad to get further support you know.
Can someone point me in the correct direction and give advices on the best ROM development software, that's working with Windows 7?
:d
Ditch windows and use linux.
Basic rom cooking like decompile apk, modifying smali and recompile back can be done in windows using apktool.
But for hardcore job like compiling whole rom and kernel from source, only linux (or mac if u can afford it) can do.
And no, no such thing as "best rom development software".
an0nym0us_ said:
Ditch windows and use linux.
Basic rom cooking like decompile apk, modifying smali and recompile back can be done in windows using apktool.
But for hardcore job like compiling whole rom and kernel from source, only linux (or mac if u can afford it) can do.
And no, no such thing as "best rom development software".
Click to expand...
Click to collapse
I guess that using official Linux installation will be a little off for me, thanks to I have used Windows on every computer since I was 6-7 years old but I heard something about using an Linux emulator that gives me the possibility to use Linux inside Windows, is this true?
And what tools are necessary for ROM development? Kernel development seems to be a little bit more technical so I will jump on that later. My development will be targeted at stock ROMs modifying and editing (no Cyanogenmod level here..), what tools are useful for this?
If u wanna try linux u can use vmware or virtualbox to emulate it inside windows.
Anyway for modifying stock rom just apktool, 7zip, notepad++ and photoshop would be suffice.
an0nym0us_ said:
Anyway for modifying stock rom just apktool, 7zip, notepad++ and photoshop would be suffice.
Click to expand...
Click to collapse
With the following programs, I can also add tweaks and make my own build.prompt file?
Sent from my LT18i using xda app-developers app
Related
Hi there!
I was wondeing how to create my custom ROM using xRecovery for Xperia?
One thing I don't know how to do is to delete my google account so others have to use their own.
I could'n find any tuto arround.
Any sugestion?
Thx
You could start with modifying existing ROMs. For example:
framework-res.apk
All the apps, you can unpack the .apk's, located in /system/app/ and replace the icons.
services.jar
Much, much more.
After that, you can try making a Nexus One or Nexus S kernel from the AOSP, and if you succeed, try looking up some tutorials.
Please note that for building the AOSP source, you need a 64-bit Ubuntu (or another Linux distro) or Mac. Building on Windows is currently not supported. If you don't have a 64-bit machine, you can still build Eclair ROMs, Froyo and above is 64-bit only.
As for a custom rom, even the experienced devs have only just cracked it, sort of. You can however use the Kitchen to modify and theme an S.E rom with Zdzihu's xRecovery which is what I and others are currently doing.
can anyone help me to learn a bit more than android!
I heared about compile form source and biuld form source...And I can't understand what diferences between compile from source and port! can U explain easily?
for example should I want to bring superOxygen Rom in my x10 , should I port it with cm as base or compile form source?!
thx
for short:
porting means you are making rom to your device from another device, you will be just moving libs, editing ramdisk, etc.
compiling from source means you make a complete rom from scratch including programming own drivers, libs in some situations.
If source is avaiable fot superOxygen then you can try compiling it yourself, but editing, or adding your drivers is necessary, and anyway its harder than porting, but gives better result in fact because you can program everything to make it work and you aren't dependant on binary files like in porting.
When porting, hardware should be close to one you have in your X10, because most things will not work when processor differs, wifi modules, gsm etc. You take files from any X10 rom and replace ones that are with same name in another rom (oxygen here).
Thanks very much man!
I took your advices...it was good advices but what is your idea about this:
If I port Superoxygen from Nexus1 for my x10 and (use stable AOSP as base) , then can I say I make a superOxygen Rom?
compiling from source is how much difficult?! I'm 17...! , I have a link that teach compile from source... Is it need some Knowledges that is impossible for me?!
heh, im 17 too and I don't have much knowledge, but looking on pcfighter(a gt540 developer) im impressed, hes 17 too and does a great job, so it depends on time spent and interests
when you port oxygen, you can just say that you ported and not made it. credits go to the maker and you for just making it work on x10
I'm looking now how to compile for gt540 but can't find any idea how to make it strict for gt540 compiling from source tutorials are mostly for nexus s and nexus 4g because most of are just remade of what you can find on official android developer page and its easier. For unsupported device its even harder, you have to work with what you already have and add it first to sources then ... more things to do. I'm beginner with that too, just pulled sources yesterday and looking how to make it work :] so don't expect so much help in this way :]. Just telling you overall how this looks
For compiling you need to know Java and C programing language.
Sent from my Xoom using Tapatalk
@mesaj! do you know c and gava programing languge?! ofcourse I worked c++ a little...
Thanks now I also know what the difference is.
In easy terminology. Compiling a ROM is building a ROM from the source code so it means you are building a ROM from the ground up. Porting a ROM to your phones means to take a ROM built for another phone and to get it working on yours. That's the simplest way to think of it. I have in my signature a guide for compiling a ROM. Oh and I'm newly 18
私のEVO 3Dから送信される。
Thanks for this thread
Thanks now I also know what the difference is.
Click to expand...
Click to collapse
Thanks for this thread
Click to expand...
Click to collapse
just press the thanks button if you like this thread
I am new in XDA developer forum. I knew java and android at the immediate level. Now I'm interested in creating my own Android smartphone ROM. After searching in google, I see that there are a thing which is called "Default ROM" released by google. Base on this ROM, different companies created different ROM in their own style such as Sense, Motoblur, TouchWiz, etc.
So where could I download such a default ROM, and how could I begin with ROM developer. It is kind from my if anybody could give me a tutorial.
(Sorry if the question is exist in the forum, because I could not find it)
Thanks a lot.
Best regards,
me too, i have the same question, can someone help? thx
Your best bet is to have a look at compiling the aosp from source which you will need a Linux os for. The android sdk is a good place to start.
zelendel said:
Your best bet is to have a look at compiling the aosp from source which you will need a Linux os for. The android sdk is a good place to start.
Click to expand...
Click to collapse
Also are there no different way but Linux OS?
I still have the Android SDK, but do not know how to begin to custom a ROM via code.
Regards,
detno29 said:
Also are there no different way but Linux OS?
I still have the Android SDK, but do not know how to begin to custom a ROM via code.
Regards,
Click to expand...
Click to collapse
Yes to build android from Google's source you will have to have a Linux os. Either stand alone Linux or a version like ubuntu
zelendel said:
Yes to build android from Google's source you will have to have a Linux os. Either stand alone Linux or a version like ubuntu
Click to expand...
Click to collapse
In your experience, which linux os should i used. I m also a bit confuse because i did not have to much experience with linux...
detno29 said:
In your experience, which linux os should i used. I m also a bit confuse because i did not have to much experience with linux...
Click to expand...
Click to collapse
Me too, trying to learn. Just installed dual boot Ubuntu 10.1 to my comp and trying to figure it out. Big change coming from win7. Ubuntu 11 I couldn't figure out
Sent from my Desire HD using xda premium
One place you can start by checking and has a lot of good info is http://freeyourandroid.com/
I learned how to port from them although I still need to ask questions but it can get you started.
If you just want to get Ubunto going in a virtual machine for now and have NO IDEA take a look at this: http://theunlockr.com/2010/03/26/ho...om-for-android-part-1-setting-up-the-kitchen/
Old release links but Ubunto will update itself
Ok so i'm planning on building my own rom for the rez to continue developement, I have many tools setup such as Cygwin, Android Kitchen, SDK, JDK, APKTool, Baksmali and Smali. I also have an ubuntu based linux setup that i rebuilt and recoded myself. I do know alot of coding and how to decompile / recompile apks so far. If any Devs can shoot me a message on any tips or anything else ill need i greatly appreciate it. Also i dont know how updated things need to be for 4.3 development on the rez as i've been learning on how to go about doing this since gingerbread. Thanks
Only one other thing I can think of; GIMP or Photoshop if you're planning on doing any kind of themeing.
Here's a link to free Photoshop CS2:
https://www.adobe.com/cfusion/entitlement/index.cfm?pid=4485850&e=cs2_download
Will need to login/create an account.
Yea I have all that to and making themes already....so I'm all set with what I need for ROM making then
Sent from my T4CHY0N R3D D347H
can some1 just tell me if developpment has any scope using windows os
can i build cm form source without linux or ubuntu
I have not started on tutorials since most of them advice to use linux or ubuntu
so if there is a way to development on windows can u all tell me, how it is possible
or a tutorial ?
Just so u know my computer has 2gb ram and intel hd graphics
so i cant run emulators
Thnx in advance
@Hnk1 help
T3snake said:
can some1 just tell me if developpment has any scope using windows os
can i build cm form source without linux or ubuntu
I have not started on tutorials since most of them advice to use linux or ubuntu
so if there is a way to development on windows can u all tell me, how it is possible
or a tutorial ?
Just so u know my computer has 2gb ram and intel hd graphics
so i cant run emulators
Thnx in advance
@Hnk1 help
Click to expand...
Click to collapse
As a beginner, I would suggest you start with windows/Linux mint. Linux/Ubuntu are for more advanced users and thus provide less friendly interface. There might be a dispute which OS is best. For Android, I would suggest LINUX.
Development requires large amount of disk space (up to 200-500gb); very fast PC (8 or more recommended) high end PC (icore 5 but icore7 recommended)
You might be able to start on windows for small projects with your PC but algorithms would take 6-12 hours rather than half an hour on a high end PC. I know many developers using minimal PC to work so it means more time for processes to finish.
For example
UBUNTU might be better because android is developed under linux with java base. So using Windows might need some adjustments while development. Also, Eclipse is preferred for all development for Android.(programme name)
As android is based on linux, using same base/framework is a key advantage. Ubuntu/Linux is that's why preferred so no more adjustments are made and thus its quicker to develop on Linux. This is because of same internal architecture used by Linux/ubuntu and Android.All Android applications use Linux as its base and java libraries for programming. Java and Linux both being open source can easily be synchronized. The simulation on Linux platform is also fast as compared to windows. You can even download some system files patches for Linux if there is any compatibility problem but it is not possible for windows.
Android/Java/Linux are all open sourced(libraries n API)and easier to debug.
Linux mint is more friendly than Ubuntu in comparision in my opinion.
Another advantage of Linux/ubuntu is booting time/quick interface as windows easily gets laggy after some time.
In the end it comes to user preference.It takes a variety of tools to make software, including drawing tools, so the OS is not that important but helpful to have both Linux and Win. You will need code editors and drawing tools.
Hnk1 said:
As a beginner, I would suggest you start with windows/Linux mint. Linux/Ubuntu are for more advanced users and thus provide less friendly interface. There might be a dispute which OS is best. For Android, I would suggest LINUX.
Development requires large amount of disk space (up to 200-500gb); very fast PC (8 or more recommended) high end PC (icore 5 but icore7 recommended)
You might be able to start on windows for small projects with your PC but algorithms would take 6-12 hours rather than half an hour on a high end PC. I know many developers using minimal PC to work so it means more time for processes to finish.
For example
UBUNTU might be better because android is developed under linux with java base. So using Windows might need some adjustments while development. Also, Eclipse is preferred for all development for Android.(programme name)
As android is based on linux, using same base/framework is a key advantage. Ubuntu/Linux is that's why preferred so no more adjustments are made and thus its quicker to develop on Linux. This is because of same internal architecture used by Linux/ubuntu and Android.All Android applications use Linux as its base and java libraries for programming. Java and Linux both being open source can easily be synchronized. The simulation on Linux platform is also fast as compared to windows. You can even download some system files patches for Linux if there is any compatibility problem but it is not possible for windows.
Android/Java/Linux are all open sourced(libraries n API)and easier to debug.
Linux mint is more friendly than Ubuntu in comparision in my opinion.
Another advantage of Linux/ubuntu is booting time/quick interface as windows easily gets laggy after some time.
In the end it comes to user preference.It takes a variety of tools to make software, including drawing tools, so the OS is not that important but helpful to have both Linux and Win. You will need code editors and drawing tools.
Click to expand...
Click to collapse
Yea the emulator for testing didnt even bootup till now
ill just have to postpone advanced development until i get a newer pc
My last Question....
does android kitchen support this device?
or partially supported? or anything close?
T3snake said:
Yea the emulator for testing didnt even bootup till now
ill just have to postpone advanced development until i get a newer pc
My last Question....
does android kitchen support this device?
or partially supported? or anything close?
Click to expand...
Click to collapse
I don't think android kitchen is supported
T3snake said:
can some1 just tell me if developpment has any scope using windows os
can i build cm form source without linux or ubuntu
I have not started on tutorials since most of them advice to use linux or ubuntu
so if there is a way to development on windows can u all tell me, how it is possible
or a tutorial ?
Just so u know my computer has 2gb ram and intel hd graphics
so i cant run emulators
Thnx in advance
@Hnk1 help
Click to expand...
Click to collapse
I hav ubuntu on my laptop... nd I really want cm on our device but my main problem is that my internet is really slow and cm11 source is around 10 gb which might take weeks on my pc...
T3snake said:
can some1 just tell me if developpment has any scope using windows os
can i build cm form source without linux or ubuntu
I have not started on tutorials since most of them advice to use linux or ubuntu
so if there is a way to development on windows can u all tell me, how it is possible
or a tutorial ?
Just so u know my computer has 2gb ram and intel hd graphics
so i cant run emulators
Thnx in advance
@Hnk1 help
Click to expand...
Click to collapse
for developing android apps.. windows works.. and a fair computer will do... unless you plan to develop something huge...
AVD's have problem with low specs on windows.... try emulating with GenyMotion
and unless you have a gpu.. the graphics won't really matter much..
and as far as building android/cm goes.. you need linux or mac os..
you could build on virtual box.. if you had whopping 16 gb of ram..
maybe cygwin works.. but i don;t know...
and it isn't hard to install ubuntu alongside windows.. all you need is a usb drive and a x64 live cd from their website.. and some patience..
ubuntu is just feels out of place for first time windows user... if you used Mac Os.. it' s easy.. the dock and the universal title bar are not hard to get.. after some time you will be more comfortable with ubuntu than windows.. or that was the case for me..
you need processing power of cpu for building... sure you can build on a p4.. but time is a great factor here.. i7 can compile faster than i5.. and it goes like that..
by the way.. i know a guy who built cm on a 4gb ram and intel core duo... took around 7 hours he said..
psych.half said:
i know a guy who built cm on a 4gb ram and intel core duo... took around 7 hours he said..
Click to expand...
Click to collapse
I hav 6gb ram and i7 processor but my internet download speed is jst 60 kbps...
Vortex99 said:
I hav 6gb ram and i7 processor but my internet download speed is jst 60 kbps...
Click to expand...
Click to collapse
buddy you don't need to download the whole 12gb of source code..
if you only plan to build for a specific device... you don't need the all platform codes for arm/ mips/ x86 or prebuilt binaries for mac os and x86 and x64..
you can select only required prebuilts and projects for your current device and current os by creating an xml file with some modifications in
.repo/local_manifests directory.. then you can reduce size of the source code...
and at 60kbps.. let's average that to 55 kb/ps... it would take around... 53 hours
but you can do continue syncing where you left off... kinda like pause and resume... so maybe in a week you will have the source code..
and just make source you sync the frameworks_base at last.. that one repository alone is over 1 gb.. O_O
psych.half said:
buddy you don't need to download the whole 12gb of source code..
if you only plan to build for a specific device... you don't need the all platform codes for arm/ mips/ x86 or prebuilt binaries for mac os and x86 and x64..
you can select only required prebuilts and projects for your current device and current os by creating an xml file with some modifications in
.repo/local_manifests directory.. then you can reduce size of the source code...
and at 60kbps.. let's average that to 55 kb/ps... it would take around... 53 hours
but you can do continue syncing where you left off... kinda like pause and resume... so maybe in a week you will have the source code..
and just make source you sync the frameworks_base at last.. that one repository alone is over 1 gb.. O_O
Click to expand...
Click to collapse
So ur sayin I can pause during the repo sync command... ??
How can I do that... ??
Now I am really getting interested... but I hav exams right now and my laptop hard disk has failed... btw can you give me detailed explanation about building cm from source or atleast post a link to guide. .. I hav seen many guides but all of them are confusing...
Vortex99 said:
So ur sayin I can pause during the repo sync command... ??
How can I do that... ??
Now I am really getting interested... but I hav exams right now and my laptop hard disk has failed... btw can you give me detailed explanation about building cm from source or atleast post a link to guide. .. I hav seen many guides but all of them are confusing...
Click to expand...
Click to collapse
well.. it's not pause.. it's like.. let's say you have already downloaded 16%.. and you stopped it that.. and turn off your pc..
next time you open pc and run repo sync.. it will check if sources have changed.. if not it will continue to sync from there..
it's just matter of copy and pasting commands to set up sources....it is not that hard..
hmmm... how about i set up the build environment for you on your laptop via ssh .. when your laptop is fixed.. pm me for your thoughts on this..
psych.half said:
well.. it's not pause.. it's like.. let's say you have already downloaded 16%.. and you stopped it that.. and turn off your pc..
next time you open pc and run repo sync.. it will check if sources have changed.. if not it will continue to sync from there..
it's just matter of copy and pasting commands to set up sources....it is not that hard..
hmmm... how about i set up the build environment for you on your laptop via ssh .. when your laptop is fixed.. pm me for your thoughts on this..
Click to expand...
Click to collapse
yea sure m gonna let you know about it...