Related
I wonder why the threads are closed that belong to the ROM`s by KiNgxKxNexus? I was really hoping we will get some support for the Desire Port
vikramdhani said:
I wonder why the threads are closed that belong to the ROM`s by KiNgxKxNexus? I was really hoping we will get some support for the Desire Port
Click to expand...
Click to collapse
you can still find his roms over at the other site that he post at.
NguyenHuu said:
you can still find his roms over at the other site that he post at.
Click to expand...
Click to collapse
Pm me the site ? and it is not about just getting the roms but it is about to get support for the roms as well. I don't think there is anyone else who is cooking roms for desire port and now it looks like it will not happen anymore
You can try and search www.modaco.com to see if there is a working desire port for the N1. If you are unable to find someone working on it then I guess the desire port you want will no longer have any type of support.
wOoT_WoOt said:
You can try and search www.modaco.com to see if there is a working desire port for the N1. If you are unable to find someone working on it then I guess the desire port you want will no longer have any type of support.
Click to expand...
Click to collapse
Yeah i will try that as well but still dont understand why the thread have been locked
It was locked due to him apparent theft of copying someone else's entire froyo build, while making a new build prop to claim that he had taken it from the ASOP build of Froyo. Therefore, his Md5sum hashes are the same as the ASOP source. But they can't be the same as MD5sum hashes are created with a new hash number. So this is the reason why his threads are locked due to a pending investigation by the mods of these forums.
wOoT_WoOt said:
It was locked due to him apparent theft of copying someone else's entire froyo build, while making a new build prop to claim that he had taken it from the ASOP build of Froyo. Therefore, his Md5sum hashes are the same as the ASOP source. But they can't be the same as MD5sum hashes are created with a new hash number. So this is the reason why his threads are locked due to a pending investigation by the mods of these forums.
Click to expand...
Click to collapse
Wrong there is no way the hash is the same if he changed the build.prop and repacked and resigned
once you change repack and resign something everything changes in the md5 so whomever said that is a newb and needs to stop being a greedy person
Once anything in any file is changed its md5 changes now if he used someone elses Gmail.apk it will be the same as any other Gmail.apk but the archive in which the update was changed like the build.prop it will be different its impossible for the md5 to be the same
that said.. unlock his threadds and stop being stupid whomever said that
wOoT_WoOt said:
It was locked due to him apparent theft of copying someone else's entire froyo build, while making a new build prop to claim that he had taken it from the ASOP build of Froyo. Therefore, his Md5sum hashes are the same as the ASOP source. But they can't be the same as MD5sum hashes are created with a new hash number. So this is the reason why his threads are locked due to a pending investigation by the mods of these forums.
Click to expand...
Click to collapse
I dont understand. Do you mean md5 sums of some particular apk's? Cause the hash will change if he changed build.prop even a little.. As the previous post said..
I'm not using his ROM but I want a "official" explanation.. too much gestapo stuff going on
The "official" version probably goes something like this:
King hasn't actually **built** aka **compiled** from source a full ROM....ever.
King takes others builds (Like kmobs or Chris's Froyo AOSP build) and changes a few things and says he made them all by himself.
King sometimes doesn't even bother to change stuff. He "compiled" a foryo AOSP build last night that matched the md5 hash of the teamdouche one. But, had he compiled it last night with the latest commits his md5 would have been much different. Ergo, he's a moron
go to the g1 thread. he downloaded jubehs rom, changed a few files and said it was his own. it has the same md5 values for all but 5-10 of the files which would be impossible if he compiled his own stuff like he claims
damn people have so much hatred towards him.I don`t know what he did or not but neither i am supporter of king and i believe if he is guilty then he should live with the consequences and i will never ever use his rom or donate since it is not his work.
We will find out once the investigation is completed and we all have our answers
bobtentpeg said:
The "official" version probably goes something like this:
King hasn't actually **built** aka **compiled** from source a full ROM....ever.
King takes others builds (Like kmobs or Chris's Froyo AOSP build) and changes a few things and says he made them all by himself.
King sometimes doesn't even bother to change stuff. He "compiled" a foryo AOSP build last night that matched the md5 hash of the teamdouche one. But, had he compiled it last night with the latest commits his md5 would have been much different. Ergo, he's a moron
Click to expand...
Click to collapse
1. What ever happened to Open Source?
2. Who are you? What have you developed?
3. If he recompiled an entire archive the MD5 will be extremely unique it was I am sure coinsidence that it was nearly the same its impossible after recompiling something that the MD5 would have just 5-10 characters different everything changes!
4. FIles within the archive (of course will have the same hash as other files!)
5. King has always been using other people stuff and he definantly lets the people know he uses them.
I could care less for one ****ing ROM I know he worked on his own when he released his latest build for Sense UI because no other person has been able to fix the **** that he has with the rom or posted another version of Sense UI other than modaco which he said he used something thanks to him!
flybyme said:
go to the g1 thread. he downloaded jubehs rom, changed a few files and said it was his own. it has the same md5 values for all but 5-10 of the files which would be impossible if he compiled his own stuff like he claims
Click to expand...
Click to collapse
so what he always give credit where due. this is open source stop being a bunch of damn *****es. I know for a fact he had written most of the fast g1 kernels back in the day.
ianandamy said:
so what he always give credit where due. this is open source stop being a bunch of damn *****es. I know for a fact he had written most of the fast g1 kernels back in the day.
Click to expand...
Click to collapse
EXACTLY! SOMEONE THAT UNDERSTANDS!
Maybe everyone else should go work for HTC Sense Ui developers
death1246 said:
1. WTF ever happened to Open ****ing Source?
Read up on the Apache license
2. Who are you? What have you developed?
3. If he recompiled an entire archive the MD5 will be extremely unique it was I am sure coinsidence that it was nearly the same its impossible after recompiling something that the MD5 would have just 5-10 characters different everything changes!
Learn to read. It wasnt 5-10 characters, it was 5-10 files that had new MD5s. Everything else was the exact same.
4. FIles within the archive (of ****ign course will have the same hash as other files!)
No they wont, if you compress files, it will change the file and result in a new MD5 hash. He took jubehs rom, replaced the build.prop, a few other files and called it his own
5. your a ****ing idiot for being such a **** and unreasonable
6. King has always been using other people stuff and he definantly lets the people know he uses them.
He gives credit, but he says he compiles his own roms. He is NOT doing that. He did not say he took Jubehs rom and modified it, he said he compiled it himself
I could care less for one ****ing ROM I know he worked on his own when he released his latest build for Sense UI because no other person has been able to fix the **** that he has with the rom or posted another version of Sense UI other than modaco which he said he used something thanks to him!
Click to expand...
Click to collapse
ianandamy said:
so what he always give credit where due. this is open source stop being a bunch of damn *****es. I know for a fact he had written most of the fast g1 kernels back in the day.
Click to expand...
Click to collapse
Once again, Read up on the Apache license
With the Apache License, developers can choose what terms they would like to include with their release. Most developers here require proper credit be given for their work. With the Apache license, developers are not required to open-source their work. Why do you think HTC's Sense is so hard to work with?
The fact that KingKlick did not give proper credit to jubeh and even claimed jubehs ROM as his own is the reason that his threads got shut down.
*eating popcorn emoticon thingy*
I love this thread
I'm still have no chance to trying "his" rom, but whatever.
I feel sorry for him.
This king guy is highly unintelligent, and anyone making an argument that using other peoples work as your own under protection of "open source" is even worse. The grammar in this thread alone breaks my heart .
Sent from my Nexus One using XDA App
death1246 said:
Content Deleted!
Click to expand...
Click to collapse
why dont you? modaco are the only actual Sense devs for the nexus.
I can copy modacos rom and edit a file and put it up too. doesnt make it a better rom.
if you want "fun" go to http://www.kidinfo.com/
if you dont like xda's policy, then go somewhere else, simple as that
Hello, i'm a web developer and have no experience in developing android roms. Anyways, i'm planning to develop a free website which will let any developer create an online kitchen for his rom, where users like me can come and bake rom according to their needs. Now as i don't have any experience with cooking roms, i would like a little help from the developers. Help i am seeking in is, what features a fully customizable kitchen has, how to change the update.zip for the changes, and adding applications to the zip. I have a little bit idea, but want a clear process.
you will get flamed for this
shararti said:
Hello, i'm a web developer and have no experience in developing android roms. Anyways, i'm planning to develop a free website which will let any developer create an online kitchen for his rom, where users like me can come and bake rom according to their needs. Now as i don't have any experience with cooking roms, i would like a little help from the developers. Help i am seeking in is, what features a fully customizable kitchen has, how to change the update.zip for the changes, and adding applications to the zip. I have a little bit idea, but want a clear process.
Click to expand...
Click to collapse
This really is an admirable goal, but you're attempting to bite & chew WAY more than your mouth can handle!!!
You're a web developer, good.
You have no experience in developing android roms, bad.
You want to develop a free kitchen, good.
You have no experience with cooking roms, bad.
You want developers to help you in exchange for a free kitchen for their rom, bad & good.
You don't know how to update the "update.zip" file and re-sign it, bad.
You don't know how to add an APK to the above mentioned "update.zip" file and re-sign it, bad.
You have a little bit of an idea, but want a clearer process, bad.
All of the above noted BAD points, have been discussed, referenced, and linked on these forums countless times shararti.
You really need to search, read, search some more, and apply what you've learned.
I too am a Web Developer/Designer. I've been in the business of creating websites since 1999 (off & on). And the above mentioned project it something I WON'T EVEN DARE ATTEMPT.
Good luck!
I did search, countless times, everywhere. But as lack of my experience with rom development, it was quite confusing. Well I do know signing and adding apk part, and the rest, i agree, i need some help. I'm willing to give my summer to this project and develop this kitchen for the xda community (i'm also willing to give it away to xda). Now if anyone is willing to help me, please pm me.
Actually, it isn't that difficult.
There are quite a few scripts and programs that you could simply employ on your website. I'm sure those developers wouldn't mind
You would have to tier your ROM baking based on the major ROM cores, and the features swappable between flavors of those cores.
It's simply letting the user choose what he wants in his base ROM, pushing the files into the zip, and running the script to sign them.
I'd be glad to guide you in the structure of ROMs, and showing you what can be mixed and matched.
PM me. We'll get started.
Sounds like a very cool idea and I wish you all the best and hope you find some programmers willing to teach you about roms, and you can do the web coding and make your idea a reality.
I'd use it for sure, would be wicked. Imagine going to this web page on your N1 customizing a ROM, building it and then flashing it. All without going near a computer. Sounds unreal!
APrinceAmongMen said:
I'd be glad to guide you in the structure of ROMs, and showing you what can be mixed and matched.
PM me. We'll get started.
Click to expand...
Click to collapse
Perhaps, share the information here once you two have things worked out?!
shararti said:
I did search, countless times, everywhere. But as lack of my experience with rom development, it was quite confusing ...
... I'm willing to give my summer to this project and develop this kitchen for the xda community ...
Click to expand...
Click to collapse
XDA is such a huge resource, full of solutions, bricked devices and lost newbs LOL.
After trolling for a few months, I was ready to flash my first WinMo SmartPhone a few years ago. I haven't used a 'regular phone' ever since.
This would be an ideal summer project. As I said, I'm also a Web Developer.
Hit me up for some theme/template ideas. I do most of my work with Notepad++ and Adobe Fireworks CS4.
Goonish said:
I'd use it for sure, would be wicked. Imagine going to this web page on your N1 customizing a ROM, building it and then flashing it. All without going near a computer. Sounds unreal!
Click to expand...
Click to collapse
hhmm, never thought of that!
You're right ... sounds unreal!
Something the iFans would never be able to attain.
Even better, how about, instead of flashing some large file, only the ones affected by an update are flashed, resulting in a much SMALLER file (thus saving on data usage) and a FASTER flashing (saying on battery life).
shararti said:
Hello, i'm a web developer and have no experience in developing android roms. Anyways, i'm planning to develop a free website which will let any developer create an online kitchen for his rom, where users like me can come and bake rom according to their needs. Now as i don't have any experience with cooking roms, i would like a little help from the developers. Help i am seeking in is, what features a fully customizable kitchen has, how to change the update.zip for the changes, and adding applications to the zip. I have a little bit idea, but want a clear process.
Click to expand...
Click to collapse
Well it all depends on what you want. I would suggest you have a base rom without the boot.img stored with minimal capability in a folder. then allow the user to choose what type of kernel and capabilities they would like with it. That will be the minimum amount for a rom. Then you can follow it up with additions such as extra scripts and applications that can be added and moved to the appropriate directories. at the end, you would zip up the selection and sign it, with the appropriate update-script (which should be the same as the stock rom's unless the additions require something drastic)
So the folder tree should look something like this for one specific ROM:
ROM/ROM Core Files (this is the base rom without boot.img)
ROM/ROM Core Files/META-INF (this is for the update zip)
ROM/ROM Core Files/system (this is where the system apps go)
ROM/ROM Core Files/data (this is where certain apps go)
ROM/ROM Kernels (this is where kernels are/boot.img)
ROM/ROM Kernels/boot.img.1 etc
ROM/Modifications (this is where apps and other mods go)
ROM/Custom Build (this is where the baked rom should go)
Then all you need to figure out is how to move everything to the custom build directory
Move the core to custom directory and a boot.img (rename it from whatever it is to boot.img) and then move and modifications to the appropriate directory inside the custom build folder. Then zip the custom build folder and sign it
That should be about right. its 3 am here lol so i may be missing something. pm me if you need more help or post here
Exactly.
The great thing about it. The ROM core files can be optional. You can bake a kernel or you can bake CM w/ custom kernel and custom mods, i.e. modded phone.apk. You can bake anything and everything.
Mmm baking never sounded so good.
Check this website out:
http://theunlockr.com/2010/03/26/ho...om-for-android-part-1-setting-up-the-kitchen/
My small contribution to this project
The basic kitchen:
forum.xda-developers.com/showthread.php?t=633246
Sorry it's not a link, apperantly new users cannot post links
flybyme said:
So the folder tree should look something like this for one specific ROM:
ROM/ROM Core Files (this is the base rom without boot.img)
ROM/ROM Core Files/META-INF (this is for the update zip)
ROM/ROM Core Files/system (this is where the system apps go)
ROM/ROM Core Files/data (this is where certain apps go)
ROM/ROM Kernels (this is where kernels are/boot.img)
ROM/ROM Kernels/boot.img.1 etc
ROM/Modifications (this is where apps and other mods go)
ROM/Custom Build (this is where the baked rom should go)
Then all you need to figure out is how to move everything to the custom build directory
Move the core to custom directory and a boot.img (rename it from whatever it is to boot.img) and then move and modifications to the appropriate directory inside the custom build folder. Then zip the custom build folder and sign it
Click to expand...
Click to collapse
Ok so after reading it 3 times carefully, this is what i got to:
All roms have same common files, which are:
1. the META-INF folder.
2. the system folder.
3. the data folder.
This is a basic skeleton of any rom, and every rom has these exact files.
Now what i have to do is, when a user cooks a rom, i have to pick the required boot.img and put it into the basic skeleton, in addition to any apps/modifications user want. Then zip the whole package and sign it.
Is that it?
PS: you also said that i may need to change update-script, in what cases that would be required?
PPS: Do i have to make changes to some other files too? cause it sounds too easy to be true =p
shararti said:
Ok so after reading it 3 times carefully, this is what i got to:
All roms have same common files, which are:
1. the META-INF folder.
2. the system folder.
3. the data folder.
This is a basic skeleton of any rom, and every rom has these exact files.
Click to expand...
Click to collapse
They usually have the same folders, not files
the META-INF has the signature files but most importantly the update-script which tells the phone what to do when your flashing the update.
shararti said:
Now what i have to do is, when a user cooks a rom, i have to pick the required boot.img and put it into the basic skeleton, in addition to any apps/modifications user want. Then zip the whole package and sign it.
Is that it?
PS: you also said that i may need to change update-script, in what cases that would be required?
PPS: Do i have to make changes to some other files too? cause it sounds too easy to be true =p
Click to expand...
Click to collapse
that SHOULD be it but remember that you may have to remove some apps from the core files of the rom such as amazon mp3 that people may not want, so you will have to see what apps can be removed and decide whether you want users to be able to remove it or not.
You MAY have to change the update-script if for example you want to put some things in the data partition and symlink them or change the data partition to include the ext partition instead of just for apps. Changes like that are usually for ROMs that are too big to fit properly on the nexus ( youll also have to check the size of the system and data folders to make sure they fit on the phone without modification)
Most of this stuff will be figured out in testing haha but ya at the very basicee its what you have here. You really have to know what you actually want users to be able to cook and then build the kitchen to that effect
flybyme said:
They usually have the same folders, not files
the META-INF has the signature files but most importantly the update-script which tells the phone what to do when your flashing the update.
Click to expand...
Click to collapse
So does that mean i can use same core for all custom baked roms? Except for the update-script, which in rare cases, may need to be altered.
flybyme said:
that SHOULD be it but remember that you may have to remove some apps from the core files of the rom such as amazon mp3 that people may not want, so you will have to see what apps can be removed and decide whether you want users to be able to remove it or not.
Click to expand...
Click to collapse
I took a look at system folder and it's quite populated. Can you tell me what are the basic files that are common for all roms? For the rest of the files, i guess i'll give the user choice to include them or not.
Also can you tell me what is zipalign? Will that be required in baking process?
And to let everyone know, I have already started the working on the kitchen =]
shararti said:
So does that mean i can use same core for all custom baked roms? Except for the update-script, which in rare cases, may need to be altered.
I took a look at system folder and it's quite populated. Can you tell me what are the basic files that are common for all roms? For the rest of the files, i guess i'll give the user choice to include them or not.
Also can you tell me what is zipalign? Will that be required in baking process?
And to let everyone know, I have already started the working on the kitchen =]
Click to expand...
Click to collapse
Well it really depends on what ROM's your looking at. Some devs change the apps to their liking. For example, CyanogenMod has a modified Settings.apk that has features specific to his rom. However, all ROMs have Settings.apk. As such, you will probably have to have a Core ROM folder for each specific rom.
I would suggest looking at other online kitchens and see what features they offer, come up with a specific feature set and then decide what direction that you want to take.
zipalign is a compression technique that optimizes how .apk files are accessed in android. it makes things faster and is not required but would be nice to have. you lose the benefits if you open and modify any files from a zipaligned apk
Let's clear some things up here.
First, core files are not interchangeable between main roms but only flavors of those main roms.
As of now, we have 3 main roms for the nexus one.
CyanogenMod, Modaco Custom ROM, and Desire/Sense Roms.
Each of these roms have their own unique cores amd features and are not interchangeable.
There are flavors of each of these roms.
Flavors of CM has parts that are interchangeable with other flavors but use Cyans core.
Say there is one CM flavor that has some themieing and a few other changes you don't want. You can take the themed files and put them into your CM base and leave the rest out.
You can't put that themeing into a Modaco Custom ROM though.
Kernels I believe are the only things can be put into any ROM base. Most apps are as well.
Now that I look at it. Doing a Nexus One kitchen isn't that difficult but making a full featured HTC kitchen would be a mountainous task. There are so many mods, roms and themes to keep track of. We'd have to designate people from each device forum to feed us the ROMs and parts that are active and functional.
P. S. Lectures are over at 7 today. ill be able to crack down on it with you then
Kitchens are for the Food Network...
well thanks flybyme and APrinceAmongMen, these 2 posts really cleared up somethings. I'm in the process and will keep you guys updated.
QUESTION: how do i change the radio and boot animations in a rom?
PS: the good news is, i'm done with all the hard part, and just few small things remaining. Probably if anything else doesn't comes up, you guys should have a n1 kitchen within few days =D
shararti said:
QUESTION: how do i change the radio and boot animations in a rom?
PS: the good news is, i'm done with all the hard part, and just few small things remaining. Probably if anything else doesn't comes up, you guys should have a n1 kitchen within few days =D
Click to expand...
Click to collapse
boot animations are located either in /data/local or /system/media
radio flash will require you to change the update-script
you can look at the FRF50 update with the radio to figure it out ( or pm me if thats too difficult, its a little late else id do it myself)
Just make sure the radio is excluded by default.
Another thing about radios, the newest radio usually works on older roms, but old radios don't work on the roms released with and after the newest radio.
I have decided to rework the thread to ovoid any confusion as the intent of posting this thread was to ask questions about compiling custom Roms from AOSP source that someone like myself who gained their development experience on other devices that building from pure AOSP code was not an option and are not as familiar working with AOSP. In the past my own experience comes from using and modifying for example the Cyanogenmod source so after attempting to now base my Rom on AOSP this time around with Lollipop have run into a few unfamiliar differences. As each question or topic is addressed I will update the Op. The hope is not only will I find solutions or answers to my own questions but that others in the same position will also be able to find use of the discussions posted in this thread.
Compiling the AOSP source into a format that can be safely flashed using a custom recovery. This was a 3 part question the first was just simply how to compile AOSP in a format other then .img files that can be flashed using a custom recovery without the need of flashing through fastboot or needing to use the adb sideload option.
1, Compiling AOSP into the for of an update.zip.
This was answered in short by know.patience by suggesting to use the “make otapackage” command in place of "make" to start the build. Was also made aware that a few modifications would need to be made to avoid producing an update package that does not use the new block format but instead the old style zips we are most used to seeing.
2, Now can create an update.zip using the “make otapackage” command ran into an issue that by flashing the update.zip produced would in the process replace the custom recovery used to flash with the Nexus Stock recovery. This was answered by Lethargy who suggested and provided a Link for the following commit.
For getting rid of the AOSP recovery:
https://github.com/Lethargy/android_build/commit/48521e167c642db76c9d4f52b1c63f9abc7f707f
https://github.com/Lethargy/android_build/commit/1d9224bd45ef2b4f5601a157de2bfe3bb1c95558
3, Now can create an update.zip using the “make otapackage” and after applying the above commit are now able to flash the update.zip without replacing the recovery Lethargy also provided links for the following commits.
To get rid of the block-based zip format:
https://github.com/Lethargy/android_build/commit/4d458300d935a3a9d893a590286cb578dcf54db2
You'll also want to make sure you have this commit so it doesn't flash awfully slow in recovery (8~ minutes, but only around 1-2 minutes with this commit):
https://github.com/Lethargy/android_system_extras/commit/52f8d5fc3edfacd112827d0a41516c1dc5f4a468
This one isn't required but you may as well:
https://github.com/Lethargy/android_build/commit/242be9ae4f05e3cb1d39d635cac7147ff904700c
Compiling using the AOSP Master branch vs release branches. In following the directions provided on the Google development site are given the command for downloading the source code using the Master branch. Using the Master branch as apposed to a release branch such as android-5.0.2_r1 or lower have found that the source compiles just fine but have run into one issue and just a general question that a little explanation would be helpful for general understanding of the AOSP Master branch.
The issue is that after flashing a Rom compiled using the Master branch everything in the Rom works as expected other than the radio. I have so far using the same exact vendor blobs as compiling a release branch have not had a signal and baseband version is listed under about phone as unknown.
The general question is that the android version listed compiling a Rom using the Master branch is version 5.0.50.50.50.50. In general I have yet to understand what this version number represents and very little to no information available via the Google Box.
Between the both I now wounder if the Master branch is intended for actual use or if so what changes are required so the baseband version is recognized and radio / Ril will work?
Quick Answer:
Google first commits new code into master and then is later tagged with an update for realease so in generall many things can be broken and the master branch is and not intended to be stable so if building from master expect that things will be broke or buggy.
Compiling Rom and Kernel together. For those of us again used to compiling using say the CM code are now used to compiling the Kernel along with the rest of the code. I know it is easy to just compile the Kernel and include in the device tree but for those of us who would still like the Kernel compiles with the rest of the code there is no information available on the Google Developers site for doing so and there seems to be a few differences as have tried just using the lines used in the CM Hammerhead device repository. I have come across these commits from Cl3Kener that should help. Hate posting other developers code but is on Github so is there for the public at large. So far have only tested as is so will update if finding not all changes are necessary or can be modified.
Inline Kernel Building
https://github.com/OptiPop/device_lge_hammerhead/commit/7de8fd95b6df16cb6311161d5048874d69cf1cb1
https://github.com/OptiPop/device_lge_hammerhead/commit/87768896f4eb8fcd989ce3b8492ca65305513851
https://github.com/OptiPop/device_lge_hammerhead/commit/5460eb3aa76ea5d813f64a3b3bab6ace1be6de68
Adding Pre-Built APK's
Seems Sprint users need a few apk's for updating prl and what not that are included into the Stock release but are not part of the AOSP code. For some reason through vendor or even device have tried adding these apk's into the build. First try I created a sprint vendor section and received a few errors untill learning would need to add sprint into a vendor white list found in build. Will post link to file later. After found the extra "Services.jar" I found in the stock image not found in the aosp compiled Rom did copy into the build but the apk's had not. Looking in the other vendor blobs noticed lge adds "qcrilmsgtunnel.apk" so followed the example and even tried just adding the other spk's into lge expanding the list used for adding in "qcrilmsgtunnel.apk" but still no luck. Also have tried adding through the device files for Hammerhead just to get them into the Rom for testing and still no luck. If this was CM or any other Rom not using pure aosp this would have been a 5 minut project so need to do some aditional homework.
Again think this thread could be a good resource for developers who are new to building their Roms around AOSP so wanted to include everything I run into during the process of moving away from using a heavily modified CM based code as the base of my Rom to using AOSP in its place so developers who are or in the same process or for those in the future can use as a resource to quickly adjusting. I have been building CM based Roms like Starship for years and after hours of working on other aspects to suddenly be stumped by these small differences between platforms can be very frustrating.
to the OP:
answer to your first question comes in two parts.
a) use 'make -j# otapackage' will generate a zip that is flashable in custom recovery.
b) if you plan on adding other files after the zip is made, you will need this info here:
https://github.com/android/platform_build/commit/26e6619c37e294fe2ee63aaa759e0ac861775ce8
There are some modifications needed to generate the OG zip files instead of the new "block" format.
Google hasn't released the 5.0.1 image for the N5 but that doesn't mean you can't build it and install it yourself. I'm running it and it seems okay to me so far although I'm hardly an expert.
simms22 said:
op.. this section is only for developers, to get work done. if you have questions, they belong in the q&a section. you arent new, you should know this. again, this section is only for developers, mot for the normal xda folk to post questions. you have a q&a section just for asking questions. please, ask a mod to move your thread there.
Click to expand...
Click to collapse
I am building a customized AOSP Rom I am interested in sharing so was looking for help or direction in creating an update zip that can be flashed in a custom recovery like TWRP. I am not used to compiling AOSP and with the help of know.patience in the first reply am now able to compile an update.zip I can flash in TWRP but in doing so it also replaces TWRP with the Stock recovery. I have still been using the .img files to flash personally but am still trying to figure out how to solve the recovery replacement issue. I still have other features I am adding and testing before I would like to post my work but before I get to that point I still need to figure out my recovery replacement issue. Maybe using the words personal use may have been confusing but at the moment until ready I have only been using my work personally but would like to at some point post and share. I also have work that is not AOSP based I am sharing in the Android Development section but I have been building CM and other source based Roms and sharing for years. This is the first device I have been able to build AOSP and still have a few things to figure out before sharing any of my AOSP based work. I am otherwise not sure why you think these are questions for general Q&A.
I started this thread in Android Development as there was only about 4 posts in this section and I see many AOSP based Roms in Android Development who's developers obviously know the answers to my questions so tried to get away posting there in hope one of these developers could help or like in the first response point me in the direction of a commit before the thread was moved by a mod into this section. Do you think someone in the general Q&A section is better equipped to help answer questions about compiling an AOSP based Rom in the form of an update.zip that can be flashed in TWRP without also replacing TWRP with the Stock recovery?? Would also be nice knowing what changes in the code need to be made in compiling an old style update.zip that does not use the new block format. This would be a bonus but overall not %100 needed as instead of moving files around after the code has been compiled have added init.d support and first have all the files I want moved into a staging directory and then form an init,d bash script to move the files during first boot and remove those that are not needed like this example I used in my CM based version of the Rom I am trying to update for AOSP for 5.0.
https://github.com/Starship-Android/android_device_starship-common/blob/cm-11.0/app-update
https://github.com/Starship-Android/android_device_starship-common/blob/cm-11.0/cleanup
I must seriously be underestimating the knowledge and in general the types of questions being asked and answered in the general Q&A section.
Honestly if not for the amount of times thanked I would think this comment was not so much about helping or community but more about someone trying to puff themselves up by trying to appear important by making decisions about what questions are worthy of being asked but judging by the number of times they have been helpful I am thinking its either a case of not reading or understanding the question being asked or my own inability to express my questions in the proper manor. Either way its definitely not about taking up resources in a section with less than 10 total posts. The frustrating part as a community as I like to believe we are all in is that why I worked on other parts in updating my Rom had expected that at least more than one developer out of all the AOSP based Roms posted in the development section would have helped me with this one part. Its not like I am asking how to be a developer just a resource to help with two simple things I am sure I could have figured out and will most likely still figure out without any help. Overall my thoughts behind posting this question was that why I am working to figure out something a bit more time consuming at least more than one person would be helpful enough to copy and past a commit.
XDA is weird in that with other devices all the developers would join a team and start a shared group of repository’s for one another to use in trying to make the best possible experience and options for everyone. For example in the op I posted an example of hours of work I did showing what libraries are needed by one another just so others could use it also in trying to port as much as possible for in that case the Galaxy Mini. Then with other devices like seems to be the case with the N5 its all about competition and what I am starting to call the smartest person in the room syndrome. Its just a shame there are only 5 maybe 6 threads posted in this section and I think that says allot about the community in general. So many good things could come about if we just tried to be helpful and pull as much knowledge together as we could. Anyhow think its time for ending this rant.
chairshot215 said:
compiling an AOSP based Rom in the form of an update.zip that can be flashed in TWRP without also replacing TWRP with the Stock recovery?? Would also be nice knowing what changes in the code need to be made in compiling an old style update.zip that does not use the new block format.
Click to expand...
Click to collapse
To get rid of the block-based zip format: https://github.com/Lethargy/android_build/commit/4d458300d935a3a9d893a590286cb578dcf54db2
You'll also want to make sure you have this commit so it doesn't flash awfully slow in recovery (8~ minutes, but only around 1-2 minutes with this commit): https://github.com/Lethargy/android_system_extras/commit/52f8d5fc3edfacd112827d0a41516c1dc5f4a468
This one isn't required but you may as well: https://github.com/Lethargy/android_build/commit/242be9ae4f05e3cb1d39d635cac7147ff904700c
For getting rid of the AOSP recovery: https://github.com/Lethargy/android_build/commit/48521e167c642db76c9d4f52b1c63f9abc7f707f then https://github.com/Lethargy/android_build/commit/1d9224bd45ef2b4f5601a157de2bfe3bb1c95558
Lethargy said:
To get rid of the block-based zip format: https://github.com/Lethargy/android_build/commit/4d458300d935a3a9d893a590286cb578dcf54db2
You'll also want to make sure you have this commit so it doesn't flash awfully slow in recovery (8~ minutes, but only around 1-2 minutes with this commit): https://github.com/Lethargy/android_system_extras/commit/52f8d5fc3edfacd112827d0a41516c1dc5f4a468
This one isn't required but you may as well: https://github.com/Lethargy/android_build/commit/242be9ae4f05e3cb1d39d635cac7147ff904700c
For getting rid of the AOSP recovery: https://github.com/Lethargy/android_build/commit/48521e167c642db76c9d4f52b1c63f9abc7f707f then https://github.com/Lethargy/android_build/commit/1d9224bd45ef2b4f5601a157de2bfe3bb1c95558
Click to expand...
Click to collapse
Thank you this is well beyond what I was looking for and don’t worry I make it a point not to send out PM's with questions that can be helpful for others as well. Otherwise would have blown up the AOSP Rom posters in development but thanks for the information.
chairshot215 said:
.. and don’t worry I make it a point not to send out PM's with questions that can be helpful for others as well..
Click to expand...
Click to collapse
If you mean "I'll probably ignore you if you try asking for support over PM.", that's part of my forum signature.
If you need anything else feel free to @mention me in a thread, though.
I reworked the Op to avoid confusion as Mods have been moving the thread around into different sections. I personalty believe these questions are more geared towered development than general Q&A but at least at the moment I appear to be wrong about that. Never know though as in the past one day one of the mods may decide to move the thread back into its intended location but until then I guess these topics will be of better use to general users than developers.
chairshot215 said:
I reworked the Op to avoid confusion as Mods have been moving the thread around into different sections. I personalty believe these questions are more geared towered development than general Q&A but at least at the moment I appear to be wrong about that. Never know though as in the past one day one of the mods may decide to move the thread back into its intended location but until then I guess these topics will be of better use to general users than developers.
Click to expand...
Click to collapse
You should include the other commit (https://github.com/Lethargy/android_build/commit/1d9224bd45ef2b4f5601a157de2bfe3bb1c95558) which fixes building since the first one results in "IndentationError: unexpected indent".
Lethargy said:
You should include the other commit (https://github.com/Lethargy/android_build/commit/1d9224bd45ef2b4f5601a157de2bfe3bb1c95558) which fixes building since the first one results in "IndentationError: unexpected indent".
Click to expand...
Click to collapse
Thanks for the heads up, when testing these I also cherry picked a few other things that looked related. Have to double check but may have forked the repository’s from you so would receive credit if anyone decided to look over my repository’s. Well overall my personal Github has been pretty bare as in the past most work was done on more obscure Virgin Mobile devices with only a few developers so we would pretty much create an organization for all the developers to use.
https://github.com/MTDEV-CM7
https://github.com/MTDEV-CM10
https://github.com/vmobi-triumph
https://github.com/MTDEV-KERNEL
https://github.com/MTDEV-MIUIv4
https://github.com/MTCM9
https://github.com/MTCM10
https://github.com/HTCCM9
https://github.com/HTCCM10
https://github.com/HTCStarShip
https://github.com/HTCUbuntu
https://github.com/vmobi-shooter
https://github.com/vmobi-gogh
These days have been keeping everything under Starship-Android.
https://github.com/Starship-Android
Have 2 other members listed who I had worked with in the past but has otherwise been a solo organization with one of the other members who decided on going with the Moto X and Verizon over the N5 and showed little interest in his 2012 version of the N7 as it was intended for being a Nexus only device line up and the second being my Kernel Guru from a few devices back who mainly joined to help me out with a few things but ultimately what I am getting around to is this is the first time working %100 solo. Have to say without having anyone to bounce off ideas and share findings with things definitely move much slower and take a bit of getting used to. Is also the reason for starting threads like this. Most of this stuff looking in the developer section appeared to be pretty common knowledge but having never worked from pure AOSP before was slowing down other development for about a week just to figure out what seemed like half the community had already known and with what probably took at the most 5 or 10 minutes of copying and pasting commits probably saved me a weekend of sifting through github and testing. I hope by creating a thread like this will be able to do the same for others.
Hi guys,
Anyone manage to fix RIL problems with master branch?
I also build AOSP roms so for sure i will hangout here
Sent from my AOSP on HammerHead using XDA Free mobile app
malcho said:
Hi guys,
Anyone manage to fix RIL problems with master branch?
I also build AOSP roms so for sure i will hangout here
Sent from my AOSP on HammerHead using XDA Free mobile app
Click to expand...
Click to collapse
Never tried.
ODEXED
i am successfully build cm12 with fully odexed. now i like to odex some prebuilt apk also but LOCAL_DEX_PREOPT=true not odexing prebuilt apk. can somebody help me? already DEX_PREOPT=true working fine.
soorajj said:
i am successfully build cm12 with fully odexed. now i like to odex some prebuilt apk also but LOCAL_DEX_PREOPT=true not odexing prebuilt apk. can somebody help me? already DEX_PREOPT=true working fine.
Click to expand...
Click to collapse
Why do you need to odex a prebuilt apk?
Not sure if what you want is even possible.
But if odexing your prebuilt apk is necessary then why not odex it then include the .odex with the prebuilt?
Lethargy said:
Why do you need to odex a prebuilt apk?
Not sure if what you want is even possible.
But if odexing your prebuilt apk is necessary then why not odex it then include the .odex with the prebuilt?
Click to expand...
Click to collapse
suppose i want to odex gapps. how to?
malcho said:
Hi guys,
Anyone manage to fix RIL problems with master branch?
I also build AOSP roms so for sure i will hangout here
Sent from my AOSP on HammerHead using XDA Free mobile app
Click to expand...
Click to collapse
Nothing so far, I downloaded the master and 5.0.2_r1 branches and have loaded both in meld for looking over differences but have not yet identified from the dif between the 2 branches that is responsible for ril working in release branch but not master. Still have allot to look over though still. Still have not found a decent explanation of the master branch to know if its recommended to build from but still just for Knowledge sake am interested in knowing. At first thought maybe apn's but not so sure with baseband also listed as unknown from my Master branch builds.
chairshot215 said:
Nothing so far, I downloaded the master and 5.0.2_r1 branches and have loaded both in meld for looking over differences but have not yet identified from the dif between the 2 branches that is responsible for ril working in release branch but not master. Still have allot to look over though still. Still have not found a decent explanation of the master branch to know if its recommended to build from but still just for Knowledge sake am interested in knowing. At first thought maybe apn's but not so sure with baseband also listed as unknown from my Master branch builds.
Click to expand...
Click to collapse
As far as i know all the patches goes to master branch then from this branch ,if they are ok,is distributed to lower branches.I also didn't find info why is named as 5.0.50.50.I will try to investigate this ril problem
malcho said:
As far as i know all the patches goes to master branch then from this branch ,if they are ok,is distributed to lower branches.I also didn't find info why is named as 5.0.50.50.I will try to investigate this ril problem
Click to expand...
Click to collapse
Thanks will definitely update the Op with any findings. Was very surprised to find the thread again as it has now been moved 4 times by 4 different Mods, some bounce it to general Q&A and then is bounced back here by another. I understand its not comprised of the most advanced development topics but with that said is still way more advanced than the topics being discussed by general users over in the general Q&A section. I had just thought it would be a nice one stop place for learning the basics of AOSP development. With the constant moving and scolding messages being received one would think the threads very existence is up there with crossing the streams and threatens the existence of Android development.
@chairshot215 Thank you for starting this thread. Thank you @Lethargy for all of your insight. I like to do my own perosnal builds every once in a while for my nexus devices. What I have observed over the years is that the Master Branch will sometimes have funky version numbers like you have described. One thing to consider is what @malcho mentioned. If all commits indeed go there first before the respective branches(although this may not entirely be the case), then it is likely that some things may be broken in the master branch from time to time, hence the ril problem. I think with the galaxy nexus I ended up running into issues from time to time with the master branch, and from there learned to build for specific branches/tags. For instance, there are times when items within a specific branch will be ahead of master in some areas and behind it in others, as in this link to platform_build for lollipop release https://github.com/android/platform_build/tree/lollipop-release. So with that, it is probably in our best interests to just use specific branches.
Milly7 said:
@chairshot215 Thank you for starting this thread. Thank you @Lethargy for all of your insight. I like to do my own perosnal builds every once in a while for my nexus devices. What I have observed over the years is that the Master Branch will sometimes have funky version numbers like you have described. One thing to consider is what @malcho mentioned. If all commits indeed go there first before the respective branches(although this may not entirely be the case), then it is likely that some things may be broken in the master branch from time to time, hence the ril problem. I think with the galaxy nexus I ended up running into issues from time to time with the master branch, and from there learned to build for specific branches/tags. For instance, there are times when items within a specific branch will be ahead of master in some areas and behind it in others, as in this link to platform_build for lollipop release https://github.com/android/platform_build/tree/lollipop-release. So with that, it is probably in our best interests to just use specific branches.
Click to expand...
Click to collapse
Thanks for the response and have definitely learned its better building from branches with a release tag. Still very curious why and how the branches are structured so thanks for the explanations.
Way totally off topic for the thread but landed a brand new SSD and decided to install everything fresh. After everything was set back up and wanted to start building I ran my usual,
-j'grep 'processor' /proc/cpuinfo | wc -l'
a very old habit before fully understanding what number to use after -j so used grep to figure it out based on Googles recommendation. The command did not work so removed the grep and just made it -j4 but also with 0 success. At first just figued I missed somthing setting everything back up and "make" is just not working but wrong again as running "make" command without -j of any number works just fine.
Also tried this with CM12 as I am doing 2 versions of my Starship Rom. One from AOSP and one using CM. Figured AOSP would be special for Nexus users why also having a version for CM I can make most changes by adding a Starship Device Tree could easily port the Rom to any device running CM supported or not.
https://github.com/Starship-Android/android_device_starship-common/tree/cm-12.0
Also found why compiling CM that -j also results in an error
Invalid lunch combo: cm_hammerhead--j4
No such item in brunch menu. Try 'breakfast'
So far have not found anything using the Google Box so figured may as well ask. If have not figured out by now I have no shame in asking questions. Oddly enough that is for things that are probably relatively simple. Took a better part of a week figuring out how to start CM using the Now Launcher and setting up init.d bash scripts for moving around and replacing libs after learning the Gapps package includes libs that will not work so the solution needed to be that the CM Gapps package libs needed to be replaced with either stock or libs pulled after installing the Now Launcher from the Play Store after flashing Gapps and the Rom staring. Also then what if user updates and wipes the system partition after the new and updated llibs have been moved into place. Anyhow point of story is things like this I will just figure out without bothering anyone but for the cant believe I need to stop what I am working on to figure out something most likely very simple and can be answered with very little time spent I have no shame in just asking. Not that someone else’s time is less important but like I have mentioned before is frustrating just after spending hours or days figuring out something asked in dozens of threads is just frustrating getting caught up or loosing momentum and thought processes over something so simple there are little resources available. Also I assume most devs have the same experience when you have an idea or thought behind resolving an issue that once you stop and change direction it just sometimes never comes back and that short time you had I guess can be called an epiphany is gone once going back. Otherwise thats how I justify asking dumb ars questions.
Hi, I'm a Korean Developer.
Recently Samsung has released android 5.0 lollipop for our devices.
But most of you may be ambarrased because the lollipop upgrade changed lots of things in system.
So I researched few days about it, and I've got several informations.
All of what I explain here is the result of my experiments.
In developers discussing forum, famous developers were discussing about "How we can mod lollipop system files".
Thanks to qwerty123258, Softdx's lollipop de-odexing tool has been known to here. But the problem is that how to re-odex the de-odexed apps,frameworks.
As our common sense, ART doesn't support de-odexed apks,jars so we have to re-odex them. But many of you may think we can't re-odex animore with the way we have used.
I agreed it at first.
So I've heard that de-odexed SecSettings,SystemUI apk with Softdx's tool don't work and have FCs. Thinking like this, we can think there is no solution. Especially, lots of custom ROM developers cannot make ROM without smali modding.
BTW, I saw that mods for nexus devices' lollipop are mostly de-odexed. But there is no problem.
Hold on, the ART definitely doesn't support de-odexed mods, but why mods for nexus doesn't have matter? You may think this doesn't make sense.
So I had doubt to this 'common thinks'.
And one day, I was putting Galaxy Note3's apps into my system that worked on KK.
FlashAnnotate app had FC, and Action memo popup also had FC. But the main app and widget of Action memo worked well.
Moreover, SuperSU that I used when rooting my S5 was also de-odexed app.
Isn't it strange to say "ART doesn't support de-odexed"? So I thought that Google didn't fully removed dalvik, they just inactivated it.
So I replaced the FlashAnnotate app with the one for Note4, and it worked well.
Then I put Note4's apps like S Note, Weather Widget, etc. As I expected, all of them worked with no FC!
Thus, it is wrong to say that the ART doesn't support de-odexed. It is the problem of that app.
What problem?
I asked to one of my friend, a Note3 mod-developer. He said that stock Note3 doesn't support ART natively.
This means that the developers of Note3's stock apps didn't care ART.
It has the same principle with the issue that the old version of stock apps like S health have FC on Galaxy S5 lollipop.
The structure of app's source code have to match with ART's structure.
In short, de-odexing have no relation with ART. FC issue is the compatibility issue of that app.
So the apps of after-KK-released-devices can be worked whether it is de-odexed or not.
Is this mean apps with FC cannot be used on lollipop? No. We can modify it to match with ART's structure. I mean, we can port it as API21(lollipop).
Let me pass to the other subject.
Most of you may think that re-odexing as the way we used, extracting dalvik-cache in the phone cannot be used and we must convert it as oat.
But, I re-odexed the main app of Action memo,what worked well even it was de-odexed, as the way we used.
It also works well while it is re-odexed.
Therefore, we can re-odex apps with the way we used.
BTW, as mentioned before, stock Settings and SysUI don't work when they're de-odexed and re-odexed.
It doesn't make sense according to the theories before. Then, what's the problem?
There is one that most of you may overlooked.
When you're de-odexing with Softdx's tool, generally most of you may think converting oat to dex is important and baksmaling/smaling process must be worked well.
But the problem was in baksmaling/smaling process.
When I was de-odexing stock settings app with Softdx's tool,
(look at the attached 1.png because I cannot insert image)
There were errors on smaling process. But I've never modded any smali of it.
When I looked the codes that made errors, not recognizing the '+'s on the pswitch code.
(look at the attached 2.png because I cannot insert image)
like this.
Many smali modders may know that there was no '+' on pswitch code when modding smali of KK or lower versions.
But after I remove all that '+', it can be compiled well but it has FC. Why? literally "It was modded".
It is reasonable to have FC because it was "modded", not compiled without modifications.
We can think of these two cases:
1. The structure of app's source code was entirely changed, so the last (bak)smali tool cannot recognize changed codes.
2. The structure of app's dex was entirely changed, so vanished parts are made when baksmaling with last tool.
We can conclude with these two cases.
After the release of (bak)smali tool that can completely baksmali/smali, we can do modifications.
I've heard that the developer of apktool is going to release new version for lollipop. So we have to wait a little bit.
Although we cannot do smali modding yet, we can put apks in system.
Why don't you put several apps in system and confirm what works or not?
Anyway, Thank you for reading my bad English...ahaha
If you have another opinion for my think, reply it.
Wow really much thnx for this!!
As my question, Google but can't find any good solution. Thank you
Why would you want to? odex means Optimized DEX. It is a specially optimized compiled java. If you take out the odex files and replace them into the apk as dex files, then each of those programs you did that to will have to reoptimize it into your cache partition. Essentially, it means that you will be (1) storing the data twice instead of just once, and (2) increasing the number of applications that have to be "optimized" whenever you make a frameworks change.
There is ABSOLUTELY NO BENEFIT to "deodex". People used to do it when Android was new, because they were retarded.
doitright said:
There is ABSOLUTELY NO BENEFIT to "deodex". People used to do it when Android was new, because they were retarded.
Click to expand...
Click to collapse
The only benefit if I recall correctly is while modifying a file in Android, since unless things have changed you can't get usable code from an odexed file using baksmali. But once done editing the file, it should be odexed.
Strephon Alkhalikoi said:
The only benefit if I recall correctly is while modifying a file in Android, since unless things have changed you can't get usable code from an odexed file using baksmali. But once done editing the file, it should be odexed.
Click to expand...
Click to collapse
If you can deodex it, then you can get usable code from it. You just need to add a step to the pipeline, which you have to add anyway.
doitright said:
Why would you want to? odex means Optimized DEX. It is a specially optimized compiled java. If you take out the odex files and replace them into the apk as dex files, then each of those programs you did that to will have to reoptimize it into your cache partition. Essentially, it means that you will be (1) storing the data twice instead of just once, and (2) increasing the number of applications that have to be "optimized" whenever you make a frameworks change.
There is ABSOLUTELY NO BENEFIT to "deodex". People used to do it when Android was new, because they were retarded.
Click to expand...
Click to collapse
Please don't use such harsh words like retarded. Everyone on XDA is always learning and there is absolutely nobody that is the best. As long as you are willing to learn, you are better.
There is actually benefits to deodexing. As you can see, theming touchwhiz is much easier this way as you wont get errors
And isn't that what roms are for? More customization options?