Prevent apps from building - PAC Q&A

Hello,
I'm building my own version for my hammerhead
I'm trying to figure out if it would be possible to prevent some apps to compile
For instance, MMS, email, and around 10 others apps I have to remove every time I flash
I also have a modified NFC apk (which allows tags while screen is off), can I also auto include this file in the build ? (instead of the "normal" one)
Thanks for any hint

bud77 said:
Hello,
I'm building my own version for my hammerhead
I'm trying to figure out if it would be possible to prevent some apps to compile
For instance, MMS, email, and around 10 others apps I have to remove every time I flash
I also have a modified NFC apk (which allows tags while screen is off), can I also auto include this file in the build ? (instead of the "normal" one)
Thanks for any hint
Click to expand...
Click to collapse
look in your android source tree: .repo/local_manifests/roomservice.xml
In this file you can add and remove projects, so if you want to remove Browser from the build, you add this line to the others:
Code:
<remove-project name="android_packages_apps_Browser" />

Langes said:
look in your android source tree: .repo/local_manifests/roomservice.xml
In this file you can add and remove projects, so if you want to remove Browser from the build, you add this line to the others:
Code:
<remove-project name="android_packages_apps_Browser" />
Click to expand...
Click to collapse
Awesome ! Thousands thanks !!!
Will try that as soon as the active display fixes are merged
One last question tho, the case is sensitive ? Sould I copy/paste the project names from the git to be more accurate ?

bud77 said:
Awesome ! Thousands thanks !!!
Will try that as soon as the active display fixes are merged
One last question tho, the case is sensitive ? Sould I copy/paste the project names from the git to be more accurate ?
Click to expand...
Click to collapse
Yes, you will get errors on incorrect case ... like most thing linux

Of course, that was a stupid question
First build try failed, as I removed the email app, but it seems to be needed by bluetooth (???)
After removing the project removal, it's now building
Thanks again !
And for added/replaced apk, is there any best practice ?
Sent from my Nexus 5

To remove packages from being built, just remove the corresponding line from the product packages in the vendor makefiles. Check you device/lge/hammerhead/cm.mk to see what makefiles it is referencing.

iurnait said:
To remove packages from being built, just remove the corresponding line from the product packages in the vendor makefiles. Check you device/lge/hammerhead/cm.mk to see what makefiles it is referencing.
Click to expand...
Click to collapse
Won't this file be overwritten on each repo sync ?
And FYI, I managed to replace the NFC apk, by my modified one. I just added it in the folder where the SuperUser.apk is, and it got included in the final zip (replacing the one which has been compiled)

bud77 said:
Won't this file be overwritten on each repo sync ?
Click to expand...
Click to collapse
As long as you do not commit the file, it will not get overwritten upon repo sync. How every, if cm decides to change something in that file, then you will have to stash your changes before syncing or it will give you a checkout error.
And FYI, I managed to replace the NFC apk, by my modified one. I just added it in the folder where the SuperUser.apk is, and it got included in the final zip (replacing the one which has been compiled)
Click to expand...
Click to collapse
You are talking about placing it in the output directory right? This is not a good idea generally as it will be deleted if you do a clean build. If you need a modified NFC app it as best to remove the current packages/apps/NFC directory vial the local manifest and add a repo that has whatever changes you need
Sent from my Nexus 7 using Tapatalk

iurnait said:
As long as you do not commit the file, it will not get overwritten upon repo sync. How every, if cm decides to change something in that file, then you will have to stash your changes before syncing or it will give you a checkout error.
Click to expand...
Click to collapse
Got it, thanks !
But the local manifest seems to be a more viable option (long term speaking)
You are talking about placing it in the output directory right? This is not a good idea generally as it will be deleted if you do a clean build. If you need a modified NFC app it as best to remove the current packages/apps/NFC directory vial the local manifest and add a repo that has whatever changes you need
Sent from my Nexus 7 using Tapatalk
Click to expand...
Click to collapse
Problem is, there is no repo for it. Someone posted the modified APK in the hammerhead forum
(He decompiled the app, modified a value, and recompiled it)
And I've done already 2 clean builds, and the modified APK is still there (weird right ?)
Edit : Misread 2nd post. No, not in output dir, but in "builddir"/vendor/pa/prebuilt/apk, and it stays after clean build

bud77 said:
Got it, thanks !
But the local manifest seems to be a more viable option (long term speaking)
Problem is, there is no repo for it. Someone posted the modified APK in the hammerhead forum
(He decompiled the app, modified a value, and recompiled it)
And I've done already 2 clean builds, and the modified APK is still there (weird right ?)
Edit : Misread 2nd post. No, not in output dir, but in "builddir"/vendor/pa/prebuilt/apk, and it stays after clean build
Click to expand...
Click to collapse
Well, since you placed it as a prebuilt, it gets copied over to your out directory when you build the rom, so you are fine.

I'm trying to remove email.apk and exchange2.apk, but I can't find their names
I tried to remove the email project (in the manifest), but this leads to compiling issues, as it is needed by bluetooth
Any idea how I can do that ?

What you could do is let those apps to compile but add them to the squisher.rm in the vendor/pac/tools. It will not include them in the zip.
Sent from my SGH-I337M using Tapatalk

Nick0703 said:
What you could do is let those apps to compile but add them to the squisher.rm in the vendor/pac/tools. It will not include them in the zip.
Sent from my SGH-I337M using Tapatalk
Click to expand...
Click to collapse
Enever heard of that one, but I will try this ASAP !
Shall I create a "pac_hammerhead.rm" or edit the squisher file directly ?
Also, does this get overwritten on repo sync ?
Edit : After some misclicks, I deleted the "tools" folder, and a repo sync didn't brought it back
So I took the git tarball, extracted it, and pasted the folder in it usual folder
So I got my answer : No, it doesn't get overwritten

bud77 said:
Enever heard of that one, but I will try this ASAP !
Shall I create a "pac_hammerhead.rm" or edit the squisher file directly ?
Also, does this get overwritten on repo sync ?
Edit : After some misclicks, I deleted the "tools" folder, and a repo sync didn't brought it back
So I took the git tarball, extracted it, and pasted the folder in it usual folder
So I got my answer : No, it doesn't get overwritten
Click to expand...
Click to collapse
If you delete a sub folder, repo sync will only restore it if you delete the entire project folder ... so you could have deleted vendor/pac and sync would have restored it

Thanks, I'm learning every day a new trick

Related

[DEV][TOOL] EASYapkTOOLcompilerDECOMPILER v1.5 [2.1Beta 2012.09.05]

