Here is how to change them, and how to avoid the pesky "Jad and Jar size do not match" error.
I am using Opera mini 4, a mac and a Nokia 5800 in my example.
What you will need:
- A mobile phone
- A Java app (1 Jad and 1 Jar file)
- A computer
- The web
- Photoshop (or similar program) * not necessary
- Extraction tool (stuffit, winrar or similar)
- Bluetooth or cable connection from Mac to Phone
Step 1: Get Your Jad and Jar Files
(note the second image: this is what Opera Mini 4 looks like with it's default icon)
It should be a PNG image with a transparent background, less than 100 x 100 px.
Google image search is what I used.
The one I downloaded was from Wikimedia commons. Please don't use other people's images unless they are under the appropriate Creative Commons licence.
Step 3: Check to See If the File Has a Transparent Background
It does. If it doesn't, you can either delete the background colour and save as a PNG or just find a better image.
Step 4: Open the Jar File With Your Extraction Tool and Locate the Png Icon.
Just open the file, don't extract it.
There is one png file in the JAR, this is the icon you want to replace.
Step 5: Replace the Icon
In my case, the file name was i.png.
Save the JAR file, and close your extraction tool.
Step 6: Match the Jad and Jar File Sizes
Locate the size of the JAR file in the JAD.
Right click on the JAR and write down it's exact size in BYTES.
Edit the JAD file so that the file size after the line "MIDlet-Jar-Size:" matches the JAR file you edited.
Save and close.
This eliminates the error "Jad and Jar size do not match"
Step 7: Transfer and Install
Find the files in your file manager and Install the Java app.
If you matched the file sizes, it will install.
Step 8: Completion and Final Thoughts
(please note: my phone's screenshot program compressed the image, the logo looks much nicer on my phone screen)
Final thoughts and how to edit files that just have a JAD (like Gmail)
The JAD file seems to be a text file and the JAR an archive.
You can find out lots of interesting info from the JAD file.
For instance, if you try and download the Gmail app, you just get the JAD file, and when you install to your phone, the Gmail app automatically downloads and installs the JAR, making it impossible to change the icon.
BUT in the JAD, you can find the URL to the JAR, pop it into your browser and download if to your computer, edit it to have a nice logo (as I have done in the image below) and transfer both files to your phone and install.