yashsingh1/xdaforums huggingface dataset:
[Android] dsixda:
Whoa, these odex files are all kinds of fail, causing "mismatched input <EOF>" issues. I wonder if it's a bug in smali/baksmali. I would suggest you raise a bug report on JesusFreke's google code page for smali/baksmali.

You can also mention this is the classpath (init.rc):

export BOOTCLASSPATH /system/framework/core.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/android.policy.jar:/system/framework/services.jar:/system/framework/com.huawei.android.launcher.jar:/system/framework/widget_multimedia.jar:/system/framework/widget_info.jar
[Android] dsixda:
Sorry, I'm not much of an expert on that sort of stuff, I don't even know what any-kernel is.

You can rename zImage to boot.img-kernel, and add it to your boot.img. I don't know what you're trying to do though..
[Android] Gjole86:
um, hosing is down? i mean the kitchen server. can u upload the smali/baksmali from .110? it may be easyer to just replace them with the working version :)
[Android] dsixda:
Kitchen server is up. What do you mean replace them with working version?
[Android] dsixda:
I've updated the kitchen to 0.112 to fix Apps2SD issues.
[Android] Gjole86:
i dont know but i cant open this

i ment to replace smali-1.2.6.jar and baksmali-1.2.6.jar from .111 with ones from .110 but just checked google code site they are like 2 month old. :rolleyes:
[Android] dsixda:
That server has been up and down the whole day, but right now it's working for me.

Here's an example of what I notice.. maybe someone knows the solution or maybe it's a bug in baksmali:

java -Xmx512m -jar baksmali.jar -d system/framework -x ./system/framework/am.odex

Error occured while disassembling class Lcom.android.commands.am.Am; - skipping class
java.lang.ClassCastException: org.jf.dexlib.Code.Analysis.AnalyzedInstruction cannot be cast to org.jf.dexlib.Code.OdexedInvokeVirtual
at org.jf.dexlib.Code.Analysis.InlineMethodResolver$InlineMethodResolver_version35.resolveExecuteInline(InlineMethodResolver.java:83)
at org.jf.dexlib.Code.Analysis.DeodexUtil.lookupInlineMethod(DeodexUtil.java:58)
at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyzeExecuteInline(MethodAnalyzer.java:3340)
at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyzeInstruction(MethodAnalyzer.java:1016)
at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyze(MethodAnalyzer.java:208)
at org.jf.baksmali.Adaptors.MethodDefinition.addAnalyzedInstructionMethodItems(MethodDefinition.java:353)
at org.jf.baksmali.Adaptors.MethodDefinition.getMethodItems(MethodDefinition.java:290)
at org.jf.baksmali.Adaptors.MethodDefinition.writeTo(MethodDefinition.java:130)
at org.jf.baksmali.Adaptors.ClassDefinition.writeMethods(ClassDefinition.java:322)
at org.jf.baksmali.Adaptors.ClassDefinition.writeDirectMethods(ClassDefinition.java:291)
at org.jf.baksmali.Adaptors.ClassDefinition.writeTo(ClassDefinition.java:135)
at org.jf.baksmali.baksmali.disassembleDexFile(baksmali.java:191)
at org.jf.baksmali.main.main(main.java:278)
[Android] Gjole86:
in mean while i downloaded .110 kitchen and used smali and baksmali 1.2.5

renamed them to 1.2.6 and successfully deodexed the rom i linked with kitchen .112 :)

ok, few files didnt go but they dont belong to stock android OS ..

oh yeah ...

BIG THX FOR

"Added support for devices that have kernels with 4096-byte offset in boot.img"
[Android] feefeeboomboom:
any-kernel installs just the kernel not changing the ramdisk so you can i.e. boot at stock mhz then overclock, better for multi rom compatibility. the HTC hero cdma ppls use it alot.
[Android] Gibla:
Hi Guys,