UPDATED 2012.09.05!!! Hey guys, if you can do some testing with the new version and give me some feedback, I fixed some errors with the drag and drop code, and included apktool versions (1.2.0, 1.3.2, 1.4.0, 1.4.1, 1.4.2, 1.4.3, 1.4.5, 1.4.6, 1.4.7, 1.4.8, 1.4.9, 1.4.10, 1.5.0) you can add as many others as you like to the _bin folder, just create a separate folder with the version number and place it in there (make sure the file is named "apktool.jar" or the code won't work), if you want to set a default apktool version to use, so that you aren't prompted all the time, you can change the name of the "apktool.manual" file to (for example) "apktool.1.4.9" and from then on it will use that version instead of prompting... and you can always change it back, or change it to a newer/older version number as needed...
if this works well for you guys I will update the first post...
Code:
Beta Changelog
2.0 Initial Beta
2.1b
cleaned up some code issues (defualt file wasn't working properly)
added the newer unofficial apktool builds (1.4.5 -- 1.5.0)
here's the mediafire link: http://www.mediafire.com/?td20i8cv8lfq90l
First of all, I did not create apktool (DUH!) that credit goes to: Brut.alll what a wonderful tool. I have included version 1.3.1 because that is the version that seems to work best right now...
Note: Brut.alll, if you happen to read this and would like me to remove apktool from being included with my batch scripts, please contact me and I will happily do so.
Alright... the easyFLASHABLEzipBUILDER gave me the idea to do this... Basically it's a way to "automagically" compile/decompile (smali/baksmali via apktool) apk's and jar's for all you dev's or wannabe dev's who want an easier way about this... These are windows batch scripts and should work with anything win2k or newer.
how it works: said:
Extract to a directory, for simplicity we'll say "apktool"
Place whatever file/folder(s) you would like to compile/decompile in the root of "apktool"
The filenames are pretty self explanatory... the drag and drop options file will prompt for the options only, this way you can still have the ease of drag and drop, but only need to input the more specific options
The manual file will only ask for options and filename, if you decompile it will change the last "." before extension to a "_" so framework-res.apk would output to _out\framework-res_apk.
When you (re)build with ANY of the files if the given folder name is framework-res_apk then the output file will be framework-res_REBUILTsigned.apk
The manual and drag and drop files always preserve the extension, so if you modify the folder name before rebuilding leave the "_apk" or "_jar" alone.
I will add some error checking in later versions, but at the moment you'd probably have to be trying, to create an error, and it would only be an error with the batch, you wouldn't actually mess a file up or anything.
now outputs all files/folders to a subfolder "_out"
core files are now in "_bin" folder... batch files must be one level above this folder to work properly.
Drag and drop works from ANY folder, but always outputs to the "_out" folder.
rebuilt files are now signed with a test key, so shouldn't have any "unsigned" or "improperly signed" errors when trying to install after being rebuilt.
Click to expand...
Click to collapse
Let me know if you have any requests, or questions... happy to help in any way I can...
MEDIAFIRE [LATEST]: http://www.mediafire.com/?cablu617ijq22ac
benjamminzIS said:
Note: Brut.alll, if you happen to read this and would like me to remove apktool from being included with my batch scripts, please contact me and I will happily do so.
Click to expand...
Click to collapse
I'm always happy to see that someone uses and/or improves my tools
Brut.all said:
I'm always happy to see that someone uses and/or improves my tools
Click to expand...
Click to collapse
I know this will probably only appeal to the "newer" devs who are just getting started... but I'm a fan of less typing to accomplish the same goal, so I figured why not =)
thanks for your blessing, it's appreciated!
Linux compatable?
Daughain said:
Linux compatable?
Click to expand...
Click to collapse
not currently... but if linux supports drag and drop on scripts, I suppose I could look into porting it for linux... or if not I could just make a "manual" version for linux? (as in one that just prompts for for the options and filename and does the rest) I need to start familiarizing myself with linux anyways... so it would be a good learning experience for myself...
c'mon guys, over a hundred takers already and pretty much zero feedback! If there is anything functionality wise you looking for please let me know, I would like to be able to improve this for you guys, but if no one says anything, then I don't even know if it's working for you or not... 30seconds of your time to write a post isn't asking much =P
Great tool
2 of the 4 bat files worked great. The other 2 gave me the syntax usage be fore it said GOODBYE.
Working for me:
DRAGandDROPbuild.bat
DRAGandDROPdecompile.bat
Not working for me:
DRAGandDROPoptions.bat
APKtoolMANUAL.bat
Thank you. This would save sometime.
IamSonoma said:
Not working for me:
DRAGandDROPoptions.bat
APKtoolMANUAL.bat
Thank you. This would save sometime.
Click to expand...
Click to collapse
thanks for the feedback, I'll check it out... hopefully will have an update asap...
EDIT: main post updated, this patch is now obsolete...
nice, when i decompile a apk and change one string and then recompile it gives me application not installed (i am thinking its not signing the apk correctly)
for that matter if i dont change anything and decompile then recompile, same issue
benjamminzIS said:
can you try this out for me, and tell me if it solves your issue? if it does I will add to first post and update the main download...
Click to expand...
Click to collapse
Firmware: Froyo 2.2.1 KP5
Phone: Samsung Captivate
OS: Windows 7 and Windows XP
Code:
Batch File Tested: APKtoolMANUAL.bat
File Tested: Settings.apk
Decompile Errors: 0
Recompile Errors: 0
Folder Output: Settings_apk
Decompiled File Tested: Settings_apk\res\values\bools.xml
Edit made: <bool name="has_intrusive_led">false</bool> --> <bool name="has_intrusive_led">true</bool>
Changes took: Yes - <bool name="has_intrusive_led">true</bool>
Code:
Batch File Tested: DRAGandDROPoptions.bat
File Tested: Settings.apk
Decompile Errors: 1
Recompile Errors: N/A
Option chosen: d
Folder Output: Settings_apk.out
Result: Exception in thread "main" brut.androlib.AndrolibException: brut.directory.DirectoryException: java.io.FileNotFoundException: C:\EASYapkTO
OLcompilerDECOMPILER_patch_v1.1" C:\EASYapkTOOLcompilerDECOMPILER_patch_v1.1\C:\EASYapkTOOLcompilerDECOMPILER_patch_
v1.1\Settings_apk (The filename, directory name, or volume label syntax is incorrect)
at brut.androlib.ApkDecoder.hasSources(Unknown Source)
at brut.androlib.ApkDecoder.decode(Unknown Source)
at brut.apktool.Main.cmdDecode(Unknown Source)
at brut.apktool.Main.main(Unknown Source)
Caused by: brut.directory.DirectoryException: java.io.FileNotFoundException: C:\EASYapkTOOLcompilerDECOMPILER_patch_v1.1" C:\EASYapkTOOLcompilerDECOMPILER_patch_v1.1\C:\Downloads\EASYa
pkTOOLcompilerDECOMPILER_patch_v1.1\Settings_apk (The filename, directory name,
or volume label syntax is incorrect)
at brut.directory.ZipRODirectory.<init>(Unknown Source)
at brut.directory.ZipRODirectory.<init>(Unknown Source)
at brut.androlib.res.util.ExtFile.getDirectory(Unknown Source)
... 4 more
Caused by: java.io.FileNotFoundException: C:\EASYapkTOOLco
mpilerDECOMPILER_patch_v1.1" C:\EASYapkTOOLcompilerDECOMPI
LER_patch_v1.1\C:\EASYapkTOOLcompilerDECOMPILER_patch_v1.1
\Settings_apk (The filename, directory name, or volume label syntax is incorrect
)
at java.util.zip.ZipFile.open(Native Method)
at java.util.zip.ZipFile.<init>(Unknown Source)
at java.util.zip.ZipFile.<init>(Unknown Source)
... 7 more
Code:
More Testing
Batch File Tested: DRAGandDROPdecompile.bat
File Tested: Settings.apk
Decompile Errors: 0
Folder Output: Settings_apk
Decompiled File Tested: Settings_apk\res\values\bools.xml
Edit made: <bool name="has_intrusive_led">false</bool> --> <bool name="has_intrusive_led">true</bool>
Changes took: Yes - <bool name="has_intrusive_led">true</bool>
Batch File Tested: DRAGandDROPbuild.bat
File Tested: Settings.apk
Recompile Errors: 0
Folder Output: Settings_apk
Decompiled File Tested: Settings_apk\res\values\bools.xml
Edit made: <bool name="has_intrusive_led">false</bool> --> <bool name="has_intrusive_led">true</bool>
Changes took: Yes - <bool name="has_intrusive_led">true</bool>
Output File: Settings_REBUILT.apk
IamSonoma said:
Firmware: Froyo 2.2.1 KP5
Phone: Samsung Captivate
OS: Windows 7 and Windows XP
Click to expand...
Click to collapse
ok, will have to look into it... my apologies... looks like I'm handling the variables wrong...
No biggie. For the most part all is good. Plus I have been using cm7 and been busy.
Sent from my Captivate using XDA App
IamSonoma said:
No biggie. For the most part all is good. Plus I have been using cm7 and been busy.
Sent from my Captivate using XDA App
Click to expand...
Click to collapse
ok, looking at it a little closer, it looks as though you extracted the patch to a sub directory, if you ran the batch files from that subdirectory, then you will get errors as it is looking in that subdirectory for the _bin folder... try overwriting the original files, with the ones from the patch... then try again... let me know if you still get the error...
benjamminzIS said:
ok, looking at it a little closer, it looks as though you extracted the patch to a sub directory, if you ran the batch files from that subdirectory, then you will get errors as it is looking in that subdirectory for the _bin folder... try overwriting the original files, with the ones from the patch... then try again... let me know if you still get the error...
Click to expand...
Click to collapse
Ok. Thank you. Extracted the files again and moved folder to my e:\.
Working with contacts.apk it decompiled and recompiled fine. Contacts.apk did not work when I moved it to the system/app folder. I will test more later. the file was more compressed. I will recompile it later with winrar and the store command.
UPDATED!
fixed the syntax in DRAGandDROPoptions.bat and merged the fixes from the 1.1 patch...
also updated the thread name to be more proper... "compiler" instead of "builder" also updated the filename to match thread name... enjoy!
pyrator said:
nice, when i decompile a apk and change one string and then recompile it gives me application not installed (i am thinking its not signing the apk correctly)
for that matter if i dont change anything and decompile then recompile, same issue
Click to expand...
Click to collapse
I get the exact same problem no matter how I edit my apks and its confusing the hell out of me. Does anyone have any ideas on this? Happens with your tool here, and several others too.
Sent from my Nexus S
I have the same problem, and I think you are right about the signing.
I tried to resign the rebuilded file with autosign and I had the same resault. I mentioned that the file's size didn't change. I resigned again, using android commander' s sign option and at this time the file' s size incrased by 5K. The output file works without problems.
So, the problem seems to be with the apktoolj.
Thanks ill try that, it makes sense as I am trying to mod system apps such as camera and launcher2.
Thanks again! This could be what I'm looking for.
Sent from my Nexus S
strange, I thought apktool was supposed to sign as well? is it just not signing or is it improperly signing?
I am using the 1.3.1 version of apktool with this... I am using this version because 1.3.2 seems to have decompile/compile issues with many apk's...
I'm open to suggestions guys, please let me know if there is a "fix" I can implement and I will do so =)

Kindle Fire Network location

Hi, I had beautiful widgets installed and it was not findeing the location automatically, I had to put the zipcode or the city. Now I copied the networklocation.apk from my phone to the kindle's in the system app folder and now it is finding it by geolocation.
Sent from my Kindle Fire using xda premium
I gave this a shot with nogo... CityID it pulls up with is jibberish and non-locational to where I am at.
Just so you know what I did...
o Copied com.google.androidlocation.apk to /system/app
o Rebooted the device
o Used BeautifyWidgets, selected Weather Widget Setting
o Selected Set Location
o Clicked Geolocation
Errors said Geolocation was not on
o told it to use it anyway
o Saved the settings.
krelvinaz said:
I gave this a shot with nogo... CityID it pulls up with is jibberish and non-locational to where I am at.
Just so you know what I did...
o Copied com.google.androidlocation.apk to /system/app
o Rebooted the device
o Used BeautifyWidgets, selected Weather Widget Setting
o Selected Set Location
o Clicked Geolocation
Errors said Geolocation was not on
o told it to use it anyway
o Saved the settings.
Click to expand...
Click to collapse
When you copy the app in the settings l, long press the app and choose permissiones and you must have it setup like the pic
Sent from my Kindle Fire using xda premium
Will this work with Google Maps as well?
EDIT: Yup, I am now finding my location in Google Maps as well. Saaweeet!
Used the same permissions as everything else in the /system/app directory
0644
Well my location is working I don't know why yours doesn't .
samomamo said:
Well my location is working I don't know why yours doesn't .
Click to expand...
Click to collapse
Samomamo, where did you get the NetworkLocation.apk package from, also did you have to adjust anything in Settings.db for any network settings?
I am completely stumped and have been scouring through myriads of posts for some shred of helpful info, so far this post and this one:
http://forum.xda-developers.com/showthread.php?t=1362472
but have had no luck with either one. I am wondering if the answer lies in from where you got your NetworkLocation.apk. Any help would great! Thanks!
I got the apk from my T-Mobile Galaxy s2
Sent from my SGH-T989 using xda premium
I downloaded the networklocation apk from the CM7 gapps. The followed the directions and it is now showing my location. I believe it will only show my location if connected to wifi though.
Gapps is found here : goo-inside.me/gapps/
Solved issue by adding files and editing framework-res.apk
If anyone searching is interested in how I was able to solve this I could not simply add the Google Network Location APK, I had to force the Amazon "framework-res.apk" file to recognize it by editing the '/res/values/strings.xml' with the following lines:
Same ol' disclaimers - I'm not responsible for whatever you do with this info, if you brick your device, its your decision to try and not my fault or issue to fix. This is nothing new I just put the various pieces together from research through other posts, forums, etc. so credit where credit is due.
irishmyles003 and samomamo thank you very much for your input. Though I wish your solutions would have worked I am glad I had this challenge as I think I taught myself a little more about how to mess around and tweak the system a bit.
I still added the NetworkLocation.APK as stated and explained by Samomamo, but I had the do the following steps in order to get the framework to actually react to network location requests, since it kept returning "null".
<<Original>>
Code:
<string name="config_networkLocationProvider">@null</string>
<string name="config_geocodeProvider">@null</string>
<<Modded>>
Code:
<string name="config_networkLocationProvider">com.google.android.location.NetworkLocationProvider</string>
<string name="config_geocodeProvider">com.google.android.location.GeocodeProvider</string>
Steps:
Use ApkTool to pull "framework-res.apk" and decompile
Replace the lines above to match the modded section
Recompile the APK to "unsignedframework-res.apk"
Copy and rename original "framework-res.apK" -> "originalframework-res.apk" (put this file aside in case you need to flash if you make a mistake)
Rename the original and newly compiled files to .zip (so you can extract, edit, etc)
- "framework-res.apk" -> "framework-res.zip"
- "unsignedframework-res.apk" -> "unsignedframework-res.zip"
Extract "resources.arsc" from unsigned and paste (and overwrite) to the "framework-res.zip" file
Rename "framework-res.zip" -> "framework-res.apk"
Push "framework-res.apk" to device (need to mount /system r/w)
chmod 644 (i.e. <rw, r, r> for root explorer)
Reboot and voila it worked (for me at least)!
Sources / Props to the authors of these links:
I could not give correct props because I got these from outside links, but [email protected] and the Enable CRT Animation guide at freeyourandroid.com and the APKtool tutorial at miui-au.com
Also if you google using the info above you will find you can also enable the AOSP GB CRT Animation by editing a line in the bools.xml, I tried this and it works! Enjoy!.
EDIT: After applying the framework-res.apk and rebooting I just realized that my accounts were lost. I just had to re-add them via SyncSettings (Market: com.francesandmarky.android.syncsettings) - Amazon, Gmail, and Facebook.
rpw128 said:
If anyone searching is interested in how I was able to solve this I could not simply add the Google Network Location APK, I had to force the Amazon "framework-res.apk" file to recognize it by editing the '/res/values/strings.xml' with the following lines:
Same ol' disclaimers - I'm not responsible for whatever you do with this info, if you brick your device, its your decision to try and not my fault or issue to fix. This is nothing new I just put the various pieces together from research through other posts, forums, etc. so credit where credit is due.
irishmyles003 and samomamo thank you very much for your input. Though I wish your solutions would have worked I am glad I had this challenge as I think I taught myself a little more about how to mess around and tweak the system a bit.
I still added the NetworkLocation.APK as stated and explained by Samomamo, but I had the do the following steps in order to get the framework to actually react to network location requests, since it kept returning "null".
<<Original>>
Code:
<string name="config_networkLocationProvider">@null</string>
<string name="config_geocodeProvider">@null</string>
<<Modded>>
Code:
<string name="config_networkLocationProvider">com.google.android.location.NetworkLocationProvider</string>
<string name="config_geocodeProvider">com.google.android.location.GeocodeProvider</string>
Steps:
Use ApkTool to pull "framework-res.apk" and decompile
Replace the lines above to match the modded section
Recompile the APK to "unsignedframework-res.apk"
Copy and rename original "framework-res.apK" -> "originalframework-res.apk" (put this file aside in case you need to flash if you make a mistake)
Rename the original and newly compiled files to .zip (so you can extract, edit, etc)
- "framework-res.apk" -> "framework-res.zip"
- "unsignedframework-res.apk" -> "unsignedframework-res.zip"
Extract "resources.arsc" from unsigned and paste (and overwrite) to the "framework-res.zip" file
Rename "framework-res.zip" -> "framework-res.apk"
Push "framework-res.apk" to device (need to mount /system r/w)
chmod 644 (i.e. <rw, r, r> for root explorer)
Reboot and voila it worked (for me at least)!
Sources / Props to the authors of these links:
I could not give correct props because I got these from outside links, but [email protected] and the Enable CRT Animation guide at freeyourandroid.com and the APKtool tutorial at miui-au.com
Also if you google using the info above you will find you can also enable the AOSP GB CRT Animation by editing a line in the bools.xml, I tried this and it works! Enjoy!.
EDIT: After applying the framework-res.apk and rebooting I just realized that my accounts were lost. I just had to re-add them via SyncSettings (Market: com.francesandmarky.android.syncsettings) - Amazon, Gmail, and Facebook.
Click to expand...
Click to collapse
Could someone post the modified framework-res.apk?
Why does it work for some but not others?
andTab, I tried but the max filesize is 8 mb for APK files, the framework-res.apk is 27-31 mb. I couldn't figure out why the original posters were able to do it by just adding the files. When I unpacked the APK it was intentionally set to null not allowing usage of the google location framework.
xxx.multiupload.com/5FJ4ZTH6TX (take out the x's, it wouldn't let me post the address b/c I am new)
Thanks for your work guys...
I downloaded and applied this frame work apk, the crt animation is now enabled, but google maps still not finding my location in the middle of Los Angeles.
Hmmmm
You still need NetworkLocation.Apk from Gapps put into /System/App (also run it from your SD Card), then reboot. The adjusted lines in the Framework-Res points to this framework.
So my evo 3d is running ICS, can I still use the file? Or could someone post a working one?
atomiclama said:
So my evo 3d is running ICS, can I still use the file? Or could someone post a working one?
Click to expand...
Click to collapse
irishmyles003 said:
I downloaded the networklocation apk from the CM7 gapps. The followed the directions and it is now showing my location. I believe it will only show my location if connected to wifi though.
Gapps is found here : goo-inside.me/gapps/
Click to expand...
Click to collapse
I'm not too sure, if you're working off stock the Kindle Fire uses 2.3.4 so I would use the 8/28 version from the website irishmyles003 provided.
Hmm still not having a whole lot of luck.
I downloaded the networklocations apk from gaps of the correct date. Also installed the updated framework. Like I said Im seeing CRT change.
I've set up the geo location through beautiful widgets.. but still not finding location.
What am I missing?
thanks
also when I placed the network locations apk I set correct permission and tried to install it, it said application not installed. Could to be part of the problem?
atomiclama said:
also when I placed the network locations apk I set correct permission and tried to install it, it said application not installed. Could to be part of the problem?
Click to expand...
Click to collapse
Placing it in the /system/app area is installing it.
Make sure you reboot for the system to see it though.
Note: I've not tried this patch...
I'm not exactly sure why it isn't working for you. I spent a few days looking at logcat's and forums. Don't forget to change the permissions (mentioned earlier in this thread) to 644.

[GUIDE]How to make a custom rom?Custom ROMs explained[UPDATE:20-3-2012]

Hey Guys,
I am going to explain some of the files in a custom rom,the small and easy to mod files because the aim is to educate newbies and NOT advanced devs.
Ok,So,I have seen a lot of questions being asked nowadays about making custom roms.This guide is NOT about building a custom rom but about editing and modding it.I am doing this guide taking CM7 as base,not stock,so there might be differences between the roms you choose to mod.Also,I am prone to mistakes here and there.If i made any,please comment about it and i will remove it.Also,please feel free to give your suggestions about making this guide better
What you would need:
Notepad++
WinRar or any other zip/rar manager like 7zip or WinZip
If you want go advanced,you would also need these things
Cygwin
Smali/Baksmali
APK Multi tool or anything like that,i dont care
And most importantly,a brain and eyes(So,Dont ask me stupid questions like,how de fuk du i xtarct? and then in brackets,sorry for my english)
GUIDE:
So,first up,download a rom of your choice(Dont forget to get the permissions for modding from the developer) and extract it.When you extract it,you will see 2 folders and 1 file,it varies.It depends on the contents of the rom.
The folders are:
1.META-INF
2.system
The file:
1.boot.img
So,
Open up system and the first folder you are going to see is 'apps'.
As you already see,this is the place where all the apps go,for the history.You might also see some .odex files below the apps.So,if you remove an app,you should delete the odex file too.If you want to add an app,just drag and drop Take care not to delete each and every app you find,because each of them has their own functions.Also,if you delete contact.apk and replace it with a better dialer like Exdialer,you wont be able to add or delete contacts.So,there are some files better left alone.
If you want to know how to merge them,then use google,there are a lot of tutorials on deodexing.If you want to edit an app,then use APK multi tool,again please use google,lots of tuts on this one too.
Also,you will find an app here and its a main one,systemui.apk By editing systemui.apk,you can get transparent status bars,transparent notification bars,centre the clock.Things like that.The idea with which you edit Systemui.apk and framework-res.apk,thats how your rom is going to look like.These files handle the visual things and they are awesome too.For some systemui mods,refer HERE
Now,some apk files are lib-dependent,meaning,they need certain lib files to work,a few examples are,Swype keyboard,now,swype wouldnt work if this lib file is not included in the rom,libswypecore.so,so if you remove swype,remove this lib file also,because its just a wastage of space and it doesnt do anything.Another example is DSP Manager in Froyo,in GB,it works native,no need to add any applications,but in Froyo,if you add DSP Manager,there are a few lib files that you should add to get them to work.
Next,the 'bin' folder,this guide is aimed at the noobs,so nothing about this,this is a bit advanced stuff,so sorry.
Next up,the 'etc' folder.There are a lot of things that go here.I wont be going to full details for the moment because i am having exams,so no time.However,i will be explaining the easy to explain files.
One thing you will notice is the 'init.d' folder.If you want to add any script like LagFree v2,just put the files of the init.d folder in the script's folder here,nothing else.You dont need to copy any other files like META-INF.
Another file,is CHANGELOG-CM,just as the name suggests its a file giving you changelogs
Another file is NOTICE.html..Its just a file showing copyrights and all that stuff.You wouldnt need to edit that,would you?
Will add more about the other files soon
Next,the 'fonts' folder..You guys need an explanation for that??
Next,'framework' folder.Here you will find framework-res.apk(Obviously,duh...).I wont tell about any other file because this is aimed at new users,not advanced guys.Framework-res is where all the icons in notification bar are.The battery icons,they are all in framework.Also,lockscreen icons
go here..Most of the icons.If i have to start on anything.It would take me weeks,theres so much to write about framework.Also take care not to mess up the framework.Because its like the skeleton(thats what i know ) of a rom.If a framework is incorrectly configured,the rom wont boot.So,keep that in your mind always when you edit framework.
Next,the 'libs' folder,This guide is aimed at newbies,so not touching this part.
And comes 'media'..Most probably you will find 2-3 folders here.Audio,bootanimation.zip and wallpapers.
If you want to change the default,its in build.prop,not here,i will explain that later.If you need to add some audio,its just drag and drop,nothing much,just put them in the right folders,like alarms,ringtones and notifications
If you need to add wallpapers,reszie the pictures to 640x480,thats the resolution that works for ace.Also resize it to 107x80 and save it as another pic with a _small at the end.For eg,the default file is defaultwallpaper.jpg,you make another pic with 107x80 called defaultwallper_small.jpg.
Then,theres the bootanimation.zip..However way you change this thing.Always name it bootanimation.If you want to know how to make a boot animation,then refer freeyourandroid.com
Next up is 'tts' folder..Sorry but i dont know much about this folder.I think this folder contains the languages for the tts app but i am not sure about it.Same goes for 'usr' and 'wifi' folders.But since this thread is aimed at newbies,i dont think there wouldnt a point in writing them up anyway
Next up is build.prop file.Open it with notepad++...build.prop file is pretty self explanatory.
Here you can change the most basic things like the android version that setting shows..Wondered how people are making 2.3.4 look like 4.0.3 in settings??Its build.prop.Also,you can change what 'About phone' shows here.
Other things,you can change things like,how long your wifi scans,how much battery your phone saves while in sleep,Dalvik VM heapsize and default ringtones.If you are wondering what # stands for,it signifies that,that particular tweak is not running,so you can take out the # if its a tweak you like.You could also use it say things like,Additional build properties.You could make it #AdditionalBuildProperties and go to the next line and give your tweaks there.Some build.prop tweaks can be found in slaid480's thread in Galaxy Ace S5830 titled "[MOD]Build.prop tweaks for SGA" or you can go to freeyourandroid.com and find some tweaks there,however the tweaks listed there are universal,so practise caution when playing with build.prop
Now to boot.img..Theres an awesome guide about this in freeyourandroid.com Please have a look at it,because there are lots to write about this one.This is where Cygwin comes in,for instructions on unpacking and repacking and commands and info about boot.img,referHERE and HERE.My summarized version,boot.img is where you can replace kernels.This is where you can make those low-level changes
Then,to META-INF folder.You would find lots of folders here but the file that you would edit consistently is update script.Find it and open it with Notepad++..Unless you edited xbin and bin files,this is not hard to do..Just change around ui_print to what you like.Dont touch anything else if you dont know what you are doing.If you DID edit xbin or bin files,you would need to touch advanced things like symlink tagged ones(I had to give them some sort of a tag)
Updater-Script References and notes:
Now,the updater-script is not something that you should mess around with,a single line of error in the script could get you in trouble.You might also have heard these words,Amend and Edify and wondered what they are,well Edify is the language with which Updater-script is written,while Amend is the language with which Update-Script is written.Now,As far as i know,Ace does NOT support Update script,it just supports Updater-script,so if you are working with kitchen,dont forget to swap the files in META-INF with the the updater-script provided by ketut.kumajaya in Blackhawk thread.So,you should learn to study updater-script of roms and patches before you mess around with them,especially patches here...Now,for example,I made a GPS patch that replaces hw folder in CyanogenMod with my patch.Now,i tell the updater script to delete the hw folder in lib and make another one and put my files in there,you,a normal user will flash it and it would work,but a rom maker without seeing that i have told the updater script to delete hw folder,adds my lib files to the existing lib files,which causes the rom not to boot.So,study the updater-script of patches and see what they do before you jump in and start doing things your own way and mess things up.I will write down a few updater-script commands here and what they do for your convenience now.Here you guys go with it:
mount-mounts a filesystem
is_mounted-checks if a filesystem is mounted
unmount-Unmounts a filesystem
format-format a filesystem (duh..)
delete-Deletes a single file
delete_recursive-Deletes a folder and all of its contents
show_progress-Display flash progress
package_extract_dir-Extract all the files present in a directory to a specified directory
package_extract_file-Extract single file from directory to specified target
file_getprop-dont know much about this one
symlink-Unlinks any existing symbolic links before creating the new symbolic links.
set_perm-Sets permissions for a file,note you dont write rw-r-r here.Its the numbers,for example,for root access,you write 777(right?),not anything else
set_perm_recursive-Sets permissions for a full directory,for example,if you specified a folder,permissions for the folder and all files in it will be set.
getprop-This function returns the value of the property specified. This is used to query platform information from the build.props file.
write_raw_image-Writes a raw image into a partition
apply_patch-Applies patches to a directory -_- (dont you guys understand it just by reading that? )
apply_patch_check-Checks if a file can be patched or if they have been patched
apply_patch_space-Checks if there is enough space to apply a patch
read_file-Reads contents of a file
sha1check-If only data is specified, then the function returns the sha1_hex string of the data. The optional parameters are used if you want to verify that the file you are checking for is one of a list of hashes. It reutrns the hash it matches, or returns nothing if it doesn't match any of the mentioned hashses.
ui_print-It outputs a message to the users while flashing.So,if you see something like 'This is so awesome',know that its not such a big deal and that its just a line of editing here
run_program-Runs a program
ifelse-This is the if-then construct of the Edify scripting language. The truecondition or falsecondition arguments can be a single edify command or a script block. Script blocks can be formed by enclosing the parameter with parenthesis, and seperating the commands with semicolons
abort-duh..it aborts script execution
assert-If condition evaluates to false, stops script execution, otherwise continues processing.
Thats it,dont worry after seeing all these commands.You wont see them all in most of the roms.Here is a list of commands that you usually see in a updater-script.
ui_print
mount
unmount
delete
delete_recursive
package_extract_directory
symlink
show_progress
set_perm
set_progress
set_perm_recursive
getprop
run_program
assert
Now on making it a flashable zip,archive them to a zip file.Get a signer here: http://forum.xda-developers.com/showpost.php?p=6050996&postcount=2
NOTE:Signing is not necessary
The instructions on using that are given with it.Just rename it back to the name you like after signing it.
Thanks to everyone.Especially,freeyourandroid,XDA and TeamCooper and all members of XDA developers and to me (well,you are the one who does that,remember that button Jk )
Hope this helped you guys..Again,this is a thread aimed at educating the new members,not advanced guys.Sorry if i missed anything or made a mistake..Please give me suggestions on this too.Will add more info to this thread when i have the time[/SIZE]
good guide
Looks good
Very helpful.
Fix those grammatical errors !
*grammar nazi alert*
Herpderp Adreno + Tegra.
gOOD guide overall but you shiould make it more advanced
EmoBoiix3 said:
Fix those grammatical errors !
*grammar nazi alert*
Herpderp Adreno + Tegra.
Click to expand...
Click to collapse
Aah....grammar hitler
slaid480 said:
gOOD guide overall but you shiould make it more advanced
Click to expand...
Click to collapse
Yep..I know that..I will work on it but i dont have much time now
This is a great guide , it'll help me a lot ^_^ thanks.
Great tut dude
Is an update needed??I dont think so because it didnt even stay on the front page for a day
Awesome guid please add some more advanced features and custom rom building guide also if u can. :thumbup:
Sent from my GT-S5830 using Tapatalk
The bad effect will be more and more new custom firmware which is actually just a re-branding
ketut.kumajaya said:
The bad effect will be more and more new custom firmware which is actually just a re-branding
Click to expand...
Click to collapse
What???I dont get you
mor_1228 said:
Awesome guid please add some more advanced features and custom rom building guide also if u can. :thumbup:
Sent from my GT-S5830 using Tapatalk
Click to expand...
Click to collapse
I will add them by tonight or something like that when i have time..Not much time now,stupid exams Oh,i hate them
Originally Posted by ketut.kumajaya
The bad effect will be more and more new custom firmware which is actually just a re-branding
Prawesome said:
What???I dont get you
Click to expand...
Click to collapse
Click to expand...
Click to collapse
i got what he is trying to say.
he is saying that due to rom building guides noobs will also learn how to build custom rom but they may not have that knowledge skills to make a distinguished ROMS they will be building common roms with little or no difference, difference will be only that different people will release rest things will be kind of same only no drastic changes.
hope i am right
mor_1228 said:
i got what he is trying to say.
he is saying that due to rom building guides noobs will also learn how to build custom rom but they may not have that knowledge skills to make a distinguished ROMS they will be building common roms with little or no difference, difference will be only that different people will release rest things will be kind of same only no drastic changes.
hope i am right
Click to expand...
Click to collapse
Maybe..But i am tired of questions on building custom roms..Recently,there were a lot of questions on building custom roms
Yeah.. i'm a newby become smarter... thx for share...
Sent from my GT-S5830 using xda premium
I will add more info about the boot.img and framework-res.apk tonight
Nice work, thank you
If you have time, can you please post a guide on how to sign APK files?
For example, if i want to edit an icon of an app, i change the icon in the .apk but then i have to sign it, how can i do it?
On the net i found lots of guides and programs but none of them worked for me...
Anyway good work

[Linux][UTILITY][TOOL] APK Multi-Tool

GgI am currently working on a major update to the apk manager application as well and changing the name to APK Multi-Tool with some new added features and also to fix some issues with some code errors.
I am also changing a lot of the features as well since a lot of the code has been outdated for a while.
I have updated all the files and modified Apk manager's Scripts to fix many user reported bugs from Daneshm90 apk manager which he had written a simple script to ease the process of editing apks. Got a lot of downloads so thought its in demand
Whether you're doing basic image editing or editing the smali or xml files, on average u have to use (Brut.all or JF's smali/baksmali) awesome tool to extract the apk, edit it, then sign the apk and then adb push/install it. This process is quite tiresome if you are testing a method that needs fine tweaking.
This script should make the process a LOT smoother.
Theres an option of compiling/signing/installing all in one step
Thanks:
Goes to Daneshm90 the Original Writer of APK Manager
Goes to Brut.all for his awesome tool.
Goes to JF for ofcourse, smali/baksmali
Features:
- Added framework dependent decompiling (For non propietary rom apks). (Option 10). Checks whether the dependee apk u selected is correct.
- Allows multiple projects to be modified, switch to and from.
- Allows to modify system apk's using apktool but ensures maximum compatibility in terms of signature / manifest.xml
- Batch optimize apk (Zipalign,optipng,or both)
- Batch Ogg optimization
- Batch install apk from script (option 19)
- Batch Theme Image Transfer TOOL
- Batch Theme optipng TOOL
- Batch Theme Zipalign APK TOOL
- Compression level selector (monitor status above menu)
- Error detection. Checks if error occurred anytime u perform a task, and reports it
- Extract, Zip apk's.
- Incorporates brut.all's apktool
- Improved syntax of questions/answers
- Logging on/off has been removed. Instead a log.txt is created which logs the activities of the script organized using time/date headers
- Optimize pngs (ignores .9.pngs)
- Pull apk from phone into modding environment.
- Push to specific location on phone
- Quick sign an apk (Batch mode supported)
- Read log (Option 24)
- Sign apks
- Supports batch installation, so if u drag multiple apks into the script (not while its running) it will install them all for u. U can ofcourse drag a single apk as well
- User can change the max java heap size (only use if certain large apks get stuck when decompiling/compiling apks) (Option 19)
- U can now set this script as ur default application for apks. When u do, if u double click any apk it will install it for u.
- Zipalign apks
- Much Much More
Instructions:
- Place apk in appropriate folder (Any filename will work, if running for first time folders will not be there, you must run and then the folders will be created)
- Run script
- Minimize the script
- Edit files inside the project folder
- Maximize the script
Requirements:
Java 1.7
Android SDK
FAQ
Resulting apk file is much smaller than original! Is there something missing?
First: compression of resources.arsc file. Sometimes this file is compressed in original apk, sometimes not and apktool always compress it. Second: lack of META-INF dir. Apktool builds unsigned apks, so they lack signatures stored in this dir. Third: apktool uses newest Android SDK, so it could optimize files better, especially if original app is old. So: unpack both original and resulting apk, remove META-INF from original and then compare sizes. If they're still much different, then you could report on XDA or somewhere.
There is no META-INF dir in resulting apk. Is this ok?
Yes. META-INF contains apk signatures mostly and after modifying apk in no longer signed, so there are no signatures in it. You have to sign resulting apk and then META-INF dir will be created.
What do you call "magic apks"?
Sometimes there are some apks which (for my current knowledge) are invalid, broken, theoretically they shouldn't exist. There may be many reasons of their existence: my lack of understanding of Android resources; some non-public, maybe future SDK tools or custom modifications of these; manual hacking of binaries, etc. Usually I can't do anything about it, but you could at least try to replace broken parts by something valid. Actually it's quite likely that they aren't even used, because if they would, then application would crash.
Got problems ?
1. Make sure your path has no spaces
2. Your filename has no wierd characters
3. Java/adb are in your path
4. It's not a proprietary rom's apk (aka Sense,Motorola,Samsung) (If u are, then use option 11 and drag the required framework, eg com.htc.resources, twframework-res...etc)
5. It's not a themed apk (if it is, expect .9 png errors, use as close to stock as possible)
6. Look at the log to know whats happening
7. If all else fails, post as much info as possible and we will try to assist you.
TO DO LIST
Add new feature to Randomly Generate a new Key File for signing the apk files after modifying and recompiling of the apk files this will also allow of uploading to the android market as this added feature will allow you to sign apk files that you may of compiled without signing beforehand.
Modify the Signapk script to be compatible with the Randomly Generation feature in the works
and a few other added features are in the works as I am redesigning the application and rewriting a lot of the code to fix issues as well as some of the new features have broken parts as some features have been moved and broken some command line prompts.
Installing APK Multi-Tool Itself
Instructions (Linux):
1-Download, create a folder in your sdk called "APK-Multi-Tool" and extract into it.
2-Goto the the "sdk/APK-Multi-Tool" folder and rename "Script.sh" to "script.sh".
3-Go into the "other" folder, right click on one file at a time, goto "permissions" in the new window and check the execute box.(do this with all the files)
4-To add the path to your folder open up a terminal and type in -
sudo su
PATH=$PATH:/THE PATH TO YOUR "SCRIPT.SH"
(for me this looks like the following)
PATH=$PATH:/sdk/APK-Multi-Tool/other/
5-export PATH
6-install "sox"
7-Type into the terminal "cd PATH TO YOUR SCRIPT.SH"
7.5 export PATH={PATH}:/PATH TO Your SDK/sdk/platform-tools/adb
8-Type "./script.sh"
9-You should have a running APK-Multi-Tool.
how to install sox:
Open the software center of the linux service and searched for sox. Installed it and it there you will have SOX working.
- Place apk in appropriate folder (Any filename will work, if running for first time folders will not be there, you must run and then the folders will be created)
- Open terminal and change-directory to APK-Multi-Tool(Easiest way is to type "cd ")
- Chmod 755 Script.sh
- Chmod 755 all files apps inside other folder
- Run script by typing ./Script.sh
- Minimize the script
- Edit files inside the out folder
- Maximize the script
Downloads:
https://github.com/APK-Multi-Tool/APK-Multi-Tool-Linux/archive/master.zip
Please check back daily or weekly as this project is under active Development and I am releasing Alpha releases on the website for Testing and bug reports.
Lol, why has nobody commented on this?
You're a savior. This is awesome. Can't wait for the rewrite.
AW: [Linux][UTILITY][TOOL] APK Multi-Tool
+1
Haven't seen this also available for Linux, so this is great.
Sent from my Galaxy Nexus using xda premium
Binary updates
UPDATED to apktool-cli-1.5.3-SNAPSHOT
-Updated to smali/baksmali to v1.4.2
-Fixed (issue #396) - Correctly handle android:debuggable while in debug
mode.
-Fixed (issue #340) - Fixed superclass errors on debug mode.
-Updated to Gradle 1.4
-Updated known bytes for configurations to 38 (from addition of layout
direction)
-Fixed NPE when handling odex apks even with --no-src specified. (Thanks
Rodrigo Chiossi)
-Fixed (issue #427) - Correctly handles `--frame-path` on uild
Error 404 on GitHub download page
xcly said:
Error 404 on GitHub download page
Click to expand...
Click to collapse
Fixed
Sent from my DROID RAZR CDMA XT912 using Tapatalk 2
I merged a few projects together instead of having multiple Android developer projects. I did some spring cleaning and deleted a few projects that was not useful and served no purposes. Also renamed the project organization which broke the link forgot to update lol.
Sent from my DROID RAZR CDMA XT912 using Tapatalk 2
I ran the script but I can't see any folders being created.. Trying to sign an apk. Looked up on google and all I can find is your instructions to put apk in appropriate folder (which I can't see..)
Thanks in advance
I will look into this ABCs see what's up
Sent from my DROID RAZR CDMA XT912 using Tapatalk 2
I ran the apksign tool separately using terminal for now
I got
The program sox is missing or is not in your PATH,
please install it or fix your PATH variable
If I go to the other folder there is no sox like in the windows version.
I will look into this asap once I get some free time
Sent from my DROID RAZR CDMA XT912 using Tapatalk 2
civato said:
I got
The program sox is missing or is not in your PATH,
please install it or fix your PATH variable
If I go to the other folder there is no sox like in the windows version.
Click to expand...
Click to collapse
I had the same problem but it was fixed once I installed sox. There was a tutorial on google search for setting up apk manager you might wanna have a look at.
Sent from my GT-I9300 using xda premium
raziel23x said:
I will look into this asap once I get some free time
Sent from my DROID RAZR CDMA XT912 using Tapatalk 2
Click to expand...
Click to collapse
xcly said:
I had the same problem but it was fixed once I installed sox. There was a tutorial on google search for setting up apk manager you might wanna have a look at.
Sent from my GT-I9300 using xda premium
Click to expand...
Click to collapse
I got it solved , I just entered the Ubuntu software center and searched for sox. Installed it and it works.
Maybe good to add this in OP when using linux. It is stupid of me thinking it was something harder so thank you for your help and fast response.
A other methode I found here
PS:
You don't need to type in ./Script.sh in teminal in linux , just clicking on it (Script.sh) and select "run in terminal" does the trick without typing anything.
updated the original post with detailed instructions
raziel23x said:
updated the original post with detailed instructions
Click to expand...
Click to collapse
Put updated info into the README file. Made a few corrections (hope you like).
AndyOpie150 said:
Put updated info into the README file. Made a few corrections (hope you like).
Click to expand...
Click to collapse
pushed your changed to github all code changes are welcome even forking the repo on github and making changes and doing pull request are welcome
raziel23x said:
pushed your changed to github all code changes are welcome even forking the repo on github and making changes and doing pull request are welcome
Click to expand...
Click to collapse
Just uploaded changed attachment. Fixed minor typos in Installation Instructions. Sorry I didn't get it straight before you pushed to github.
I deleted the info for Windows in previous attachments as well due to this being for the Linux version. Didn't know if you caught that.
PS: Thought I would let you decide if you liked my hair brained ideas first.
Is there any way to have a .jar file work without having to rename to .apk, or is that a mind bogling code rewrite. I'm all for learning.
Hey, I made some changes to the script to act more like the windows version of this tool. I added a setup.sh which will create all the folders and set permissions to everything. i also the ability to have multiple projects going at the same time, and also added a separate jar/dex folder so there is no need to rename the jar files to .apk to edit it. and other updates as well. its not 100% up to par with the windows one, but these few changes make a huge difference. Would you be interested in this?
---------- Post added at 11:38 AM ---------- Previous post was at 11:36 AM ----------
AndyOpie150 said:
Just uploaded changed attachment. Fixed minor typos in Installation Instructions. Sorry I didn't get it straight before you pushed to github.
I deleted the info for Windows in previous attachments as well due to this being for the Linux version. Didn't know if you caught that.
PS: Thought I would let you decide if you liked my hair brained ideas first.
Is there any way to have a .jar file work without having to rename to .apk, or is that a mind bogling code rewrite. I'm all for learning.
Click to expand...
Click to collapse
actually yes there is..i made an updated version of the script which has those features
clmowers said:
Hey, I made some changes to the script to act more like the windows version of this tool. I added a setup.sh which will create all the folders and set permissions to everything. i also the ability to have multiple projects going at the same time, and also added a separate jar/dex folder so there is no need to rename the jar files to .apk to edit it. and other updates as well. its not 100% up to par with the windows one, but these few changes make a huge difference. Would you be interested in this?
---------- Post added at 11:38 AM ---------- Previous post was at 11:36 AM ----------
actually yes there is..i made an updated version of the script which has those features
Click to expand...
Click to collapse
Make a pull request on github and in will merge it
Sent from my Xoom using Tapatalk HD

[Guide] How to enable multi-user?

hello friends, I have a nice question for you!
I state that this is google translation so it will be the best.
anyway back to us ....
you own a nice tablet?
and maybe you are engaged or married and you have photos of your woman on the device in question, and maybe you do not want others to see,
or simply your friends are never their own business, and then maybe you want to make private your tablet, maybe with a secondary account, but do not know how to do it because the tablet does not support multi-user ...
well do not give up, this guide will do for you ...
I do not take any responsibility for what might happen to your device
these are the requirements:
-root
-this app : https://www.dropbox.com/s/wmc4vg8n1lyv1o1/4_2_multiple_user_enabler_root_1.2.apk
-a file manager with root permissions as root browser or other
-user app share (which allows you to decide the content to display to other accounts) is on play store or in this link https://www.dropbox.com/s/nh3vaqetj9fogzs/MultiUserAppShare.apk
well, now first download the app before "4.2 multi user enabler"
copy it to the sd of your dear and beloved tablet.
after this app copied to the folder system of your tablet, change permissions (I usually do I enable them all)
after that install the app . from the app enable the multi-user, reboot your tablet and you're done!
multi user share app you need to decide what to use the other account
Now you might ask: why not just install the app?
Try it! it will seem to work but when you restart the account will vanish,
Intead with this guide it will be ever
if you have been useful on press thanks
By friends!
Simix93 said:
hello friends, I have a nice question for you!
I state that this is google translation so it will be the best.
anyway back to us ....
you own a nice tablet?
and maybe you are engaged or married and you have photos of your woman on the device in question, and maybe you do not want others to see,
or simply your friends are never their own business, and then maybe you want to make private your tablet, maybe with a secondary account, but do not know how to do it because the tablet does not support multi-user ...
well do not give up, this guide will do for you ...
I do not take any responsibility for what might happen to your device
these are the requirements:
-root
-this app : https://www.dropbox.com/s/wmc4vg8n1lyv1o1/4_2_multiple_user_enabler_root_1.2.apk
-a file manager with root permissions as root browser or other
-user app share (which allows you to decide the content to display to other accounts) is on play store or in this link https://www.dropbox.com/s/nh3vaqetj9fogzs/MultiUserAppShare.apk
well, now first download the app before "4.2 multi user enabler"
copy it to the sd of your dear and beloved tablet.
after this app copied to the folder system of your tablet, change permissions (I usually do I enable them all)
after that install the app . from the app enable the multi-user, reboot your tablet and you're done!
multi user share app you need to decide what to use the other account
Now you might ask: why not just install the app?
Try it! it will seem to work but when you restart the account will vanish,
Intead with this guide it will be ever
if you have been useful on press thanks
By friends!
Click to expand...
Click to collapse
The easiest way to enable multiuser support especially for our Galaxy Tab 3.0 is to edit the framework-res.apk with apktool and change the max user in there. The best thing with this way, your account will not vanish when you restart the device.. :laugh::laugh:
faruqmunshif said:
The easiest way to enable multiuser support especially for our Galaxy Tab 3.0 is to edit the framework-res.apk with apktool and change the max user in there. The best thing with this way, your account will not vanish when you restart the device.. :laugh::laugh:
Click to expand...
Click to collapse
ah I did not know .. you tell me how to do? maybe put to me now if there is. Anyway .. this is useful for anyone who is not practical to make changes to the framework
@Simix93
Here is the alternative, modifying framework-res.apk.
What I've done on my Galaxy Tab 3 10.1 (GT-P5210) :
- Modifying framework-res\res\values\integers.xml (locate the entry, and put X, where X <= 8 instead of 1, X = the number of allowed max users) :
Code:
<integer name="config_multiuserMaximumUsers">8</integer>
- Modifying framework-res\res\layout-port\keyguard_host_view.xml (to show user selector on lockscreen) :
>> Adding this after the second </FrameLayout>
Code:
<FrameLayout androidprv:paddingTop="@dimen/status_bar_height" androidprv:layout_width="fill_parent" androidprv:layout_height="wrap_content">
<include androidprv:layout_gravity="top|center" androidprv:layout_width="fill_parent" androidprv:layout_height="fill_parent" layout="@layout/keyguard_multi_user_selector" />
</FrameLayout>
- Adding framework-res\res\layout-port\keyguard_multi_user_selector.xml file
Code:
<?xml version="1.0" encoding="utf-8"?>
<com.android.internal.policy.impl.keyguard.KeyguardMultiUserSelectorView android:layout_gravity="bottom" android:orientation="horizontal" android:id="@id/keyguard_user_selector" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="wrap_content" android:contentDescription="@string/keyguard_accessibility_user_selector" android:layout_childType="userSwitcher"
xmlns:androidprv="http://schemas.android.com/apk/res/android"
xmlns:android="http://schemas.android.com/apk/res/android">
<com.android.internal.policy.impl.keyguard.KeyguardLinearLayout android:layout_gravity="bottom|center" android:orientation="horizontal" android:id="@id/keyguard_users_grid" android:layout_width="wrap_content" android:layout_height="@dimen/keyguard_avatar_size" android:layout_marginBottom="400.0dip" />
</com.android.internal.policy.impl.keyguard.KeyguardMultiUserSelectorView>
- After that, copied from the original framework-res.apk AndroidManifest.xml file and META-INF directory to your newly compiled one (using a zip file utility) so I can bypass the sign process (like you should do with auto sign tool - signapk.jar)
And voilà, after putting back my modified framework-res.apk to the device and rebooting, i'm able to add new users in settings
Regards
i have tried to modify my framework-res.apk, but it's not succesful.
I installed framework-res with this command:
java -jar apktool.jar if Framework-Res.apk
This installed a file named 1.apk in my users-directory.
After that i extract the framework-res.apk with this command:
java -jar apktool.jar d Framework-Res.apk
Everythings seems to be fine, a directory with the name Framework-Res is created.
I modified the 3 files "integers.xml", "keyguard_host_view.xml" and "keyguard_multi_user_selector.xml" as described.
Now i pack it together with this command:
java -jar apktool.jar b Framework-Res
Get 2 errors with PNG-Files "File is case-insensitive" and correct the filenames (uppercase .PNG to lowercase .png).
After that i found in the folder "dist" the framework-res.apk.
The filesize is less about 12mb then before, it's now round about 36mb.
I put this file in my /system/framework folder and reboot. But the system is still displaying the Samsung-Logo.
Replaceing the file with the original file and everything is ok.
What do i wrong?
with best regards,
Detlef
ok, now it works.
i have forgot to add the sign-process to the new .apk file.
now my tab 3 8.0 have the multi-user function, thank you!
Spatz said:
i have tried to modify my framework-res.apk, but it's not succesful.
I installed framework-res with this command:
java -jar apktool.jar if Framework-Res.apk
This installed a file named 1.apk in my users-directory.
After that i extract the framework-res.apk with this command:
java -jar apktool.jar d Framework-Res.apk
Everythings seems to be fine, a directory with the name Framework-Res is created.
I modified the 3 files "integers.xml", "keyguard_host_view.xml" and "keyguard_multi_user_selector.xml" as described.
Now i pack it together with this command:
java -jar apktool.jar b Framework-Res
Get 2 errors with PNG-Files "File is case-insensitive" and correct the filenames (uppercase .PNG to lowercase .png).
After that i found in the folder "dist" the framework-res.apk.
The filesize is less about 12mb then before, it's now round about 36mb.
I put this file in my /system/framework folder and reboot. But the system is still displaying the Samsung-Logo.
Replaceing the file with the original file and everything is ok.
What do i wrong?
with best regards,
Detlef
Click to expand...
Click to collapse
Before recompile your framework-res.apk, you should find the png files with uppercase (.PNG) from your decompiled framework-res.apk/res/ and rename them to lowercase (.png).
when finished, flash it using CWM or other recovery.
Does anyone have working framework-res.apk for T310 ? I've updated mine, but I do not see anything new. When I flash zip fro T311 from a different thread, I have this options, but some labels in the system are missing and messed up.
slobodan.bogdanovic said:
Does anyone have working framework-res.apk for T310 ? I've updated mine, but I do not see anything new. When I flash zip fro T311 from a different thread, I have this options, but some labels in the system are missing and messed up.
Click to expand...
Click to collapse
Just follow the guide in this thread to make your framework-res.apk working with multiuser. or if you have no time, just give me your framework-res.apk and i will try to decompile it for you,
Spatz said:
ok, now it works.
i have forgot to add the sign-process to the new .apk file.
now my tab 3 8.0 have the multi-user function, thank you!
Click to expand...
Click to collapse
You can also copy from your original framework-res.apk AndroidManifest.xml file and META-INF directory to your newly compiled one so you can bypass the sign process
I have an issue when having multiple users enabled.
When I am logged in as the owner (first user) I am able to connect device via usb and transfer files.
When I am logged in as the second user, and when I try to connect device vis usb, it is not recognized. MTP Driver installation fails in this case.
Anyone has the same issue?
Simix93 said:
hello friends, I have a nice question for you!
I state that this is google translation so it will be the best.
anyway back to us ....
you own a nice tablet?
and maybe you are engaged or married and you have photos of your woman on the device in question, and maybe you do not want others to see,
or simply your friends are never their own business, and then maybe you want to make private your tablet, maybe with a secondary account, but do not know how to do it because the tablet does not support multi-user ...
well do not give up, this guide will do for you ...
I do not take any responsibility for what might happen to your device
these are the requirements:
-root
-this app : https://www.dropbox.com/s/wmc4vg8n1lyv1o1/4_2_multiple_user_enabler_root_1.2.apk
-a file manager with root permissions as root browser or other
-user app share (which allows you to decide the content to display to other accounts) is on play store or in this link https://www.dropbox.com/s/nh3vaqetj9fogzs/MultiUserAppShare.apk
well, now first download the app before "4.2 multi user enabler"
copy it to the sd of your dear and beloved tablet.
after this app copied to the folder system of your tablet, change permissions (I usually do I enable them all)
after that install the app . from the app enable the multi-user, reboot your tablet and you're done!
multi user share app you need to decide what to use the other account
Now you might ask: why not just install the app?
Try it! it will seem to work but when you restart the account will vanish,
Intead with this guide it will be ever
if you have been useful on press thanks
By friends!
Click to expand...
Click to collapse
Working on Tab3 7" ?
Leehtaeyeon said:
Working on Tab3 7" ?
Click to expand...
Click to collapse
I do not know, I have not tried it, so you head to the end you just have to move an app
Leehtaeyeon said:
Working on Tab3 7" ?[/QUOT
Multiuser only supported by Android 4.2.2 or higher. As i know, the android version in Tab 3 7" is 4.1.2. If you want to use multiuser, wait until tab 3 7" recieved update for 4.2.2..
Click to expand...
Click to collapse
faruqmunshif said:
Leehtaeyeon said:
Working on Tab3 7" ?
Click to expand...
Click to collapse
Multiuser only supported by Android 4.2.2 or higher. As i know, the android version in Tab 3 7" is 4.1.2. If you want to use multiuser, wait until tab 3 7" recieved update for 4.2.2..
Click to expand...
Click to collapse
Don' work =/
I do not believe he will get more 4.2.2.
I think like other devices, it will jump to 4.4
Spatz said:
ok, now it works.
i have forgot to add the sign-process to the new .apk file.
now my tab 3 8.0 have the multi-user function, thank you!
Click to expand...
Click to collapse
Spatz-is there any chance you could post detailed instructions? Or can you post your framework res.apk file?
Sent from my SM-T310 using xda app-developers app
@chaz
I used your procedure to modify the framework-res.apk file and it doesn't work on my Galaxy Tab 3 10.1 (GT-P5210). It keeps boot-looping. I managed to put back the original framework-res.apk and it's working, so I didn't killed it completely!
I do it this way:
1. Use apktool to decompile the apk file (apktool.jar).
2. Modify the xml files with Notepad++.
3. Use apktool to recompile the apk file.
4. Sign the file with autosign tool found on XDA (signapk.jar).
5. Put the framework-res.apk file back using ADB in recovery mode and set the right permissions on the file.
What tools have you used? Did you do it differently than me?
Thank you.
i am curious about this, but i'd like to know how multi user works. How do I "log" in to the tab and use my gmail, etc? And then how would my wife log in and user her email and etc? Are there profiles or something similar?
thanks
EDIT
never mind
http://www.dummies.com/how-to/content/how-to-add-another-user-to-your-android-tablet.html
Hi. I see this method does not work very well. I recommend the app SwitchMe. It's much easier and just requires root permission which everyone should have. I can't post links because I'm a newbie, so just search for it on the Play Store. :good:
alfreddallaire said:
@chaz
I used your procedure to modify the framework-res.apk file and it doesn't work on my Galaxy Tab 3 10.1 (GT-P5210). It keeps boot-looping. I managed to put back the original framework-res.apk and it's working, so I didn't killed it completely!
I do it this way:
1. Use apktool to decompile the apk file (apktool.jar).
2. Modify the xml files with Notepad++.
3. Use apktool to recompile the apk file.
4. Sign the file with autosign tool found on XDA (signapk.jar).
5. Put the framework-res.apk file back using ADB in recovery mode and set the right permissions on the file.
What tools have you used? Did you do it differently than me?
Thank you.
Click to expand...
Click to collapse
As I mentionned some posts before, I did not use the signapk.jar but instead copied signed informations from my original framework-res.apk to the new one.
See my post http://forum.xda-developers.com/showpost.php?p=48429541&postcount=10 there.
I updated my tuto post to include this in the process (http://forum.xda-developers.com/showpost.php?p=48315919&postcount=4)
Regards,
Chaz

Categories

Resources