if you want to create a .zip with something to add to your phone, there are a few tools to automate their creation, but restricted to Windows. Here I will explain the mechanics of their creation (applicable in all OSs).
Things you need:
1) Decide where the item to be added goes (/system/app)
2) Create the folders appropriate to the location from step 1
For me, this would mean I create a folder, 'app', inside a folder 'system'
For Windows Command Line:
For Unix Command Line:
3) Move the item into the correct location
For me, Calculator.apk is located at system/app/Calculator.apk
4) Create the following file tree: META-INF/com/google/android
Use the appropriate code from above.
5) create a file called update-script in META-INF/com/google/android
Note the lack of an extension, to achieve this effect, Windows users should include quotation marks around the name in the Save As dialog box.( Save As: "update-script")
6) update-script:
Please add an empty line at the end!!
The code above is pretty easy to understand The thing to note is the line with copy_dir:
Syntax: copy_dir <src-dir> <dst-dir> [<timestamp>]
Copy the contents of <src-dir> to <dst-dir>. The original contents of <dst-dir> are preserved unless something in <src-dir> overwrote them.
<src-dir> and <dst-dir> options:
ROOT: Root FileSystem ('/')
BOOT: Boot ('/dev/block/mtdblock0')
DATA: Data ('/data' or '/dev/block/mtdblock2')
CACHE: Cache ('/cache' or '/dev/block/mtdblock5')
MISC: ('/dev/block/mtdblock3')
PACKAGE: update.zip
RECOVERY: Recovery ('/dev/block/mtdblock4')
SDCARD: SDCard ('/sdcard')
SYSTEM: System ('/system' or '/dev/block/mtdblock1')
TMP: (RAM, cleared on reboot)
Example: If you wanted to copy 'somefolder' from your update.zip to your SDCard's 'Music' folder...
7) Zip up the folders you created (For me, I zipped up META-INF and system into Calculator.zip).
8) Sign the update:
The classpath is the path to the folder containing testsign.jar. If it is in the same folder, the classpath is just './testsign.jar'
You are all set!
Note for Mac users:
OSX creates hidden files in all directories called '.DS_Store'. Please remember to remove them!
Note for Windows users:
I tend to use the Unix file separator ('/'), so please remember to switch it to '\' when using commands on your computer. On the other hand, Android is a Unix system, so android commands use '/'
Things you need:
- Item to be added (example, Calculator.apk)
- Testsign.jar: Get it here
1) Decide where the item to be added goes (/system/app)
2) Create the folders appropriate to the location from step 1
For me, this would mean I create a folder, 'app', inside a folder 'system'
For Windows Command Line:
For Unix Command Line:
3) Move the item into the correct location
For me, Calculator.apk is located at system/app/Calculator.apk
4) Create the following file tree: META-INF/com/google/android
Use the appropriate code from above.
5) create a file called update-script in META-INF/com/google/android
Note the lack of an extension, to achieve this effect, Windows users should include quotation marks around the name in the Save As dialog box.( Save As: "update-script")
6) update-script:
Please add an empty line at the end!!
The code above is pretty easy to understand The thing to note is the line with copy_dir:
Syntax: copy_dir <src-dir> <dst-dir> [<timestamp>]
Copy the contents of <src-dir> to <dst-dir>. The original contents of <dst-dir> are preserved unless something in <src-dir> overwrote them.
<src-dir> and <dst-dir> options:
ROOT: Root FileSystem ('/')
BOOT: Boot ('/dev/block/mtdblock0')
DATA: Data ('/data' or '/dev/block/mtdblock2')
CACHE: Cache ('/cache' or '/dev/block/mtdblock5')
MISC: ('/dev/block/mtdblock3')
PACKAGE: update.zip
RECOVERY: Recovery ('/dev/block/mtdblock4')
SDCARD: SDCard ('/sdcard')
SYSTEM: System ('/system' or '/dev/block/mtdblock1')
TMP: (RAM, cleared on reboot)
Example: If you wanted to copy 'somefolder' from your update.zip to your SDCard's 'Music' folder...
7) Zip up the folders you created (For me, I zipped up META-INF and system into Calculator.zip).
8) Sign the update:
The classpath is the path to the folder containing testsign.jar. If it is in the same folder, the classpath is just './testsign.jar'
You are all set!
Note for Mac users:
OSX creates hidden files in all directories called '.DS_Store'. Please remember to remove them!
Note for Windows users:
I tend to use the Unix file separator ('/'), so please remember to switch it to '\' when using commands on your computer. On the other hand, Android is a Unix system, so android commands use '/'