Cant download Cyanogenmod Nightlies?? - EVO 4G General

I want a theme for cyanogen but all of them i see are for 10/17
when i go to the cyanogenmod website and go to the nightlies i cant download any zip more than a week old.
if i try to download anything older than 10/24 i get a white screen with some random lines referring to different files:
Traceback (most recent call last):
File "/base/python_runtime/python_lib/versions/1/google/appengine/ext/webapp/__init__.py", line 511, in __call__
handler.get(*groups)
File "/base/data/home/apps/cmbalance/2.345818937960265889/pages/get.py", line 16, in get
url = getDownloadURL(device, filename)
File "/base/data/home/apps/cmbalance/2.345818937960265889/lib/download.py", line 18, in getDownloadURL
mirror = getNextMirror(file.type + "/" + file.path)
File "/base/data/home/apps/cmbalance/2.345818937960265889/lib/download.py", line 64, in getNextMirror
taskqueue.add(url='/tasks/notify_mirrors', method='get')
File "/base/python_runtime/python_lib/versions/1/google/appengine/api/labs/taskqueue/taskqueue.py", line 810, in add
queue_name=queue_name, transactional=transactional)
File "/base/python_runtime/python_lib/versions/1/google/appengine/api/labs/taskqueue/taskqueue.py", line 563, in add
return Queue(queue_name).add(self, transactional=transactional)
File "/base/python_runtime/python_lib/versions/1/google/appengine/api/labs/taskqueue/taskqueue.py", line 619, in add
self.__AddTasks(tasks, transactional)
File "/base/python_runtime/python_lib/versions/1/google/appengine/api/labs/taskqueue/taskqueue.py", line 645, in __AddTasks
apiproxy_stub_map.MakeSyncCall('taskqueue', 'BulkAdd', request, response)
File "/base/python_runtime/python_lib/versions/1/google/appengine/api/apiproxy_stub_map.py", line 86, in MakeSyncCall
return stubmap.MakeSyncCall(service, call, request, response)
File "/base/python_runtime/python_lib/versions/1/google/appengine/api/apiproxy_stub_map.py", line 286, in MakeSyncCall
rpc.CheckSuccess()
File "/base/python_runtime/python_lib/versions/1/google/appengine/api/apiproxy_rpc.py", line 126, in CheckSuccess
raise self.exception
OverQuotaError: The API call taskqueue.BulkAdd() required more quota than is available.
any help? i want a cool theme but i cant find any for the newer nightlies, and those are the only ones i can download.

The older nightlies aren't available, so that they don't hog up bandwidth or storage space on the mirrors. The oldest collection of Nightlies you'll find, is my site:
http://goo-inside.me/evo/cm6/nightly/

Related

PUMa (Patch Utility Manager)

PUMa - Patch Utility Manager​
The program is designed to install patches in the most universal applets\libraries firmware of Samsung-communicators. It works with both odexed, and with deodexed components of many firmware of devices I9100/I91**,I9300,I9500,G850,G900*,G920*/G925*,G928*,G930*/G935*,N7000,N7100,N900*,N910*,N920*,I9001,I9250(Galaxy NEXUS),I8150,P5100/5110,T310/311. Likely to install some patches and other communicators based on the Android OS. It works with external patch (the description of the format and work with them, see Puma_extpatch.txt file.. while only in Russian). Optionally, the added ability to load external data from internet. Information about loading the file is stored in the archive dllink.bin.
The following types of downloads:
• Modem FW (modem firmwares)
• Dump FW (dump stock firmware (aka the contents of the folder /system))
• Dump Content (content dump the firmware, broken into pieces by certain categories)
• Camera (camera firmwares)
• Firmware (common firmwares of devices)
• Program (program & tools)
Working with the program:
0) program preferably placed in a folder without spaces and in the Latin alphabet
1) before running the program in the folder "In" place the files that need to be applied patch/es or used submenu Necessary files for to obtain the necessary files
2) in the program indicate the type of device, AndroidOS version, the class of the patch on the right side select desired patch and click Apply. If you install the patch unnecessary, it is necessary will be shut down and run again, showing only the necessary patches.
At the end of the program components can be patched to pick up from folder "Out". Also, the after applying the patch, the program may specify a update to flashing with help ClockworkMode. While working with a patch program provides information on the processed applet\libraries as follows:
Installed - the patch is applied
Present - patch is already installed in the object
Impossible - impossible to apply the patch to the object
Partially installed - installed only a few points of patch
Mismatch - firmware version of the object is failing the established type device/AOS patch
Attention! Due to the fact that some antivirus programs (Norton360, NOD32, Avast,...) have a somewhat paranoid algorithm for determining the virus, they "found a virus" in PUMa.exe. This is a lie, because the program simply packed EXE-packer to save space. Place the file in the Exceptions PUMa.exe antivirals, so it will not annoy you. Also below is a MD5-hash of the file PUMa.exe, according to which you can verify its correctness, upon receipt of any sources
Patches supported by the program : Post #2
Donations to the project (special thanks ) : bezbo, pglmro
v 4.8
- Added Value_Res tool (Tools-Working with resources-Value_Res). It allows you to change resource values of APK-file (variables of xml-files from the folder res\values) without decompiling\recompile the applet. Currently supported by work with variables of type bool, color, dimen, integer. The algorithm works with the tool:
1. select the apk-file for editing; will automatically upload the names and values resources in the tabs
2. double click on a line change\edit variable (value changed resources are marked in bold)
3. at the end of the work click the Save button (a new file will be created with the current name, the old file is renamed to *.apk.bak)
- Added tool Obfuscation (Tools-Smali-Debug-Obfuscation). In the current version implemented methods of obfuscation of class names, methods, fields on algorithms Mirroring, Numeric order, NDP and Randomized in smali-code (the name and the algorithms invented by me). Distinctive features of the algorithms on a 5-point scale:
a) readability (1-good..5-bad)
b) difficulty in decryption (1-simply..5-impossible)
c) final code length (1-more..3-same..5-less)
Code:
(a) (b) (c)
Mirroring: 3 2 3
Numeric order: 2 4 5
NDP: 4 3 2
Randomized: 4 5 4
For general use available obfuscation method field names with algorithm Mirroring. Tool results on other methods and algorithms are only available by personal request.
- Changed algorithm decompilation\recompile applets with multiple dex-component
- Font in the program changed to Tahoma
- Supplied with the program added to the external patches:
N910*_6.0.*
N920*_6.0.*
G930*/G935*_6.0.*
• System-Removing the signature verification applications
• System-Increasing the speed of response Automatic Brightness Control (ABC)
• System-Adding buttons 'Only once/Always' in task 'To open with'
MD5 : 6498af8f3e16c9657d3af5c7253dd0a7 *PUMa.exe
Download mirror link : >>> Here are stored PUMa <<<
Patches supported by the program:
(for new dev&AOS... older please see list in PUMa_eng.txt)
Grate concept ! i'll try it asap.
realy good job man .
if you can added many usefull mod . exampel : extended power - battery % - scroling cyanogen - . . .
tanks for perfect job.
Nice to see you here!
Great work!
nice !!
thank you.
Pako7 said:
1) before running the program in the folder "In" place the files that need to be applied patch/es
Click to expand...
Click to collapse
Works with Samsung stock roms?
alberto888zz said:
Works with Samsung stock roms?
Click to expand...
Click to collapse
with any.. stock and custom
mehrzad1363 said:
realy good job man .
if you can added many usefull mod . exampel : extended power - battery % - scroling cyanogen - . . .
tanks for perfect job.
Click to expand...
Click to collapse
Not all patches can be added to the program, but only those that are unifying the code
I am guessing this must work for i9100g series awell?
manishdev said:
I am guessing this must work for i9100g series awell?
Click to expand...
Click to collapse
i don't know.. you can try.. put your files in folder IN, select device I9100 and go forward.. If your files can be patched - this program will
Does not find the file even if I have placed in the folder In...what's wrong?
alberto888zz said:
Does not find the file even if I have placed in the folder In...what's wrong?
Click to expand...
Click to collapse
what files? what firmware? Odexed or deodexed? what patches?.. please say
Pako7 said:
what files? what firmware? Odexed or deodexed? what patches?.. please say
Click to expand...
Click to collapse
I have stock 2.3.6 KK1 ITV on my GS2. I have rooted it and transferred the system files by rootexplorer from sd to my computer.
Now i put the files (mms.apk, phone.apk, contacts.apk, etc...) in In folder but when i press apply on your PUMa Manager don't work.
Sorry for my bad english
alberto888zz said:
Now i put the files (mms.apk, phone.apk, contacts.apk, etc...) in In folder but when i press apply on your PUMa Manager don't work.
Click to expand...
Click to collapse
I tried on KK2 - all o'k..
1. if in the field "Necessary files" required files are odex-files (type DEX), then they must be placed in a folder "In", but not apk
2. try to put the program in the root of drive C, for example in the folder c:\PUMa
Pako7 said:
I tried on KK2 - all o'k..
1. if in the field "Necessary files" required files are odex-files (type DEX), then they must be placed in a folder "In", but not apk
2. try to put the program in the root of drive C, for example in the folder c:\PUMa
Click to expand...
Click to collapse
See this!
alberto888zz said:
See this!
Click to expand...
Click to collapse
i see this is strange
After running PUMa in folder OUT is a file Mms.apk? If not - can try handly copy this file from IN to OUT and press Apply
Tried on i9100G, shows installed etc, but when i try the sms to more than 10 persons it dsnt work. Even the call end immediately and noise reduction on by default dsnt work
manishdev said:
Tried on i9100G, shows installed etc, but when i try the sms to more than 10 persons it dsnt work. Even the call end immediately and noise reduction on by default dsnt work
Click to expand...
Click to collapse
all can be .. on I9100G program has not been tested. Tell us what you have firmware and if I have it I'll try to see applets mms and phone
ps.. i see mms & phone applet (only on old fw DZKJ2) - patches "call end immediately", "noise reduction on by default" should work. Under question - "disable control of number sending". In next version i try it's patch rewrite
Great job, working perfect for I9100 XWKK5 with russian contacts rule, cancel delay rings and stop converting SMS to MMS. Was installed by one zip file via CWM. Are donated ($100 - Confirmation number: 2SC26619W1027282U).
Thanks a lot.

