[DEV RESOURCES][AMDL] P-ROM, Dump, Tools, Resources & Tips [5/18] - AT&T Samsung Galaxy S 4 Android Development

I have gathered pretty much all the things useful in modding our system.
I ask other developers to post their findings here also.
My aim is to allow people to learn how make their own edits and mods.
Happy modding,
As of now our only option for recovery from a screw up is flashing the stock image via Odin, so be careful.
Developer Tools:
AIO Tool Pack - The main tools I used in creating this deodexed package (Includes the following)
APK Manager with the compatible ApkTool and AAPT (Took me a while to find compatible versions of both due to strange qualifiers in resource APKs)
Dex2Jar with JD-Gui (Useful for checking out JavaCode in order to apply to ByteCode) (If you've got an extra Kilo-Dollar to spare check out Jeb)
Baksmali/Smali Manager for editting jar files
Odin 3.07 for flashing stock firmwares (available in dev thread)
Click to expand...
Click to collapse
Click to expand...
Click to collapse
Psuedo-ROM
Deodexed System Installer With Listed Mods
(Mirror) (MD5:108a5553c6ae82af9b0a3319ceffc8b8)
All Responsibility Are Belongs To You
Entire deodexed system with some mods already installed. Based on the AMDL ota update.
You must be rooted and updated to build number I337UCUAMDL.
I recommend a factory reset, fresh wipe via Odin, updating ota, rooting, then installing this package.
After installing it is recommended that you freeze the OTA apps in order to block OTA updates.
- LocalFOTA, AT&T Software Update, FWUpgrade
- Mod list:
5/18/13 -
Removed struck-out items from 5/8/13 change log for NottachXposed compatiblity
Integrated debloater into installer
Added extended power menu (scrosler)
Added init.d support (scrosler)
-Added zipAlign init.d script
Added 1% battery support for SystemUI
Click to expand...
Click to collapse
5/9/13 -
Tethering enabled via framework-res.apk, includes Bluetooth tethering (romracer)
Removed WiFi connected notification via SecSettings.apk
Enabled accessibility widgets via SecSettings.apk
Removed carrier label in status bar via SystemUI.apk
Removed full battery notification via SystemUI.apk
Removed loud volume warning via framework.jar
Option to unlock all AT&T APNs (In installer)
Unhid broadband APNs
Enabled scrolling wallpaper
Removed launcher help text
Removed multi-window help button
Removed boot sound
Redeodexed entire AMDL update
Fixed APKs for de/recompiling
More...
Click to expand...
Click to collapse
-Installation:
Copy "copy_to_sdcard" folder to internal sdcard
With USB debugging enabled run the Windows BAT file in the package.
Answer questions.
Profit...
Click to expand...
Click to collapse
Click to expand...
Click to collapse
Click to expand...
Click to collapse
Tutorials:
Framework installation using ApkTool
Modding using Apk Manager
Reading source using Dex2Jar
Click to expand...
Click to collapse
Click to expand...
Click to collapse
Tips & How-Tos:
Exposed framework installer - Use this version of the exposed installer which is compatible with the S4
More tips & mods
Click to expand...
Click to collapse
Click to expand...
Click to collapse
Extra Downloads:
Debloater bat file - Removes AT&T, Google, and Samsung bloat (Open in any text editor to inspect/edit the files that will be removed)
I337UCUAMDL_RAW_SYSTEM_DUMP - The base from which this deodexed installer is created from
Click to expand...
Click to collapse
Click to expand...
Click to collapse

Framework installation using ApkTool
In order to use Apk_Manager on System APKs you will first need to install the System Frameworks to your ApkTool.
Assuming you have downloaded both zips from the first post unzip the tools folder to a location of your choosing.
Next, extract the frameworks zip to your newly created Apk_Manager folder and place them in the 'other' folder so they are in scope of apktool.jar, also in the 'other' folder.
Now, with no files selected in the 'other' folder, Shift+RightClick an empty area of the folder and choose "Open command window here".
Do:
Code:
apktool if framework-res.apk
&&
Code:
apktool if twframework-res.apk
The frameworks should be installed as 1.apk and 2.apk respectively. Confirm by navigating to C:/Users/<YOU>/apktool/framework.
Example output:
{
"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"
}
You should see 1.apk and 2.apk, they will be a different file size of the res APK, this is because they only contain info pertaining to APKs that may utilize their resources.
Now you have your frameworks installed correctly and can continue using Apk-Manager to Mod your other, deodexed, APKs, such as SystemUI.apk.
I hope this will be helpful to some, if there are any additional steps I can add to make it clearer please let me know.

Modding using Apk Manager
Apk-Manager examples coming soon...

Reading source using Dex2Jar
Dex2Jar is a useful tool for generating Java source from APK/JAR dex files.
In order to use Dex2Jar first open your APK/JAR with WinRar or similar and extract the dex file to the Dex2Jar root directory.
Next drag-n-drop the dex file onto dex2jar.bat. This will create a jar archive in the same directory.
Next drag-n-drop that newly created jar onto jd-gui.exe.
This will open a tree view of the Java source.
Note that it is not always possible for Dex2Jar to reconstruct the source code and some classes may have errors.
Also, structure of the source may be in somewhat ByteCode format, still having gotos and labels...
For more information on Dalvik opcodes see here.
Another tool useful in reconstructing Java code is Virtuous Ten Studio.

Did you know?
A few additional places to look at are...
Disable WiFi Connected Notification -
http://forum.xda-developers.com/showpost.php?p=40865546&postcount=6
Click to expand...
Click to collapse
Disable Loud Volume Warnings -
http://forum.xda-developers.com/showpost.php?p=40970794&postcount=10
Click to expand...
Click to collapse
Enable "Find My Mobile" in Settings -
system/csc/feature.xml { CscFeature_Setting_DisableMenuFindMyMobile="false", CscFeature_Setting_FindMyMobile="true" }
Click to expand...
Click to collapse
Unhide 'broadband' APNs in Network Settings -
system/csc/feature.xml { CscFeature_Setting_HideApnList="" }
Click to expand...
Click to collapse
Enable APN edits -
SQL Editor - data/data/com.android.providers.telephony/databases/nwk_info.db_carriers - Δ editable to '1'
Click to expand...
Click to collapse

Nottach said:
A few additional places to look at are...
Click to expand...
Click to collapse
That tip about enabling Find My Mobile is quite nice. After changing that, the option does show up in Settings -> More Tab -> Security; however it doesn't appear to work correctly. The phone never shows up as registered on my Samsung Account. I even tried creating a new Samsung account to test with and by enabling remote control when over wifi and cell data.

captawsm said:
That tip about enabling Find My Mobile is quite nice. After changing that, the option does show up in Settings -> More Tab -> Security; however it doesn't appear to work correctly. The phone never shows up as registered on my Samsung Account. I even tried creating a new Samsung account to test with and by enabling remote control when over wifi and cell data.
Click to expand...
Click to collapse
Hmm, just checked it out and it seems they haven't added the S4 to the list of devices? Maybe in the future they will.

I saw that the S III shows up in the list of devices on the Samsung Dive website. I still have my "stock" rooted S III so I might check to see if this trick works on there and if it will register on the site. I can post results if anyone is interested which may let us know if we just need to wait till the S4 shows up on the site.
Edit: if anyone wanted to know: Tried on a stock rooted AT&T S3 w/ 4.1.1 and ran into same issue - I can enable remote controls but device never registers on the samsungdive.com website so maybe there is something more to getting Find My Phone working that just editing features.xml
If someone else tries this, I'd be interested in hearing if you run into the same problem.

I do a lot of decompiling/recompiling and minor smali/xml edits, I just want your general opinion here.. Do you or have you ever used Chainfires Fast AAPT?
http://forum.xda-developers.com/showthread.php?t=1907281

So I'm trying to disable the Media Volume Alert by modifying android\media\AudioManager of framework.jar, as shown below, and I'm unable to get the device to fully boot after replacing the original file. It just hangs on the AT&T logo. I can get ADB so I can replace the original and then it boots.
Does my mod look like it should break it? All I did was change the level at which the dialog appears to 16 (0x10) instead of 10 (0xa). I would think that would be OK. I don't get any error recompiling either. I've tried wiping dalvik-cache between replacements, no luck. I've also tried returning false at the beginning of the 'isEarProtectLimitOn' method, no luck. I'm stuck, any ideas?
line 483
Code:
# direct methods
.method static constructor <clinit>()V
.registers 1
.prologue
.line 60
const-string v0, "AudioManager"
sput-object v0, Landroid/media/AudioManager;->TAG:Ljava/lang/String;
.line 269
const/16 v0, 0xd
new-array v0, v0, [I
fill-array-data v0, :array_16
sput-object v0, Landroid/media/AudioManager;->DEFAULT_STREAM_VOLUME:[I
.line 2971
const/16 v0, 0x10
sput v0, Landroid/media/AudioManager;->EAR_PROTECT_LIMIT_INDEX_DISABLE:I
.line 2972
[COLOR="Red"]-- const/16 v0, 0xa[/COLOR]
[COLOR="Green"]++ const/16 v0, 0x11[/COLOR]
sput v0, Landroid/media/AudioManager;->EAR_PROTECT_LIMIT_INDEX_NORMAL:I
EDIT: This is the correct edit to disable the Loud Volume Notification. I guess my tools were out of date. After updating baksmali it worked.
Basically instead of at level 10 it triggers only at the max volume, which I think is triggered someplace else. I'll keep looking for the root.
EDIT2: In addition to the above edit the 'EAR_PROTECT_DEFAULT_INDEX' needs to be changed so it doesn't trigger at Max Volume.
Same file, line 109:
Code:
.field public static final EAR_PROTECT_DEFAULT_INDEX:I = [COLOR="Red"]0x11[/COLOR]
No moar Loudness warnings!!

Nottach said:
A few additional places to look at are...
Click to expand...
Click to collapse
Thanks for this!
This was my first time editing SQL db's, so I didn't want to do anything I wasn't sure about. After making the APN's editable, the APN protocol is still grayed out. Is there a way to change the default value of the APN protocol itself (specifically to "iPv4/iPv6") within the database?

Hey man i see ur postinf mods. I removed the ongoing wifi on s3 and same exact method works on s4 but needs to be using a deodex system which i will push this weekend however i can get u a guide if u wanna try?
sgh-i747(d2att)(sgs3) on latest cm10.1 or ultimatum

howtomen said:
Hey man i see ur postinf mods. I removed the ongoing wifi on s3 and same exact method works on s4 but needs to be using a deodex system which i will push this weekend however i can get u a guide if u wanna try?
sgh-i747(d2att)(sgs3) on latest cm10.1 or ultimatum
Click to expand...
Click to collapse
You mean the WiFi Connected notification?
I found this method. Is yours different?
Mine seems to work well but I'm curious as to what you found too.

Nottach said:
You mean the WiFi Connected notification?
I found this method. Is yours different?
Mine seems to work well but I'm curious as to what you found too.
Click to expand...
Click to collapse
in the s3 we used this method which still works and only requires the secsettings http://forum.xda-developers.com/showpost.php?p=29047026&postcount=1

howtomen said:
in the s3 we used this method which still works and only requires the secsettings http://forum.xda-developers.com/showpost.php?p=29047026&postcount=1
Click to expand...
Click to collapse
I see, I think my method never calls the NotificationManager because it returns doNotShowNotification while yours still creates the notification but never calls show() on it. which may lead to memory leaks. I think mines cleaner?

Nottach said:
I see, I think my method never calls the NotificationManager because it returns doNotShowNotification while yours still creates the notification but never calls show() on it. which may lead to memory leaks. I think mines cleaner?
Click to expand...
Click to collapse
i see makes good sense thanks for the work

@howtomen You have experience making all apps multi-window? I was abe to get the all to show in the drawer but their indexes are messed up and the wrong app gets added when dragging.
I think I have to fix or create the adapter?

Why not linking directly to the tools? dex2jar and smali are udpated often, and the current APKTool fails to properly decode some resources in stock firmware of this device.
Nottach said:
I have gathered pretty much all the things useful in modding our system.
I ask other developers to post their findings here also.
My aim is to allow people to learn how make their own edits and mods.
Let's fill this Thread with detailed how-tos instead of this Section with crappy themed ROMs.
Happy modding,
As of now our only option for recovery from a screw up is flashing the stock image via Odin, so be careful.
Downloads:
Tool Pack
APK Manager with the newest ApkTool and AAPT (Took me a while to find compatible versions of both due to strange qualifiers in resource APKs)
Dex2Jar with JD-Gui (Useful for checking out JavaCode in order to apply to ByteCode)
Baksmali/Samli Manager for editting jar files
Odin 3.07 for flashing stock firmwares (available in dev thread)
Frameworks Only
Framework files for ApkTool installation (Ready for installation to ApkTool)
Entire Deodexed System With Listed Mods
Entire deodexed system with some mods already installed for a common developer base.
Installable if you know how. Based off romracers deodexing.
- Mod list:
Instruction:
Framework installation using ApkTool
Modding using Apk Manager
Reading source using Dex2Jar
Tips & How-Tos:
http://forum.xda-developers.com/showpost.php?p=40914188&postcount=5
Click to expand...
Click to collapse

Nottach said:
@howtomen You have experience making all apps multi-window? I was abe to get the all to show in the drawer but their indexes are messed up and the wrong app gets added when dragging.
I think I have to fix or create the adapter?
Click to expand...
Click to collapse
Very excited to see this happen. Really miss this from my hacked S3.
Sent from my SAMSUNG-SGH-I337 using xda app-developers app

That download speed from devhost is PAINFUL! I'm working on porting over cm10.1's MMS.apk for our device once this is finished. I may try to find a you better mirror man lol.

Related

[MOD]/[HOWTO] Make E4GT ROMs show 1X/3G instead of just 3G! (FF18/ICS)

For the Gingerbread version of this fix, click here!
Greetings and Salutations, Epic 4G Touch Owners and other curious parties!
Disclaimer: Just reading this may cause your head to burst, your phone to catch fire, dogs and cats may do the tango! I am not responsible for any bad stuff that happens from you reading or acting on the information in this thread.
If any ROM authors want to use this fix in their ROMs, I'm completely cool with that. A quick kudos in your credits section would be nice, though.
Background: One of the things that really peeves me off about Sprint is that they want us to think we always have 3G service. I know that I don't have 3G in all of the areas I travel, and I also don't when I am roaming.
Thankfully, the fix is quite simple! It was a bit more difficult than the fix for HTC Sense ROMs as the smali edit was not quite as simple.
This was my primary reason for rooting my phone, that's how aggravating it is for me.
Let's change this:
{
"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"
}
To this:
Credits
Calkulin, sextape, sfhub, Other brave folks - For providing the leaked ROMs for me to fiddle with.
Calkulin - (indirectly) helped me find how to fix this for Sense ROMs which I wrote up here.
Samsung - for a relatively good phone. Hopefully the weird auto-brightness and battery life will be fixed next update.
The brave XDA members who try these instructions and report their success or failure!!!
XDA for being a great source of information!!!
XDA members for thinking outside of the box!!!
The fix:
This fix requires editing your SystemUI.apk file. If you are using one of the fine custom ROMs on XDA, be aware that the you or the author may have already made changes to the SystemUI.apk file, so using my file IS NOT RECOMMENDED.
If you are using Calk's E4GT 2 v1.6 ROM, you can safely use my attached SystemUI.apk file. It may work with other "stock-ish" ROMs, but this is the one I based it on. The attachment will NOT work on stock FF18.
This mod relies on the assumption that your ROM developer has not deleted any of the 1x graphic files in the ROM. The developer CAN theme or otherwise change the images as long as the file names remain the same.
What you need to perform this mod:
1. An Epic 4G Touch ROM ZIP file, or a phone running a Epic 4G Touch ROM -- AOSP ROMs already have the correct indicators.
2. The Java SDK -- So you can run Smali.
3. Smali/Baksmali -- So you can decompile/compile the classes.dex file.
4. Android SDK -- To push/pull files from your phone (adb only).
5. Some sort of archive tool (such as WinRAR, 7zip, etc).
5. A text editor capable of editing UNIX-formatted files. I recommend Notepad++, personally.
Ease Of Use Tips: Install Java SDK first, then Android SDK (if you need adb). Download the smali files (smali-1.3.2.jar and baksmali-1.3.2.jar at the time of this writing) to a new "working" folder where we can do our magic.
KEEP A COPY OF YOUR PRE-EDITED SYSTEMUI.APK FILE, just in case!
Instructions:
1a. [If you are using a ROM ZIP File]: Use 7zip/WinRAR/WinZip to open the ROM ZIP file. Navigate to system\app and extract SystemUI.apk to your "working" folder.
1b. [If you want to grab SystemUI.apk from your running phone]: Use adb to pull SystemUI.apk to your working folder. Example: adb pull /system/app/SystemUI.apk C:\Working\SystemUI.apk
To avoid problems, ONLY USE adb to pull/push SystemUI.apk. Phone apps may cause unknown issues.
2. Go to a command prompt in your "working" folder and run the following command: java -jar baksmali-1.3.2.jar -o SystemUI/ SystemUI.apk
3. Browse to your "working" folder and see that there is now an SystemUI folder inside, with other subfolders. Browse to SystemUI\com\android\systemui\statusbar\policy.
4. Edit the file called NetworkController.smali with your favorite UNIX-format compatible text editor and look for the following text. The key is to search for .line 751. Edit the line below that is in BOLD.
Code:
.line 751
:pswitch_e8
iget-boolean v3, p0, Lcom/android/systemui/statusbar/policy/NetworkController;->mShowAtLeastThreeGees:Z
[B]if-nez v3, :cond_103[/B]
5. Change that line to say #if-nez v3, :cond_103 (add the # at the beginning to comment it out)
6. Save NetworkController.smali
7. Go back to your command prompt, change to your "working" folder and issue the following command: java -jar smali-1.3.2.jar SystemUI/ -o newclasses.dex
8. If there weren't any errors, go ahead and rename the original classes.dex to classes.old and rename newclasses.dex to classes.dex.
9. Open SystemUI.apk in your favorite archiver (if you closed it earlier).
10. Drag the file called classes.dex from your "working" folder into SystemUI.apk and replace the one already in there.
11. Run the following commands to get the file on your phone:
Code:
adb remount
adb push SystemUI.apk /system/app/SystemUI.apk
adb shell stop
adb shell start
You should hear your bootup sound and then the changes should be instantly applied.
To Test:
1. Dial ##DATA# (##3282#) on your phone.
2. Enter your MSL (can be found by typing getprop ril.MSL from Terminal Emulator or adb shell).
3. Scroll to Others at the bottom of the list.
4. Click on HDR/1X Selection
5. Change from Hybrid Mode to CDMA Only Mode. This puts your phone in 1X only mode.
6. Press OK.
7. Verify 1X icon comes within 30 seconds, if you have service.
8. Repeat steps 4-7, substituting Hybrid Mode for CDMA Only Mode to switch back.
How I found this: The files in ICS are different than Gingerbread. Looking for 1x led me to NetworkController.smali. There is a lookup called mShowAtLeastThreeGees (which I thought was hilarious). There are 6 locations that reference this boolean value. The correct one is the a couple of lines before a reference to DATA_1X. I wish I noticed that earlier as I was commenting out each one at a time until I found the last one, which coincidentally was right before DATA_1X. That's what happens when you've got too many things going on at once.
Please let me know whether or not this worked for you. I'd like to make a list of ROMs (with applicable mods) this works for or doesn't work for.
I will do whatever I can to help if you are struggling. If there's something you don't understand, please let me know. I can update the instructions if I accidentally wrote something wrong.
Great work once again
Sent from my SPH-D710 using Tapatalk 2
Finally!!! I will give it a go right now... mShowAtLeastThreeGees - that IS pretty funny. I guess Google programmers do have a sense of humor.
EDIT: Works like a charm. Here's modded SystemUI.apk from Calkuin's newest FE22 ROM, for those who don't want to mess with SMALI edits.
Awesome work! Now help us find where they've buried the lines to hide AM/PM in there
datajosh said:
Awesome work! Now help us find where they've buried the lines to hide AM/PM in there
Click to expand...
Click to collapse
i'll +1 that. Its one of the main reasons I can't stand TW.
nice work
Thanks Nivron. Here is the systemUI.apk for the stock deodexed rom.
Nice work.
Haven't tested it just yet but it looks like they changed it from line 752 to 751 in FF02 for anyone wanting to make the change in the latest build.
Is it possible for someone to update this for the new FF02 build?
DevalB said:
Is it possible for someone to update this for the new FF02 build?
Click to expand...
Click to collapse
Here it is for stock FF02.
dtm_stretch said:
Here it is for stock FF02.
Click to expand...
Click to collapse
To install, I just ADB push?
DevalB said:
To install, I just ADB push?
Click to expand...
Click to collapse
Yeah, or you can use a file explorer and drop it in system/app, then reboot.
dtm_stretch said:
Yeah, or you can use a file explorer and drop it in system/app, then reboot.
Click to expand...
Click to collapse
I tried dropping it into system/app, which caused the device to lock up and FC systemui. I did a battery pull, and now I'm left with no UI icons, etc.
I think it's due to no space left in my /system/ folder. I deleted the failed install of S-voice, which cleared up 20MB, and now it works!
---------- Post added at 04:59 PM ---------- Previous post was at 04:46 PM ----------
So I tried changing my mode from Hybrid to CDMA only, and waited about a minute, and my device stayed on 3G. I even rebooted just to be sure.
Thoughts?
I downloaded the modified FF02 systemui.apk file, and used ES File Explorer to paste it into /systemUI/app/, after backing up (adb pull) the stock systemUI.apk
DevalB said:
I tried dropping it into system/app, which caused the device to lock up and FC systemui. I did a battery pull, and now I'm left with no UI icons, etc.
I think it's due to no space left in my /system/ folder. I deleted the failed install of S-voice, which cleared up 20MB, and now it works!
---------- Post added at 04:59 PM ---------- Previous post was at 04:46 PM ----------
So I tried changing my mode from Hybrid to CDMA only, and waited about a minute, and my device stayed on 3G. I even rebooted just to be sure.
Thoughts?
I downloaded the modified FF02 systemui.apk file, and used ES File Explorer to paste it into /systemUI/app/, after backing up (adb pull) the stock systemUI.apk
Click to expand...
Click to collapse
Are you stock and deodexed? Also have you tried changing the permissions of systemUI.apk to match the other apks in system/app?
dtm_stretch said:
Are you stock and deodexed? Also have you tried changing the permissions of systemUI.apk to match the other apks in system/app?
Click to expand...
Click to collapse
Stock FF02, rooted: http://forum.xda-developers.com/showthread.php?t=1694695
Let me try the permissions, see what it does.
DevalB said:
Stock FF02, rooted: http://forum.xda-developers.com/showthread.php?t=1694695
Let me try the permissions, see what it does.
Click to expand...
Click to collapse
That isn't deodexed and this is a smali edit, so I don't think it will work.
Sent from my SPH-D710 using Tapatalk 2
dtm_stretch said:
That isn't deodexed and this is a smali edit, so I don't think it will work.
Sent from my SPH-D710 using Tapatalk 2
Click to expand...
Click to collapse
You can use a odex rom and with root explorer delete both SystemUI files and replace it with the SyetemUI.apk posted in this thread, it will work I have tried it.
now I'm assuming that you can do the same thing if you know how to take out the systemUI from your odex rom and deodex it and then do the mod.
OP updated for FF18, small change (.line 752 to .line 751). Note that the attachment is still for Calk's E4GT 2 v1.6 ROM and won't work right with FF18.
Deodexed FH13
Here it is for FH13 Deodexed

RUJELUS22's AIO script (Updated 2-16-13)

The Goods​
About My Script:
I have been using and working on this script for sometime now, I started back when ICS first came out and we where no longer able to decompile apks in 1 step. All of the mods and things that I have posted on xda in the last year, have been made with this script. This script allows for editing those apks with a few buttons clicks. It can edit apks from any version of android. It has been posted on the Team Venum Forum and has been working for many of the Team Venum members.
With this script you will be able to:
Compile/decompile (Odexed and Deodexed) apks and jars
Make CWM zips of your projects
Flash and Push things to the phone
Make and install signed apk projects
Search decompiled apks
and much much more...
Sections:
Header bar: This displays the script info and current project.
AIO Tool: These are all options that you can use to mod. They will all be highlighted if they are available, otherwise they will be grayed out and have a short description why it’s not available.
Mid Section: 11 and 100 will always available. 11 allows you to choose your project from the “place-here-for-modding” folder. 100 will refresh the menu (usually for connecting/dis your phone).
Odex Section: These options will only be enabled if a phone is plugged in. The phone you are working with is needed for odexing and deodexing.
- 20 Deodex the entire ROM on your phone
- 21 Deodex just one apk or jar file
- 22 Odex the entire ROM on your phone
- 23 Odex a single file
Special Items section: These are portable apps and options.
- 91 Open Color edit. Allows you to visually view and change the color.xml file
- 92 Compile all .9 images inside the dot9 folder
- 93 MD5 Checker – Seldom used, handy to double-check MD5 to verify good file downloads.
- 94 Phone/Emulator – menu for phone and emulator choices.
- 95 Search tools – app to search inside smali or res files (ie textColor="#ffc0c0c0"). (Must have C++ runtime or PRGrep installed)
- 96 Open Notepad++ – best Windows/Android editor that has smali and log syntax highlighting tweek.
- 97 Color Wheel – color wheel with cool color drag and drop from anything feature.
- 98 Color Change – for smali only. Converts from hex to smali.
- 99 Options & Misc – set Header Bar options, clean folders and check logs, Sounds, and color theme for the Script.
- ** Exit the App – usually a better option for closing the Script because it closes the ADB running in the background.
I tried to designed this to make editing apks and doing things with your phone as easy as possible.
{
"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 here you go. If you have any questions or would like to see something added just let me know.
To Install: (For Windows Only)
1. Extract the zip file to a folder on your computer that does not have spaces in the name Ex. C:\apk\
2. Run the Start_AIO script (When this is opened it will check for updates and make sure adb and java are installed. Will also make all of the needed folders in the AIO dir)
3. Place an apk or jar in the place-here-for-moddding folder and have fun.
To Update: (For Windows Only)
1. Extract the new zip into you previous AIO folder.
2. Let it overwrite the current version files
3. Have Fun.
Requirements:
1. Java JDK must be installed
2. Android SDK must be installed and up to date
Downloads:
Downloads on TeamVenum.com
ChangeLog:
Version 2.0.0.3
-Added New chgcolor that is smaller
-Added New hex to smali script from Allockse and removed xUltimates colorchange.exe
Version 2.0.0.2
-Added Updated apktool 1.5.2
Version 2.0.0.1
-Added Updated apktool 1.5.1
-Updated aapt
-Updated notepad++
-Fixed a few bugs in the script
Setting up your PC for success!
1. Download and install the Java JDK from here
http://www.oracle.com/technetwork/java/javase/downloads/index.html
2. Download and install the Android SDK
http://developer.android.com/sdk/index.html
3. After the SDK is installed open it and check and install these boxes
Android SDK Tools
Android SDK Platform-tools
Check the whole folder for any version you want to work on (You can check multiple, I have from 4.1 to 2.3.3)
When installing if any ask for a password just click cancel on those
4. Set your windows environment path
Follow this guide until step 3 - http://www.itechtalk.com/thread3595.html
In the image in step 4 find the Path Variable in the bottom section (Double Click to edit it)
Add your android sdk platform-tools folder (Usually C:\Program Files (x86)\Android\android-sdk\platform-tools or C:\Program Files\Android\android-sdk\platform-tools
So at the end of what is already there in Path put this ;C:\Program Files (x86)\Android\android-sdk\platform-tools (Make sure to add the ; before the whole string)
Click ok and save all of that
5. Open my script and setup your framework files
Choose option 99, hit enter
Choose option 4, hit enter
Choose your phone, or choose the last option to put the files in manually.
Choose option 11, select your apk and have fun modding.
6. At this point you should be all setup and should be able to decompile and compile apks and jars successfully.
Please let me know if I forgot something, it has been a minute since I set it up.
Nice work :good:
Sent from my SPH-D710 using Tapatalk 2
You are a beast, thanks for the awesome script!
DarkJelly Gnex on JellyBro sent this from the app.
Thanks! Awesome work!
This will be in Android Development for all phones very soon. This is real development. Congrats and thanks to my friend Rujelus. If a noob like me is starting to understand it, this is going to make themers lives so much easier.
Sent from my Galaxy Nexus using Xparent SkyBlue Tapatalk 2
This is an awesome time-saving tool. Thanks for sharing.
Sent from my SPH-D710
thank you for this. tyvm.
So please forgive the noobish question, but I've been doing some reading in preparation of trying to learn how to theme.
Could I literally create a theme for a TW Rom using this tool? I say SystemUI mentioned but not Framework, so I wasn't sure if I could create an entire theme using this tool or not.
You sir are the man! Thank you for such a great tool. :thumbup::beer:
Sent from my SPH-D710 using xda premium
Thanks for all your work to make it easier for us. Great Tools. :victory:
Working on a new version the last few days that will have the ability to, work with odexed ROMs. It will be able to make a flashable zip to deodex and odex the ROM. It will also be able to pull a file deodex it, then you can mod it. Then it will compile it, reodex it and push it back to the phone.
Still got a bit of work to do on it, but I wanted to see if there was interest in this, or if there was something else in regards to odexing that you would like to see added.
mjs2011 said:
So please forgive the noobish question, but I've been doing some reading in preparation of trying to learn how to theme.
Could I literally create a theme for a TW Rom using this tool? I say SystemUI mentioned but not Framework, so I wasn't sure if I could create an entire theme using this tool or not.
Click to expand...
Click to collapse
Yes you can mod any apk or jar with this. The only other thing you would need is some sort of image editor. Like photoshop or paint.net
rujelus22 said:
Working on a new version the last few days that will have the ability to, work with odexed ROMs. It will be able to make a flashable zip to deodex and odex the ROM. It will also be able to pull a file deodex it, then you can mod it. Then it will compile it, reodex it and push it back to the phone.
Still got a bit of work to do on it, but I wanted to see if there was interest in this, or if there was something else in regards to odexing that you would like to see added.
Click to expand...
Click to collapse
Great concept. Are you sticking strictly with the apk's or will this script be able to deal the jar files as well for odex/deodexing?
tdunham said:
Great concept. Are you sticking strictly with the apk's or will this script be able to deal the jar files as well for odex/deodexing?
Click to expand...
Click to collapse
It does apks and jars
Sent from my SPH-D710 using Tapatalk 2
rujelus22 said:
Yes you can mod any apk or jar with this. The only other thing you would need is some sort of image editor. Like photoshop or paint.net
Click to expand...
Click to collapse
Thanks, I'm going to use this as my starting point for making themes!
So the new AIO is almost ready. I have some people testing it out. What is everyone's thoughts about a free and a pro version for $1. The pro version would allow for batch odexing and deodexing of a rom in minutes with one click. The free version would still allow for editing and modding odexed files the same way we do deodexed now.
With this it will make it so there is no reason to have a deodexed ROM.
New things that have been added are
-odexing full ROMs
-deodexing full ROMs
-odexing and deodexing single files
-editing of odexed apks and jars with no extra steps
-making/restoring/deleting/and fixing md5 mismatch for nands
-Tons of optimized code
-Redone most menus for easier viewing
-More I am sure I am forgetting
Let mess know what you think. I would definitely like some opinions.
Sent from my SPH-D710 using Tapatalk 2
You do so much for us that I think giving back is always good. I am up for it.
Sent from my SPH-D710 using Tapatalk 2
A dollar for the project version..?
I say go for it..a dollar is not much and some devs would charge way more for those types of options
-TeaM VeNuM Like A Boss
-Galaxy Note II Edition

APK (Game) Modder v1.0 Beta

Please Avoid Quoting This Post Into This Thread
Lets hope you can all put it into good use.
This App Will Read A Mod Configuration File & Patch Your Game's APK to increase/decrease graphics Quality to make the game more playable.
{
"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"
}
Download Link V1.0b
Download Link V1.0c
Requirement​Java
.Net Framework 3.5(Only need this if you get .NET framework initialization error)
System.Xml.Linq.DLL (This should be part of .Net 3.5)
Ionic.Zip.DLL (This is embedded in the exe itself)
^^While the 2 DLL are essential you SHOULDN'T need to download them, unless you're getting an error regarding missing "Blah assembly" or something to that extent^^
^^If you needed to download the DLLs place them in the same folder as the exe^^​
Instructions​
Run The App
If You Don't Have The Mod Downloaded, Download Them Below & PLACE them into the Mods Folder
Choose The Mod In The App
Browse For The APK & Patch
Once patched you can find the new apk inside the signed folder
Install Tt Over Your Game & Enjoy
Notes​This Thread Is For The App & Not Mods Discussions, Please Keep Those In The Games Mods Thread
As I'm Extremely Busy, PM'ing Me Isn't Wise, As I Check XDA Once Or Twice A Day,
Posting Your Problem Here Or The Mods Thread Is Better For You.... As More People Will See It, Thus More Can Help You.
Unless It's Something You Can't Post On The Thread For Some Reason.​
Check Out The Next Few Posts For​
Mods
How To Create Mods
How To Extract Your APK For Patching Non/Rooted
Feature Updates​I Hope To Make The Process Of Creating Mods Much Easier
1) By Creating An Archive That Would Contain All Of The Patch Details, Author, Cover Picture
2) By Making The Creating A Method To Create The Archive For You​
Download & Place These Archives(Zip) into the Mods Folder Without Extracting Them
Please, Keep All Mods discussions (it's Working/Not Working) on the Mods Thread
Need For Speed Most Wanted v1.0.28 - Gamer Modder Pack By Hamdir
Need For Speed Most Wanted v1.0.46 - Gamer Modder Pack By Hamdir
Modern Combat 4 v1.0.1 - Gamer Modder Pack By Hamdir
Please Don't Quote This Entire Post
Ok So You're Hooked And Want To Mod Your APK but can't get it....
well it should be simple enough,
Method 1,
Get ES File Explorer File Manager & Run It
Click On The AppMgr Which Is The 2nd Icon To The Right Top Hand,
Look For The App You Want To Retrieve,
Long Click On It & Choose Backup,
That Would Cause The APK to be copied to /sdcard/backups/apps/
Find It There And Copy It To Your Pc.
Method 2,
Let Take Modern Combat 4: Zero Hour As an Example;
Open The Play Store Through Your PC
Look At The Link https://play.google.com/store/apps/details?id=com.gameloft.android.ANMP.GloftM4HM&feature=featured-apps
that Highlighted part should be the name of the APK...
So Try This
Code:
adb pull /data/app/com.gameloft.android.ANMP.GloftM4HM-1.apk com.gameloft.android.ANMP.GloftM4HM-1.apk
Should That Fail try replacing the -1.apk with -2.apk and that should do the trick
Method 3,
If You're Rooted, Use Any File Explorer And Navigate To /data/app/
Locate The APK and copy it to the SDcard then onto your computer,
Even faster Still Once You Know The Exact Name Use
Code:
adb pull /data/app/gamename.apk gamename.apk
Quick Run Down of how this works
Mode1, will decompile the APK, Copy The Modded Smali Code, Recompile, Sign & ZipAlign
Mode2,will decompile the APK, Find & Replace A Section Of The Smali Code, Recompile, Sign & ZipAlign
To Create Your Own Mods, Use One Of The Mods In The Mods List As A Sample For The Structure,
And Due Note that the MC4.XML can be called whateveryoulike.xml and it will still work
Samples Based On MC4, Mode1
Code:
<?xml version="1.0"?>
<Game>
<Name>Modern Combat 4 v1.0.1 Mode 1</Name>
<Description>This Mod Increases Effects
Tested on Version: 1.0.1
Mod Credit: Hamdir
Patch Mode: 1
</Description>
<Cover>mc4_cover.jpg</Cover>
<Patch ID="1">
<Mode>1</Mode>
<OldF>com/gameloft/android/ANMP/GloftM4HM/MC4.smali</OldF>
<NewF>MC4/MC4.smali</NewF>
</Patch>
</Game>
OldF= File To Be Replaced
NewF=Modded File Found in App Directory (Smali/MC4/MC4.smali)
Mode2
Code:
<?xml version="1.0"?>
<Game>
<Name>Modern Combat 4 v1.0.1 Mode 2</Name>
<Description>This Mod Increases Effects
Tested on Version: 1.0.1
Mod Credit: Hamdir
Patch Mode: 2
</Description>
<Cover>mc4_cover.jpg</Cover>
<Patch ID="1">
<Mode>2</Mode>
<SmaliF>com/gameloft/android/ANMP/GloftM4HM/MC4.smali</SmaliF>
<Find>.method public static getGeneration()I
.registers 7
const/4 v2, 0x1
const/4 v1, 0x0</Find>
<Replace>.method public static getGeneration()I
.registers 7
const/4 v0, 0x2
move-result v0
const/4 v2, 0x1
const/4 v1, 0x0</Replace>
</Patch>
</Game>
SmaliF, Smali File To Be Edited
Find, Line To Be Replaced
Repace, Line To Be Replaced With
OFC, You Can Have Multiple Patches With Multiple Modes Applying To the Same/Difference Smali Files
Once You Run The App, it will create the necessary Folders which you'll extract the mods into
it dont want to work -.-
My mod packs for both MC4 and NFS are tested and working
This might be one of the best tool for HOX user. Thank for make it happen. Gonna test it when I have free time..
Sent from my HTC One X using Tapatalk 2
Great initiative mate! I'm glad you have decided to make this application. I'm sure this will help a lot of HOX users.
Thx,
Nice app
hamdir said:
My mod packs for both MC4 and NFS are tested and working
Click to expand...
Click to collapse
Could you please make a how to Setup Video ?
Sent from my HTC One X using xda premium
hamdir said:
My mod packs for both MC4 and NFS are tested and working
Click to expand...
Click to collapse
This makes me want to take up gaming on the HOX full time Thanks Thunder07!!!! Slightly ot but when this gets up and running are you thinking of doing anything for GTA vice city Hamdir?
Thunder you are the man another wicked tool thanks carnt wait to try when I get back from work thanks again man
skydragon team
Do the patched .apk files work for other phones too? I would really like to try upping the graphics to max on my Nexus 4.
Sent from my Nexus 4 using Tapatalk 2
alwaysbboy said:
Do the patched .apk files work for other phones too? I would really like to try upping the graphics to max on my Nexus 4.
Sent from my Nexus 4 using Tapatalk 2
Click to expand...
Click to collapse
yes it might work for other devices
Awesome, thanks thunder. I have tried many ways to getfull effects on MC4 on my EVO 3D but everything failed. Chanifire, file edits etc none worked. But this tool did the job. My MC4 graphics mode was 1 by default. I changed it to 3 ( yes 3) and its working great. Thank you.
But most wanted didnt change for me . Do you know any fix? i have the same version as you.
---------- Post added at 08:24 PM ---------- Previous post was at 08:22 PM ----------
hamdir said:
yes it might work for other devices
Click to expand...
Click to collapse
hey hamdir, do you know of any fix for NFS MW ? You had helped me on evo 3d section, but your app didnt changed nything . Thank you.
Hey guys
tried the app with 2 computers and always getting the same error.
@Everyone,
Thanks For The Support, I Didn't expect so many people would be interested in this app
@tessut,
Telling me it doesn't work wont make it work,
if you're getting an error, report it,
the mod list is empty, download them from the mod post,
if the new apk is no different, could be because you're reinstalling the same APK and not the new one in the "signed" folder,
if the new APK is not working, well let hope it does because i can't think of anything else at this moment.
also making a video would take time.... i really dont have any,
i want to make few updates to the app but still dont have time to do that aswell.
@MeLViN-oNe,
i can see Ionic.Zip in the error, try downloading that DLL from the 1st post.
thunder07 said:
@MeLViN-oNe,
i can see Ionic.Zip in the error, try downloading that DLL from the 1st post.
Click to expand...
Click to collapse
Thanks, that did the job
Next time i should read the entire OP
waiting for NFSMW v1.0.46 Gamer Modder Pack :fingers-crossed:
Not working.
File not found error.
Win 7 64bit
on win 7 32 bit it worked.

[Discussion] Deodexing Android 5.0 - What are we gonna do?

Hi friends,
So several hours ago, Samsung released Android 5.0 for our device(Galaxy S5 - G900F):
http://www.sammobile.com/2014/12/04/samsung-galaxy-s5-sm-g900f-receives-android-5-0-lollipop-update
I have already downloaded it to investigate it.
I have unpacked it using Android kitchen but I faced a problem.
Each app now has its own folder which built like this(for example we will use systemui) :
{
"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"
}
System/priv-app/SystemUi
Main folder includes SystemUI.apk
Then we have other folder System/priv-app/SystemUI/arm which includes the following:
SystemUI.odex.art.xz
SystemUI.odex.xz
The problem now is that we can not deodex these files.
Both files(SystemUI.odex.art.xz and SystemUI.odex.xz) can be opened using 7zip. Each file has inside odex file(SystemUI.odex.art and SystemUI.odex).
So I have tried to extract the odex files and deodex them using latest baksmali, but I get java errors.
So at the moment, we can not deodex any of the files(even jars..).
The other problem that comes out is when we get a deodex option, system won't boot because Android 5.0 is based on ART which uses odexed system. In 4.4.2 & 4.4.4 when we tried to use ART on deodexed system it didn't work.
Something that can be useful for themers - the APK itself can be decompiled using apktool 2.0.0rc3 but we get only the res folder, no smali no nothing.
BTW, we use deodexed system in order to edit smali and add good mods, but it seems not possible, so I thought that maybe xposed is a good idea but xposed doesn't work either on android 5.0.
I opened this discussion so we can post & share here our findings regarding this situation and in hope to find a solution.
Have a great weekend,
Tamir
good idea to open this thread hope that someone can provide some news about that
Edgarf28 his rom boots ART in deodexed by simply removing the .odex files in the system/app and system/priv-app
Its somehow makes booting faster and performance also.
Its a v4.4.2 rom NG7
Using ktoonsez v9...??? As my kernel.
But it seems with official v5.0 that its all different now, is this the same on AOSP? Or other non samsung v5.0 roms?
And thanks for starting this thread, makes it easier for all to share ideas etc.
Sock12345 said:
Edgarf28 his rom boots ART in deodexed by simply removing the .odex files in the system/app and system/priv-app
Its somehow makes booting faster and performance also.
Its a v4.4.2 rom NG7
Using ktoonsez v9...??? As my kernel.
But it seems with official v5.0 that its all different now, is this the same on AOSP? Or other non samsung v5.0 roms?
And thanks for starting this thread, makes it easier for all to share ideas etc.
Click to expand...
Click to collapse
What you are saying is not possible.
You say that he removed all odex files? So how system boots? and if it was deodexed, there should not be any odex file.
Android 5.0 with Samsung system. Check Sammobile.
tamirda said:
What you are saying is not possible.
You say that he removed all odex files? So how system boots? and if it was deodexed, there should not be any odex file.
Android 5.0 with Samsung system. Check Sammobile.
Click to expand...
Click to collapse
Yeah you take an odex rom, just remove all the .odex and it works fine.
@_alexndr found this methode maybe he can explain it better
Sock12345 said:
Yeah you take an odex rom, just remove all the .odex and it works fine.
@_alexndr found this methode maybe he can explain it better
Click to expand...
Click to collapse
Odex files contain all the smali for the system, once you delete all odex file you can not boot a system.
Sent from my SM-G900F boosted by PhoeniX ROM
This is true for 4.4.2 I believe. The classes.dex is also in the apk so simply removing the odex files effectively deodexes
However 5.0 is totally different so that is irrelevant for here
Goldie said:
This is true for 4.4.2 I believe. The classes.dex is also in the apk so simply removing the odex files effectively deodexes
However 5.0 is totally different so that is irrelevant for here
Click to expand...
Click to collapse
Have been searching around the internet and found some people that claims that deodex can not be applied due to art runtime, odex and deodexed apply to davlik which is not in use.
I have tried to build baksmali from source and with the latest changes but the same error occurs.
Sent from my SM-G900F boosted by PhoeniX ROM
A suggestion : maybe someone with lollipop installed can deodex the system while it runs on his device? I have seen before a script that does that. Maybe after installing the system it unpacks the odex file so it can be deodexex?
Sent from my SM-G900F boosted by PhoeniX ROM
Hope someone will get it deodexed soon, maybe you will have to make a first try on AOSP v5.0, not sure if it already exist v5.0 deodexed AOSP.
@tamirda
Google can't cut support for originally deodexed apps (e.g. from Play Store), which originally has developed for dalvik runtime
Moreover - some apps in BNL2 ROM are still originally deodexed an WORKS
Look in the directory /system/priv-app/PersonalPageService/PersonalPageService.apk
This app contains classes.dex exclusively inside apk and can be succesfully (bak)smali with API level 21
_alexndr said:
@tamirda
Google can't cut support for originally deodexed apps (e.g. from Play Store), which originally has developed for dalvik runtime
Moreover - some apps in BNL2 ROM are still originally deodexed an WORKS
Look in the directory /system/priv-app/PersonalPageService/PersonalPageService.apk
This app contains classes.dex exclusively inside apk and can be succesfully (bak)smali with API level 21
Click to expand...
Click to collapse
Yep there are around 7 apps that has classes.dex.
Something interesting is that even playstore is in the same way of other art apps (app+2 seperate files).
Anyways, been searching and libdvm which responsible for davlik was removed by google...
Sent from my SM-G900F boosted by PhoeniX ROM
_alexndr said:
@tamirda
Google can't cut support for originally deodexed apps (e.g. from Play Store), which originally has developed for dalvik runtime
Moreover - some apps in BNL2 ROM are still originally deodexed an WORKS
Look in the directory /system/priv-app/PersonalPageService/PersonalPageService.apk
This app contains classes.dex exclusively inside apk and can be succesfully (bak)smali with API level 21
Click to expand...
Click to collapse
Yeah correct even Smart Remote and S Health contain the dex files and they run properly in kitkat :
Albe95 said:
Yeah correct even Smart Remote and S Health contain the dex files and they run properly in kitkat :
Click to expand...
Click to collapse
Yea but they are not the main system files we need in dex...
Sent from my SM-G900F boosted by PhoeniX ROM
tamirda said:
Yea but they are not the main system files we need in dex...
Sent from my SM-G900F boosted by PhoeniX ROM
Click to expand...
Click to collapse
Yep exactly only Gallery, of the "main" apps, are deodexed all other are odex.
And notice that SystemUI and Keyguard now are a single apk.
tamirda said:
Yep there are around 7 apps that has classes.dex.
Something interesting is that even playstore is in the same way of other art apps (app+2 seperate files).
Anyways, been searching and libdvm which responsible for davlik was removed by google...
Click to expand...
Click to collapse
Agrees
But there is new binary file /system/bin/dalvikvm32 and it's symlink dalvikvm -> dalvikvm32
Albe95 said:
Yep exactly only Gallery, of the "main" apps, are deodexed all other are odex.
And notice that SystemUI and Keyguard now are a single apk.
Click to expand...
Click to collapse
Yep more stupid thing by google...
_alexndr said:
Agrees
But there is new binary file /system/bin/dalvikvm32 and it's symlink dalvikvm -> dalvikvm32
Click to expand...
Click to collapse
Amm i have looked into the source of baksmali.. some java there requires the libdvm for some reason. Maybe we need to wait for baksmali to be updated(or maybe it is a final????)
Sent from my SM-G900F boosted by PhoeniX ROM
_alexndr said:
Agrees
But there is new binary file /system/bin/dalvikvm32 and it's symlink dalvikvm -> dalvikvm32
Click to expand...
Click to collapse
Ok the davlikvm32 appears to instead of davlikvm, but dexopt is missing too in bin and also the libdvm is missing
Running a different S5 variant but I thought I would point out that I've removed all 'appname'.odex.art.xz files from system/app and system/priv-app arm folders, leaving only 'appname'.odex.xz (about 250 of them) and the system runs fine without them. Not sure what their purpose is.
tdunham said:
Running a different S5 variant but I thought I would point out that I've removed all 'appname'.odex.art.xz files from system/app and system/priv-app arm folders, leaving only 'appname'.odex.xz (about 250 of them) and the system runs fine without them. Not sure what their purpose is.
Click to expand...
Click to collapse
Can you check under develper settings if your system is davlik or art?
Anyways i have some good news.
I have contacted baksmali/smali developer. Apparently he is working on an update but it will take a lot of time due to art runtime. I have offered him our help in order to get this done fast and help him. If someone can help(expert in java) please post here or send me pm.

[APK] Xperia Chinese Keyboard 25.1.A.0.45 modified to work on any device (tested on LOS 18.1)

Xperia Chinese Keyboard modified to work on any device
Supports pinyin, zhuyin, stroke order, handwriting and Cangjie, as well as English input
Version: 25.1.A.0.45 Patch #6 Updated 2022-11-18
{
"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"
}
​
Download
From Mega.nz (file too large to attach here):
Patch 6 for LOS 19.1 / Android 12
Patch 5 for LOS 18.1 / Android 11
Spoiler: Other versions – for reference only
Patch 4 - Test (for Lineage 18.1, test workaround)
Patch 3 (for LineageOS 18.1, occasional crashes)
Patch 2 (for LineageOS 17.1)
Patch 1 (for LineageOS 16.0)
Installation
Best installed with: adb install -g <filename>
Otherwise, have to manually grant the permission: Settings → Apps & notifications → See all apps → Xperia Chinese keyboard → Advanced → Display over other apps: Allowed (will crash if you won't)
Enable the input method in Settings → Languages & input and switch to it using the keyboard icon on the navigation bar, which appears when you start editing text
Some Details
Based on firmware H9493_Customized TW_52.1.A.3.137-R4C for Sony Xperia XZ3 (Akatsuki)
Includes libraries to make it work as a user (not system) app:
libbase.so, libc++.so, and libnativehelper.so from LineageOS 18.1
libsqlite.so from SQLite's official precompiled Android binaries
Changed values loaded into $LayoutParams;->type:I from 0x000007dc = 0x000007d9 (TYPE_KEYGUARD_DIALOG) | 0x00000002 (TYPE_APPLICATION) | 0x00000001 (TYPE_BASE_APPLICATION), only allowed for system apps, to 0x000007f6 (TYPE_APPLICATION_OVERLAY) and updated the manifest accordingly to request the permission android.permission.SYSTEM_ALERT_WINDOW (which must be granted manually)
Patch 3: Remove dependency on Sony Vibration Effect library (com.sonymobile.vibrationeffect.api_1) from the manifest
Patch 3: Replace all references to Sony Vibration Effect library: invoke-static {p1}, Lcom/sonymobile/vibrationeffect/VibrationEffect;->get(I)Landroid/os/VibrationEffect;which were causing the app to crash, with standard Android calls:
const/4 p0, -0x1 (DEFAULT_AMPLITUDE)
const-wide/16 v2, 0xc (Duration: 12 ms)
invoke-static {v2, v3, p0}, Landroid/os/VibrationEffect;->createOneShot(JI)Landroid/os/VibrationEffect;
— for keypresses
const v0, 0x2 (EFFECT_TICK)
invoke-static {v0}, Landroid/os/VibrationEffect;->createPredefined(I)Landroid/os/VibrationEffect;
— for other events
Patch 4 - Test: Remove the invocation of a virtual method invoke-virtual {p0}, Lcom/sonyericsson/textinput/chinese/uxp/view/hw/HWFullView;->getVisibility()I that causes a crash under some circumstances in InputMethodServiceGlue. However the side effect of this change is that other UI elements cannot be interacted with while the keyboard is open. How to fix this completely needs further investigation. Since the crash seems rare, I recommend sticking with Patch 3 for now.
Patch 5: A different workaround for the above mentioned issue. If iget-object p0, p0, Lcom/sonyericsson/textinput/chinese/glue/InputMethodServiceGlue;->mHwFullView:Lcom/sonyericsson/textinput/chinese/uxp/view/hw/HWFullView; returns 0 (i.e. effectively NULL but there's no explicit check for that in Smali), then skip the call and return from the method. Otherwise, proceed. After a week of testing, this seems to work well: no rare crashes, and the UI is accessible too with the keyboard open.
Tested to work on two different LineageOS 18.1 devices. Should work elsewhere too. If it doesn't, it's probably because of the three libraries (libbase.so, libc++.so, and libnativehelper.so): check adb logcat and replace them with the versions from your system.
Patch 6: Fix compatibility with LOS 19.1/Android 12 where a call to jniGetFDFromFileDescriptor() from libnativehelper.so fails by design due to API changes (see: Google Issue Tracker), and the version of the library included with the app can no longer be used due to name conflict with the system library with the same name. The workaround: rename the bundled libnativehelper.so (same as Patch 5/Android 11/LOS 18.1, so unchanged) to libforeignenemy.so and change references to it in libcootek_pte_oem.so, libcootek_pte_oem_western.so and libcurve_oem.so accordingly. Also update libbase.so and libc++.so to current versions from LOS 19.1 (Android 12).
Related
Xperia keyboard for most languages port by @greenys'
Xperia Chinese keyboard version 10.1.A.0.1 (Android 4.4+, 2012-2013) by @danist727
That's some amazing work there. I wish there was a more up to date version for general languages not just the good ol 8.0.A.110 version that I've been using for 3 years or more across my devices. Thanks a lot.
Thank you for your work! However, the link is down, it is giving 410 error from XDA. Can you reupload it? Thanks again.
sjdhmtthm said:
Thank you for your work! However, the link is down, it is giving 410 error from XDA. Can you reupload it? Thanks again.
Click to expand...
Click to collapse
Hi, the files are attached to the post, so they are hosted here on XDA. I checked the links and they seemed to start downloading correctly for me but now I edited the post and removed the inline links, so the files should show up as an attachment below the post instead.
Can you successfully download any other attachments at all (from other posts)? Maybe there are some restrictions in place for newly-created XDA accounts. Anyway, if they still don't download for you, let me know and I'll upload them elsewhere as well. (The advantage of having the files hosted here is that the links never expire.)
Aqq123 said:
Hi, the files are attached to the post, so they are hosted here on XDA. I checked the links and they seemed to start downloading correctly for me but now I edited the post and removed the inline links, so the files should show up as an attachment below the post instead.
Can you successfully download any other attachments at all (from other posts)? Maybe there are some restrictions in place for newly-created XDA accounts. Anyway, if they still don't download for you, let me know and I'll upload them elsewhere as well. (The advantage of having the files hosted here is that the links never expire.)
Click to expand...
Click to collapse
It works now, must be having some errors just now. Thanks again.
Edit: Part 2 seems to not be able to download and corrupted, second try gives me the same error again.
I asked my friend who is not logged in to download and he experienced the same error.
It would be great if you can upload it elsewhere, the two tries I where I successfully downloaded part 2 returns corrupted. Thank you.
Edit 2: Changing browsers on mobile worked. Surprised that both Firefox on mobile and desktop returned an error for me. Thank you, problem is solved.
Is this keyboard for chinese only or can I use english as well? its been a while and long since we get an updated Xperia Keyboard version, still using the 2/3 years old v8.1.A.0.12 dated November 12, 2017.
SM-03 said:
Is this keyboard for chinese only or can I use english as well?
Click to expand...
Click to collapse
It can be used for English input too. If you take a look at the first 3 screenshots, there is a button (labelled "CN") that toggles between English and Chinese in the bottom right corner of the keyboard.
It supports word completion in English too but there's no way to type accented characters (for other languages written in the Latin script).
how to dl and extract this? I downloaded two p[arts but still getting error while extracting, any other parts there or missing?
is there any update for android10?
after update to 55.1.A.0.748
chinese keyboard keep crashed
SM-03 said:
any other parts there or missing?
Click to expand...
Click to collapse
Just checked again, it unpacks fine. Nothing is missing. The complete instructions are already in the first post. Not sure what else would need explaining.
frank3302 said:
is there any update for android10?
Click to expand...
Click to collapse
I don't use Android 10. Feel free to contribute an update, and I will link to it in the first post.
Aqq123 said:
Just checked again, it unpacks fine. Nothing is missing. The complete instructions are already in the first post. Not sure what else would need explaining.
Click to expand...
Click to collapse
Yes, it's working (extracted) as per the instructions written into the OP, but the font size is too small that I didn't see /notice that instruction earlier, you should've mentioned that in bold & highlighted for better & clear visibility.
SM-03 said:
I didn't see /notice that instruction earlier, you should've mentioned that in bold & highlighted for better & clear visibility.
Click to expand...
Click to collapse
This board is called XDA Developers for a reason. As a participant you are expected to possess a modicum of rudimentary computer skills and, more importantly, willingness to learn to solve your own problems. In particular, this thread is in the Development section. This is not the place to demand an illustrated step-by-step tutorial how to unpack a ZIP file.
Besides, as duly proven, even the best instructions won't help an ignorant person who can't be bothered to read them such as yourself. And finally, neither me nor anyone else here owes you anything just because you can't get something to work, so the only thing I "should have" is not indulged this behavior earlier.
Good luck with your future endeavors as you will need it with this kind of an attitude. Now, feel free to move on.
Aqq123 said:
This board is called XDA Developers for a reason. As a participant you are expected to possess a modicum of rudimentary computer skills and, more importantly, willingness to learn to solve your own problems. In particular, this thread is in the Development section. This is not the place to demand an illustrated step-by-step tutorial how to unpack a ZIP file.
Besides, as duly proven, even the best instructions won't help an ignorant person who can't be bothered to read them such as yourself. And finally, neither me nor anyone else here owes you anything just because you can't get something to work, so the only thing I "should have" is not indulged this behavior earlier.
Good luck with your future endeavors as you will need it with this kind of an attitude. Now, feel free to move on.
Click to expand...
Click to collapse
wow, so many words for just saying the small font & you should've written it with bigger font size for better visibility? You're rare & amazing.
I am not able to merge the two zipped files into one. I followed the instruction to rename as .zip and .z01 for both files but the second part stated no content inside to extract. should I download rar software to unrar it in desktop file explorer? Can someone kind hearted enough keep the file in one and upload somewhere for me to download?
atisha said:
I am not able to merge the two zipped files into one. I followed the instruction to rename as .zip and .z01 for both files but the second part stated no content inside to extract. should I download rar software to unrar it in desktop file explorer? Can someone kind hearted enough keep the file in one and upload somewhere for me to download?
Click to expand...
Click to collapse
I just checked and it unpacks with WinRAR and 7-Zip for me. Anyway, since I made another version later, here they are both, externally hosted:
Patch 2 (try this first, should be compatible with LineageOS 17.1 at least)
Patch 1 (original version as linked above)
I also updated the original post accordingly.
Found a Bug
Hi Aqq123,
This is some impressive work, thank you for making this!
Just wanted to post a bug I found: the "pull down menu" for the Chinese typing doesn't work. E.g. I want to type the word 蚝煎, but after clicking on the arrow on the right, nothing appears! So I wasn't able to type things beyond the suggestions in the first row.
I'm using Sony Xperia 10 II, Android 10 (Build number 59.0.A.10.5), and I used Patch 2 of your download. Would really appreciate if you could solve the bug, because this keyboard is such a life saver for me. Thanks!
Screenshot: https:// drive. google. com/ file/ d/ 12eEBAzBalbq0ZKfQMh2SLI-045-Gb1Z1/ view?usp=sharing
(Included the spacing because the forum just wouldn't let me post it)
johnsyh said:
Just wanted to post a bug I found: the "pull down menu" for the Chinese typing doesn't work
Click to expand...
Click to collapse
You're right, thanks for spotting it. It used to work in the first version though, so it's probably down to some library incompatibility (and the first version itself won't work with the newer Android). I'll look into it when I have the time. A better approach though might be to ditch it altogether and look at adopting a newer APK version instead. Meanwhile, a lousy workaround is to just hand-write the character.
Since you're using Sony stock firmware, have you tried downloading the Hong Kong or Taiwan version for your device with XperiFirm, extracting the APK from there (for example with UnSIN), and installing it? It'd either work immediately or, if not, the exact library versions to make it work would also be there.
Aqq123 said:
Hi, the files are attached to the post, so they are hosted here on XDA. I checked the links and they seemed to start downloading correctly for me but now I edited the post and removed the inline links, so the files should show up as an attachment below the post instead.
Can you successfully download any other attachments at all (from other posts)? Maybe there are some restrictions in place for newly-created XDA accounts. Anyway, if they still don't download for you, let me know and I'll upload them elsewhere as well. (The advantage of having the files hosted here is that the links never expire.)
Click to expand...
Click to collapse
Thank you so much. I am able to download patch 2 and install directly. So so very grateful as this is the best T9 keyboard ever! (Could be better if it supports Malay too with black layout white font but one shouldnt be too greedy).
Aqq123 said:
You're right, thanks for spotting it. It used to work in the first version though, so it's probably down to some library incompatibility (and the first version itself won't work with the newer Android). I'll look into it when I have the time. A better approach though might be to ditch it altogether and look at adopting a newer APK version instead. Meanwhile, a lousy workaround is to just hand-write the character.
Since you're using Sony stock firmware, have you tried downloading the Hong Kong or Taiwan version for your device with XperiFirm, extracting the APK from there (for example with UnSIN), and installing it? It'd either work immediately or, if not, the exact library versions to make it work would also be there.
Click to expand...
Click to collapse
HI would you have general sony xperia keyboard (non Chinese, English) apk as well to share? with layout skin colour if possible.
On behalf of my wife, who has just upgraded from Xperia XZs to the new Xperia 1 III, and couldn't get over how bad gboard is over the Xperia 注音 input (she has a very unusual character in her name, which gboard doesn't recognize, it spoiled her fun of getting a new device when she couldn't even type her name in correctly during setup) - thank you! You have made me a hero around the house for finding this, and installing it on her phone. My old account on this forum got lost in time, gone with an e-mail domain that no longer exists, but I set up a new one just to thank you for your work!

Categories

Resources