_____KaiserChef_____
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
----->>>WIKI PAGE HERE<<<-----
read wiki page
read wiki page
Thanks mate
I am not as advanced as you and other chefs here but I have cooked couple of roms for myself....Its greate fun.
And I have to thank Alex for his kitchen.
I will definatly try your kitchen for my next rom cooking.
Cheers
matt2842 said:
Thanks mate
I am not as advanced as you and other chefs here but I have cooked couple of roms for myself....Its greate fun.
And I have to thank Alex for his kitchen.
I will definatly try your kitchen for my next rom cooking.
Cheers
Click to expand...
Click to collapse
no problem man
good luck cooking
mbarvian said:
_____Changelog_____
- none so far
_____Bugs_____
- none known so far
_____Downloads_____
- Mirror 01 - 4Shared
Click to expand...
Click to collapse
There is no "D" in the Main Menu (maybe the script should say "E")
Thanks dude,
I just started cooking roms with alex's kit and it simply fun and amazing.
I will look into using your kit for cooking, anyway big thanks to Alex,mbarvian, and all of the XDA developers for making this possible!One question, does anyone know of a good clean rom with the latest build?
jose244 said:
Thanks dude,
I just started cooking roms with alex's kit and it simply fun and amazing.
I will look into using your kit for cooking, anyway big thanks to Alex,mbarvian, and all of the XDA developers for making this possible!One question, does anyone know of a good clean rom with the latest build?
Click to expand...
Click to collapse
i plan on uplading one tonight
Great looking, I'll try it out later. I was looking through the TOOLS folder and noticed the older PagePool app was still used... You might want to update the kitchen to this one so everything is newer
ryncppr said:
Great looking, I'll try it out later. I was looking through the TOOLS folder and noticed the older PagePool app was still used... You might want to update the kitchen to this one so everything is newer
Click to expand...
Click to collapse
oh thanks man, i was looking for that
---------------------------
Visual Studio Just-In-Time Debugger
---------------------------
An unhandled win32 exception occurred in viewimgfs.exe [6460]. Just-In-Time debugging this exception failed with the following error: No installed debugger has Just-In-Time debugging enabled. In Visual Studio, Just-In-Time debugging can be enabled from Tools/Options/Debugging/Just-In-Time.
Check the documentation index for 'Just-in-time debugging, errors' for more information.
---------------------------
OK
---------------------------
==============================
80304970 - 80305c60 L000012f0 filedata 3174b293-abb8-d934-b13c-77f0d46081c2.dsm
80305c60 - 80305c60 L00000000 rom_00 end
The process cannot access the file because it is being used by another process.
ROM Dumped Successful!
Press any key to continue . . .
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
Path not found - C:\Temp
The system cannot find the file specified.
The system cannot find the file specified.
Ignore any errors while deleting files!
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
Path not found - C:\Temp
The system cannot find the file specified.
The system cannot find the file specified.
ROM Base set correctly! Now start cooking!
Press any key to continue . . .
KaiserChef - Cook
-----------------
ERROR: Missing OEM folder in your Kitchen. Looks like you need
to set your BaseROM first! To do this, return to the MainMenu,
press D, then press B.
Press any key to continue . . .
First option E - ok
Second option E - Failled:
The system cannot find the path specified.
The system cannot find the file specified.
The system cannot find the path specified.
.NB Files extracted successfully!
Press any key to continue . . .
bdi said:
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
Path not found - C:\Temp
The system cannot find the file specified.
The system cannot find the file specified.
Ignore any errors while deleting files!
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
Path not found - C:\Temp
The system cannot find the file specified.
The system cannot find the file specified.
ROM Base set correctly! Now start cooking!
Press any key to continue . . .
Click to expand...
Click to collapse
ignore errors while deleting files!
bdi said:
First option E - ok
Second option E - Failled:
The system cannot find the path specified.
The system cannot find the file specified.
The system cannot find the path specified.
.NB Files extracted successfully!
Press any key to continue . . .
Click to expand...
Click to collapse
do you have an nbh file named RUU_signed in your BaseROM?
bdi said:
First option E - ok
Second option E - Failled:
The system cannot find the path specified.
The system cannot find the file specified.
The system cannot find the path specified.
.NB Files extracted successfully!
Press any key to continue . . .
Click to expand...
Click to collapse
should be fixed now
bdi said:
---------------------------
Visual Studio Just-In-Time Debugger
---------------------------
An unhandled win32 exception occurred in viewimgfs.exe [6460]. Just-In-Time debugging this exception failed with the following error: No installed debugger has Just-In-Time debugging enabled. In Visual Studio, Just-In-Time debugging can be enabled from Tools/Options/Debugging/Just-In-Time.
Check the documentation index for 'Just-in-time debugging, errors' for more information.
---------------------------
OK
---------------------------
==============================
80304970 - 80305c60 L000012f0 filedata 3174b293-abb8-d934-b13c-77f0d46081c2.dsm
80305c60 - 80305c60 L00000000 rom_00 end
The process cannot access the file because it is being used by another process.
ROM Dumped Successful!
Press any key to continue . . .
Click to expand...
Click to collapse
I think the problem is that you don't have .net framework installed, try installing the latest version then reboot, then try again
mbarvian said:
should be fixed now
I think the problem is that you don't have .net framework installed, try installing the latest version then reboot, then try again
Click to expand...
Click to collapse
Ervius application works without any issue ... so I guess I habe .net framework installed ... could it be e version issue?
bdi said:
Ervius application works without any issue ... so I guess I habe .net framework installed ... could it be e version issue?
Click to expand...
Click to collapse
actually, i think it does not have to do with .net, ill definitely look into it
Giving it a try
Hey MBarvian
Im new to the rom cooking and oem making business i ve tried the alex v.5 kitchen with out success ........i seem to be the only one who has not got it yet but my main problem was that when i set up everything and it ran good untill the evrius got to the \sys\shell part and it gave me an error saying file not yet taskmgr was skipped ......im no expert but in the video i saw of this way it did nt do this ...so i though maybe because im running vista ......no .....and even went through the whole thing of enabling administrator on my vista ......ran it again and same result so im gonna give your's a try and see if i can reach up the tree of wisdom and pick off a lil fruit from you guys ......i really appreciate all you guys hard work in trying to help out newbies like myself thanks ......
Related
Here's how to change the carrier name in the Triumph. I ran across this while looking for some other strings.
You will need to decompile framework-res.apk, make your changes, and then recompile it. If you don't know how to decompile the file, I recommend that you read this great thread on XDA written by KBanause; he gives you links to the tools that you will need as well as walking you through making theming edits:
http://forum.xda-developers.com/showpost.php?p=9066440&postcount=1
The steps below will assume that you are using apkmanager:
1. Decompile framework-res.apk using apkmanager.
1a. To do that, place the framework-res.apk file into the place-apk-here-for-modding folder.
1b. Start apkmanager. In Windows, double-click on the script.bat file in the main apkmanager folder. I'm not sure what you would type to start apkmanager in another OS since I haven't used this in any other OS at this time.
1c. In APKMANAGER, hit 22 and select the number for your framework-res.apk file -- if it is the only file in the place-apk-here-for-modding folder, it should be 1.
1d. Back on the main menu, select 9 to decompile framework-res.apk.
2. Once, the decompile is complete, browse to the projects folder in apkmanager and you should now have a new folder inside named framework-res.apk. Look inside the framework-res.apk folder and you should now be able to find the subfolder \res\values . This folder ONLY shows up if you decompile framework-res.apk.
3. Find strings.xml in that folder and open it in a text editor such as notepad++ or such. I don't recommend using the built-in Notepad in windows.
4. Find the line:
<string name="roamingText1">Virgin Mobile</string>
Change the "Virgin Mobile" to whatever you want. For example, changing this to:
<string name="roamingText1">Save the tatas</string>
5. After making your changes, recompile framework-res.apk.
5a. In apkmanager, use option 11 to recompile.
5b. When asked if this is a system file, select Yes.
5c. When asked if you want to copy over additional files, click Yes and it will extract the files into a folder named Keep in apkmanager and then pause.
5d. Go into the Keep folder and delete any files that you changed, in this case you only need to delete the resources.arsc since the only thing you changed was the strings.xml file.
5d. Back on the apkmanager screen, hit the space bar or Enter to continue.
5e. A file named unsignedframework-res.apk will be created in the place-apk-here-for-modding folder. You'll need to rename it back to framework-res.apk.
6. Either adb push the new framework-res.apk back into your phone or put it in a flashable Zip file and flash it in recovery.
6a. For anyone wanting to put their new file into a flashable zip, I've attached an empty Zip file in this thread. Add your new framework-res.apk file into the \system\framework folder. Make sure that you have your Zip utility set to just use the Store or No Compression method. You do not need to change anything in the META-INF folder for just this simple flash. Note: the updater script in the zip file mounts the file system as ext3 so I don't know how well that will work if your file system is ext4.
This results in the changes on the lockscreen and the extended status screen:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
So would this allow me to change your ROM's carrier text? Because I haven't found a version of apktool (or a deodexed ROM) that has allowed me to decompile and recompile a framework-res.apk yet.
primetechv2 said:
So would this allow me to change your ROM's carrier text? Because I haven't found a version of apktool (or a deodexed ROM) that has allowed me to decompile and recompile a framework-res.apk yet.
Click to expand...
Click to collapse
It depends on what version of apktool/apkmanager that you're using. Without knowing that, I can't say if you'll be successful or not.
I'm doing all of this on Windows.
Edit: Apparently APK Manager has a version 5.0 released. Linking it here instead of the original 4.9 that was linked before (thanks to one_love on sdx for pointing that out to me):
http://forum.xda-developers.com/showpost.php?p=16831998&postcount=1
However, I was always getting an error with the version of apktool 1.4.1 built into that APK Manager. I upgraded the APKTOOL to an unreleased version 1.4.2.26970b.jar which you can download from brut.all on his google code site. He provides it in one of the issues that somebody reported here:
http://code.google.com/p/android-ap... Type Status Priority Milestone Owner Summary
Just download the apktool1.4.2.269870b.jar from the link brut.all provides and then rename it to apktool.jar and then replace the version in apkmanager in the OTHER folder with the updated one.
I also downloaded the latest version of appt.exe and apktool.bat that is on brut.all's download area (they are contained in the apk install downloads (download the appropriate one for your os) and replaced the respective files in the "other" folder of apk manager:
http://code.google.com/p/android-apktool/downloads/list
That took care of all of my errors decompiling/recompiling framework-res.apk (except of course for user errors).
If that doesn't solve your issue, post your log file of errrors here or on the apk manager thread and perhaps somebody can help you/give you suggestions.
o.o
I didn't know all that was there... it should keep me busy for a little while, at least. Many many thanks. It sounds like 1.4.2 should be the build that fixes all my problems.
how or where do you get the framework?
You can either get it from a root file manager (like File Expert, Astro, Root Explorer), by navigating to /system/framework and getting framework-res.apk,
or by executing the following command from your command line (provided you have Android SDK and its platform tools installed):
Code:
adb pull /system/framework/framework-res.apk
Either of these will give you a working framework resource file to work with. (Umm... if it's not framework-res.apk, do this with the different filename.)
From there, use APKTool to decompile the whole file via the command line again...
Code:
apktool d framework-res.apk (or whatever the file be).
Once you've edited the contents to your liking, run the following to build the folder back into a workable framework-res...
Code:
apktool b framework-res framework-res.apk
If you changed the source (you did), also make sure you sign the new apk file... in this case find testsign.bat (and testsign.jar etc) and run the following:
Code:
testsign framework-res.apk
From there, getting framework-res.apk back can be a bit of a hassle. I have no evidence it can be done just by returning the file to the /system directory, and a few people have recommended throwing it into an update.zip package. If you find this to be an effective method, I'd recommend stealing b_randon14's stock Triumph ROM, opening it, replacing the framework-res.apk with your own, and then rezipping it (no signature is necessary here).
Need more info? lol. If you're confused feel free to PM me or one of the real gurus here.
Thank you kind sir, i successfully changed the carrier name.
boomersooner25 said:
Thank you kind sir, i successfully changed the carrier name.
Click to expand...
Click to collapse
Congrats! I probably shoulda just asked if you wanted me to do it for ya instead of writing a mini-tutorial. But it was fun.
You see to know a lot primetech..u should make your own rom
Thank you for this
Hello I am francais and I do not manage to make this tuto could use me?
Thank you
http://forum.xda-developers.com/attachment.php?attachmentid=850833&stc=1&d=1326227385
Carrier NICOLAS
UP ?
Please help
niconoel said:
Hello I am francais and I do not manage to make this tuto could use me?
Thank you
http://forum.xda-developers.com/attachment.php?attachmentid=850833&stc=1&d=1326227385
Carrier NICOLAS
Click to expand...
Click to collapse
Is this for the Motorola Triumph? or another phone?
Is for htc sebsation
Thank you
I don't think these instructions will work for the HTC Sensation. I would recommend that you go to the HTC Sensation forum and check with somebody there.
These instructions are specific to the Motorola Triumph.
Thank you
But I have to go to see(visit) where then thank you
Thanks
it was really helpful, i did it on my Mac BP.
I couldn't use ADB to push framework-res.apk back to system/framework,
Terminal never listed my phone on the "adb devices" (I spent the whole afternoon trying to do it this way). I used the zip file instead and was a lot easier.
NOw i have a custom carrier name, THANKS A LOT, you are a life saver
Help
I get a an error everytime i try to abd push my framework-res into my phone..
And when i tried to flash it with the flashable zip, i got md5 mismatch
BiHFSA said:
I get a an error everytime i try to abd push my framework-res into my phone..
And when i tried to flash it with the flashable zip, i got md5 mismatch
Click to expand...
Click to collapse
When doing the adb push, did you first do "adb remount" without quotes of course? If you don't then, your os will still be read only and you'll get an error. So you need to do:
adb remount
adb push framework-res.apk /system/app/
Assuming that you're in the same directory as your modified framework-res.apk file.
As for why you're getting an md5 mismatch, I'm not sure what's causing that. I've not heard of anyone else having that issue. You're aware that this guide is meant for the Motorola Triumph, correct and it is only for FROYO roms? So I assume that you have an MT?
Hey Guys
Does it work on the Samsung Galaxy S2 on Android 4.0.3 too? Does anyone know this ?
Greetings
Deadboy
Hello,
I searched a lot how to enable the rotation of the lockscreen without third-party application, and I finally found.
I share this change with you.
This operation works with all phones that work with GG / ICS (I have not tested on Cupcake / Donut. / Froyo / Honeycomb).
This tutorial seems very long, but this is explained in great detail for better understanding and to be accessible to all.
First and foremost: I am not responsible if you break, or if others problems occur on your phone. You and only you are responsible. Thank you
You must be root to apply the changes. Here's what happens on my Nexus S:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
For this we will use apktool which will allow us to uncompil the framework-res.apk of your ROM and adb to replace the original framework.
Note: I see throughout this tutorial as well as adb and java (to run apktool) are already installed on your computer and the drivers too of your phone to work with adb.
Due to a bug in the framework of apktool ICS we are obliged to decompile the framework-res.apk with apktool 4.2 and recompile with apktool 4.3.
Download: apktool 4.2
Download: apktool 4.3
Note: Download in the same folder as adb, it's will simplify the task later.
In our case, we will consider that our working folder is: C:\android_debug
I recommend doing the same to be simpler.
apktool and adb only work with the command prompt, so it must be run.
To do this:
Windows XP: Start -> Run -> cmd.exe
Windows Vista / Seven: -> Start -> in the search bar type cmd.exe and press Enter
This window is displayed (a few lines of text can change, as the first of which is that your version of Windows):
We see that the command prompt is placed directly into your default user folder (here C:\Users\Thomas), so you have to stand in our working folder:
cd c:\android_debug
We will have to decompile framework-res.apk, if you have the rom zip place it in the same directory, otherwise it must be extracted from your phone.
Connect your phone to your computer and then, still in the command prompt (cmd) write:
adb remount
adb pull /system/framework/framework-res.apk
Note: if say toyou it can not find adb ... it's either you have him not placed in C:\android_debug where or that you should write its extension: adb.exe
The command will be this: adb.exe pull /system/framework/framework-res.apk
Will be the same for the rest of the tutorial, write adb.exe rather than adb.
The framework-res.apk is now in your working folder.
We will "install" the framework-res.apk to let apktool use it then:
java -jar apktool43.jar if framework-res.apk
There will now be extracted with apktool 4.2
java -jar apktool42.jar d framework-res.apk
If all goes well you usually this:
We must update the necessary files to activate rotation on the lockscreen.
Go to the following folder: C:\android_debug\framework-res\res\values and open this file with your favorite files editor: bools.xml
Search config_enableLockScreenRotation value and change the false to true:
Save and close the file.
All changes are made, we will be able to recompile the framework
So back to the command prompt (yes the window of the 1970s )
Type this to run compiling the new framework-res.apk:
java -jar apktool43.jar b framework-res framework-res-new.zip
If all goes well the last message from the command prompt is this:
If you get errors like these:
Nothing serious! apktool just tells you it can not find default translations of some words, but he found in French / Or else.
Note: If you have other errors and framework-res-new.zip is not created is that you made a editing error or that you have the wrong version of apktool.
Now, everything is well and the framework-res-new.zip is created in your working directory (which I recall is C:\android_debug)
The purpose of the step is to replace the file resources.asrc in the original framework-res.apk by the new one placed in framework-res-new.zip
You should open it with your management software zip archives (WinRar here) and then extract the file resources.arsc:
Once the extracted file you can close the archive.
You must rename the file framework-res.apk in framework-res.apk.zip:
When this file is renamed you must open it with your management software archive and then delete the file ressources.arsc:
Leave open the archive and return to your working folder. You must drag the file resources.arsc previously extracted from the archive:
Commit the changes in your management software archive. Rename the file framework-res.apk.zip in framework-res.apk
So we are almost done, this last step is to replace the framework-res.apk in your phone. We will use adb, so back to the command prompt in order to type this:
adb remount
adb push framework-res.apk /system/framework/framework-res.apk
adb shell reboot
Explanations:
adb remount: allows you to have root privileges on the phone
adb push framework-res.apk /system/framework/framework-res.apk: sends the new framework-res.apk on the phone and replaces the existing one
adb shell reboot: reboot the phone
I hope this tutorial is clear enough and that helped you
For any spelling mistakes thank you for let me know by PM (I'm a french teenager).
[font=Arial, Verdana, sans-serif]If you like my work, pay me a coffee [/font]
GalaxyUser
Pretty awesome work dude.
thnx.
Thanks chilschils41
Getting error at compile
Hi,
i was following your guide for the ICSSGS 4.2 ROM. when compiling i got a load of errors like:
Exeption in thread "main" brut.Androlib.AndrolibException: brut.common.BrutExeption.........
Have you had any experience with this kind of error and do you know how to fix it?
thanks!
Hi,
Have you uncompiled the framework-res.apk with apktool42 ? Then re-compiled with apktool43? Your rom is deodex?
maybe he recompile "apktool d framework-res.apk",instead of framework-res..
I have not got the line "enable lock screen rotation"
I have" bool name="lockscreen_isPortrait">true</bool>"
and changed it to false
EDIT: It didnt' work
jaggyjags said:
I have not got the line "enable lock screen rotation"
I have" bool name="lockscreen_isPortrait">true</bool>"
and changed it to false
EDIT: It didnt' work
Click to expand...
Click to collapse
Try to add the line "config_enableLockScreenRotation"
Nice tutorial. I wanna see if this tut works on miui
Sent from my Droid using Tapatalk 2 Beta-4
GalaxyUser said:
Try to add the line "config_enableLockScreenRotation"
Click to expand...
Click to collapse
Added the line and no changes.
Running an HTC Explorer gingerbread 2.3.5
Thanks for your replies, I will try again tonight and let you know if it works. i did in fact recompile to the framework-res.apk . maybe thats the problem.
EDIT: thanks for the tips guys, the problem was the .apk extension when recompiling!
I am very thankful for this. I've wanted this for a long time since my phone is docked horizontal all the time. I even tried reinstalling widget locker to do this, but just never like any of the non stock lock screens as much.
Tip: when doing build to new file named framework-res-new.zip like in instructions, instead build to same file name framework-res.zip
Also need to have aapt.exe in the folder as apktool.
Otherwise I would always get errors otherwise using apktool.
Hello,
It doesn't work on my sgs2 ICS 4.0.3 XWLPG deodex with the Jkay mod.
Edit : I have also tried to modify the line "lockscreen_isPortrait" = true
Still not work
Works very nice with Defy+ and Quarx JB-Rom!
But I have an additional question: Could the notifications while lockscreen be disabled this way too?
great tut
can you tell any way to enable hold back to kill forground app option
Set the checkbox "enabled"
Btw, nice signature
defim said:
Set the checkbox "enabled"
Btw, nice signature
Click to expand...
Click to collapse
if had that option why would I have asked
---------- Post added at 06:59 PM ---------- Previous post was at 06:58 PM ----------
defim said:
Set the checkbox "enabled"
Btw, nice signature
Click to expand...
Click to collapse
if had that option why would I have asked
If you don't name you rom i think you have the same as me.
stock rom
Maybe you shoudl add another lines to you signatire like "asking right questions". Now still nobody knows you manufacturer, android version and so on. Also my crystal glass is cloudy
Here's a basic guide on how to port, since some people were asking:
Prerequisites:
Windows 8 (non-RT) development machine
Visual Studio 2012 (Don't know if express will work, but evaluation editions exist here: http://www.microsoft.com/visualstudio/eng/downloads)
dll-to-lib tool (http://forum.xda-developers.com/showthread.php?p=36597774)
Part 1: Getting necessary libs:
(1) On your Windows RT device, copy the .dll files in C:\Windows\System32 to some directory on your development machine (We'll call it C:\rtdev\dlls).
(2) Create a directory on your development machine for the libs (we'll call it C:\rtdev\libs)
(3) Extract the dll-to-lib to your lib directory
(4) Open powershell (run powershell.exe) and navigate to the libs directory
(5) run the lib script against the dlls ("./dll-to-lib.ps1 C:\rtdev\dlls).
(6) If you've never run a powershell script before, you might get a signing error. You can type "Set-ExecutionPolicy Unrestricted" to run the script. Please be aware of the security implications if you choose to do this.
(7) You now have a bunch of libs that tell the linker what functions are available in the DLLs on the Windows RT device. Copy the libs that you need to "C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\lib\arm". DO NOT OVERWRITE ANY EXISITNG LIBS (repeat: DO NOT OVERWRITE ANY EXISITNG LIBS OR YOU MAY HAVE TO REPAIR/REINSTALL VS) You'll probably have to change the security permissions if you want to copy to this directory, or copy as an administrator.
Part 2: Fixing the compiler.
The compiler won't let you build desktop apps due to a configuration setting. Fortunately, some people at stack overflow figured this out:
http://stackoverflow.com/questions/11151474/can-arm-desktop-programs-be-built-using-visual-studio-2012
Basically, edit:
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V110\Platforms\ARM\Microsoft.Cpp.ARM.Common.props
to include:
<WindowsSDKDesktopARMSupport>true</WindowsSDKDesktopARMSupport>
before </PropertyGroup>
Part 3: Building a Win32 Hello World app.
Now that we have the libs out of the way, lets build a basic hello world app.
(1) Start Visual Studio 2012.
(2) Create a new project, select Visual C++ (might be under other languages) and pick Win32 Project.
(3) In the wizard, select "Console Application", and press "Finish".
(4) Replace the program body with some text that prints hello world:
#include "stdafx.h"
#include <stdio.h>
int _tmain(int argc, _TCHAR* argv[])
{
printf("Hello World!");
return 0;
}
(5) Add the ARM configuration settings in configuration manager. Goto Build>Configuration Manager, and under "Active Solution Platform" click on Win32 and click New. Select "ARM" under "Type or select the new platform", and press "OK".
(6) Select the "Release" configuration and build the solution (F6). With some luck, some win32 ARM binaries should appear in the ARM subdirectory of your project.
Part 4: Porting Apps
Now that your compiler works, you can port apps over. Most apps that have a VC++ project should port fine just by adding the ARM configuration.
Some apps will have manually set \MACHINE:x86, in which case you will have to change that in the linker options. Also, ARM doesn't support no dynamic rebase, so if you get that error, turn of \DYNAMICBASE:NO in the linker options.
A lot of cross-platform apps will use 'nmake' or the like. For the most part, these apps can be cross compiled using the VS 2012 ARM Cross Tools - you can find that in your start menu- In Windows 8 just type "ARM" and it should show up.
Also some interesting issues might experience:
You might encounter missing symbols from __imp_XXXX or the like from the linker. If it looks like a Win32 function, you just need to explicitly add the .lib (in project properties under Linker->Input->Additional Dependencies, type the name of the lib, which you need to also copy to the VC\lib\arm directory as above. Some common libs include "gdi32.lib" "shell32.lib" and "ole32.lib". You can usually find the .lib under the msdn references: for example this entry for GetUserName http://msdn.microsoft.com/en-us/library/windows/desktop/ms724432(v=vs.85).aspx tells us we can find GetUserName in Advapi32.lib. Also the A and W suffixes just represent the ANSI and unicode version of these functions.
When compiling big libraries like Qt, you might run into some problem about BLX fixups, since relative jumps on arm are limited (23 bits?) I guess they didn't create fixup islands in the MSVC compiler, but I found if you set \INCREMENTAL:NO, that should fix the problem most of the time. Otherwise you might have to add an \ORDER file and manually order things. See stack overflow topic for more details: http://stackoverflow.com/questions/11478055/lnk2013-error-fixup-overflow
Another serious pitfall.. no in-line assembly support in the MS ARM compiler. So you'll have to write in your assembly in a .S file and link to it.
...hopefully this helps someone - happy coding!
no2chem said:
A lot of cross-platform apps will use 'nmake' or the like. For the most part, these apps can be cross compiled using the VS 2012 ARM Cross Tools - you can find that in your start menu- In Windows 8 just type "ARM" and it should show up.
Click to expand...
Click to collapse
I have found with some nmake projects you need to add
Code:
/D _ARM_WINAPI_PARTITION_DESKTOP_SDK_AVAILABLE
to your CFLAGS otherwise cl complains about not being able to build desktop arm executables even with the change made to visual studio
& : The term 'dumpbin.exe' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was
included, verify that the path is correct and try again.
At C:\rtdev\libs\dll-to-lib.ps1:62 char:25
+ $unprocesseddef = &$dumpbin /exports $dllfullpath
+ ~~~~~~~~
+ CategoryInfo : ObjectNotFound: (dumpbin.exe:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
Exception calling "Matches" with "1" argument(s): "Value cannot be null.
Parameter name: input"
At C:\rtdev\libs\dll-to-lib.ps1:65 char:5
+ $matches = [System.Text.RegularExpressions.MatchCollection] $regex.Matches($ ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: ) [], MethodInvocationException
+ FullyQualifiedErrorId : ArgumentNullException
Click to expand...
Click to collapse
Thank you for the tutorial, i currently facing issues on step 5, it seems the script can't access the dumpbin.exe, any suggestion ?
rheza02 said:
Thank you for the tutorial, i currently facing issues on step 5, it seems the script can't access the dumpbin.exe, any suggestion ?
Click to expand...
Click to collapse
You should be running the script on your development machine with visual studio installed
lilstevie said:
You should be running the script on your development machine with visual studio installed
Click to expand...
Click to collapse
i'm running it in my development machine with visual studio 2012 installed, Any idea ?
rheza02 said:
i'm running it in my development machine with visual studio 2012 installed, Any idea ?[/QUOTE
Do you have VS2012 express? Possibly the script will not work if you don't have vs2012 express. Also you need to have $VS110COMNTOOLS set, but VS2012 install should set that for you.
Click to expand...
Click to collapse
To be more clear, you may want to try running the tool from the Visual Studio command line, not just bog-standard CMD (unless you want to set a bunch of environment variable sand such by hand). You should be able to invoke the script by typing powershell <scriptname>
cmd.exe : The system cannot find the path specified.
Click to expand...
Click to collapse
This is the first error when i'm trying to run the script.
rheza02 said:
This is the first error when i'm trying to run the script.
Click to expand...
Click to collapse
looks like you don't have powershell installed. are you running an older version of windows? You can download it here http://www.microsoft.com/en-us/download/details.aspx?id=34595
I'm running windows 8, i can't see any value inside path in my environment variable, do you think it gonna be problem ?
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
rheza02 said:
I'm running windows 8, i can't see any value inside path in my environment variable, do you think it gonna be problem ?
Click to expand...
Click to collapse
PATH is under system variables not user variables, have you tried opening powershell from the start screen, and executing the script from within powershell directly?
lilstevie said:
PATH is under system variables not user variables, have you tried opening powershell from the start screen, and executing the script from within powershell directly?
Click to expand...
Click to collapse
same error.
GoodDayToDie said:
To be more clear, you may want to try running the tool from the Visual Studio command line, not just bog-standard CMD (unless you want to set a bunch of environment variable sand such by hand). You should be able to invoke the script by typing powershell <scriptname>
Click to expand...
Click to collapse
it's the same thing, i only have a lot of 1kb files with different name in my libs folder. any suggestion guys ?
Thanks
----------------------------
nvm, I thinks it's working now.
no2chem said:
(6) Select the "Release" configuration and build the solution (F6). With some luck, some win32 ARM binaries should appear in the ARM subdirectory of your project.
Click to expand...
Click to collapse
I keep getting these 3 errors. What's happening?
Thanks...
Edit - the ARM subfolder of the project is empty, which I'm guessing it shouldn't be. How do we fix that?
How do i compile my visual studio project for arm ?, there is no arm option in my build configuration.
Read the OP. You have to select "New" from the "Active solution platform" dropdown and ARM should appear...
Sent from my SCH-I535 using xda app-developers app
jtg007 said:
I keep getting these 3 errors. What's happening?
Thanks...
Edit - the ARM subfolder of the project is empty, which I'm guessing it shouldn't be. How do we fix that?
Click to expand...
Click to collapse
Hm, did you overwrite any of the libs in your VS folder? That might be a problem.. hopefully you have a backup...
jtg007 said:
Read the OP. You have to select "New" from the "Active solution platform" dropdown and ARM should appear...
Sent from my SCH-I535 using xda app-developers app
Click to expand...
Click to collapse
As i said earlier, there is no Arm option under Active Solution Platform > new. any idea ?
no2chem said:
Hm, did you overwrite any of the libs in your VS folder? That might be a problem.. hopefully you have a backup...
Click to expand...
Click to collapse
Yes, I did. Several files had the same name and I replaced them all...
Argh.
Sent from my SCH-I535 using xda app-developers app
jtg007 said:
Yes, I did. Several files had the same name and I replaced them all...
Argh.
Sent from my SCH-I535 using xda app-developers app
Click to expand...
Click to collapse
Yikes. I added some instructions warning people not to overwrite.
GUIDE
This is a guide to help you de-odex your Jellybean odexed firmware.
As X-ultimate is not working on jellybean firmwares and @Agadoo spends a lot of time deodexing every firmware, I thought this guide can help a lot of people including @Agadoo.
THINGS TO REMEMBER :-
1. I AM “ NOT AT ALL RESPONSIBLE” FOR ANY SOFT-BRICKS OR ANY OTHER DAMAGES TO YOUR PC OR PHONE
2. WHEN YOU DEODEX YOUR FIRMWARE, SYSTEM WILL WRITE “.dex” FILES IN /data/dalvik-cache, WHICH WILL REDUCE SPACE IN THAT FOLDER.
3.YOU WILL READ THE WHOLE THREAD CAREFULLY BEFORE DOING ANYTHING.
There is a simple way to deodex your firmware i.e. using universal deodexer (http://forum.xda-developers.com/showthread.php?t=2213235). Here, when I say simple, I mean the download and setup of this program is simple.
But a few features are missing in it. Firstly it cannot zipalign after deodexing the firmware. The second problem is a major problem , as far as I think. We have preload partition and a system partition in our phone. The “.apk” and “.odex” files stored in the preload partition, have symlinks in the system folder. It means there are a few “.apk” and “.odex” files in the system folders which are not actually applications but symlinks of those apps in preload folder. So you need to manually sort them out, which is a real pain in your a**. But don’t worry, the below mentioned method is different.
ANOTHER way to deodex, like Universal deodexer....... Carbonite tool (credits- adityaf) --- http://forum.xda-developers.com/showthread.php?t=2226160 (ty kingbabasula)
***********************************************************************************************************************************************************************************************************************************************************
This method uses android kitchen (by dsixda) to deodex the firmware. SO ALL THE CREDITS GO TO HIM. Original thread ------- http://forum.xda-developers.com/showthread.php?t=633246
Setup looks complex because I have given a detailed explanation on how to do it.
The guide is in two parts. First part in first post and the second in the second post.
PART - 1
PREREQUISITES :- (installing cygwin and android kitchen)
1.LATEST VERSION OF JAVA SHOULD BE INSTALLED ON YOUR PC.
2.CYGWIN……….
Go to (http://www.cygwin.com) and download the LATEST setup.exe file TO AVOID ERRORS. (Remember to install in C:\cygwin) SEE BELOW, HOW TO INSTALL.
************************************************************************************************************
Cygwin instructions for dsixda's Android Kitchen
-------------------------------------------------
1) Run the Cygwin setup.exe and select the defaults for the installation paths, such as:
- install from internet
- install to C:\cygwin
2) At the 'Select Packages' screen, go to the 'Search' box to look for the following package:
* gcc4 (found under 'Devel')
- Click on the '+' symbol at the section it's found under
NOTE:- IN THE SELECT PACKAGE SCREEN, UNTICK "HIDE OBSOLETEPACKAGES" IN BOTTOM LEFT CORNER, AND THEN SEARCH FOR "gcc4".
..................Now it would be found under "_obsolete" and not under DEVEL...... (thanks bob for pointing)
- Then find this single package (only the one with this exact name, not multiple similarly-named ones!) and click 'Skip' once so that it changes to show a version number
Go back to the Search box and repeat the above steps for the rest of the packages:
* libmpfr4 (found under 'Libs')
* perl (found under 'Interpreters')
* cpio (found under 'Utils')
* util-linux (found under 'Utils')
* ncurses (found under 'Utils')
* zip (found under 'Archive')
* unzip (found under 'Archive')
* wget (found under 'Web')
3) Press Next to proceed installing these packages.
4) When installation has been completed, click on your new Cygwin desktop shortcut. This will open a terminal session that will run some initialization.
5) With the Cygwin terminal still open, we need to configure the path to the Java application so that it can be executed within Cygwin.
In the terminal, type the command 'java' (without quotes). If it says 'command not found', then read the below. Otherwise, skip this section.
First, make a backup of your .bash_profile file in case you make a mistake later in this procedure.
Enter the following in the terminal:
cp .bash_profile .bash_profile.backup
Next, find out where your java.exe file is and run the appropriate command to add it to your Cygwin path.
For example, my java.exe is found under C:\Program Files\Java\jre7\bin, so I had to type:
echo "PATH=/cygdrive/c/Program\ Files/Java/jre7/bin:\${PATH}" >> .bash_profile
Modify the command above so that it matches the actual path to your installed Java.
Remember to add a "\" character before any spaces in your path, as shown above.
Type the following so that the file gets loaded (you only need to do this once):
source .bash_profile
There should not be any errors displayed if successful.
(Otherwise, if you made an error in the .bash_profile file, restore your backup by typing: cp .bash_profile.backup .bash_profile, and then try the procedure again)
If done correctly, then when you type 'java' it should display some help information.
6) Your Cygwin is now ready for the kitchen!
************************************************************************************************************
3. Now download the kitchen from dsixda’s github https://github.com/dsixda/Android-Kitchen/tags. (Click the zip option.)
4. Now create a folder kitchen inside C:\cygwin\home\ and extract the kitchen’s zip in that folder. Your kitchen is setup now.
View the next post for deodexing
Credits:
1. Cygwin
2. dsixda
3. BOBFRANTIC FOR REPORTING
PART -2
HOW TO DEODEX :-
Requirements……………….
1. Download this zip file which contains two windows application files and updater script. LINK------ http://db.tt/T9Tooxy8
a. Linux disk internals - Install this file.
b. SGS2ext - Just keep it.
c. META-INF - Just keep it.
2. WinRAR
Procedures…………………….
1.Download the Samsung firmware that you want to deodex and Extract the “system.img.md5” and “hidden.img.md5” from the firmware(.tar.md5) with WinRAR. I suggest you extract it in new clean folder. Just minimize this folder.
2.Now right click SGS2ext.jar and open it with java. A window will open. Now drag the system.img.md5 (that you have extracted) from the minimized folder to this window. Let it complete fully. After that reopen SGS2ext do the same with hidden.img.md5. You will get two files in that folder i.e. “system.img.ext4.img” and “hidden.img.ext4.img”.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
3.Make a folder by name “WORKING_deodex” inside C:\cygwin\home\****\kitchen\. The word “WORKING_” should be in capital letters. Copy the META-INF folder that you downloaded to the “WORKING_deodex” folder. Create two new folders inside “WORKING_deodex” folder namely “system” and “preload”.
4.Search and Open the application “DiskInternals Linux Reader”. Select mount image from the left pane. Select raw disk images and click next. Browse and select “system.img.ext4.img”. This file will then be mounted. Inside the mounted folder, click only the “app” and “framework” folder and save it inside C:\cygwin\home\****\kitchen\WORKING_deodex\system
Do the same with with “hidden.img.ext4.img” file. But this time after mounting, save only the symlink folder to C:\cygwin\home\****\kitchen\WORKING_deodex\preload.
5. Now open cygwin terminal from desktop. Remember to run this as an administrator.
Then type “cd kitchen”.
Now type command “./menu”. You will enter android rom kitchen.
Go to “advanced options” and select deodex files.
IN THIS SCREEN SELECT THE OPTION "v" TO SET API.
SET API TO "16" as we are deodexing 4.1.2 firmware. (THANKS BOB AGAIN)
Then Deodex both app and framework folders.
Android kitchen will do the rest automatically. It will take a few minutes to complete.
6. After that go to
C:\cygwin\home\****\kitchen\WORKING_deodex\META-INF\com\google\android and open the updater script with notepad++.
In this file check if all the “.apk” files in preload partition are symlinked. Otherwise just add following line with the apk name from preload.
For example if there is Gmail.apk inside preload, then to symlink it write :-
symlink("/preload/symlink/system/app/Gmail.apk", "/system/app/Gmail.apk");
7. Now select the option to create a rom from working folder and select interactive mode.
It will first zipalign rom, compress it and sign the zip file.
Then transfer it to your sdcard and flash the file.
8. You can also push the files via adb
If you face any problem report it…………
Save @Agadoo’s data plan……
Reserved
Thanks for this, appreciated. I am running into a puzzlement right from the start. When I get to the select packages part of the Cygwin Setup and search for the first package gcc4 there is nothing to select. I noticed before this step you have a bunch of sites to download from. I selected the first. See screenshot.
bobfrantic said:
Thanks for this, appreciated. I am running into a puzzlement right from the start. When I get to the select packages part of the Cygwin Setup and search for the first package gcc4 there is nothing to select. I noticed before this step you have a bunch of sites to download from. I selected the first. See screenshot.
View attachment 2087910
Click to expand...
Click to collapse
Wait, the gcc4 has become obsolete. Wait till i update the post. thanks for reporting.
EDIT:- In the screenshot you posted, untick the hide obsolete packages and then search for gcc4. But it wont be under devel, it will be under obsolete package. (remember that)
bobfrantic said:
Thanks for this, appreciated. I am running into a puzzlement right from the start. When I get to the select packages part of the Cygwin Setup and search for the first package gcc4 there is nothing to select. I noticed before this step you have a bunch of sites to download from. I selected the first. See screenshot.
View attachment 2087910
Click to expand...
Click to collapse
Updated 1st post. See the steps again.
Deodex working ok, but with the SecEmail there is a problem and can't deodex that. So haven't been able to go further than deodexing so far.
Error occured while disassembling class Lcom.android.email.activity.setup.AccountSettingsHtmlSignatureFragment; - skipping class
java.lang.RuntimeException: regCount does not match the number of arguments of the method
at org.jf.dexlib.Code.Format.Instruction35c.checkItem(Instruction35c.java:160)
at org.jf.dexlib.Code.Format.Instruction35c.<init>(Instruction35c.java:69)
at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyzeInvokeVirtualQuick(MethodAnalyzer.java:3681)
at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyzeInstruction(MethodAnalyzer.java:1106)
at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyze(MethodAnalyzer.java:213)
at org.jf.baksmali.Adaptors.MethodDefinition.addAnalyzedInstructionMethodItems(MethodDefinition.java:389)
at org.jf.baksmali.Adaptors.MethodDefinition.getMethodItems(MethodDefinition.java:311)
at org.jf.baksmali.Adaptors.MethodDefinition.writeTo(MethodDefinition.java:132)
at org.jf.baksmali.Adaptors.ClassDefinition.writeMethods(ClassDefinition.java:338)
at org.jf.baksmali.Adaptors.ClassDefinition.writeDirectMethods(ClassDefinition.java:294)
at org.jf.baksmali.Adaptors.ClassDefinition.writeTo(ClassDefinition.java:116)
at org.jf.baksmali.baksmali.disassembleDexFile(baksmali.java:186)
at org.jf.baksmali.main.main(main.java:308)
Assembling into classes.dex ...
java -Xmx512m -jar smali.jar -a 17 -o classes.dex out
out\com\android\email\activity\MessageCompose.smali[0,-1] no viable alternative at input '<EOF>'
out\com\android\email\activity\setup\AccountSettingsHtmlSignatureFragment.smali[0,-1] no viable alternative at input '<EOF>'
WARNING: Unable to produce classes.dex!
that's where I am at so far
Ok not able to deodex. Tried moving SecEmail files from preload to apps. Spent enough time today so will try another day. Your guide is most appreciated. This problem is the result of something else going on.
Sent from my GT-I9070 using xda app-developers app
bobfrantic said:
Ok not able to deodex. Tried moving SecEmail files from preload to apps. Spent enough time today so will try another day. Your guide is most appreciated. This problem is the result of something else going on.
Sent from my GT-I9070 using xda app-developers app
Click to expand...
Click to collapse
bobfrantic said:
Deodex working ok, but with the SecEmail there is a problem and can't deodex that. So haven't been able to go further than deodexing so far.
Error occured while disassembling class Lcom.android.email.activity.setup.AccountSettingsHtmlSignatureFragment; - skipping class
java.lang.RuntimeException: regCount does not match the number of arguments of the method
at org.jf.dexlib.Code.Format.Instruction35c.checkItem(Instruction35c.java:160)
at org.jf.dexlib.Code.Format.Instruction35c.(Instruction35c.java:69)
at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyzeInvokeVirtualQuick(MethodAnalyzer.java:3681)
at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyzeInstruction(MethodAnalyzer.java:1106)
at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyze(MethodAnalyzer.java:213)
at org.jf.baksmali.Adaptors.MethodDefinition.addAnalyzedInstructionMethodItems(MethodDefinition.java:389)
at org.jf.baksmali.Adaptors.MethodDefinition.getMethodItems(MethodDefinition.java:311)
at org.jf.baksmali.Adaptors.MethodDefinition.writeTo(MethodDefinition.java:132)
at org.jf.baksmali.Adaptors.ClassDefinition.writeMethods(ClassDefinition.java:338)
at org.jf.baksmali.Adaptors.ClassDefinition.writeDirectMethods(ClassDefinition.java:294)
at org.jf.baksmali.Adaptors.ClassDefinition.writeTo(ClassDefinition.java:116)
at org.jf.baksmali.baksmali.disassembleDexFile(baksmali.java:186)
at org.jf.baksmali.main.main(main.java:308)
Assembling into classes.dex ...
java -Xmx512m -jar smali.jar -a 17 -o classes.dex out
out\com\android\email\activity\MessageCompose.smali[0,-1] no viable alternative at input ''
out\com\android\email\activity\setup\AccountSettingsHtmlSignatureFragment.smali[0,-1] no viable alternative at input ''
WARNING: Unable to produce classes.dex!
that's where I am at so far
Click to expand...
Click to collapse
I AM EXTREMELY SORRY. I FORGOT ONE IMPORTANT THING. IN THIS SCREEN SELECT THE OPTION "v" TO SET API.
SET API TO "16".
THEN TRY TO DEODEX.
anantttt said:
I AM EXTREMELY SORRY. I FORGOT ONE IMPORTANT THING. IN THIS SCREEN AFTER SELECT THE OPTION "v" TO SET API.
SET API TO "16".
THEN TRY TO DEODEX.
Click to expand...
Click to collapse
That was gonna be my next question. I saw something in the build.prop saying sdk 16 so wondered. thanks for the info. guess you will update things.
bobfrantic said:
That was gonna be my next question. I saw something in the build.prop saying sdk 16 so wondered. thanks for the info. guess you will update things.
Click to expand...
Click to collapse
Already updated. See OP.
It worked. will finish rest tomorrow but deoxed fine.
Sent from my GT-I9070 using xda app-developers app
Oh that is great!!! So I think the guide is complete now.
Tell me if the updater script is working properly.
Finished. Made the deodexed zip, followed the prompts in kitchen. Zipaligned, checked the update-script all was good. Signed zip took a bit of time, renamed it and put into my sd card. Started from scratch on phone with fresh install of XXLQG firmware, installed cocafe's 6.8 kernel/cwm, installed my deodexed firmware zip and phone rebooted fine and is deodexed. Preload, symlinks, apps, framework all are correct. Thanks for the guide and I can't think of anything else to add other than be patient, some steps take a while.
$ echo"PATH=cygdrive/c/Program\Files/Java/jre7/bin:\${PATH}">>.bash_profile
cygwin warning:
MS-DOS style path detected: echoPATH=cygdrive/c/Program\Files/Java/jre7/bin:${PATH}
Preferred POSIX equivalent is: echoPATH=cygdrive/c/Program/Files/Java/jre7/bin:${PATH}
CYGWIN environment variable option "nodosfilewarning" turns off this warning.
Consult the user's guide for more details about POSIX paths:
http://cygwin.com/cygwin-ug-net/using.html#using-pathnames
-bash: echoPATH=cygdrive/c/Program\Files/Java/jre7/bin:${PATH}: No such file or directory
when I try to put the address of java appears the inscription above, and when I go into the kitchen and I type. / menu says that java is not installed.
what am I missing?
lobotwister said:
$ echo"PATH=cygdrive/c/Program\Files/Java/jre7/bin:\${PATH}">>.bash_profile
cygwin warning:
MS-DOS style path detected: echoPATH=cygdrive/c/Program\Files/Java/jre7/bin:${PATH}
Preferred POSIX equivalent is: echoPATH=cygdrive/c/Program/Files/Java/jre7/bin:${PATH}
CYGWIN environment variable option "nodosfilewarning" turns off this warning.
Consult the user's guide for more details about POSIX paths:
http://cygwin.com/cygwin-ug-net/using.html#using-pathnames
-bash: echoPATH=cygdrive/c/Program\Files/Java/jre7/bin:${PATH}: No such file or directory
when I try to put the address of java appears the inscription above, and when I go into the kitchen and I type. / menu says that java is not installed.
what am I missing?
Click to expand...
Click to collapse
Do you have java installed?????
If not install the latest version of java and then try this command.
bobfrantic said:
Finished. Made the deodexed zip, followed the prompts in kitchen. Zipaligned, checked the update-script all was good. Signed zip took a bit of time, renamed it and put into my sd card. Started from scratch on phone with fresh install of XXLQG firmware, installed cocafe's 6.8 kernel/cwm, installed my deodexed firmware zip and phone rebooted fine and is deodexed. Preload, symlinks, apps, framework all are correct. Thanks for the guide and I can't think of anything else to add other than be patient, some steps take a while.
Click to expand...
Click to collapse
Well yes. Signing takes a bit of time. You can skip signing if you want.
Now, one more question. Totally off topic
Will you challenge Agadoo, in uploading the deodexed firmware.
anantttt said:
Well yes. Signing takes a bit of time. You can skip signing if you want.
Now, one more question. Totally off topic
Will you challenge Agadoo, in uploading the deodexed firmware.
Click to expand...
Click to collapse
Actually I have pretty well every deodexed firmware on my puter. I was thinking of starting a thread with all in one location instead of how it is now with them spread all over the place LOL. Whatcha think? Good idea or not...
bobfrantic said:
Actually I have pretty well every deodexed firmware on my puter. I was thinking of starting a thread with all in one location instead of how it is now with them spread all over the place LOL. Whatcha think? Good idea or not...
Click to expand...
Click to collapse
Good idea. But frapeti already has a thread in the dev forum.
And one more thing, after deodexing in the build.prop add these lines. Saw it in frapeti's thread.
LINK--- http://forum.xda-developers.com/showthread.php?t=1437799
anantttt said:
Do you have java installed?????
If not install the latest version of java and then try this command.
Click to expand...
Click to collapse
I do have java installed, but I can not make the program recognize the path to the folder of it, with all methods we have deodex forum I always have this problem with java, I do not know what else to do, just will not.
Uploaded with ImageShack.us
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
First Lets know some Basic knowledge about DEODEX/ODEX...
What is Odex and Deodex ROM
What is an ODEX file?
In Android file system, applications come in packages with the extension .apk.
These application packages, or APKs contain certain .odex files whose supposed function is to save space.
These ‘odex’ files are actually collections of parts of an application that are optimized before booting.
Doing so speeds up the boot process, as it preloads part of an application.
On the other hand, it also makes hacking those applications difficult because a part of the coding has already been extracted to another location before execution.
What is an DEODEX file?
Deodexing is basically repackaging of these APKs in a certain way, such that they are reassembled into classes.dex files.
By doing that, all pieces of an application package are put together back in one place, thus eliminating the worry of a modified APK conflicting with some separate odexed parts.
So, Deodexed ROMs (or APKs) have all their application packages put back together in one place,
allowing for easy modification such as theming. Since no pieces of code are coming from any external location,
custom ROMs or APKs are always deodexed to ensure integrity.
How this works?
For the majority noobs amongst us, Android OS uses a Java-based virtual machine called the Dalvik Virtual Machine.
A deodexed or .dex file contains the cache used by this virtual machine (referred to as Dalvik-cache) for a program, and it is stored inside the APK.
An .odex file, on the other hand, is an optimized version of this same .
dex file that is stored next to the APK as opposed to inside it.
Android applies this technique by default to all the system applications.
When an Android-based system is booting, the davlik cache for the Davlik VM is built using these .odex files, allowing the OS to learn in advance what applications will be loaded, and thus speeds up the booting process.
By deodexing these APKs, a developer actually puts the .odex files back inside their respective APK packages.
Since all code is now contained within the APK itself, it becomes possible to modify any application package without conflicting with the operating system’s execution environment.
Advanteges & Disadvantages
The advantage of deodexing is in modification possibilities.
This is most widely used in custom ROMs and themes. A developer building a custom ROM would almost always choose to deodex the ROM package first,
since that would not only allow him to modify various APKs, but also leave room for post-install theming.
On the other hand, since the .odex files were supposed to quickly build the dalvik cache, removing them would mean longer initial boot times.
However, this is true only for the first ever boot after deodexing, since the cache would still get built over time as applications are used.
Longer boot times may only be seen again if the dalvik cache is wiped for some reason.
Note:Themes for android come in APKs too, and if you want to modify any of those, you should always choose a dedoexed custom ROM.
Lets Start...
GUIDE TO DEODEX STOCK ROM
Java Development KIT
(Download & Setup Guide)
ANDROID SDK
xUltimateV2.3.3
(only this version is capable with samsung device)
Official Link to xUltimate : POST #5
7-Zip
(32-Bit & 64-Bit)
1.Download android-sdk & extract it.
2.Copy sdk folder & paste it into
Code:
C:\Program Files\Android
3.Change name from SDK to Android.sdk.
(inside folder look like this)
4.you need to flash stock firmware first & Root your device.
5.Connect your phone to computer.(Make sure you have select USB debugging in Settings>Applications>Development)
6.Download & extract xUltimate zip.
7.Launch Main.exe(Run as administrator)
8.If everything goes well xUltimate should recognize the phone and make a connection.You now should see a list of options.
9.Select option (1) pull /system/app. Wait until it complete.
10.Select option (2)pull /system/framework. Wait until it complete.
11..Then select option (3) Deodex /system/app. Wait until it complete.
[If encounter any error. Find out which .odex file is it. Then remove .odex file from folder origi_app in xUltimate folder]
(i found 5 errors so i attached that app's deodex files below you just want to paste in system/app when this process complete)
12.Then select option (4)Deodex /system/framework. Wait until it complete.
13.DONE : your rom is now deodex. Now Exit from xUltimate
Now there are 2 ways to install deodex files in device
1. from Android.SDK
From Android.SDK :
1.Put the phone in USB mass storage.
2.Go to xUltimate folder and copy "done_frame", and "done_app", and move them to the root of the sdcard.
3.Now get out from USB storage mode.
4.Go to
Code:
C:\Program Files\Android\android.sdk
& open command promote there.
5.Enter following codes.
(if you are using adb shell in su for the first time, keep phone screen on. After entering "su" code, super user request prompt in phone. Press allow )
Code:
adb shell
su
stop
mount -o rw,remount /system/ /system/
cp /sdcard/done_app/* /system/app/
rm /system/app/*.odex
cp /sdcard/done_frame/* /system/framework/
rm /system/framework/*.odex
mount -o ro,remount /system/ /system/
reboot
6.Now you have deodexed rom.
2. from SampleDEODEX.zip file attached below.
From zip file attached
1.open zip given as archive.
(use 7.zip but DO NOT EXTRACT.)
2.go to system/app folder & paste here all your deodexed apk's
3.same for for system/framework to paste framework files.
4.done, paste it in your SD-Card & flash through CWM.
STILL IF YOU FACE ANY ERROR
Especially Android 4.1 + (JB) users
Try this method Updating xUltimate tool manually.
asm-xda said:
First of all, thx for the OP. This method for Deoexing works fine, I needed to make a few updates - described below - in order to make it work on my GT-P3113 device, running JB 4.2.2.
OK. So, you have already made sure JDK is properly installed but still can't succeed? Check the following... These are the changes I had to make to deodex my ROM.
1. Get the latest version of xUltimate. It's version 2.4.2: http://www.xeudoxus.com/android/xUltimate-v2.4.2.zip. If you got version 2.3.3 and accepted to download latest version, you were directed to a thread that is not updated with the latest version. Check post #549 on that thread to find the link I've pasted above.
2. If you happen to have Android 4.2.2 on your device, ADB needs to be updated. xUltimate has version 1.0.26 which won't properly connect with your device. NOTE: you can tell which version of adb you are using by running this: adb version
So:
Install the latest version of the Android SDK to get ADB version: 1.0.31 (or later, should be fine).
Locate and copy over these 3 files from the Adnroid SDK install folder into xUltimate-v2.4.2\jar replacing the existing ones:
adb.exe
AdbWinApi.dll
AdbWinUsbApi.dll
3. I don't know this step is a must for everyone, but it was for me. The assembler/deassembler for .dex file format must be upgraded too. The version in the jar folder in xUltimate-v2.4.2 didn't work fine with the .odex files in my stock ROM.
So:
Download smali.jar and baksmali.jar from here: https://code.google.com/p/smali/. I got version 1.4.2 but any above that should work fine too for the latest available ROMs I guess.
The 2 files probably include the version number in the filename ( i.e.: smali-1.4.2.jar and baksmali-1.4.2.jar). Rename them so they are called: smali.jar and baksmali.jar.
Copy (& replace) those 2 files into xUltimate-v2.4.2\jar folder.
So, that's it. After doing all the above, I managed to deodex my ROM. Well... not quite... there's something else.
After doing the steps above, you should go ahead and follow instructions in the first post of the thread. If everything works, then you are done! Say thanks to OP and enjoy your deodexed ROM. :good::victory:
If however, you still encounter errors while running the xUltimate tool, keep reading...
NOTE: The following is probably only true for certain devices (like mine) so disregard if you don't find any error while following OP steps to deodex.
I got into errors deodexing these files: SamsungIME, SecEmail_Tablet, SecSetting and SecExchange.
Since I couldn't find how to make them work, I decided to leave those files odexed. I'm not sure if that was a good idea or not, but it's fine for me because in my case I actually wanted to deodex some specific apks, not really all of them.
If you decide you want to skip some files (as I did), you'll need to proceed as follows:
Take note of the files that couldn't be deodexed and move those files from the orig_app or orig_frame folder into a new folders, let's call them: "no_deo_app" and "no_deo_frame". Ensure you move the .odex file + .jar file (in case it exists). Make really sure you move files into the right folder: "orig_app" into "no_deo_app" and "orig_frame" into "no_deo_frame".
Run the deodexing again until everything works fine. If you find another file that gives you problem, you do step 1 and 2 again until the tool completes all files successfully.
Now you have 4 folders that are relevant: "done_app", "done_frame", "no_deo_app", "no_deo_frame". Copy all of them into the root of your sdcard.
Now, get into adb shell as superuser access as described in OP following the commands below instead of the ones in the OP. Basically the difference will prevent you from deleting the odex file for the apps that couldn't be deodexed.
Code:
adb shell
su
stop
mount -o rw,remount /system/ /system/
cp /sdcard/done_app/* /system/app/
rm /system/app/*.odex
[COLOR="red"][B]cp /sdcard/no_deo_app/* /system/app/[/B][/COLOR]
cp /sdcard/done_frame/* /system/framework/
rm /system/framework/*.odex
[COLOR="Red"][B]cp /sdcard/no_deo_frame/* /system/framework/[/B][/COLOR]
mount -o ro,remount /system/ /system/
reboot
Well, that was it for me . This is what I've done to doedex my stock JB 4.2.2 ROM my Galaxy Tab 2 7.0 tablet.
Regards!
Click to expand...
Click to collapse
thanks to @asm-xda
4real*leb
Xeudoxus
and
asm-xda
(for finding the way to deodex rom for Jellybean User)
GALAXY Ace Plus User's : GO HERE http://forum.xda-developers.com/showthread.php?p=43835177#post43835177
Cool
omarilzz said:
Cool
Click to expand...
Click to collapse
:fingers-crossed: Thanks bro
will this work with any phone?
i have an alcatel OT X'pop. will this work? 4.1.1?
aldnnnn said:
i have an alcatel OT X'pop. will this work? 4.1.1?
Click to expand...
Click to collapse
YES it does work on any device...
first give a try on above 2.3.3 xUltimate version if u face any issue download latest version v2.4 from here ;
follow same steps like above :highfive:
nice method but it is easier from dsixda's kitchen(cygwin)
cant recognized device
i think ive done everything but still wont recognize my device.
any suggestions?
ManzzaShahi said:
nice method but it is easier from dsixda's kitchen(cygwin)
Click to expand...
Click to collapse
i know...
but that kitchen doesn't deodex our device's apk files as much this xUltimate do
i don't know why
but i tried every step (I have kitchen & several kind software's too) & found easiest way is this only to deodex ur apk files :fingers-crossed:
aldnnnn said:
i think ive done everything but still wont recognize my device.
any suggestions?
Click to expand...
Click to collapse
Give a try on newer version v2.4 I gave link above in that pic.
coz it has ICS Razor support.
or you have to check whether your java works fine or not.
go through some youtube video's to find how to setup JAVA or follow guide below;
JAVA Development KIT
< Guide How to Setup JAVA >
Download JAVA Development Kit & install it first.
go to desktop, right click on
computer > properties >:highfive>Advance system setting> in advance tab environment variables
First : In user variable for ***
click new & type
Code:
variable name : CLASSPATH
variable value : C:\Program Files\Java\jdk1.7.0_21\jre\bin (your java installed path varies on your installed location)
Second : In system variables
click new & type
Code:
variable name : PATHTEXT
variable value : .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
also check in path is there above java path present or not if not just add it BUT do not remove old codes from line...!!!
j.posarekar70 said:
< Guide How to Setup JAVA >
Download JAVA Development Kit & install it first.
go to desktop, right click on
computer > properties >:highfive>Advance system setting> in advance tab environment variables
First : In user variable for ***
click new & type
Code:
variable name : CLASSPATH
variable value : C:\Program Files\Java\jdk1.7.0_21\jre\bin (your java installed path varies on your installed location)
Second : In system variables
click new & type
Code:
variable name : PATHTEXT
variable value : .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
also check in path is there above java path present or not if not just add it BUT do not remove old codes from line...!!!
Click to expand...
Click to collapse
missed this part of installing java
thanks!
will try again soon because i dont have my phone right now.
also i i have these folders in the same java folder
C:\Program Files\Java\jre6
C:\Program Files\Java\jre7
do i need these files?
aldnnnn said:
missed this part of installing java
thanks!
will try again soon because i dont have my phone right now.
also i i have these folders in the same java folder
C:\Program Files\Java\jre6
C:\Program Files\Java\jre7
do i need these files?
Click to expand...
Click to collapse
You may keep aside coz u wanna download java development kit which is jdk for that jre doesn't matter...
just for suggestion remove older version of jre from ur pc if u have jre7.
can u help every system file i try to deodex gives error and when i move to another it again gives error what to do same is with framework
tejasvi1 said:
can u help every system file i try to deodex gives error and when i move to another it again gives error what to do same is with framework
Click to expand...
Click to collapse
It would be great if u tell me which device u using to deodex files...
& also if possible attach error screen image/attach log file.
sent from Tapatalk 4
thks for replying , i am using my laptop for deodex my stock jellybean firmware on xperia ion
tejasvi1 said:
thks for replying , i am using my laptop for deodex my stock jellybean firmware on xperia ion
Click to expand...
Click to collapse
well you just have to skip those apk's which cause these errors...
close this window, go in Orig_app folder & delete related apk + its .odex file & give another try.
if error appear in another apk do the same.
some apk's wont get deodex through this app you just have to delete those & move forward.
.
.
.
if u get error in each system apk then download older version's of xUltimate app from this POST #5
Awsm buddy by the way i have a xperia mini(stock ics) . Will this work on it ?
sadab said:
Awsm buddy by the way i have a xperia mini(stock ics) . Will this work on it ?
Click to expand...
Click to collapse
Keep backup
give a try
follow each steps
Nice guide! I followed it when I created my ROM! Very useful! tnx
Hope it works on my samsung galaxy pocket
I will try on my samsung galaxy pocket coz i want the s3 status bar so hope it works without any issues if i have some problem i will tell u guys
---------- Post added at 02:16 PM ---------- Previous post was at 02:10 PM ----------
Plzz check and tell me that will it work on my Rooted Samsung Galaxy Pocket plzz thnx in advanced
KumailHyderMirza said:
I will try on my samsung galaxy pocket coz i want the s3 status bar so hope it works without any issues if i have some problem i will tell u guys
---------- Post added at 02:16 PM ---------- Previous post was at 02:10 PM ----------
Plzz check and tell me that will it work on my Rooted Samsung Galaxy Pocket plzz thnx in advanced
Click to expand...
Click to collapse
Give a try my friend...
there is no way to brick your device .
you just have to put system & framework files in the pc & let xUltimate do the work.
if everything goes fine you get pair of folders deodex system apps & that of framework files .
put them to make flashable zip & there you go deodex stock rom.
everything will fine if u follow my steps.
if get any wrong (error) then its been in ur pc only not in ur phone
loxdegio said:
Nice guide! I followed it when I created my ROM! Very useful! tnx
Click to expand...
Click to collapse
Happy to help you