[Captivate Android Development] rajendra82:
There seems to be a little bit of confusion about how to add deodexed files to your phone. Since I have done this in the past as a curiosity experiment, let me see if I can step in and help a bit.

Like the OP said, the deodexing process is a way of putting apk, jar, and odex files together into just app and jar files. Once this is done correctly by a tool of your chosing running on your computer (and that is no small feat, there are issues with many of the deodexing tools that seem to put together a deodexed file, but they don't do it "correctly", and when you try to use this apk, you get force closes or errors), there are three ways of getting these files back onto your phone.

1. The deodexed files need to go in two folders on your phone /system/app and /system/framework. These folders are not exposed by your phone when you normally connect it to your computer in the mass storage mode. In this case, the only exposed folders on your phone are /sdcard and /sdcard/external_sd. When you connect the phone in debug mode, the required locations can now be seen by adb, and you can push the files to those locations using the program, and the shell commands. When you do this, you are actually replacing the files on a live file system. I am not sure if this is the best approach, but likely there are no issues. After pushing the files, you then delete the odex files, as they are no longer needed.

2. The deodexed files can be packaged as a zip file. The deodexed files should go in the sub folders /system/app and /system/framework inside the zip, just as they would on your phone. You then put a script named update-script in a folder called /META-INF/com/android/google/. This script contains the commands to push the deodexed files from the zip onto the phone, delete the now unnecessary odex files from the phone, and set permissions for what you just pushed. The syntax for the commands in this script is different than what you type in adb, but the idea is the same. You are basically writing the script first instead typing it line by line in adb. You run this script in clockworkmod recovery by saying apply the whaever_name.zip (it doesn't have to be update.zip, and it doesn't have to be signed). This to me is the best approach. The author can provide a cooked script that works, and all you do is create a zip file with the deodexed files and script in the correct places. Since this is invoked when the phone is in recovery mode, the files being replaced are not in use, and there won't be any unintended consequences. If you want dalvik cache and cache partition to be wiped during this process (and it is a very good idea to do so), you can put commands in the script to do that too.

3. You have to create an factoryrfs.rfs file from the deodexed file, which you then put inside a tar file and tell Odin to push as a PDA. I would avoid this at all costs, because the rfs file is a pain to create (you have to mount it as a block device in Linux and push files to it), the rfs file format itself is an undocumented Samsung invention, and Odin is a far more dangerous and tricky beast to tame that pushing buttons in CWM recovery mode. Avoid this approach at all costs. Don't even think about it.