Monkey question....Can i use this kitchen for an Acer e130??!
[Android] dsixda:
Did you manage to get the non-stock Android files to work, ie. the Huawei ones? I can give it a shot later. However, you guys who are using the Huawei phones should inform JesusFreke about this 1.2.5/1.2.6 issue.

BTW I noticed that the Desire HD/Z use the 4K offset as well..
[Android] Gjole86:
just deodexed the t-mobile stock rom. only 2 files left that failed to deodex and its some bloatware that i didnt even know it exist, the apps dont show in the app drawer. some kind of T-mobile navigation crap. so yea 1.2.5 is working nice.

btw i encounter other strange thing.

the rom i was using, i extracted the boot.img and repacked it back with no changes. phone went into bootloop didnt even show the Android startup logo.

The Kitchen detected it as 4k boot.img but somewhere on Modaco it was said its with 2k. not sure now its late gonna investigate tomorrow in the morning
[Android] dsixda:
Check the boot.img with a hex editor. If you see some data start at offset 4096 (0x1000) then that should be the kernel. There should be a chunk of empty space before it. In older devices it starts at 2048 (0x800)
[Android] dsixda:
Not sure but you could try. ;)
[Android] dsixda:
Awesome, thanks for the feedback :)
[Android] vin255764:
On HTC EVO Calkulin posted flashable mms tweak-5mb size.

Its com.android.mms.customizationBySIM.xml ,which is in data/data/com.android.mms/shared_prefs/

The actual mms.apk doesnt have that xml inside.Is there any way to bake this into ROM?
[Android] lovethyEVO:
When you create the data folder for your apps just create the directory structure for the mms fix.

So your directory should be /data/app/your apps included in the rom.

And then just add to the data folder /data/com.android.mms/shared_prefs/mmsfix.xml

And the final structure should be /data/data/com.android.mms/shared_prefs/mmsfix.xml.
[Android] vin255764:
I tryed and seems like MMS.apk overwrited that xml (still original 2Mb limit)

Or should I add copy_dir PACKAGE:data DATA:to update-script.

Also is it important where I put that line in update-script?

I guess I can try and find out lol

Im still learning the basics
[Android] lovethyEVO:
If you use the kitchen to add data/app support it will add the line to copy the data folder to the script.

I haven't been using calkulins mms fix because in all honesty I started having problems with people receiving my images if they were bigger than a certain size ("the recipients service provider has a limit on file sizes blah blah blah") so I don't remember how it behaves.

If it does install the first time and then gets overwritten by mms.apk (possible since the first boot essentially installs all the apps and the apps do their own thing when installed) then you would have to install that xml after the first complete boot.
[Android] Gjole86:
nevermind i failed big time .. i actualy flashed 2.2 boot.img for U8150 into my 2.1 u8110 :D

to confirm it, yes its 4k boot.img and the kitchen works with unpack/repacking it.

just as the U8120 user said the same above :cool:
[Android] Hiataby:
Doesn't deodex files in Desire HD rom.

Fix?

***Found fix***
[Android] OMJ:
there's an easier way....open \system\customize\MNS\default.xml

search for MMS....should be the 7th hit....change the following:

<module name="MessageConfig">
<function name="setting">
<set name="single">
<item name="MMS_Auto_Retrieve">true</item>
<item name="MMS_Priority">Normal</item>
<item name="MMS_Msg_Size1">500K</item>
<item name="MMS_Msg_Size2">[B]2M[/B]</item>
<item name="MMS_Msg_Size3">[B]5M[/B]</item>
<item name="MMS_Msg_Size_Choose">[B]5M[/B]</item>
<item name="MMS_Received_Notify">true</item>
<item name="MMS_Play_Received_Notify">true</item>
<item name="MMS_Received_Notify_sound">Default Ringtone</item>
<item name="MMS_Received_Viberation">true</item>
<item name="MMS_Sent_Notify">false</item>
<item name="MMS_Fail_Notify">true</item>
<item name="MMS_Play_Notify">true</item>
<item name="MMS_Notify_Sound">Default Ringtone</item>
<item name="MMS_Viberation">true</item>
</set>
</function>
</module>
[Android] dsixda:
Well, please share the fix, I don't want others to have problems.
[Android] SpaceK33z:
I discovered a quite large bug in your kitchen. If you make a couple of ROMs, sometimes a weird file stays in the working folder. It's a big file and when you make your next ROM, it will be included in it. Therefore, the rom becomes a very large file. My ROM was 253mb. When I deleted the weird file and cooked the rom again, my ROM was 160mb.

