why is it that they are installed onto data/app as a zip file?
this confuses me sooo much how does it work if they are zip and not apk!
humor me with enlightenment pleasee ^_^
apks are zips with a different name. For serious. When I pack up my version of a theme into a file that needs to be called framework-res.apk I simply zip it with no compression and then rename the file.
yes ive actaully done a little theming myself and i understand that, but what i wish to do is uninstall some of my applications and edit them to change the default icons, i have success with the apks of regular apps but i cant do it for the paid ones
it seems that in the data/app file they arent apks at all! they are zip files
and after i have edited them on the computer and re zipped, named, and signed them, i still cant get them to re install,
the purpose of this is to change the default icon and no i do not want to use bettercut because i am using ahome and its not compatible
matthewboii said:
yes ive actaully done a little theming myself and i understand that, but what i wish to do is uninstall some of my applications and edit them to change the default icons, i have success with the apks of regular apps but i cant do it for the paid ones
it seems that in the data/app file they arent apks at all! they are zip files
and after i have edited them on the computer and re zipped, named, and signed them, i still cant get them to re install,
the purpose of this is to change the default icon and no i do not want to use bettercut because i am using ahome and its not compatible
Click to expand...
Click to collapse
Hmm that's a good question. I have yet to change default icons, so I'm of no help. Sorry :-/
yeah, well its actually not that hard to do as long as you repack and sign it, that is, only for the apps that are not paid, but the paid apps on the other hand are another story completely
anyone?
I have noticed this as well, it seems that the .zip files in the app directory are protected. You will find the .apk in the app-private directory.
Hope that helps.
BlueBoar said:
I have noticed this as well, it seems that the .zip files in the app directory are protected. You will find the .apk in the app-private directory.
Hope that helps.
Click to expand...
Click to collapse
Just beat me to it! Yeah, try the APK in app-private.
workd!
thanks guys
I've looked around for some good tutorials on decompiling APKs using APKTool but haven't been able to get a few questions answered. Hoping someone can guide me with this process a bit since I'm really new at it.
A few things first: I am running CM 7.1 on a Droid Incredible (orig) and I'm also on Windows, not Linux. I'm looking to make some changes to the code of an APK and have APKtool downloaded. Questions I have so far are:
1) Do I need to use the CM 7.1 framework-res.apk file for any decompiling / /recompiling work on this 3rd party APK? Or can I do all the work without it? No one seems to have a clear answer on that and I'm not sure exactly what the framework-res.apk is for exactly.
2) After I decompile an APK and make code changes to a SMALI file, is there anything I need to do special before running the compile command?
3) After I have a newly compiled APK, what do I need to do to make this work on my phone? If I do nothing, the overall file size of the compiled APK seems much smaller than the original one that I decompiled so it seems like something is wrong. Plus it won't install. I saw one video where the newly compiled APK is renamed to .ZIP and the contents are put into the ORIGINAL APK (also renamed to .zip), overwriting all the original contents. Is this required?
4) I've also read that APKs need to be signed to install on Android. Is this correct? I found "SignApk" online which seems like it just asks you to rename your APK to app.apk and it does the signing by running a .BAT file. Is that all I have to do before installing the APK on my phone?
Would really appreciate any help on this. Or if there's a great tutorial out there on doing this, I'd be happy to read through.
Thanks for any help in advance!
I want to know these too! Hope someone helps
[Q] "smali" files on the I727? Can they be edited without Baksmali (Deodex)?
I've been looking into the coding on this phone for a while. I've made a couple of posts trying to figure out how to get Nfc enabled on this phone with no luck. So I am trying to look into it a bit further myself. I'm learning as I go, but I am trying to compare other phones files (and custom ROM files) with working Nfc with the stock ROM files on the SkyRocket to try and find clues as to which files are needed to start working on this. One thing I notice (difference) is there doesn't seem to be any "smali" files or code on the SkyRocket stock ROM. Can someone please tell me where they are located (I am rooted and use Root Explorer) on the Stock ROM or which files are used in their place?
Thanks.
**Edit**
OK, I've done a little more research and found out the "smali" code in an Odexed ROM is located in the Odexes. In order to work on them I am guessing they would need to be DeOdexed? Or is there a way to view and edit them without Baksmali?
typically bc
an odex file is renamed to class.dex and combined into the same apk
deodexing basically works likethis
every apk needs a set of instructions
thats the odex
so by removing the odex and turning it to a classes.dex
file we can remove the unwanted odex file
and speed up access to the files instructions
opens faster closes and caches faster i do beleive i could be wrong
but i know the general idea
Got the modded Camera.apk from Here. I changed my hardkey Search button to function like a Menu key (my menu hardkey won't work properly). I liked the search key as a snapshot key for the camera but now with me changing 217 "SEARCH" to MENU" it doesn't work.
I downloaded APKTool and decompiled modded .apk. Now the only problem is I can't find where to change the key to take a snapshot with "MENU" pressed. I have been looking through the .smali files and not having any luck. Menu key as far as I have seen has no function in the camera app anyways so this shouldn't be a problem.
Last question I would have (which I could probably search) would be how to take the decompiled .apk and compile it back to .apk.
Is the code for the menu button 217 or is that independent of the button?
Sent from my SCH-I510 using xda premium
Within /system/usr/keylayout/qwerty.kl "key 217 SEARCH" I changed to "key 217 MENU" also I changed /system/usr/keylayout/s3c-keypad.kl "key 217 SEARCH" to "key 217 MENU".
That is how I got Search button to open Menu.
I'll take a look for you. It probably won't take too long.
Yeah it should just be changing the key event code from the search key to the menu key in a few places.
dwitherell said:
Yeah it should just be changing the key event code from the search key to the menu key in a few places.
Click to expand...
Click to collapse
The problem for me is I can't find those few places. lol Searching through all these .smali files I think I'm gonna need my search button back lol.
Edit: I opened all of the files in NotePad++ and did a search for "search" and found several items but I don't know what to change or leave.
I think what I need to change is in AbstractCameraActivity.smali
Enlightened_Rogue said:
The problem for me is I can't find those few places. lol Searching through all these .smali files I think I'm gonna need my search button back lol.
Click to expand...
Click to collapse
I'm sure substanceD will get it for ya, but camera.smali and camcorder.smali are 2 at least. It'll be in the onkeyup and onkeydown event methods (just looked at this, but memory is a bit sketchy...)
dwitherell said:
I'm sure substanceD will get it for ya
Click to expand...
Click to collapse
As you see I don't mind doing the leg work, I'm not one of these beggers out there that just want someone to build a app just for me. Thanks for giving me some pointers. I'm just trying to learn as I go. New to modding phones (trying to get better).
Enlightened_Rogue said:
As you see I don't mind doing the leg work, I'm not one of these beggers out there that just want someone to build a app just for me. Thanks for giving me some pointers. I'm just trying to learn as I go. New to modding phones (trying to get better).
Click to expand...
Click to collapse
All right, let's see if I can be helpful without doing the work for you. The Android key codes are published here: http://developer.android.com/reference/android/view/KeyEvent.html. The smali files have the hex values for these key events without the extraneous zeros. For example, you'll notice that KEYCODE_POWER is sprinkled throughout the code as 0x1a. Try to find a block of code that refers to the common keys (power, search, menu, etc.) and see how it delegates them.
OK I replaced 0x54(Search) with 0x52(Menu) [14 instances] and then Compiled with APKTool. Moved Camera.apk to /system/app/ and now phone doesn't recognize Camera.apk. I restarted, tryed setting permissions to rw-r--r-- then restarting as well and still not being recognized.
Edit: Noticed when I moved your modded the permissions where rwxrwxrw- and it still showed up without restarting.
Enlightened_Rogue said:
OK I replaced 0x54(Search) with 0x52(Menu) [14 instances] and then Compiled with APKTool. Moved Camera.apk to /system/app/ and now phone doesn't recognize Camera.apk. I restarted, tryed setting permissions to rw-r--r-- then restarting as well and still not being recognized.
Edit: Noticed when I moved your modded the permissions where rwxrwxrw- and it still showed up without restarting.
Click to expand...
Click to collapse
Did you sign it (don't)? Also, there are some sound files in /res/raw that need to stay UNcompressed for things to work properly.
All I did to compile was from Here.
Code:
apktool b <directory of decoded apk>
Never compiled any apk before. How do you not sign it and not compress some of the resource files?
Edit: Just seen this at the bottem, but I'm using APKTool 1.4.3
idroid84 said:
Issues;
I noticed that while the new version 1.2 works great on the framework-res.apk file, it seems to have issues with other System/app files like Settings.apk,Phone.apk, etc. For these files use version 1.1.1.
Click to expand...
Click to collapse
Enlightened_Rogue said:
All I did to compile was from Here.
Code:
apktool b <directory of decoded apk>
Never compiled any apk before. How do you not sign it and not compress some of the resource files?
Edit: Just seen this at the bottem, but I'm using APKTool 1.4.3
Click to expand...
Click to collapse
Well the first part shouldn't be an issue I don't think. For the second - an apk is similar to a zip file. I would use something like jzip or winrar to extract out those sound files, delete them from the apk, then drop them back in using store or storage (i.e. no) compression. Though I am doubtful not doing this would cause the phone to not recognize the apk to be honest.
I opened the Original Modded .apk with 7zip moved the res files over just playing around waiting for a response and still no luck. Also I noticed while doing that the Modded on had a META-INF folder which I moved over to my Mod and after all that moved to phone /system/app and restarted phone still no Camera in App Drawer.
Original Mod I decompile: Camera 5-14-12
My Decomipled and editied:Camera - Menu Button
I was messing around with my phone and decided to install PBJ Kernel 0524. After installing that now Root Manager won't allow Mount R/W so now I can't change system files. I guess I'm stuck with what I got for now.
Edit: Complete noob moment... Went into CWM -> Mounted System -> Installed SU again. Now works. Back to working on Camera
Enlightened_Rogue said:
I was messing around with my phone and decided to install PBJ Kernel 0524. After installing that now Root Manager won't allow Mount R/W so now I can't change system files. I guess I'm stuck with what I got for now.
Edit: Complete noob moment... Went into CWM -> Mounted System -> Installed SU again. Now works. Back to working on Camera
Click to expand...
Click to collapse
Yeah the lost root is just a permissions thing - a number of ways to fix it, and installing su is definitely one of them. Glad you got that figured out.
I looked into this more - you changed too many 0x54s... not all of those were relevant to what you wanted (only 6 were). On top of that, only two of them were changing 0x54 to 0x52 (CamcorderRecordingMenu.smali) - the other 4 (2 in Camcorder.smali and 2 in Camera.smali) were simply changing the :sswitch_ value associated w/ 0x52 to that associated w/ 0x54.
Anyhoo - end result should now be power, menu, and search take pics/start video. Here's the apk - just rename to Camera.apk and push. If it doesnt show up right away and a reboot doesnt fix it, you could try to push in recovery, or dump it in a cwm-flashable zip and flash it. Hope it works for ya!
Thank you. I figured I probably changed too many. I just opened notepad++ and find/replaced in files. I was looking through but was having a difficult time tracing what was needed and was not. How did you compile just like I posted earlier? And how did you get META-INF and not compressing resources?
Enlightened_Rogue said:
Thank you. I figured I probably changed too many. I just opened notepad++ and find/replaced in files. I was looking through but was having a difficult time tracing what was needed and was not. How did you compile just like I posted earlier? And how did you get META-INF and not compressing resources?
Click to expand...
Click to collapse
I was lazy and used one of the gui-ized apktool approaches (apkmultitool). It took care of keeping things in order. After recompiling, I opened the apk in jzip, pulled out the oggs in /res/raw, deleted them from the apk, then put them back in and set compression to store. It should be noted that you could go about things without dealing with any of this - just pull out the classes.dex from the apk, use baksmali to decompile and smali to recompile, and place new classes.dex into the apk.
I take it the apk worked for you then?
Yes it worked perfectly! Thank you. Instead of just getting what I want then not saying anything I was decompiling yours and seeing what needed to be changed. Hopefully soon I will be able to to much much more. Just a little time devotion patients and people like you to help. Thank you so much!
I've searched and I can't find it so I wonder it any one can help, I've just installed a Sense 4.0 ICS ROM but I really miss the default bokeh live wallpaper that came on the Desire by default, it was on the Sensation originally but it appears to have been dropped for the newest version of Sense. Does anyone know where I can get it for my newly updated Sensation?
I'm also looking for it... There's a bunch of bokeh look alike LWs but I want the original that came with my sensation.
If nobody has it would anyone know how to get it from old gingerbread Rom and port it to ics??
I use this one?
http://www.youtube.com/watch?v=Urj5GW9AQF4
Thanks for the link but I'm a fan of the original... I managed to pull the apk from an ics rom running sense 3.6 the only problem is that on roms with sense 4 the apk doesn't install. Any ideas on how to get it to work?
Use Root Explorer or ES File Manager's root mode and push the apk to /system/app/
Then, change the permissions to match the permissions of all the other apks there, I believe it's RW R R, but just match it to the others. To change permissions in Root Explorer, hold your finger on the file and hit Permissions or whatever. Not sure if ES can do it, but it probably can.
After it's in /system/app and the permissions are edited, reboot and it should show up in the Live Wallpaper list.
Edit: If that doesn't work, look up the APK signer. https://play.google.com/store/apps/...1bGwsMSwyLDEsImtlbGxpbndvb2Quemlwc2lnbmVyMiJd This is ZipSigner 2 and it works perfectly. Sign the APK, then try to install it using a file manager or something, you know, install it like normal. If it still doesn't install after being signed, use the method above and push it to /system/app and change the permissions, then it should run without issues.