[INFO] Custom framework-res.apk resources.arsc using vendor overlays,

Hi Folks,
Overview
There is a mechanism in Android to override the resources and resource-id values within the framework-res.apk with "Vendor" Specified values. All of this is done transparently at runtime and leaves the original framework-res.apk intact and on the device.
CAUTION - ALWAYS HAVE A BACKUP HANDY. NORMAL OPERATION SHOULD BE FINE BUT WHILE PLAYING AROUND AND SEEING WHAT WAS POSSIBLE THE DEVICE DID CLEAR THE ACCOUNTS DATABASE A COUPLE OF TIMES
Background
While doing some research into how the resources.arsc file are handled internally on Android I came across a Document in the AOSP sources ( frameworks/native/libs/utils/README )
Along with a general overview of resource management, it contained a couple of interesting sections.
The resource overlay extension
------------------------------
The resource overlay mechanism aims to (partly) shadow and extend
existing resources with new values for defined and new configurations.
Technically, this is achieved by adding resource-only packages (called
overlay packages) to existing resource namespaces
...
The use of overlay resources is completely transparent to
applications; no additional resource identifiers are introduced, only
configuration/value pairs. Any number of overlay packages may be loaded
at a time; overlay packages are agnostic to what they target -- both
system and application resources are fair game.
The package targeted by an overlay package is called the target or
original package.
Resource overlay operates on symbolic resources names. Hence, to
override the string/str1 resources in a package, the overlay package
would include a resource also named string/str1. The end user does not
have to worry about the numeric resources IDs assigned by aapt, as this
is resolved automatically by the system.
As of this writing, the use of resource overlay has not been fully
explored. Until it has, only OEMs are trusted to use resource overlay.
For this reason, overlay packages must reside in /system/overlay.
Click to expand...
Click to collapse
What this essentially means is you can create a resource only apk which you place at /vendor/overlay/framework/framework-res.apk.
This file only needs to contain the resources you want to override, the document goes on to explain how the idmap is created in the resources-cache
Note the path is different from the readme file which suggests using /system/overlay, this is not referenced by the source and will do nothing.
Resource ID mapping
~~~~~~~~~~~~~~~~~~~
Resource identifiers must be coherent within the same namespace (i.e
PackageGroup in ResourceTypes.cpp). Calling applications will refer to
resources using the IDs defined in the original package, but there is no
guarantee aapt has assigned the same ID to the corresponding resource in
an overlay package. To translate between the two, a resource ID mapping
{original ID -> overlay ID} is created during package installation
(PackageManagerService.java) and used during resource lookup. The
mapping is stored in /data/resource-cache, with a @idmap file name
suffix.
The idmap file format is documented in a separate section, below.
Creating overlay packages
-------------------------
Overlay packages should contain no code, define (some) resources with
the same type and name as in the original package, and be compiled with
the -o flag passed to aapt.
The aapt -o flag instructs aapt to create an overlay package.
Technically, this means the package will be assigned package id 0x00.
There are no restrictions on overlay packages names, though the naming
convention <original.package.name>.overlay.<name> is recommended.
Example overlay package
~~~~~~~~~~~~~~~~~~~~~~~
To overlay the resource bool/b in package com.foo.bar, to be applied
when the display is in landscape mode, create a new package with
no source code and a single .xml file under res/values-land, with
an entry for bool/b. Compile with aapt -o and place the results in
/system/overlay by adding the following to Android.mk:
LOCAL_AAPT_FLAGS := -o com.foo.bar
LOCAL_MODULE_PATH := $(TARGET_OUT)/overlay
Click to expand...
Click to collapse
All this may sound very familiar to those who have built any AOSP Rom for a device as it is the same concept as the overlay tree which is contained in the device specified directories of the tree. Only this method executes at runtime instead of compile time. There are other differences. Mainly the runtime version only handles the drawables and resources which are included in the resources.arsc of framework-res ( at the moment ) where as the device overlay will handle any file you throw at it. You cannot unfortunately update compressed resources ( i.e the ones in the xml, raw, menu etc ).
The AOSP Tree also contained a test directory for this functionality . /frameworks/base/core/tests/overlaytests and contain an example implementation in the OverlayTestOverlay directory and a runtests.sh shell scripts which highlights that symlinking packages with custom names to framework-res is valid.
Summary
I think this will help modders out and has benefits over the currently widely used method of pulling a devices full framework-res and using apktool to unpack, making the changes and then repacking and resigning ( or using 7z replace, if you're lazy like me ) It will also help with applying/merging multiple mods from different sources as the files only need the include the very basic of the patch.
I don't know how long this functionality has existed but I have never seen it used by any oem and a search of Xda Didn't seem to show any "prior art" of the behaviour. I'd be interested on people thoughts on this, especially if you have seen a rom in the wild that uses it. It's maybe something that could be extended by "us" if google don't have any major plans for it possibly applied to other apks.
KNOWN ISSUES AND WORKAROUNDS
There is a bug in the /frameworks/base/libs/androidfw/AssetManager.cpp. It appears that a umask is set incorrectly when creating the idmap file from the overlay package, as such only the system user had access to it resulting in a failure to apply the overlayed values.
I chmod'd 666 /data/resource-cache/* and reboot to fix this. You can find further details in this google groups post. There is a patch attached the Post which I don't think will apply correctly as the source tree has been Refactored since the patch was created.
See below a workaround
Well this is fascinating. I am going to read the files this afternoon .
That is quite a cool find. Thanks for the tip.
Trevd, I gotta try this. I finally had time to read it carefully. I am going to make a simple one tomorrow. Have you had time to give it a whirl?
Oh, the Google groups link is wrong, I think. It only took me to the Google groups home page.
mateorod said:
Trevd, I gotta try this. I finally had time to read it carefully. I am going to make a simple one tomorrow. Have you had time to give it a whirl?
Oh, the Google groups link is wrong, I think. It only took me to the Google groups home page.
Click to expand...
Click to collapse
Fixed That google link for you, I'll attach some examples and try and put together some more resources on this. I'm going to test it on a couple of different devices. I can however confirm that the functionality is in the ICS code tree and I'm give it a test on CM9 on my HTC Sensations to make sure it functions as expected
Hello Again.
I've done something further research into "weaponizing" this mod so it can be used in anger. The Incorrect Permission Issue highlighted in the first post is pretty much a show-stopper if you want to use this in a flashable zip update for example.
Problem: The idmap is successfully created but cannot be used as the file the world readable file permission is not set.
Solution 1: Patch the AssetManager to create the file with the correct permissions.
This would work but results in the extra overhead of changing core android libraries and would more than likely break Stock OTA Updates because the file hashes won't match.
Solution 1a: Patch the AssetManager to create the file with the correct permissions, Submit the patch to the AOSP project so it is upstream for future releases.
The Patch in the google groups post does not seem to have been submitted as the issue is still there in the latest master branch ( 4.2.1 ) of the AOSP Project. I held off submitting it myself because it is basically someone else's work, However if no-one else is going to do it I suppose someone should . Obviously this solution is still dependent on google actually accepting the patch, carriers including it future roms and numerous other unknown factors which are out of your direct control.
Solution 2: Add a empty idmap in /data/resource-cache folder with the correct permission at the same time as adding the custom overlay.
Although a work around this does solve the issue. This is not as simple as just creating a placeholder zero byte file. The asset manager will reject the file when checking for stale cache files at startup. We need to actually create an empty idmap. Referring back to the original readme file (/frameworks/native/libs/utils/README), google explain the idmap file format
The ID map (idmap) file format
------------------------------
The idmap format is designed for lookup performance. However, leading
and trailing undefined overlay values are discarded to reduce the memory
footprint.
idmap grammar
~~~~~~~~~~~~~
All atoms (names in square brackets) are uint32_t integers. The
idmap-magic constant spells "idmp" in ASCII. Offsets are given relative
to the data_header, not to the beginning of the file.
map := header data
header := idmap-magic <crc32-original-pkg> <crc32-overlay-pkg>
idmap-magic := <0x706d6469>
data := data_header type_block+
data_header := <m> header_block{m}
header_block := <0> | <type_block_offset>
type_block := <n> <id_offset> entry{n}
entry := <resource_id_in_target_package>
Click to expand...
Click to collapse
They also go on to give an example.
idmap example
~~~~~~~~~~~~~
Given a pair of target and overlay packages with CRC sums 0x216a8fe2
and 0x6b9beaec, each defining the following resources
....
the corresponding resource map is
0x706d6469 0x216a8fe2 0x6b9beaec 0x00000003 \
0x00000004 0x00000000 0x00000009 0x00000003 \
0x00000001 0x7f010000 0x00000000 0x7f010001 \
0x00000001 0x00000000 0x7f020000
or, formatted differently
0x706d6469 # magic: all idmap files begin with this constant
0x216a8fe2 # CRC32 of the resources.arsc file in the original package
0x6b9beaec # CRC32 of the resources.arsc file in the overlay package
0x00000003 # header; three types (string, bool, integer) in the target package
0x00000004 # header_block for type 0 (string) is located at offset 4
0x00000000 # no bool type exists in overlay package -> no header_block
0x00000009 # header_block for type 2 (integer) is located at offset 9
Click to expand...
Click to collapse
Further analysis of the asset manager code suggests that although aapt won't create an empty overlay apk it is possible create an idmap file which just contains the file magic along with the original and overlay resources.arsc CRC32 which can be set at zero. Assuming little endian byte ording, these are those magic twelve bytes you need in the /data/resource-cache/[email protected]@[email protected]@idmap
Code:
69 64 6d 70 00 00 00 00 00 00 00 00
The file value will then be updated rather than created when a new overlay apk is provided.
[ EXAMPLES TO FOLLOW ]
So I don't know if anyone has done any follow-up with this, but we have a situation with the Xperia V (and T, more or less the same device in many respects) that makes it impossible to flash or push a modified framework-res.apk. Specifically, the resource-id's inside resources.arsc (public.xml) are getting mangled during recompile and while apktool doesn't show any errors (this is a known, reported issue), the apk is unusable and causes bootloops.
What you've presented here seems like a light at the end of the tunnel. But while I'm confident in my ability to follow directions, I'm afraid I'm too much of a noob to foresee possible reasons for this not working, which is basically what I'm requesting feedback on. Here's what I have in mind, please feel free to point out the holes in my plan...
1. Create the overlay, with the config.xml containing the proper resource-id's as found in public-xml.
2. Push the overlay. It seems to me that with an unmodified framework-res.apk in place, the overlay will simply replace the values from resources.arsc with identical values, thereby having no effect on the system. Any problems at this stage, then, would be from errors on my part, and naturally I would rather weed them out before the next step...
3. Push a modded framework-res.apk and hope that with the overlay in place and doing its business, the corrupted resource-id's will be quarantined and unable to wreak havoc on the system.
It sounds easy, so I'm sure I've missed something. I appreciate any feedback, scathing or otherwise.
shockwaverider said:
So I don't know if anyone has done any follow-up with this, but we have a situation with the Xperia V (and T, more or less the same device in many respects) that makes it impossible to flash or push a modified framework-res.apk. Specifically, the resource-id's inside resources.arsc (public.xml) are getting mangled during recompile and while apktool doesn't show any errors (this is a known, reported issue), the apk is unusable and causes bootloops.
What you've presented here seems like a light at the end of the tunnel. But while I'm confident in my ability to follow directions, I'm afraid I'm too much of a noob to foresee possible reasons for this not working, which is basically what I'm requesting feedback on. Here's what I have in mind, please feel free to point out the holes in my plan...
1. Create the overlay, with the config.xml containing the proper resource-id's as found in public-xml.
2. Push the overlay. It seems to me that with an unmodified framework-res.apk in place, the overlay will simply replace the values from resources.arsc with identical values, thereby having no effect on the system. Any problems at this stage, then, would be from errors on my part, and naturally I would rather weed them out before the next step...
3. Push a modded framework-res.apk and hope that with the overlay in place and doing its business, the corrupted resource-id's will be quarantined and unable to wreak havoc on the system.
It sounds easy, so I'm sure I've missed something. I appreciate any feedback, scathing or otherwise.
Click to expand...
Click to collapse
Hi There.
It's sound's plausible. I will say that I was attempting to implement this "trick" on a Samsung Galaxy Note 10.1 which had a TouchWiz Rom installed without any luck. In that case it wasn't retaining the correct permissions for the resource-cache directory. I didn't go as far as patching the init binary... yet!!! I think that will probably sort it out with if you have control of the device so there is still hope on that one.
I've also not tested it with anything other than settings found in the config.xml I suppose if it gets compiled into the resources.arsc it should be alright.
Have you tried recompiling the using aapt instead? I'm afraid I'm no expert on aapt and it's many switches so I'm afraid you're are on your own as far a making the apk goes if you are trying this outside of the AOSP source tree!
Good Luck
trevd said:
Hi There.
It's sound's plausible. I will say that I was attempting to implement this "trick" on a Samsung Galaxy Note 10.1 which had a TouchWiz Rom installed without any luck. In that case it wasn't retaining the correct permissions for the resource-cache directory. I didn't go as far as patching the init binary... yet!!! I think that will probably sort it out with if you have control of the device so there is still hope on that one.
I've also not tested it with anything other than settings found in the config.xml I suppose if it gets compiled into the resources.arsc it should be alright.
Have you tried recompiling the using aapt instead? I'm afraid I'm no expert on aapt and it's many switches so I'm afraid you're are on your own as far a making the apk goes if you are trying this outside of the AOSP source tree!
Good Luck
Click to expand...
Click to collapse
Thanks for the input! I haven't tried compiling using aapt, I'm afraid that I'm working way beyond my abilities here due to a mix of frustration and determination. I ended up here after somebody pointed to barrykr's thread HERE, so I suppose the first thing to do is try out his method and see what comes of it. If it's not successful, then I'll try to sort through all the big words and smart-people talk and figure out how to get it to work.
Hey mate... just noticed this thread of yours. This is awesome... I wonder why it didn't draw more attention.
Anyway... you've probably seen my mods thread over at Rootzwiki, right? I was wondering if this "overlay" thing would actually work for SystemUI too?
shockwaverider said:
So I don't know if anyone has done any follow-up with this, but we have a situation with the Xperia V (and T, more or less the same device in many respects) that makes it impossible to flash or push a modified framework-res.apk. Specifically, the resource-id's inside resources.arsc (public.xml) are getting mangled during recompile and while apktool doesn't show any errors (this is a known, reported issue), the apk is unusable and causes bootloops.
[...]
Click to expand...
Click to collapse
Hi there! Just wanted to let you know that I have successfully made an overlay.apk which overrides the framework-res.apk default 'settings'. I have a Xperia S with the same problem with framework-res.apk. For my example I used the showNavigationBar boolean value and edited it, and the navigation bar showed after boot :victory: :victory:
@trevd I have not time to test this now, but do you know if it is possible to make an overlay.apk, only with images instead of the resource file? Thanks, I'm quite exited now
edit. Yes it is possible with images. ****. I'm in heaven right now. Everything will be soooo much easier.
skifyr123 said:
Hi there! Just wanted to let you know that I have successfully made an overlay.apk which overrides the framework-res.apk default 'settings'. I have a Xperia S with the same problem with framework-res.apk. For my example I used the showNavigationBar boolean value and edited it, and the navigation bar showed after boot :victory: :victory:
@trevd I have not time to test this now, but do you know if it is possible to make an overlay.apk, only with images instead of the resource file? Thanks, I'm quite exited now
Click to expand...
Click to collapse
@skifyr123 That's a pleasant surprise, I was under the belief that it had stopped working... maybe I was doing my own mod wrong ..
The example in the aosp includes images. http://androidxref.com/4.2_r1/xref/...ytests/OverlayTestOverlay/res/drawable-nodpi/ . I don't know whether you can exclude resources, however that shouldn't be an issue as you can "override" a resource that doesn't exist so won't effect anything. I suspect you probably can excluded them...... as we say in the trade "Try it yourself"
@Kookie_Monster : No , I'm fairly certain that it won't the code only handles framework-res... however there a comment in the code that is quite interesting http://androidxref.com/4.2_r1/xref/frameworks/base/libs/androidfw/AssetManager.cpp#198 Line 198. "apps are handled by the Java Package Manager", I'll have to look deeper into that one
Images worked Do you know if this is any different from Xposed engine (http://forum.xda-developers.com/showthread.php?t=1574401).. At least in this you don't have to install anything extra.
skifyr123 said:
Images worked Do you know if this is any different from Xposed engine (http://forum.xda-developers.com/showthread.php?t=1574401).. At least in this you don't have to install anything extra.
Click to expand...
Click to collapse
Hi
I keep hearing things about the Xposed engine, It's looks a very cool project although not something I'd ever use.
Yes this is completely different It's part of Android core platform source code and is implemented by the asset manager http://androidxref.com/4.2_r1/xref/frameworks/base/libs/androidfw/AssetManager.cpp I believe it's been in there since day 1 ( or close enough ). The main difference is Xposed will let you code where as this is limit to certain types of resources.
I'm GUESSING that this was the original method for vendor overlays but possibly not picked up by HTC ( and others ) in Android's early days so the Idea was abandoned, the way the README in the AOSP reads it was fully intended to extend much more than the framework-res. With all that in mind I also wouldn't be surprised if it suddenly disappeared one day because there's no oem's ( that I know of ) using it
skifyr123 said:
Hi there! Just wanted to let you know that I have successfully made an overlay.apk which overrides the framework-res.apk default 'settings'. I have a Xperia S with the same problem with framework-res.apk. For my example I used the showNavigationBar boolean value and edited it, and the navigation bar showed after boot :victory: :victory:
@trevd I have not time to test this now, but do you know if it is possible to make an overlay.apk, only with images instead of the resource file? Thanks, I'm quite exited now
edit. Yes it is possible with images. ****. I'm in heaven right now. Everything will be soooo much easier.
Click to expand...
Click to collapse
You, sir, are my hero!! :good: :good: :good:
Thank You.
trevd said:
Hi Folks,
Overview
There is a mechanism in Android to override the resources and resource-id values within the framework-res.apk with "Vendor" Specified values. All of this is done transparently at runtime and leaves the original framework-res.apk intact and on the device.
CAUTION - ALWAYS HAVE A BACKUP HANDY. NORMAL OPERATION SHOULD BE FINE BUT WHILE PLAYING AROUND AND SEEING WHAT WAS POSSIBLE THE DEVICE DID CLEAR THE ACCOUNTS DATABASE A COUPLE OF TIMES
Background
While doing some research into how the resources.arsc file are handled internally on Android I came across a Document in the AOSP sources ( frameworks/native/libs/utils/README )
Along with a general overview of resource management, it contained a couple of interesting sections.
What this essentially means is you can create a resource only apk which you place at /vendor/overlay/framework/framework-res.apk.
This file only needs to contain the resources you want to override, the document goes on to explain how the idmap is created in the resources-cache
Note the path is different from the readme file which suggests using /system/overlay, this is not referenced by the source and will do nothing.
All this may sound very familiar to those who have built any AOSP Rom for a device as it is the same concept as the overlay tree which is contained in the device specified directories of the tree. Only this method executes at runtime instead of compile time. There are other differences. Mainly the runtime version only handles the drawables and resources which are included in the resources.arsc of framework-res ( at the moment ) where as the device overlay will handle any file you throw at it. You cannot unfortunately update compressed resources ( i.e the ones in the xml, raw, menu etc ).
The AOSP Tree also contained a test directory for this functionality . /frameworks/base/core/tests/overlaytests and contain an example implementation in the OverlayTestOverlay directory and a runtests.sh shell scripts which highlights that symlinking packages with custom names to framework-res is valid.
Summary
I think this will help modders out and has benefits over the currently widely used method of pulling a devices full framework-res and using apktool to unpack, making the changes and then repacking and resigning ( or using 7z replace, if you're lazy like me ) It will also help with applying/merging multiple mods from different sources as the files only need the include the very basic of the patch.
I don't know how long this functionality has existed but I have never seen it used by any oem and a search of Xda Didn't seem to show any "prior art" of the behaviour. I'd be interested on people thoughts on this, especially if you have seen a rom in the wild that uses it. It's maybe something that could be extended by "us" if google don't have any major plans for it possibly applied to other apks.
KNOWN ISSUES AND WORKAROUNDS
There is a bug in the /frameworks/base/libs/androidfw/AssetManager.cpp. It appears that a umask is set incorrectly when creating the idmap file from the overlay package, as such only the system user had access to it resulting in a failure to apply the overlayed values.
I chmod'd 666 /data/resource-cache/* and reboot to fix this. You can find further details in this google groups post. There is a patch attached the Post which I don't think will apply correctly as the source tree has been Refactored since the patch was created.
See below a workaround
Click to expand...
Click to collapse
is't possible to use vendor overlay to add/ change a value in build.prop file ?
Can someone solve this? I tried to make an overlays to my rom by placing the overlays to /system/vendor/overlays. It works. But when I try to changing to other themes, my overlays gone, I tried to reapply stock theme but didn't worked. Must I try another folder like /system/overlays?

[30/09] APK Organize 2.0 (Rename,Compare,Search,Install | Uninstall,Backup | Restore)

APK Organize
FEATURED ON XDA PORTAL
{
"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"
}
What this software does ?
This software has made from 5 parts.
1. Rename APK
2. Compare APK
3. Find APK from txt
4. APK Batch Installer | Uninstaller
5. Backup | Restore Data​
Rename :
1. Add apk files to the list by doing one of the following:
• Double-click apk files in Explorer while the Rename-tab is active
• Drag & Drop from Explorer
• Add single files via “Add APK”
• Add whole directories via “Choose Folder” (Folder history via “▼”)
• Add files from your Phone via “From Phone” (ADB connection needed)
Note: You can sort the list individually by clicking the column headers.
2. Setting the renaming pattern
Set the desired pattern via the Dropdown-menu below the list.
If you want, you can set an individual pattern by using the provided tags.
Note: <Manual|Label> will use the names provided in the manual rename-list.
For apps that are not the list, the standard label is used…
3. Renaming:
• Select the files you want to be renamed by marking them in the list
• Press “Preview” to see what the files will be named or press “Rename” straight away.
• If you want to send these files to the Compare-tab, right-click on the list and press “Compare”
Monitor :
You can set up a folder for APK Organize to monitor. It will automatically rename all apk files you put in there.
Set up your desired directory and the renaming pattern, then click “Enable” to start the monitoring.
You can now close APK Organize. It will continue to run in system tray.
Check “Auto Start” to start monitoring on windows startup.
You can check what APK Organize is doing by clicking “Logs”
Note: Existing files will not be renamed. Monitoring only works for newly added files…
Newly added apps that already exist will automatically be overwritten.
Check “Ask for overwrite”, if you don’t want that.
Manual Rename :
Sometimes two or more applications have the same label name but are in fact different apps (f.e. Angry Birds).
If you want APK organize to rename any apps differently, you can associate a package name with an individual name.
1. Add apps to this list by doing one of the following:
• Drag & Drop from Explorer
• Add single files via “APK” → “Add”
• Add whole directories via “APK” → “Add from folder”
2. Double-click or press F2 one the corresponding cell in the right column and enter the desired name
3. Save the list anywhere you want via “File” → “Save”.
4. Close the window, go to “Manual Rename” → “Load list” and select the list you have created.
5. Set the renaming pattern to "<Manual|Label> v<Version>" or "<Manual|Label>".
6. Press “Rename”. APK Organize will now rename the files accordingly. For apps that are not specified in your list, it will use the regular label.
Compare :
1. Choose if you want to compare by file name or by Label name and version from “Search with”
2. Choose the directory to compare to on the top panel. (F.e. your apk archive)
3. Add the new apk files to the list:
• Double-click apk files in Explorer while the Compare-tab is active
• Drag & Drop from Explorer
• Add single files via “Add APK”
• Add whole directories via “Add Folder” (Folder history via “▼”)
4. Press “Scan”. APK Organize will now automatically mark every finding in the bottom list.
5. You can now do the following with the results (or your own markings):
• Delete: Deletes all old files… You will then be asked, what to do with the new files.
• Copy: Copies the new files to the specified directory
• Move: Moves the new files to the specified directory
Note: You can do the above steps for files without results too by right-clicking them.
You can also load an exception list. Files that are on this list will be moved to an exception
folder on the target directory to be organized manually…
Search :
This tab enables you to do operations with a specified list of apps, f.e. if you have to install a bunch of apps after a wipe. If you have to do this very often and the apps are always the same, APK Organize can automate this process for you:
1. Create the list of apps you want to do operations with or select a list via “Select list”, if you have already done one of the steps below.
The list MUST only contain the app’s label names without versionnumber, divided by a linebreak. You can do this by the following:
• Manually add the apps with “Add”, Drag & Drop from Explorer or double-click from Explorer and save it via “Save List” for further use.
• Export a list with ROM Toolbox or any app that is capable of exporting list in the demanded pattern and load it into APK Organize. Make the necessary changes and save the list.
2. Choose the directory where your apk files are stored for the left list.
3. Press “Scan”. APK Organize will now list every finding in the bottom list.
4. Do the operations of your desire via the provided buttons on the bottom.
Install :
Installing apk files:
1. Add apk files to the list by doing one of the following:
• Double-click apk files in Explorer while the Rename-tab is active
• Drag & Drop from Explorer
• Add single files via “Add APK”
• Add whole directories via “Choose Folder” (Folder history via “▼”)
• Add files from your Phone via “From Phone” (ADB connection needed)
2. Press “Install”. APK Organize will now try to install the apps over ADB. See the log, if there are any errors.
Note: You can view details like label, package name and permissions via right-click → Details
“Unknown sources” has to be enabled on your phone to install apk files…
You can sort the lists individually by clicking the column headers.
Uninstalling APK files:
1. Go to “Mode → Uninstaller” and choose, if you want to view the installed apps by label or package name.
2. Select the Apps you want to uninstall by marking them and press “Uninstall”
3. APK Organize will now try to uninstall the apps over ADB. See the log, if there are any errors.
Backup : (Root Needed!)
1. Set the directory you want to store your backups in via “Backup Directory”.
2. Go to “Packages” and choose, if you want to view the installed apps by label or package name, or click “From Directory” to display the backups from your chosen directory.
3. Check “App” and/or “Data” for the apps you want to backup or restore and press “Backup” / ”Restore”.
4.APK Organize will now try to complete the task. See the log, if there are any errors.
Notes: If most of the backups/restores fail for you it may be that your ADB daemon is running in secure mode. This can happen on stock kernels, but also on other setups. In that case, try running ADB ROOT (and maybe set it to Auto mode) in APK Organize
For Restores “Unknown sources” has to be enabled on your phone…
You can sort the lists or check/uncheck something for all apps by clicking the column headers.
If you have checked App and Data for an App and it gives an error, try checking “Skip failure for App or Data while backing up both”. It is not necessarily an error, because there just might be no data to back up…
Requirements :
Windows OS ( In video it is windows with Ubuntu Skin )
.NET Framework 4
Community
Please join this community and leave your experience about APK Organize
Test Version
test versions before release stable version
ARA Softwares Translator
if you want translate APK Organize download this tool
Mobile Version
written by Svarion, click to check his XDA thread
Video :
Version 2.0.0 :
*Auto extract zip and rar files contain apk
Check Monitoring options in Rename window
-Exclude options
(useful for prevent extracting ROM, Kernel and other zip files)
Directory :
Prevent from extracting zip files contained folder
Extensions :
Prevent from extracting zips contained files with some extensions
for exclude by extension start it with "."
e.g. : .img
for exclude by folder or file name write its name
e.g. : META-INF
-Extract with folder
if not checked it will extract apk in root directory without folders
*Backup | Restore method has been changed
Backups from version 1.9.0 are not supported anymore !
Before update to this version Restore your backups then!
*Make APK Organize portable
(Read | Save setting in application directory)
More - Preference - Portable
*Load discontinued Install | Backup projects
-Copy | Move to new founded categories fixed
*Categories fixed
Compatible with new play store
*Exclude lib folder from data backup
*Fix permissions porblem with Android 4.3 has been fixed
*Get package names now loads installed apps in SD too !
*Launch packages from Install & Handle window
*Notification at the end of Install | Backup
*VersionCode added to Rename Patterns
*Option for Remove strings from version
-Useful for some apps such as Astro File Manger
-Its version is : ASTRO-4.3.525
-If you check this option it will be : 4.3.525
*Open/Copy APK's playStore link in Search/Install
*New options for selected rows
-Move to Top/Down
-Keep/Clear
-Bug fixes
Version 1.9.0 :
--Note : Please backup your setting before update, then restore it after update--
*Problem with some Anti Viruses such as NOD 32 has been fixed !
*Permissions fixed
*Categories (Organize apks with their category)
*Compare with package name
*Connect with Mac Address
*Monitoring Improved
*Check for root access before Backup | Restore
*Getting installed apps name without root access
*Scrolling enabled while Installing, Backing up and Renaming (Disable Auto scroll)
*Show old installed version of apk (Root needed)
*Option in rename form for replace space with custom text
*Compare work progress in status bar
*Add apks to Backup | Restore by double click on apk
*Multi select with middle mouse button
*Customizable Messages (Send from me)
*Searching improved
+Manual Search
Search your app
From RightClick menu choose "Add to list"
or
Hold down Shift and press Enter
+Show details in Search form
*Introduced ARA Softwares Translator
+Download from Preference if you are interested to Translate my softwares to your local language
-Bug Fixes
Version 1.8.0 :
**Sort by Install Date (Installed apps)
**Security option for install
*Option for load apk informations in installer (Icon,Package name and ...)
*Check if more than one device is connected
*Set limitation for auto load informations (prevent not responding)
*White list in Security
*Improved Renaming
*Option for remove "v" from version if version is started with v (v1.4 instead of 1.4)
*Option for check install status
*Install | Rename with drag and drop (Enable in Preference for Main window)
*Option for enable/disable show details window at the end
*Go To menu (Fast switch)
*Ask for save if changes not saved in favorite folders and patterns edit
*New message box (translatable)
*Added Favorite folders to Copy/Move in Compare window
*Remember Last Size and Location
*Export Apps list from Backup | Restore
-Guide for Patterns and Favorite Folders
-Prevent duplicate adding in Manual Rename
-Sort enabled in Manual Rename
-Fixed bugs on restoring
-Copy link to clipboard if opening browser failed !
-New Icons (Thanks to Benjamin Humphrey)
-Bug Fixes
Version 1.7.0 :
**Updated ADB to 1.0.31
*New options for existing files in Renaming (Overwrite, Rename, Ask)
*Favorite Folders
*Edit and arrange patterns
*Kill apps before restore
*Set Permissions after Restore
*Improved exporting apps from phone
*New option for load files from sub folders
*Show not found files after search
*Restart after changing language, reset or import settings
*Check update manually
-Fixed Embeded ADB Bug
-Fixed right aligned "More" preference in English
-Fixed ADB BUG !
-Fixed failure report for some success restores
-Uninstall apps from Backup | Restore
-Bug Fixes
Version 1.6.0 :
***Multi Language
***Persian Langauge Added ( Thanks to myself )
**Get Applications List from Phone With Label Name
**Renaming apps with special characters fixed
**Manual Renaming (Read Help)
**Embeded ADB
**Individual Backups (APP, DATA, APP + DATA)
**New Compare method
*Add to Compare List integreated to explorer
*Show details after Backup|Restpre
*Backup|Restore options
*Show detail window for failure installtions (Install from Explorer)
*Associate TXT files (Fast Search)
-Auto ADBROOT
-Sort enabled in Rename, Search, Backup|Restore, Install|Uninstall
-Improvment of FromPhone function
-Save last used pattern for renaming
-Setting Export|Import way changed
-Bug Fixes
Version 1.5.3 :
*Integrate into Explorer (Right Click Menu)
*Connection Check before Backup or Restore
*Check if Package installed before Backup or Restore
*Check for connection after ADB ROOT if Auto Connection is enabled
-Bug fixes
Version 1.5.0 :
*Backup | Restore Data
*Export installed apps
*Rename automatically (Monitoring)
*Rename preview
*Rename and Install APK files located on phone
*Auto Connect
*History for Directories
*Auto Start with Windows
*Export and Import Settings
*Connect with HostName
-Save adbWireless settings
-Bug fixes
Version 1.4.0 :
*New open APK window (with details)
*Renaming pattern
*Install/Uninstall Options
*Compare method
*Uninstaller (New)
*Update checker
*Detail windows after install/uninstall
*Kill ADB server after install/uninstall
-Search in install form
-Bug fixes
Version 1.3.1 :
*ADB Wireless
-Bug fixes
Version 1.3.0 :
*Exception list for comparing
*Renaming to package name
*App Details in install form (Name, Version, Premissions)
*Installing Status
-UI improvment in comparing
-Show log before save
-Shortcuts
-Rename way changed (now apk files from different locations can rename together)
Version 1.2.0 :
*Batch Uninstall
*Log Saver
*No Need to Put aapt In Application Directory
-Better Renaming
-Selective Install
-Rename and Install by Double Clicking on apk files is fixed !!
Version 1.1.0 :
*APK Batch Installer
-Help Menu
Version 1.0.0 :
-Initial release
Wow , really useful thing . Thanks and keep developing it.
rkmiks said:
Wow , really useful thing . Thanks and keep developing it.
Click to expand...
Click to collapse
Glad you like it !
Those guys who downloaded, No idea ?
Is it worked ? No bugs found ? No feature you need ?
I tested it and it works perfectly as far as renaming and comparing is concerned . I would love this application to have the capability of getting the apps list by itself from the phone. And also to generate a text file with app list or an html with links in the folder with apks or alphabetically arranging the apks etc.
And ya i got some error about the aapt stuff while renaming , I renamed the apps with different tool and then compared them with this tool.
I would love this thing to develop more . All the best ! and thanks again.
rkmiks said:
I tested it and it works perfectly as far as renaming and comparing is concerned . I would love this application to have the capability of getting the apps list by itself from the phone. And also to generate a text file with app list or an html with links in the folder with apks or alphabetically arranging the apks etc.
And ya i got some error about the aapt stuff while renaming , I renamed the apps with different tool and then compared them with this tool.
I would love this thing to develop more . All the best ! and thanks again.
Click to expand...
Click to collapse
About list of apps from phone, I was thinking about that. And i'll try !
Could you tell me what errors did you get ?
In upcoming version you can install APK files
v1.1 Released !
Change log:
APK Batch Installer
Help Menu
Tested new version , no bugs as such . But sometimes it doesn't delete the older version of an apk.
Hope u could add a feature to backup and restore the app data also just like titanium does . and also compare the data too.
Thanks for this small but very useful tool.
rkmiks said:
Tested new version , no bugs as such . But sometimes it doesn't delete the older version of an apk.
Hope u could add a feature to backup and restore the app data also just like titanium does . and also compare the data too.
Thanks for this small but very useful tool.
Click to expand...
Click to collapse
I'll look into !
Thanks for the suggestions
adb detects my device, but when i choose to batch install apks, its stuck at installing, and wont install, my device is galaxy s3, am i following the directions correctly, if there are any?
this app works for me though "APK Batch Installer"
http://forum.xda-developers.com/showthread.php?t=1531880
mamumami said:
adb detects my device, but when i choose to batch install apks, its stuck at installing, and wont install, my device is galaxy s3, am i following the directions correctly, if there are any?
this app works for me though "APK Batch Installer"
http://forum.xda-developers.com/showthread.php?t=1531880
Click to expand...
Click to collapse
It doesn't install any application or just some applications?
Sent from my GT-I9100G using Tapatalk 2
In upcoming version :
-Better Renaming
-Rename Details Window
-Selective Install
*Batch Uninstall
*Log Saver
*Rename and Install by Double Clicking on apk files is fixed !!
*No Need to Put aapt In Application Directory
doesnt install any, can you please provide direction to batch install, should phone be in fastboot, development mode on,
mamumami said:
doesnt install any, can you please provide direction to batch install, should phone be in fastboot, development mode on,
Click to expand...
Click to collapse
You should turn on Android Debugging and Unknown Sources
No need to be in fastboot !
Version 1.2 released !
Change log:
-Better Renaming
-Selective Install
*Batch Uninstall
*Log Saver
*Rename and Install by Double Clicking on apk files is fixed !!
*No Need to Put aapt In Application Directory
Please if it doesn't work for you save log and send it to me.
Weird!
Version 1 82 views
Version 1.1 84 views
Version 1.2 42 views
and no any ideas, bugs, suggestions or even thanks button !!!!
pesiran said:
Weird!
Version 1 82 views
Version 1.1 84 views
Version 1.2 42 views
and no any ideas, bugs, suggestions or even thanks button !!!!
Click to expand...
Click to collapse
Hey man, here is an Idea, change the compare module to compare by hash, like MD5.
Some people, me included, mod apk for theming but the package name is the same, maybe comparing with md5 and give an option to rename the duplicates will be cool.
Also a small request, is it possible for you to make an Android application to rename a bunch of APK in a given directory to their Application Name, like "Application Name v1.0.0.apk" or "applicationname_1.0.0.apk" or something like that? I ask this because I installed a backup software but it makes this backups with the package name and I always end with files like com.something.apk and it is a real pain to find out which file is what.
ngh55 said:
Hey man, here is an Idea, change the compare module to compare by hash, like MD5.
Some people, me included, mod apk for theming but the package name is the same, maybe comparing with md5 and give an option to rename the duplicates will be cool.
Also a small request, is it possible for you to make an Android application to rename a bunch of APK in a given directory to their Application Name, like "Application Name v1.0.0.apk" or "applicationname_1.0.0.apk" or something like that? I ask this because I installed a backup software but it makes this backups with the package name and I always end with files like com.something.apk and it is a real pain to find out which file is what.
Click to expand...
Click to collapse
Hey.
comparing is not by package name, it searchs by application name.
for searching hash if you help and explain more maybe i can do some work !
for duplicates the software asks what to do ! keep both or replace or skip !
and your last request, Renaming in phone !!?

[GUIDE]Ultimate Guide[Decompiling][9 pngs][Theming]

The Ultimate Guide​
Preliminary Requirements:-
PC with Windows(Please avoid Windows Vista)
Java JRE or JDK
APK Multitool
framework-res.apk, SystemUI.apk, twframework-res.apk, com.htc.resources for installing
7-zip
Notepad++
Android Device for testing
Photoshop or equivalent image editing software
android-sdk(for 9 png editing)
Lots and lots of patience and mind
What this guide includes:-
Main Part:
1. Easiest Decompiling and Recompiling Guide *Must Read before continuing*
Theming Part:
2. APK png resources(General Location of General pngs)
3. Explanation of 9 pngs and how to edit or make them
4. How to Batch edit pngs (Not 9 pngs) (Changing color, etc)
All of us like if all things are present in one guide
This guide covers topics like decompiling, 9 png editing, theming in a very newbie friendly manner.
I have worked upon this guide to make it so that no problem arises during performing certain tasks which I faced.
I have covered workarounds such that they ensure LEAST no. of errors while performing these tasks.
However, if even then any problem arises, I am always there to help you out :laugh:
Main Part:
Decompiling: [MUST READ]
We are assuming that you have installed JAVA, Android SDK and apk-multitool without any problems
1. Copy your mobile's framework-res.apk, SystemUI.apk and twframework-res.apk in others folder in directory where you have extracted apk-multiool
2. Open Setup.bat. Choose 2 :- Installing Framework-res
{
"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"
}
Setup.bat​
Choose 1 (framework-res.apk)
Choose 2 (twframework-res.apk) [similarly install OEM specific files such as com.htc.resources , etc]
Choose 4 (SystemUI.apk)
Window will close each time you choose an option
You will have to restart Setup.bat each time
3. Now place the apk you want to edit in place-apk-here-for-modding
4. Now open script.bat. (If you see any error, either you haven't installed JAVA and SDK[adb] or they aren't implented, Please install them properly before continuing). Click any key to continue
APK-Multitool Window​
5. You will see the above window. Now, make sure you have installed all frameworks and Compression level is set to 9.
6. Now, we will choose our project. Click 24. A list of files present in place-apk-here-for-modding will be in front of you. Choose any file
7. Click on 9. Now decompiling will be in process.
8. After it is complete, go to projects folder, you will see a folder with the name of apk you decompiled
Decompiled apk example​
If it is decompiled properly, then there will be apktool.yml file in it
9. Do your modifications. Now, you can edit .9.png files (they will be discussed later) and xml files which were uneditable first
You will notice that there will be many new folders which weren't present in compiled form of apk. These all folders are generated from a file called resources.arsc present in compiled form which is absent in decompiled form
Such an example is of values folder which contains crucial xml files like styles.xml, strings.xml, ids.xml, etc
Always open xml files with Notepad++, it will mark commands and syntax making it look aligned and making it easy to understand
Example of decompiled xml file ​
Also, you can edit 9 patch files also which will be changed from now on
Example:-
We will discuss 9 png in detail later on
10. After you have done your modifications and you are ready to recompile the app, choose 11 (Compile System APK) if you are editing System App or 12(Compile Non-System App) if you are editing other than System App
11. a) If System App:-
After some time it will ask that if you want to copy additional files other than signatures to ensure less amount of errors, then choose y
After extracting some files, it will ask you to delete files from keep folder
Simply go to keep folder,
If you edited any pngs and there are many and you are lazy enough to delete one by one, then delete the whole folder in which you edited pngs
If you edited any xml file, then delete that xml file AND ALSO DELETE RESOURCES.ARSC
Why? Because we told that values and several other folders are generated from resources.arsc while decompiling
Now, if we don't delete resources.arsc, the modification we did in values folder will be reverted to original state
After doing this, go to script.bat again and press any key to continue
11. b)If its not system app:
Just recompile it and sign it man through the menu in apk multitool man.
It is easy as hell. Tutorial of non-system app has been ended here
12. Now, you will get another apk name System_ apkname.apk
Open both apks as archives by 7-zip
13. Last and most important step:-
Just drop the files you edited from new apk to old apk in correct folders. By now, you may have understood that resouces.arsc INCLUDES your edited xmls
14. Now, the final apk is not System_apkname.apk but apkname.apk (the original file you started with). Push it and enjoy
This is a work in progress.
Will add more things soon
Don't hesitate to ask any questions about anything
Credits:
@d3cka for teaching best about 9 pngs
@deathnotice01 for helping me
Miscellaneous Google and xda posts
Theming Part​
General APK png Resources
Here I will tell you where to find some pngs to theme your Phone
Note: Here I will tell location of pngs but that may differ based on modification done to your ROM by OEMs or devs. These pngs are found after decompiling or extracting the apk files. For more reference, read this.
In this part, there is only brief information, but for a very good guide, please go here. I haven't covered it all up as d3cka himself has done a marvellous job in making that guide. All the things present in that guide should solve all your queries.
General location of apks:
SystemUI.apk - /system/app/
framework-res.apk - /system/framework/
twframework-res.apk - /system/framework
framework.jar - /system/framework/
lidroid-res.apk - /system/framework/
Click to expand...
Click to collapse
Variable list:
I have referred to some locations as drawable-xdpi. X here stands for
X: m, l, h, xh
Meaning pngs can be in drawable-mdpi, drawable-hdpi, drawable-ldpi, drawable-xhdpi depending on resolution of your phone
In some places, I have just added * in order to fill spaces that are not common in each png
[?] means maybe only for GB or Samsung
Click to expand...
Click to collapse
Battery Icons -
(i)Ice Cream Sandwich/Jelly Bean: SystemUI.apk/res/drawable-xdpi/stat_sys_battery**.png
(ii)Gingerbread: framework-res.apk/res/drawable-xdpi/stat_sys_battery**.png
Status Bar icons - SystemUI.apk/res/drawable-xdpi/
Note, some, however very few status bar icons are also present in framework-res.apk
Platlogo - framework-res.apk/res/drawable-nodpi/platlogo*.jpg
(image that pops up when repeatedly clicked on Android Version)
In Gingerbrad, its a single file but in ICS and JB, they are many images.
Default Wallpaper - framework-res/res/drawable-xdpi/default_wallpaper.jpg
Default Lockscreen Wallpaper[?] - framework-res.apk/res/drawable-xdpi/zzzzzzzz_default_lockscreenw.jpg
On stock based HTC roms, the default wallpaper location is specified in the.build.prop (so the dev can either swap out the image, or change the path)
The default wallpaper path for HTC roms is /system/customize/resource/wallpapers_a_00.jpg (Thanks to CNExus)
Spinners[GB] - framework-res.apk/res/drawable-xdpi/spinner_****_**.png
(The loading circles)
Menu Icons - framework-res.apk/res/drawable-xdpi/ic_menu_**.png
These icons may also be present in twframework-res.apk for Samsung Touchwiz ROMs
Notification Toggles
(i)With lidroid 15 toggles : lidroid-res.apk/res/drawable-xdpi/
(ii)Without lidroid mod : SystemUI.apk/res/drawable-xdpi
These were some general pngs of system apps that may be used to theme the phone. You can find respective pngs to theme in their apks.
Will add more soon...
9 PNG Discussion
These are special types of pngs that can be stretched to fit the need of program or different scenarios or cases. It contains 1 pixel lines on each border of different lengths for different things
As told above, we can't edit 9 png in compiled form as it will lose these lines which define its properties. So, we first need to decompile apk in order to edit 9 pngs
So, after decompiling apk, open 9 png in Photoshop and select the part inside that 1 px border and edit anything you want (Hue, Saturation, Bevel, Emboss, ANYTHING)
Now save it (save it as a normal png and then rename it as .9.png because photoshop doesn't recognise 9 png extension and image will loose its RGB format)
Explanation of 9 png:-
You can read this for more information
If you have doubt that you have gone wrong somewhere or you have made a new png from scratch and want to test if it is correct or not:
(Check all 9 png files you edit as they can cause Force Closes or bootloops)
Go to folder where you extracted android-sdk and go to tools folder and open draw9patch.bat
A window like this will open up:-
Drop you 9 png here
A new window will open with you 9 png on it
Tick on show bad patches
If you see red rectangles, you have a bad 9 patch image. You will need to delete or add those lines in png to remove all red boxes. If you want to delete, press Shift and start moving cursor over lines you want to delete. You can choose method of hit and trial to remove all rectangles and move the lower scale to see how your image size is adjusted
Or you can do what I do:
1. Remove all lines
2. Add single dot on top centre and left centre border of image (That can be taken as stretchable area)
3. Add lines on right and bottom of image where you want to fill content. Now, click on Show Content
The purple area you see in image is the content area (Text will be filled there. Eg:- Popup Menu)
4. Now, you can adjust these lines acoording to your need that what you want for stretchable area and content area until an unless there comes an red triangle
5. When it is done. Save the file. DONE
Easy, isn't it?
That's what theming is
Batch Editing pngs in Photoshop
Well the scenario is you have 200 pngs and you want to change their color, hue, add effect to them, etc. Definitely not worth the time you will spent doing this one by one. So, here, I will cover how to batch apply same edits on to your infinite pngs. Here, I am taking example of changing color of battery png from green to purple, you can apply any attribute to your image in the same way. I repeat it is not for .9.png files. Read above guide for reference
Let's start
1. First copy all your pngs you need to edit in a separate folder. I have made a folder named Battery Base and pasted my all pngs of battery there.
Now create another folder where your edited pngs will be saved. For eg:- Battery Done. (Don't create it inside Battery Base folder)
2. Open Adobe Photoshop and Choose Window>Actions or Alt+F9
3. Click on the note like file (Create new Action)
Rename it to anything you want . I have chosen Battery_color
Then click on Record. Now, you will see that red circle is enabled and now everything you do on image will be recorded and will be applied on each image.
4. Now, do this very carefully, don't miss any step.
We will do every thing that we want Photoshop to do with each file we want to edit.
a) So, first we want Photoshop to open the image. So , click on Open and choose any png from Battery Base folder (Choose a file with more color so that you know what color exactly your file will be after editing. That is why I chose 90 percent battery here).
b) Now, after opening, we want to change Color of png from green to purple. So, choose Image>Adjustment>Hue and Saturation or Ctrl+U
A dialog box with 3 sliders will appear. Move upper slider to change color. You can move other slider to change saturation and brightness if you want. Now, if you got it right, click on OK.
Every step of yours is being recorded, so don't do unnecessary stuff you don't want to do on other images. Nonetheless, if you have done it, then Drop down the Battery Base Action in action palette and you will see your every action there, If you want to delete any action , you can delete it from there. You can also add any action before pre completed action by clicking above that action and performing it.
Now, you can do anything you want to be done on your rest of pngs.
c) Now, we want Photoshop to save this png to carry on working on others. So, Go to File>Save as... and save it as a png in Battery Done folder. Photoshop will ask you to choose, so choose smallest compression and no interlace.
d) Image is saved but we also want Photoshop to close the png so that it does not open 200 tabs for editing 200 pngs. So, click on close (Small cross on title bar of png). If, it asks that do you want to save changes to png . Say no, because if you say yes, the png in Battery Base will be changes and when batch processing is done, that png in Battery Done will be of different color that all others.And also, your all green pngs in Battery Base folder will turn purple too. But we want purple images in Battery Done and green in Battery Base.
5. Now, we hae done what we want, so, we will stop recording the Action. Click on that square in Actions Palette.
6. Fun Starts. Now we will do the batch processing.
Go to File>Automate>Batch
In the dialog box, Choose the action to be Battery_Color (or obiviously any action you created)
Source folder: Battery Base
Destination Folder: Battery Done
Tick both Override Action 'Open' commands and Override Action 'Save as' commands
Click on OK. Sit back for 3 to 5 minutes(204 pngs) and TADA
You can apply any action in same way. Such as bevel, glossy, pale, etc to innumerous amount of pngs
Why APK-Multitool?​
Yeah, why not just apktool or VTS (Virtuous Ten Studio)
But, when working with certain system apk files, there is a feature of APK Multitool that comes in very handy and that is, making a keep folder and asking you to delete stuff which you modded to then make an apk file. Certain files in apk do not need to be touched which can be easily controlled by APK Multitool.
Note: This is no way against VTS in any form
As I was making a guide which ensured least amount of errors, I chose APK Multitool, because we can easily fix those known errors od Status Bar disappearing or this and that :victory:
apktool is very minimalistic but not too user friendly for a newbie. And it may return with huge amount of errors if not used correctly.
So, APK Multitool is a perfect balance in between simplicity and work power
FAQ
Oops
Last One left
Awesome guide areeb..
Will include this guide in the index for sure
-asdf-
Will be a great guide for me
Sent from my GT-I9100 using Tapatalk 2
Great guide.
Good info. Nice work :good:
This is a good guide, very good one. But, I've found that the latest APK Multi Tool doesn't work for Android 4.2.2 apks.
Does this one work? Any solution?
krazzyvishal said:
This is a good guide, very good one. But, I've found that the latest APK Multi Tool doesn't work for Android 4.2.2 apks.
Does this one work? Any solution?
Click to expand...
Click to collapse
Thanks for notifying
You can try downloading this - http://d-h.st/cze and replacing the previous files with the new files in others folder
It's by Rizal Lovin from his guide here http://forum.xda-developers.com/showthread.php?t=2195680
Or you can notify the bug (if it's a bug ) here http://forum.xda-developers.com/showthread.php?t=1310151
Best theming guide i ever seen
i love ur ,9 pngs method and how u explained us more deeply about them
Thanks
krazzyvishal said:
This is a good guide, very good one. But, I've found that the latest APK Multi Tool doesn't work for Android 4.2.2 apks.
Does this one work? Any solution?
Click to expand...
Click to collapse
Try some of the suggestions in my guide. Link below.
From me to you.
great guide for starters
all hail to areeb
iamareebjamal said:
So, after decompiling apk, open 9 png in Photoshop and select the part inside that 1 px border and edit anything you want (Hue, Saturation, Bevel, Emboss, ANYTHING)
Click to expand...
Click to collapse
Here's what i do if i want to keep the .9.png border intact:
Open my .9.png.
Select>All.
Select>Modify>Border. Set width at 1 pixel.
Select>Inverse.
Edit>Cut.
Edit>Paste special>Paste in place.
Layer>Arrange>Send to back.
This splits the the border from the image allowing you to edit the image freely without affecting the 9patch.
I'll attach my action i created to automate the process.
Extract the action from the zip.
Window>Actions.
Select dropdown menu.
Load actions> select split.9.atn
One final thing. Photoshop has no problems with the .9.png extension. When you save your image (save for web) it will show as .png, just insert .9 into the name. I've never had a problem.:good:
Appreciate! Great guide
dully79 said:
Here's what i do if i want to keep the .9.png border intact:
Open my .9.png.
Select>All.
Select>Modify>Border. Set width at 1 pixel.
Select>Inverse.
Edit>Cut.
Edit>Paste special>Paste in place.
Layer>Arrange>Send to back.
This splits the the border from the image allowing you to edit the image freely without affecting the 9patch.
I'll attach my action i created to automate the process.
Extract the action from the zip.
Window>Actions.
Select dropdown menu.
Load actions> select split.9.atn
One final thing. Photoshop has no problems with the .9.png extension. When you save your image (save for web) it will show as .png, just insert .9 into the name. I've never had a problem.:good:
Click to expand...
Click to collapse
Thanks for suggestions
About last thing, I never said anything about Photoshop having problems with .9.png files
Maybe words appeared different from what they meant
iamareebjamal said:
Thanks for suggestions
About last thing, I never said anything about Photoshop having problems with .9.png files
Maybe words appeared different from what they meant
Click to expand...
Click to collapse
Sorry, my bad. I didn't mean it had problems. What I was trying to say is you can just add the .9 without any problems.
Normally I just copy the nines into a separate folder, work on them, then when saving double click and replace. Doesn't save much time with a handful, but when you have quite a lot it all adds up. Plus you still have the originals incase of an error.
dully79 said:
One final thing. Photoshop has no problems with the .9.png extension. When you save your image (save for web) it will show as .png, just insert .9 into the name. I've never had a problem.:good:
Click to expand...
Click to collapse
I think you're using a step or two more than you need to layer the border, and to save I just merge the layers, save and close.
XperienceD said:
I think you're using a step or two more than you need to layer the border, and to save I just merge the layers, save and close.
Click to expand...
Click to collapse
What steps are they? When it's automated using the action it takes less than a second.
Everyone has their own technique, personally I think merging layers and saving is redundant as they are merged when saved.

Modifying the layout of the Joying Radio app

Modifying the layout of the Joying Radio app.
version 0.2 See changelog at the bottom of this post.
This works in essence for most apks. There are some differences where the layout is defined in xml files or in json files.
Requirements:
java runtime version 7 or better.
apktool: (https://ibotpeaches.github.io/Apktool/)
Editor that handles unix LF correct. Any linux or Mac OS/X editor will do. Notepad on Windows does NOT. On Windows use Notepad++: (https://notepad-plus-plus.org/download/) for example.
Optional: ApkPack: (http://mirrors.gtxlabs.com/joying/3_Misc_Tools/ApkPack/)
Read(!!) the basic apktool Basic, Decoding, Building: (https://ibotpeaches.github.io/Apktool/documentation/) documentation to get a general understanding for the apk structure. It's about 1½ page and prevents a lot of questions.
Knowledge of working in a terminal / command box (some people still call this a DOS-box). These actions are not done using a nice graphical interface/program.
Installation of requirements:
Java: Either use Sun java: (https://www.java.com) for all platforms, Openjdk: (http://openjdk.java.net) for linux, or Mac OS/X's own java version (make sure it is version 7 or better)
apktool: See here: (https://ibotpeaches.github.io/Apktool/install/)
ApkPack.exe: This one can be used to pack/unpack the Allapp.pkg. This allows you to get the apks. Another option is to "adb pull" the original from your unit to work on.
apkPack is a windows binary but runs fine under wine.
General note
An apk file is actually nothing more than a zip file. This means that you can also unzip/rezip an apk. For only modifying buttons and other graphical elements, this is sufficient. When you also want to modify the layout of the main screen or sub-screens, you really need apktool to decompile/compile. If you want to do minor code changes, you also need apktool. (Also a java jar file is also nothing more than a zip file).
Note for Windows users
Text files contain lines (obvious). These lines end with CRLF ("\r\n") line endings on Windows (and MAC versions before OS/X). On linuxes/unixes they end with "\n".
For some files inside an apk this really matters! That's why you need an editor that can handle that correctly, like for example Notepad++.
Android is Case sensitive! Uppercase and lowercase characters do matter and are different (unless when used in strings)
Getting the radio apk
Copy one of my radio mods.
Use ApkPack.exe to get the apk out of the Allapp.pkg.
Use adb to copy the apk from the unit like "adb pull /system/app/JY-1-C9-Radio-V1.0/JY-1-C9-Radio-V1.0.apk ." (the last "." is not a typo). This assumes you already made a connection via USB or tcpip
Download the apk from "http://mirrors.gtxlabs.com/joying/1_Firmware/".
Install framework-res for use in apktool
This step might not be necessary for the radio apk, but is necessary if you modify apks that use system functions. It's anyway better to do this step.
Every Apktool release contains internally the most up to date AOSP framework at the time of the release. This allows you to decode and build most apks without a problem. However, manufacturers add their own framework files in addition to the regular AOSP ones. To use apktool against these manufacturer apks you must first install the manufacturer framework files.
Inside the 5009_60.zip (or previously the 5009_20.zip), you will find inside "/system/framework" the "framework-res.apk". Extract that one from the zip.
In a terminal window, you do on the command line:
Code:
<path_to>/apktool if <path_to>/framework-res.apk
You need to do this step for every new ROM upgrade from Joying.
Decompile the apk
Create some folder where you want to work on the apk.
Inside that folder do inside a terminal:
Code:
<path_to>/apktool d <path_to>/JY-JY-1-C9-Radio-V1.0.apk
(Change forward slash "/" to backward slash "" on windows.).
This will create a folder "JY-JY-1-C9-Radio-V1.0" containing the decompiled apk including the from-binary-to-UTF-8 text converted AndroidManifest.xml.
Code:
AndroidManifest.xml (file)
apktool.yml (file)
assets (folder containing "all kind of things" needed by the apk, but not belonging to the standard res structure. This can be images, files, scripts or even other apks)
original (folder containing original AndroidManifest.xml)
res (folder containing layout, graphics, translations, etc.)
smali (folder containing the decompiled code in "smali" format)
The "res" folder contains a large amount of sub folders.
The three most important folders are:
Code:
drawable-land-nodpi-v4 (contains resolution unspecific graphic elements for landscape mode)
drawable-nodpi-v4 (portrait version of above. Only needed because the original apk contains a corrupt png and can't be recompiled)
raw (contains screen config/layout in json formatted files. Most apks have the config/layout in straight xml)
Initial steps when using the original apk
When using the original apk (instead of one of my mods), you need two extra steps:
- Copy the "ic_point.png" from the folder "drawable-land-nodpi-v4" to the folder "drawable-nodpi-v4". As mentioned: that png is corrupt in the original "drawable-nodpi-v4" which makes that you can't recompile the apk.
- You need to make a small code change in smali to get rid of the "PS:" prefix in front of the PS-text containing the station name.
Edit the "smali/com/syu/radio/RadioController.smali" in a good editor! (NOT Notepad).
Search for the string "PS:" which is in line 1557.
Change:
Code:
const-string v3, "PS:"
into
Code:
const-string v3, ""
Relation between the graphical elements and the layout definition
All the graphical elements like buttons, the frequency ruler and numbers for the (big) frequency are in "res/drawable-land-nodpi-v4".
The layout definition is in "raw/radio_ui.json". The "radio_ui.json" determines which graphical elements are used, and how and where they are positioned. The "radio_ui.json" also determines which texts in which font and font size are used and where they are positioned.
Examples:
The big frequency ruler is named "type":"HorizontalRuler" in the radio_ui.json and defined by the graphical element "drawables":["bk_ruler"], where "bk_ruler.png" is the image. Note that in the json file no extensions (.png) are used.
The "type":"StationView" determines the 6 buttons with inactive (unselected: *_n), active (current selected: *_p) and "on_click/on_tap" (*_p) state. Note also that you will find a ' "extras":[30,0,0,0],' in these sections. This will offset the x-postion 30 pixels to the right. If you want to center the text, change it to: "extras":[0,0,0,0],
The Frequency numbers and the buttons left/right around it. The frequency numbers are the images "num_0.png" to "num_9.png", plus the "num_point.png". The buttons left/right are the "drawables":["ic_freqm_n", "ic_freqm_p"] (down) and "drawables":["ic_freqp_n", "ic_freqp_p"] (up).
The PS, TA, AF, PTY etcetera can easily be found. These do not contain "drawables" (images), but are defined by textsize and text color.
All elements are positioned in a "X0,Y0,X1,Y1" or "top_left_X, top_left_Y,bottom_right_X, bottom_right_Y] rectangle.
Actually this is all.
You can play with it to change the layout.
If you want to change color or form of buttons, ruler or other elements, you have to modify exiting elements or create new elements in either Gimp or Photoshop or another package you are familiar with.
Note1: most PNGs are stored in "optimized" color mode (only store used colors) instead of "RGB" color mode (use full color palette). On small PNGs this can reduce the files by a factor 2, thereby reducing your apk size from ~2 MB to ~1.5 MB. This also means that in Gimp or Photoshop (or whatever), you first need to set the color mode to "RGB" before altering the elements, and before saving them back to "optimized".
Note2: Remember that Android is case-sensitive. When working with the layout or the graphics, keep this in mind!
Recompile the apk
When you are done "playing" and you want to experience the great and glorious app you created, you need to recompile it.
In your folder where you have the unpacked folder "JY-JY-1-C9-Radio-V1.0", you do a:
Code:
<path_to>/apktool -c b JY-JY-1-C9-Radio-V1.0
- Note that you specify the folder name, not some apk name
- the "b" is for build.
- The "-c" is to use the original AndroidManifest.xml
If you see errors, please first google for it before asking questions. There is so much to find on this stuff on the web.
If your apk compiled successfully (don't mind the warnings), you will find it inside "JY-JY-1-C9-Radio-V1.0/disẗ" as a new "JY-JY-1-C9-Radio-V1.0.apk".
Push the apk to your unit.
Simply use one of the scripts from my repository. Make sure to have adb in the right place (windows) or change the script accordingly. Read the Readme: (https://github.com/hvdwolf/Joying-RootAssistant/blob/master/Radio-Mod/Readme.md) on my github repository inside the "Radio-Mod" section for info on how to use the scripts to install it on your unit.
Troubleshooting
Q1. adb or adb.exe can't be found.
A1. Make sure you have adb installed. Use the proper path to adb.
Q2. I can't get a connection to the unit.
A2. Search the web and find out how adb should work, see also the readme in my Radio mods. On 6.0.1 first activate adb over tcpip, or conect via USB.
Q3. You get an android icon instead of the Radio icon and when you tap it, your unit says "application not installed".
A3. Reboot, check again and try another time to copy it to your unit. If nothing works (after a couple of attempts), reboot and copy the original radio apk back in place, reboot again.
Q4. You rebooted the unit and you hear music, but you don't see a Radio icon.
A4. Same as Q3/A3: so do the same. This is due to the fact that the Radio function is a 2-step approach on the Intel joying units. The CarRadio.apk (hidden) does the real work. The Radio.apk is just the visible "tweak and go" app.
Changelog:
Version 0.2, 06 June 2017; few typos and rephrasing; Add reference to working in terminal / cmd box; Add paragraph on installing framework-res.apk as dependency for apktool.
Version 0.1, 05 June 2017; first version
Do you need to pull the framework file from the unit and load into apk tool first?
https://ibotpeaches.github.io/Apktool/documentation/#framework-files
I ran into issues on 6 with apktool until I loaded the framework.
gustden said:
Do you need to pull the framework file from the unit and load into apk tool first?
https://ibotpeaches.github.io/Apktool/documentation/#framework-files
I ran into issues on 6 with apktool until I loaded the framework.
Click to expand...
Click to collapse
Did you have issues with the Radio app or with the SofiaServer apk?
I tried with the framework that came with apktool (inside the jar) and with the framework-res.apk from the joying unit.
Apart from the issues you can encounter on this 6.0.1 version, I didn't notice differences for the Radio app.
I can imagine that with SofiaServer being a real system app, that it also might need the framework-res.apk.
However, normally when decompiling you get an error if you miss a "framework" type apk. It will even mention which apk you need. (Had that on my previous Samsung phone which uses a lot of Samsung only resource and framework like apks.
I will at least add a 5th Q/A section describing how to do that.
surfer63 said:
Did you have issues with the Radio app or with the SofiaServer apk?
I tried with the framework that came with apktool (inside the jar) and with the framework-res.apk from the joying unit.
Apart from the issues you can encounter on this 6.0.1 version, I didn't notice differences for the Radio app.
I can imagine that with SofiaServer being a real system app, that it also might need the framework-res.apk.
However, normally when decompiling you get an error if you miss a "framework" type apk. It will even mention which apk you need. (Had that on my previous Samsung phone which uses a lot of Samsung only resource and framework like apks.
I will at least add a 5th Q/A section describing how to do that.
Click to expand...
Click to collapse
I had issues when I made changes to the SofiaServer apk. I initially built against the 6.0.1 ROM using the 5.1.1 framework. I didn't see any errors, the apk just would not work when loaded on the unit. Now, I pull it from the ROM and load on every ROM update ( just to be safe).
gustden said:
I had issues when I made changes to the SofiaServer apk. I initially built against the 6.0.1 ROM using the 5.1.1 framework. I didn't see any errors, the apk just would not work when loaded on the unit. Now, I pull it from the ROM and load on every ROM update ( just to be safe).
Click to expand...
Click to collapse
I added a section and not as a new Q/A

Categories

Resources