With weird file I mean a big file named, for example, kn327gk
[Android] dsixda:
Are you sure it's not the temporary file that gets left behind if you interrupt the zip process?
[Android] SpaceK33z:
That could be, a few times I hadn't enough space on the volume (using mac os x).

Great kitchen btw, it saves me lots of time :). Only feature missing is the updater-script, but I have patience.
[Android] Droidzone:
That's not quite true. The kitchen actually does a very good job of converting amend to edify. It does make a few syntactical errors which can be correct with some knowledge of edify.
[Android] anryl:
Now i'm totaly lost here :eek: :mad: :confused:

Take it easy dunno watchyalsayin :cool:
[Android] dsixda:
What errors in syntax have you seen? I could try to fix those if you provide the update-script.
[Android] Droidzone:
Yup, there's a bug. Mine was named zygwy.. something. I first got the call on that one when users of my rom started asking about how my Sense rom had suddenly shot up overnight from 150 mb to 250 mb..

I inspected the update.zip made by the kitchen and saw that there was this file in the root of the zip. Since it's there, it isnt copied onto the nand of course..

I further had the notion that I may have mistakenly renamed a previous zip..So i just renamed it with a .zip extension, and sure enough, it was a partial zip file with about 80% of the actual update.zip!

It does no harm, but it is definitely there. Unfortunately dont know at what point it got created! :)
[Android] SpaceK33z:
That's not what I mean, I'm talking about adding new features such as Apps2SD etc. when having an updater-script. I thought dsixda said he will be adding updater-script support, but it's much work.
[Android] Droidzone:
Actually you can get it to work, by doing this:

Allow kitchen to convert updater-script to update-script, add whatever you want, at the final stage, convert it back, inspect i for syntax errors and let it pack..At least that's what I used to do...initially at least, until I really got the hang of Edify..Now I just make a template with the kitchen (symlinks are hectic manually!) and extensively modify it myself.

I'm attaching the files you need.

The filenames are quite descriptive..I've also added a MS Office (docx) which comments the various lines of the updater-script which have mistakes in them..
[Android] dsixda:
Do you have a Mac as well? Let me know at what point you guys see this happening.
[Android] Droidzone:
Nope..Win7 Ultimate 64bit...

And I cant seem to trace when it happened..It did only once, and probably on the second or third time that I used the kitchen while adding everything..After that, now my Rom is stable and the only things that I do with the kitchen are kernel changes, so it doesnt crop up..What I can do assert is that it is not during packing, but at a stage prior to it, since the Working folder for that version definitely had it..
[Android] dsixda:
Cool, thanks! So are those two lines (format cache and format sdext) the only two lines that I need to fix?
[Android] Droidzone:
This is the name of the file: ziGqkGy2

and though it has no .zip extension, it definitely is a zip file..It's in a backup of my working folder, in its root folder
[Android] Droidzone:
Nope there's one more, lower down, where an empty space in front of the show_progress function leads to the kitchen converting it with a comma in front.
[Android] dsixda:
Ok, I have Windows 7 64-bit as well and never saw it. I could however do a check for these kinds of files... but not sure how to do it. Maybe I can check for a file size > than 50MB or something like that. Normally the root of the working folder should only have META-INF, system folder, boot.img and maybe some scripts.
[Android] SpaceK33z:
I think the problem is that when something goes wrong (think of closing the terminal or too little space available), it doesn't delete the temporary files. If you forgot to remove them, your ROM size will increase with 40%.

The solution is to check in the beginning if all temporary files are deleted. Maybe add a prefix before the temporary files to easily find them and delete them automatically.
[Android] dsixda:
What if you try to open it with your zip program?
[Android] dsixda:
But the issue is for the script to determine what is a temporary file before it can delete it.
[Android] Droidzone:
And it's in the folder: WORKING_011911_203550

But not in WORKING_012111_173357, that means that it was something I did after making that... I've attached the meta-infs for the two folders, if that might help..

Please do note that these working folders are not in serial order..there might have been others in between..
[Android] dsixda:
LOL I see that now... that was weird. I guess the space at the beginning of the line in the original file confused my script.
[Android] dsixda:
So maybe this happened while converting the update-script to updater-script and/or opposite?
[Android] dsixda:
Can you upload one of these files?

I think what I can do is check the header bytes of the file to determine whether it is a zip file. If it is a zip them I can prompt the user if they want to delete it.
[Android] Droidzone:
Pkzip opens it with an error, finally it fixes and shows a folder with significantly more files/folders than in the actual rom..

Attached are screenshots
[Android] Droidzone:
I'm attaching the header...If you want more bytes, do tell me..

If you need the entire file, I can upload overnight (crappy data connection, plus it's almost midnight here :) )
[Android] dsixda:
Yeah don't worry about uploading it, maybe someone else can do it. I know what you mean about crappy data connection, I was just in Bangladesh for a month and my 2G data connection was faster than internet on the PCs.

Thanks for the header.
[Android] Droidzone:
:) It's very similiar here..Though there are costlier subscription packages available..

If you would like the file, just drop me a pm though..I can put it in my dropbox and it should upload overnight..Anyway I'm leaving it on overnight for uploading my rom..Which of course was developed on your kitchen..So, anything I can do to help.. :)
[Android] dsixda:
If you want to, then go ahead. Thanks a lot.

BTW, I opened some regular zip files of mine, and I noticed that yours and my zip files all start with "50 4B 03 04 0A". So I can always look for that, and then prompt the user if they want to delete it.
[Android] SpaceK33z:
If you give the temporary file the prefix 'tmp_*' you can find & remove them easily. Or isn't that possible?
[Android] dsixda:
But the problem is, I didn't create those temp files .. they were created by the system with a random name. The script doesn't know they were there, or how to determine what is a temp file (unless I make a check - see reply above).
[Android] Droidzone:
No problem..I'll add it and leave you a link tomorrow morning (IST)

That definitely seems to be the zip header:

according to this
[Android] dsixda:
Ok, great. So the idea is to ask the user before deleting a zip-formatted file in the root of the working folder. I don't want the script to automatically delete a ZIP file if the user put it there on purpose.
[Android] anryl:
on 0.112 kitchen just replaced the freshly baked kernel zImage and its BOOTING HOORAY

now i need new sources to test kernel porting ehm.
[Android] Droidzone:
Hmm... should work well..

By the way, in the options in kitchen, "Change the name of ROM", it would be better to have yes by default rather than No, since we choose that option to change the name. Just my suggestion..And it's only a keystoke more to type a y, but still ;)
[Android] Hiataby:
Well, now it does not deodex with Desire HD (HTC STOCK ROM).

Last time I want to deodex it didn't work. Then I rooted the rom and tried again. Then it did deodex.

Now I try it again like described above and it doesn't work :S

So no fix, sorry!!!
[Android] dsixda:
What do you mean by 'doesn't work' --- what error do you see specifically?
[Android] dsixda:
I think I had a reason for that, but I could change it anyway.
[Android] lovethyEVO:
I would suggest having the kitchen change name under the "ro.build.description" designation.

The kitchen currently changes the name under "Software Number" and I know some people prefer to change the name under "Build Number" and to accomplish this they manually edit the build.prop file.

Of course some people don't dive too deep into the rom files beyond what the kitchen shows them.

Just a suggestion.
[Android] dsixda:
Yeah I saw that thread ;)

I think I do change it under Build Number for most devices, but I had issues with Evo Froyo-based ROMs. I noticed i did this to cover the Evo case:

if [ `grep -c ro.product.version build.prop` == 0 ]
then
id_var=ro.build.display.id <------ Build number
else
id_var=ro.product.version <------ Software number
fi
[Android] Hiataby:
Ok I tried some things. It doesn't work when I choose: b = Deodex both folders.

But when I choose a = Deodex /system/app or s = Deodex a single file it works.
[Android] lovethyEVO:
For evos you could try checking the "ro.product.device" value and match it to "supersonic" and then tell the script to use ro.build.description for the name change.

Of course I haven't looked at your scripts in a while but anything to help this kitchen keep growing is worth it.
[Android] dsixda:
No no no, I mean what do you mean "doesn't work" --- What specific error message do you see? Just saying it doesn't work can't help me debug the issue. Just cut and paste the entire error containing the file used and error message.
[Android] dsixda:
I don't want to use a specific device name (e.g. supersonic) because then i'd need to constantly update the kitchen whenever a new device has a problem. Does the rom contain ro.product.version? Because back then the Froyo ROMs for Evo didn't have it so I had to use the ro.product.version.
[Android] lovethyEVO:
On my evo ro.product.version exists and in it's untouched state it is basically the rom version number (3.70.651.1) and this is the value that the kitchen changes in the evo so it appears under "Software Number" in about software.

ro.build.description changes the value under "Build Number" in about software.
[Android] dsixda:
Sorry, I had to change my post from above because I got mixed up. On my Nexus One and other devices I see this:

- ro.build.display.id = Build number (e.g. FRG83G)

- ro.product.version doesn't exist

- ro.build.description = some info about keys (e.g. passion-user 2.2.2 FRG83G 91102 release-keys)

On the Evo:

- ro.build.display.id = ?

- ro.product.version = Software number

- ro.build.description = Build number

I don't know if there is a general rule to use, because both of them use ro.build.description but in different ways... and I'm assuming Evo also has ro.build.display.id ???
[Android] lovethyEVO:
From my current build.prop

ro.build.id=FRF91
ro.build.display.id=FRF91
ro.build.version.incremental=294884
ro.build.version.sdk=8
ro.build.version.codename=REL
ro.build.version.release=2.2
ro.build.date=三 12月 8 19:09:00 CST 2010
ro.build.date.utc=1291806540
ro.build.type=user
ro.build.user=root
ro.build.host=AA109
ro.build.tags=release-keys
ro.product.model=PC36100
ro.product.brand=sprint
ro.product.name=htc_supersonic
ro.product.device=supersonic
ro.product.board=supersonic
ro.product.cpu.abi=armeabi-v7a
ro.product.cpu.abi2=armeabi
ro.product.manufacturer=HTC
ro.product.locale.language=hdpi
ro.product.locale.region=
ro.wifi.channels=
ro.board.platform=qsd8k
# ro.build.product is obsolete; use ro.product.device
ro.build.product=supersonic
# Do not try to parse ro.build.description or .fingerprint
ro.build.description=Fusion3v0 by Josh B
ro.build.changelist=294884
ro.product.ua=
ro.build.fingerprint=sprint/htc_supersonic/supersonic/supersonic:2.2/FRF91/294884:user/release-keys
ro.build.project=161482
ro.product.version=3.70.651.1
keyguard.no_require_sim=1
# end build properties

Hope that helps.
[Android] dsixda:
Thanks.

I think I'll just spare the headache and leave it be. It's fine right now. I think someone with an Evo can figure it out if they're obsessive-compulsive enough ;)
[Android] lovethyEVO:
I dont blame you. Like I said some people wont dive into the rom files if it's not edited by the kitchen. Me personally it's easier to edit the prop file.
[Android] Droidzone:
The aberrant file, as promised. I've zipped it up..
[Android] dsixda:
Thanks, I had made the fix earlier, and it now works with your file as well (I removed the .zip extension).
[Android] dsixda:
Could you post a link to the ROM?

Looks like it needs a class file that referse to:

Lcom/orange/authentication/simcard/AkaAuthenticationResult

(or com.orange.authentication.simcard.AkaAuthenticationResult)

Google search:

http://www.google.ca/search?q=com.o...s=org.mozilla:en-US:official&client=firefox-a

Do you have any of the following under /system/framework:

ScaladoUtil.jar?

com.orange.authentication.simcard.jar?

If yes, then one of those files should help deodex that file you are having trouble with.
[Android] Hiataby:
Files that don't want to deodex are:

/system/framework/android.policy.odex

/system/framework/services.odex

Yes i have:

com.scalado.util.ScaladoUtil.jar

and

com.orange.authentication.simcard.jar

under /system/framework/

but isn't it strange that when I use "b = Deodex both folders" there is no deodex, only errors like above. And when I use "a = Deodex /system/app/" every app is deodex.
[Android] dsixda:
In option b, I think it stops if it can't deodex all the framework files. You normally should not deodex the apps if the framework files are not fully deodexed. Check the error message at the end, everything is explained.

Try to deodex those two files by themselves using one of those above JAR files (it's likely the com.orange.simcard one).. You will need to select the option to deodex a single file.

Oh, and please send me a link to the ROM in question. Thank you
[Android] Hiataby:
ROM: http://xdafil.es/index.php?path=DesireHD/RUU/ and then RUU_Ace_HTC_WWE_1.72.405.3_R_Radio_12.28e.60.140f_26.04.02.17_M2_release_161342_signed

I only added root and then tried the deodex option.

I tried the singe file option but doesn't work. this is what I do:

All ODEX files:

(1) ./system/framework/android.policy.odex
(2) ./system/framework/services.odex

Enter file number (0 = cancel): 2

Enter any JAR file dependencies separated by colon (Enter=none):
./system/framework/services.odex > com.orange.authentication.simcard.jar

Disassembling ./system/framework/services.odex ...
java -Xmx512m -jar baksmali.jar -d system/framework -x ./system/framework/servic
es.odex

Error occured while loading boot class path files. Aborting.
org.jf.dexlib.Code.Analysis.ClassPath$ClassNotFoundException: Could not find int
erface Lcom/orange/authentication/simcard/AkaAuthenticationResult;
at org.jf.dexlib.Code.Analysis.ClassPath$ClassDef.loadAllImplementedInte
rfaces(ClassPath.java:819)
at org.jf.dexlib.Code.Analysis.ClassPath$ClassDef.<init>(ClassPath.java:
675)
at org.jf.dexlib.Code.Analysis.ClassPath.loadClassDef(ClassPath.java:280
)
at org.jf.dexlib.Code.Analysis.ClassPath.initClassPath(ClassPath.java:16
3)
at org.jf.dexlib.Code.Analysis.ClassPath.InitializeClassPathFromOdex(Cla
ssPath.java:110)
at org.jf.baksmali.baksmali.disassembleDexFile(baksmali.java:98)
at org.jf.baksmali.main.main(main.java:278)
Error while loading class Lcom/android/internal/telephony/gsm/HtcSimCardAuthenti
cationManager$AkaAuthenticationResultWrapper; from file system\framework\framewo
rk.zip
Error while loading ClassPath class Lcom/android/internal/telephony/gsm/HtcSimCa
rdAuthenticationManager$AkaAuthenticationResultWrapper;

WARNING: Cannot deodex ./system/framework/services.odex

Press Enter to continue
[Android] dsixda:
Ok I'll try to give it a shot tonight if I'm free. Thanks

You may also want to try downloading the previous version of smali/baksmali (1.2.5) from Google. Someone said a ROM deodexed fine in the older version but not the new one.

P.S. Did you try flashing the HTC Ace ROM built with the kitchen, without any deodexing? Did it boot ok?
[Android] CTR01:
Cool

Awesome post and thanks for sharing this! Will have to check this out sometime soon!