Hello to all Developers and XDA members! I have come here to give you a guide on how you can use native tethering without restrictions and here is how you can do it!
What Is Required...
★ First you need to have experience and know how to decompile/recompile apks with Apktools, apkmanager, smali, and baksmali
★ Have 7-zip installed onto your computer/laptop
★ Make sure you have Notepad++ also installed!
★HOW TO ENABLE NATIVE TETHERING WITHOUT RESTRICTIONS★
STEP 1
★ Go into your system/framework folder and take out your "framework-res.apk"
★ Then use one of the applications such as apktools or apkmanager and then use the commands to decompile the framework-res.apk
★ Once you have decompiled the framework-res.apk, go to:
res/values/arrays.xml
Click to expand...
Click to collapse
Now with Notepad++ go and find:
Code:
<string-array name="config_mobile_hotspot_provision_app">
And then it will look something like this:
Code:
<string-array name="config_mobile_hotspot_provision_app">
<item>com.sec.tetheringprovision</item>
<item>com.sec.tetheringprovision.TetheringProvisionActivity</item>
</string-array>
Now what your going to need to do is remove both of the <item> lines that has "tetheringprovision" in them, the "string-" in the first line, and then remove the whole </string-array> from the last line, once you do it will look something like this:
Code:
<array name="config_mobile_hotspot_provision_app" />
Once your done now Recompile your framework-res.apk using apktools or apkmanager and your DONE!!!
NOTE: Remember by removing those "com.sec.tetheringprovision" lines in the arrays.xml, it bypasses all the checks, There will be no more popup message that's telling you to upgrade to a T-Mobile Hotspot Plan, and you will get no errors!. There is no need for any third party apps or creating a APN just to have Tether to work properly!
STEP 2
The next step that your going to have to do is go into your roms:
system/app
Click to expand...
Click to collapse
folder and then remove:
TetheringProvision.apk
Click to expand...
Click to collapse
This TetheringProvision.apk is no longer needed. If you were to remove it without doing the framework-res.apk mod, you will get constant force closes and a "Tetheringprovision Is Not Responding Message" after you have enabled Mobile Hotspot on your Samsung Galaxy S3 device. But since you have modded it, you can just delete it.
STEP 3
Now for this step, this is going to give you the opportunity to edit/remove the locked APNS And also it will show you how you can see any of the hidden APN's from the "Access Point Names" Menu which is in Settings-More Settings-Mobile Networks-Access Point Names. Also this step your going to have to change the APN site name which makes you tether without bringing you into the T-Mobile Hotspot Browser Page.
First your going to have to go into your roms folder which is:
system/csc
Click to expand...
Click to collapse
And then open up "customer.xml" with your notepad++ for editing.
Now go all the way to the bottom of this file and you will see the last APN Tethering setting which should looks like this:
Code:
<NetworkName>T-Mobile</NetworkName>
<Editable>no</Editable>
<EnableStatus>enable</EnableStatus>
<ProfileName>T-Mobile Tethering</ProfileName>
<Auth>none</Auth>
<Bearer>ps</Bearer>
<Protocol>http</Protocol>
<Proxy>
<EnableFlag>off</EnableFlag>
</Proxy>
<PSparam>
<APN>pcweb.tmobile.com</APN>
Now what your going to have to do is change where it says <Editable>no</Editable> into <Editable>yes</Editable>. By changing this, this will give you the permission to edit/remove this APN setting. REMEMBER: This APN Tethering setting only shows after you first use Tethering! And once your done with that go to where it says <APN>pcweb.tmobile.com</APN> and change it into <APN>epc.tmobile.com</APN>. By changing this APN site name it should give you total access for you to tether without bringing you into the T-Mobile Hotspot Browser Page from your PC's internet browser.
Once done it will look like this:
Code:
<NetworkName>T-Mobile</NetworkName>
[B]<Editable>yes</Editable>[/B]
<EnableStatus>enable</EnableStatus>
<ProfileName>T-Mobile Tethering</ProfileName>
<Auth>none</Auth>
<Bearer>ps</Bearer>
<Protocol>http</Protocol>
<Proxy>
<EnableFlag>off</EnableFlag>
</Proxy>
<PSparam>
[B]<APN>epc.tmobile.com</APN>[/B]
Now save this file with the new edits with Notepad++ and your DONE!
But your not done yet with this step, your going to have to do one last thing. The Tethering APN that you have modified from "above" is still hidden. Now what your going to have to do is go into your roms folder again to:
system/csc
Click to expand...
Click to collapse
And then open up "feature.xml" with your notepad++ for editing.
Now with Notepad++ go and find:
<CscFeature_Setting_HideApnList>pcweb.tmobile.com</CscFeature_Setting_HideApnList>
Click to expand...
Click to collapse
Now DELETE THIS WHOLE LINE! [This hides the Tethering APN that you have modified from "above" from view]. Once your done save this file with Notepad++ and THATS IT! Now Go Enjoy Your Native Tethering!!!
STILL HAVING PROBLEMS WITH TETHERING EVEN AFTER THE MOD? - Go into "Settings-More Settings-Mobile Networks-Access Point Names" and then press your phone's "Menu Settings Key" on the bottom left of your phone and then select "Reset To Default" and see if that helps.
★HOW TO ENABLE BLUETOOTH TETHERING★
This guide will show you how you can enable bluetooth tethering so here is how you can do it!
STEP 1
★ Go into your system/framework folder and take out your "framework-res.apk"
★ Then use one of the applications such as apktools or apkmanager and then use the commands to decompile the framework-res.apk
★ Once you have decompiled the framework-res.apk, go to:
res/values/arrays.xml
Click to expand...
Click to collapse
Now with Notepad++ go and find:
Code:
<array name="config_tether_bluetooth_regexs" />
And then it will look something like this:
Code:
<array name="config_tether_wimax_regexs" />
<array name="config_tether_bluetooth_regexs" />
<array name="config_tether_dhcp_range" />
Now what your going to need to do is add "string-" right before the "array" in the beginning of the config_tether_bluetooth_regexs, then under it add <item>bnep\\d</item> and make sure that the <item> from the beginning is aligned the same like the other <item> from the arrays.xml. Once you do, add </string-array> right under the "bnep\\d" line, then it will look something like this:
Code:
<array name="config_tether_wimax_regexs" />
[B]<string-array name="config_tether_bluetooth_regexs">
<item>bnep\\d</item>
</string-array>[/B]
<array name="config_tether_dhcp_range" />
Once your done now Recompile your framework-res.apk using apktools or apkmanager and your DONE!!!
★HOW TO EVADE/REMOVE DATA CAP THROTTLING★
This guide will show you how you can evade/remove data cap throttling and this is good for the people who don't have a unlimited data plan for their phone's carrier so here is how you can do it!
STEP 1
★ Go into your system/framework folder and take out your "services.jar"
★ Then use one of the applications such as apktool and then use baksmali commands to decompile and extract the classes.dex from the services.jar
★ Once you have decompiled the services.jar, go to:
com/android/server
Click to expand...
Click to collapse
Now open up "ThrottleService.smali" with your notepad++ for editing.
Once your in here go and find:
Code:
.method static synthetic access$1002(Lcom/android/server/ThrottleService;J)J
And then you will see something like this:
Code:
.method static synthetic access$1002(Lcom/android/server/ThrottleService;J)J
.registers 3
.parameter "x0"
.parameter "x1"
.prologue
.line 71
iput-wide p1, p0, Lcom/android/server/ThrottleService;->mMaxNtpCacheAge:J
return-wide p1
.end method
Now what your going to need to do is add an empty space below ".line 71" and then above "iput-wide" your going to add "const-wide/16 p1, 0x0", once you do it will look something like this:
Code:
.method static synthetic access$1002(Lcom/android/server/ThrottleService;J)J
.registers 3
.parameter "x0"
.parameter "x1"
.prologue
.line 71
[B]const-wide/16 p1, 0x0[/B]
iput-wide p1, p0, Lcom/android/server/ThrottleService;->mMaxNtpCacheAge:J
return-wide p1
.end method
By adding that, this will invoke the ".method private checkThrottleAndPostNotification(J)V" and also the clearThrottleAndNotification()V which are both in the "ThrottleService$MyHandler.smali" which looks like this:
Code:
.method private checkThrottleAndPostNotification(J)V
.registers 28
.parameter "currentTotal"
.prologue
.line 588
move-object/from16 v0, p0
iget-object v0, v0, Lcom/android/server/ThrottleService$MyHandler;->this$0:Lcom/android/server/ThrottleService;
move-object/from16 v21, v0
#getter for: Lcom/android/server/ThrottleService;->mPolicyThreshold:Ljava/util/concurrent/atomic/AtomicLong;
invoke-static/range {v21 .. v21}, Lcom/android/server/ThrottleService;->access$500(Lcom/android/server/ThrottleService;)Ljava/util/concurrent/atomic/AtomicLong;
move-result-object v21
invoke-virtual/range {v21 .. v21}, Ljava/util/concurrent/atomic/AtomicLong;->get()J
move-result-wide v15
.line 589
.local v15, threshold:J
const-wide/16 v21, 0x0
cmp-long v21, v15, v21
if-nez v21, :cond_18
.line 590
invoke-direct/range {p0 .. p0}, Lcom/android/server/ThrottleService$MyHandler;->clearThrottleAndNotification()V
.line 663
:cond_17
:goto_17
return-void
.line 596
:cond_18
move-object/from16 v0, p0
Now once your done with modifying the "ThrottleService.smali", Recompile your services.jar using apktool and smali commands and your DONE!
IMPORTANT REMINDER - This mod works best for the people who DON'T have a unlimited data plan so it will be good for devs to make a flashable.zip in their OP with this mod with their roms services.jar which could be different "since some devs maybe did other mods/tweaks into their roms services.jar" so the users that be having any throttling issues can flash it. Also use at your own risk!
Nice find!
evil1art said:
Nice find!
Click to expand...
Click to collapse
Thanks! Im trying to find all the ways and which apks tmobile can check for UAstrings, which makes them able to give them the info that we are using tethering for free. Im going to dig even more though.
Sent from my SGH-T999 using Tapatalk 2
jovy23 said:
Thanks! Im trying to find all the ways and which apks tmobile can check for UAstrings, which makes them able to give them the info that we are using tethering for free. Im going to dig even more though.
Sent from my SGH-T999 using Tapatalk 2
Click to expand...
Click to collapse
Thats works
I must have done something wrong because this borked my install. Any possibility of a flashable zip or something?
Hi! The mod looks great. I have two short questions though:
1. Is it exclusive to the T-Mobile Galaxy S III, or could possibly work for other variants of the device as well, on which the carrier might have enforced the same restrictions?
2. Is it exclusive to the Galaxy S III, or could possibly work for other similar devices by Samsung like the Galaxy Note II as well?
Thanks.
Would also like to know if there could be a flashable zip made for us noobs lol
Sent from my SGH-T999 using Tapatalk 2
chrisa887 said:
Would also like to know if there could be a flashable zip made for us noobs lol
Sent from my SGH-T999 using Tapatalk 2
Click to expand...
Click to collapse
A mod like this should be cooked into the rom. If can break mods if not
evil1art said:
A mod like this should be cooked into the rom. If can break mods if not
Click to expand...
Click to collapse
So, if I hear you right, you are saying watch for this to be available in Wicked JB soon? :cyclops:
Maybe djintrigue808 Can cook this up in the Frosty JB roms
bradleyw801 said:
So, if I hear you right, you are saying watch for this to be available in Wicked JB soon? :cyclops:
Click to expand...
Click to collapse
Maybe its easy enough
---------- Post added at 05:20 PM ---------- Previous post was at 05:20 PM ----------
nardone24 said:
Maybe djintrigue808 Can cook this up in the Frosty JB roms
Click to expand...
Click to collapse
I think dj stopped tw development
evil1art said:
Maybe its easy enough
---------- Post added at 05:20 PM ---------- Previous post was at 05:20 PM ----------
I think dj stopped tw development
Click to expand...
Click to collapse
Yipee! Will it be in the Wicked 4.2? I'm looking forward on this mod apply to wicked ROM. Thanks
Sent from TMO Galaxy S3
Works great thanx
HQRaja said:
Hi! The mod looks great. I have two short questions though:
1. Is it exclusive to the T-Mobile Galaxy S III, or could possibly work for other variants of the device as well, on which the carrier might have enforced the same restrictions?
2. Is it exclusive to the Galaxy S III, or could possibly work for other similar devices by Samsung like the Galaxy Note II as well?
Thanks.
Click to expand...
Click to collapse
It should work on other variants i have to check the framework-res on the other carriers stock firmware to see. I will be updating this post with the workarounds for the other carriers also
Sent from my SGH-T999 using Tapatalk 2
chrisa887 said:
Would also like to know if there could be a flashable zip made for us noobs lol
Sent from my SGH-T999 using Tapatalk 2
Click to expand...
Click to collapse
I would say decompiling and doing this mod is the way to go because if i made a flashable.zip and you flashed it on any other rom, it could break/remove the other devs mods plus theming that they have cooked into their framework-res.apk.
Sent from my SGH-T999 using Tapatalk 2
Amazing find my friend! Thank you and will give credit were it it due.
Jamison904 said:
Amazing find my friend! Thank you and will give credit were it it due.
Click to expand...
Click to collapse
Your very welcome man!
Sent from my SGH-T999 using Tapatalk 2
"Amazing find my friend! Thank you and will give credit were it it due."
@Jameson904 - is there a good chance that this will be utilised in your next update?
BTW.. 3.7 is much appreciated
////ANDY
waiting for the 'flashable zip' =)
adulel08 said:
waiting for the 'flashable zip' =)
Click to expand...
Click to collapse
I posted about why there cant be a flashable.zip of it. It can break rom mods in them that a developer implemented.
Related
The rom devs will know what this is ....
did this for skyrocket devs but works for your ics ports as well.
made this thread over here so i can stop getting pms from this side on howtos...
info http://forum.xda-developers.com/showthread.php?t=1591030
Remove AM/PM
1. Decompile SystemUI.apk
2. Goto: /systemui.apk /smali/com/android/systemui/statusbar/policy
3. edit Clock.smali
4. the line you want is typically 36 (its the static constructor)
5. change "const/4 v0, 0x0" to "const/4 v0, 0x2"
6. yup thats right, 1 character edit!
7. save and recompile
Color for Clock (if you havnt already)
1. Decompile SystemUI.apk
2. Goto: /res/values/
3. edit styles.xml
4. the style you want is "<style name="TextAppearance.StatusBar.Clock" parent="@android:style/TextAppearance.StatusBar.Icon">"
5. change "<item name="android:textColor">#ff33b5e5</item>" under this style (this is android blue, change at will)
6. save and recompile
enjoy!!
Will be put to use. Thanks.
theHOTNESS said:
The rom devs will know what this is ....
did this for skyrocket devs but works for your ics ports as well.
made this thread over here so i can stop getting pms from this side on howtos...
info http://forum.xda-developers.com/showthread.php?t=1591030
Remove AM/PM
1. Decompile SystemUI.apk
2. Goto: /systemui.apk /smali/com/android/systemui/statusbar/policy
3. edit Clock.smali
4. the line you want is typically 36 (its the static constructor)
5. change "const/4 v0, 0x0" to "const/4 v0, 0x2"
6. yup thats right, 1 character edit!
7. save and recompile
Color for Clock (if you havnt already)
1. Decompile SystemUI.apk
2. Goto: /res/values/
3. edit styles.xml
4. the style you want is "<style name="TextAppearance.StatusBar.Clock" parent="@android:style/TextAppearance.StatusBar.Icon">"
5. change "<item name="android:textColor">#ff33b5e5</item>" under this style (this is android blue, change at will)
6. save and recompile
enjoy!!
Click to expand...
Click to collapse
Tried it on stock FD10 ICS4.0.3 build for E4GT.
Didn't work unfortunately.
I found 3 instances of const/4 v0, 0x0 and changing any of them or any combination of 2 of them didn't remove AM/PM from status bar clock.
Any ideas or suggestions?
I also am trying this mod and would like to know what are the lines before or after the mod. Just to make sure I am making the changes to the right one since I also see 3 of them... Thanks in Advance
agat63 said:
Tried it on stock FD10 ICS4.0.3 build for E4GT.
Didn't work unfortunately.
I found 3 instances of const/4 v0, 0x0 and changing any of them or any combination of 2 of them didn't remove AM/PM from status bar clock.
Any ideas or suggestions?
Click to expand...
Click to collapse
Use notepad++ and go to line 36 and change the value
Sent from my SGH-T989 using Tapatalk 2
`SBR` said:
Use notepad++ and go to line 36 and change the value
Sent from my SGH-T989 using Tapatalk 2
Click to expand...
Click to collapse
actually I do not see static constructor but public constructor and lines 34-41 show this
Code:
# direct methods
.method public constructor <init>(Landroid/content/Context;)V
.locals 1
.parameter "context"
.prologue
.line 72
const/4 v0, 0x0
`SBR` said:
Use notepad++ and go to line 36 and change the value
Sent from my SGH-T989 using Tapatalk 2
Click to expand...
Click to collapse
I'm using notepad++.
There is no instance/value on line 36 in ICS file for E4GT.
First instance is on line 39.
Did try it. No dice.
And as mentioned above did try any combination of 3 instances of that value thru the file. No go.
May be ICS for E4GT is different and we should look somewhere else.
playya said:
actually I do not see static constructor but public constructor and lines 34-41 show this
Code:
# direct methods
.method public constructor <init>(Landroid/content/Context;)V
.locals 1
.parameter "context"
.prologue
.line 72
const/4 v0, 0x0
Click to expand...
Click to collapse
agat63 said:
I'm using notepad++.
There is no instance/value on line 36 in ICS file for E4GT.
First instance is on line 39.
Did try it. No dice.
And as mentioned above did try any combination of 3 instances of that value thru the file. No go.
May be ICS for E4GT is different and we should look somewhere else.
Click to expand...
Click to collapse
Hope you're looking into the file in the below path.
SystemUI\smali\com\android\systemui\statusbar\policy\Clock.smali
and search for the below line
Code:
sput v0, Lcom/android/systemui/statusbar/policy/Clock;->AM_PM_STYLE:I
above the line
Code:
const/4 v0, 0x0
change the 0 to 2 like below, it will be like this .
Code:
const/4 v0, 0x2
Save it and decompile the systemui.apk
`SBR` said:
Hope you're looking into the file in the below path.
SystemUI\smali\com\android\systemui\statusbar\policy\Clock.smali
and search for the below line
Code:
sput v0, Lcom/android/systemui/statusbar/policy/Clock;->AM_PM_STYLE:I
above the line
Code:
const/4 v0, 0x0
change the 0 to 2 like below, it will be like this .
Code:
const/4 v0, 0x2
Save it and decompile the systemui.apk
Click to expand...
Click to collapse
yea been there and its a no go apparently my Clock.smali is dfferent
playya said:
yea been there and its a no go apparently my Clock.smali is dfferent
Click to expand...
Click to collapse
I confirm that.
There is no such line in Clock.smali in E4GT ICS SystemUI.apk smali file.
There has been a lot of changes in apk, dex and jar files from GB to ICS.
agat63 said:
I confirm that.
There is no such line in Clock.smali in E4GT ICS SystemUI.apk smali file.
There has been a lot of changes in apk, dex and jar files from GB to ICS.
Click to expand...
Click to collapse
shhhhhhoooot I am trying to do it on GB but I looked in ICS as well and did not see it. I looked in services.jar and did not see it.. Believe me I know it should be out there somewhere but other than TSM mods I can not seem to find any tutorials on how to just remove am/pm... If anyone knows how to do this on GB or ICS which may be similiar please let me know. Its for the E4GT
Thx
Hey everyone! In response to sudden events i am deciding to make tutorials for all my MODS for interested DEVS. Here is removing AM/PM from clock on status bar MOD.
First you're going to need to decompile the Smali in SystemUI.apk
Now edit the following code in the following smali:
/systemui.apk /smali/com/android/systemui/statusbar/policy/Clock.smali
Edit the following code:
Code:
# direct methods
.method static constructor <clinit>()V
.registers 1
[COLOR="Red"] --const/4 v0, 0x0
[/COLOR][COLOR="Green"] ++const/4 v0, 0x2[/COLOR]
sput v0, Lcom/android/systemui/statusbar/policy/Clock;->AM_PM_STYLE:I
return-void
.end method
.method public constructor <init>(Landroid/content/Context;)V
.registers 3
That's all. Recompile and the AM/PM in the status bar should have disappeared
Have Fun!
clark44 said:
Hey everyone! In response to sudden events i am deciding to make tutorials for all my MODS for interested DEVS. Here is removing AM/PM from clock on status bar MOD.
First you're going to need to decompile the Smali in SystemUI.apk
Now edit the following code in the following smali:
/systemui.apk /smali/com/android/systemui/statusbar/policy/Clock.smali
Edit the following code:
Code:
# direct methods
.method static constructor <clinit>()V
.registers 1
[COLOR="Red"] --const/4 v0, 0x0
[/COLOR][COLOR="Green"] ++const/4 v0, 0x2[/COLOR]
sput v0, Lcom/android/systemui/statusbar/policy/Clock;->AM_PM_STYLE:I
return-void
.end method
.method public constructor <init>(Landroid/content/Context;)V
.registers 3
That's all. Recompile and the AM/PM in the status bar should have disappeared
Have Fun!
Click to expand...
Click to collapse
Thanks for sharing!
Sent from my SPH-L710 using xda premium
Thanks Clark!
I will post the updated clock MODS in your ROM thread.
I am trying to make some changes in the framework-res.apk but I am having issues recompiling. All other APKs recompile fine for me except framework-res. Even if I make no changes at all it will not recompile. Decompile is fine, just wont recompile. Do I need to install different framework when working withing framework-res?
The command "apktool if framework-res.apk" should work for de/recompiling framework-res correct?
Didact74 said:
I am trying to make some changes in the framework-res.apk but I am having issues recompiling. All other APKs recompile fine for me except framework-res. Even if I make no changes at all it will not recompile. Decompile is fine, just wont recompile. Do I need to install different framework when working withing framework-res?
The command "apktool if framework-res.apk" should work for de/recompiling framework-res correct?
Click to expand...
Click to collapse
Use twframework-res.apk instead. So...
apktool if twframework-res.apk
clark44 said:
Use twframework-res.apk instead. So...
apktool if twframework-res.apk
Click to expand...
Click to collapse
Bingo! Thank you sir! :good:
---------- Post added at 11:46 PM ---------- Previous post was at 11:11 PM ----------
So framework-res had information to change the lockscreen information but twframework-res does not. Which TW APK hold the lockscreen info?
Didact74 said:
Bingo! Thank you sir! :good:
---------- Post added at 11:46 PM ---------- Previous post was at 11:11 PM ----------
So framework-res had information to change the lockscreen information but twframework-res does not. Which TW APK hold the lockscreen info?
Click to expand...
Click to collapse
Not sure. Would probably be systemui.
I'm going to bet that you are having the plurals error. Try recompiling again and read the errors, if you see the world plurals, do the following.
in res\values\plurals.xml
look for
Code:
<item quantity="other">%d of %d</item>
make it
Code:
<item quantity="other">%d of %%d</item>
res\values-en-rUS\plurals.xml
look for:
Code:
<item quantity="other">%d of %d</item>
make it
Code:
<item quantity="other">%d of %%d</item>
res\values-es\plurals.xml
look for:
Code:
<item quantity="other">%d de %d</item>
make it
Code:
<item quantity="other">%d de %%d</item>
It should compile just fine after that. I had the same errors.
Didact74 said:
I am trying to make some changes in the framework-res.apk but I am having issues recompiling. All other APKs recompile fine for me except framework-res. Even if I make no changes at all it will not recompile. Decompile is fine, just wont recompile. Do I need to install different framework when working withing framework-res?
The command "apktool if framework-res.apk" should work for de/recompiling framework-res correct?
Click to expand...
Click to collapse
Good call on the plurals Jimie, that fixed my errors but when it compiles I get a bunch of warnings but it does compile. Wheni try to push it to Framework via TWRP flash it causes a bootloop. Even when no changes are made. Were you able to successfully modify framework-res and not bootloop? Here are my warnings....
From my experience, the warnings are nothing to worry about. Are you using root explorer to set the appropriate file permissions?
Didact74 said:
Good call on the plurals Jimie, that fixed my errors but when it compiles I get a bunch of warnings but it does compile. Wheni try to push it to Framework via TWRP flash it causes a bootloop. Even when no changes are made. Were you able to successfully modify framework-res and not bootloop? Here are my warnings....
Click to expand...
Click to collapse
Tsudeily said:
From my experience, the warnings are nothing to worry about. Are you using root explorer to set the appropriate file permissions?
Click to expand...
Click to collapse
It was due to my updater script. I forgot to changethe directories/permissions within the script. It loaded fine this time but the change did not take. I am trying to manipulate the date, time, and "wipe screen to unlock" on the lockscreen but I can not find out where the XML is to do it. I thought i had found it in framework-res/res/values/strings.xml but it did not work.
Thanks for reminding me about the permissions or I probably would have never checked the updater script .
Please Donate--for even more development
All, not that I am a beggar by any means, but please donate to Clark, he needs it..trust me when I say this...Behind the scenes, he is buying equipment to continue his development. The donation go towards this. Thanks (and I too have donated)...:highfive::highfive::highfive:
Click Here > http://forum.xda-developers.com/donatetome.php?u=3885544
Happy to help. Strange about it not taking. Did you wipe your caches?
Didact74 said:
It was due to my updater script. I forgot to changethe directories/permissions within the script. It loaded fine this time but the change did not take. I am trying to manipulate the date, time, and "wipe screen to unlock" on the lockscreen but I can not find out where the XML is to do it. I thought i had found it in framework-res/res/values/strings.xml but it did not work.
Thanks for reminding me about the permissions or I probably would have never checked the updater script .
Click to expand...
Click to collapse
I was reading this link (yes, I know it is for the SGS2): http://forum.xda-developers.com/showpost.php?p=24853926&postcount=1
I was successfully able to get the "easy" part complete, the SecSettings.apk part of adding the toggles to Settings - Date and Time (see attached). They toggle correctly meaning the checkboxes work, but nothing happens as I cannot get the edits described to work with clock.smali (compiling errors with apktool). Again I know it is a guide for the SGS2, but the smali code is very close, so I think that if someone with smali experience (I have next to none) looked at it, this would be do-able.
I am using the SGS3 on US Cellular's network. It seems that I am close to getting this, but does anyone have any thoughts/suggestions?
pretty cool idea. Did you have to change the identifier to get it to compile?
When I use "0x7f0b0923" it errors out because that identifier is already being used. However, if I change it to something like 0xf0d0af2 it will compile but i can not get into settings at all once I reboot.
Didact74 said:
pretty cool idea. Did you have to change the identifier to get it to compile?
When I use "0x7f0b0923" it errors out because that identifier is already being used. However, if I change it to something like 0xf0d0af2 it will compile but i can not get into settings at all once I reboot.
Click to expand...
Click to collapse
Here's what I changed mine to, since apktool was complaining of the same thing.
<public type="string" name="disable_ampm" id="0x7f0d0b2f" />
<public type="string" name="disable_ampm_text" id="0x7f0d0b30" />
<public type="string" name="disable_time" id="0x7f0d0b31" />
<public type="string" name="disable_time_text" id="0x7f0d0b32" />
I was then able to recompile SecSettings.apk, it did give me warnings but it worked and I wasn't getting the identifier already used error. I feel like I'm really close I just need to figure out the smali part for Clock.smali and PhoneStatusBar.smali yet. Hopefully I can get help or pointed in the right direction soon.
RMarkwald said:
Here's what I changed mine to, since apktool was complaining of the same thing.
<public type="string" name="disable_ampm" id="0x7f0d0b2f" />
<public type="string" name="disable_ampm_text" id="0x7f0d0b30" />
<public type="string" name="disable_time" id="0x7f0d0b31" />
<public type="string" name="disable_time_text" id="0x7f0d0b32" />
I was then able to recompile SecSettings.apk, it did give me warnings but it worked and I wasn't getting the identifier already used error. I feel like I'm really close I just need to figure out the smali part for Clock.smali and PhoneStatusBar.smali yet. Hopefully I can get help or pointed in the right direction soon.
Click to expand...
Click to collapse
I will see if I can get it to work. Nice find.
clark44 said:
I will see if I can get it to work. Nice find.
Click to expand...
Click to collapse
It was random... Kinda. I used from what I could tell wasn't in use to the point where apktool didn't complain. Whether or not that's good/bad I'm not sure yet...
- Sent from my US Cellular SGS3
RMarkwald said:
It was random... Kinda. I used from what I could tell wasn't in use to the point where apktool didn't complain. Whether or not that's good/bad I'm not sure yet...
- Sent from my US Cellular SGS3
Click to expand...
Click to collapse
Your hex did not work for me either. I had to use 0x7f0d0af2 - 0x7f0d0af5 to get it to compile.
It seems that the first code made in the clock.smali is what is causing the recompile issues:
Code:
invoke-virtual {v3}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v2
const-string v7, "hide_time"
const/4 v0, 0x0
invoke-static {v2, v7, v0}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I
move-result v7
const/4 v0, 0x0
if-eqz v7, :cond_nohide
const/16 v0, 0x8
:cond_nohide
const v1, 0x7f0e0027
invoke-virtual {p0, v1}, Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;->findViewById(I)Landroid/view/View;
move-result-object v1
invoke-virtual {v1, v0}, Landroid/view/View;->setVisibility(I)V
If I make all changes except that one I can get it to compile. However, I have random isues where settings will not open at all. I am sure Clark can make sense of it as my smali skills are subpar as well.
I figured it may be different for you. I did notice that too with the code, but then I also did notice that the other code would let it compile (2nd part of code for Clock.smali), and the PhoneStatusBar.smali stuff just FC'd SystemUI. Clark PM'd me last night, so hopefully something will come of this soon. If the smali stuff gets worked out to work with the SGS3, then the XML stuff will fall in line pretty easy, just need to find hex to work probably for each model, as I'm sure it's all a little different.
I'm starting this thread as a result of trying to port Paranoid Android 2.51 from the saga. Long story short, turns out previous known ways to fix keyboard problems in ICS ports no longer work for Jelly Bean.
Please PM me and post useful info in this thread.... I absolutely do not want this to turn into a "how do I do this" thread.... This is for exchanging knowledges and discussion.
Progress so far: Thanks to strapped365, who has successfully ported PA 2.xx WITH working keyboard for the myTouch 4G Slide, We now know how to enable the soft keyboard. strapped365's instructions were off the top of his head, so here I have written a revised version with detailed instructions.
If you want to help out but are a n00b at editing .apk files, please follow this simple guide for de/ recompiling with APKTool.
SOFT KEYBOARD FIX
Using apktool, decompile framework-res.apk, then open res/values/bools.XML . Look for
Code:
<bool name="config_forceDisableHardwareKeyboard">[COLOR="Red"]false[/COLOR]</bool>
Change it to
Code:
<bool name="config_forceDisableHardwareKeyboard">[COLOR="Red"]true[/COLOR]</bool>
Before I go any further, I'm not convinced this is the best way to fix the problem because this boolean suggests we are saying that we should force the hardware keyboard to not be used just to get the soft keyboard up instead, although at least the hardware keyboard is still recognised. We need to look more into android.policy.jar stuff.
Anyway, now go into res/values/integers.XML and find
Code:
<integer name="config_lidOpenRotation">[COLOR="red"]-1[/COLOR]</integer>
Change it to
Code:
<integer name="config_lidOpenRotation">[COLOR="red"]90[/COLOR]</integer>
Still in integers.XML, look for
Code:
<integer name="config_lidNavigationAccessibility">[COLOR="red"]0[/COLOR]</integer>
and change it to
Code:
<integer name="config_lidNavigationAccessibility">[COLOR="Red"]1[/COLOR]</integer>
DO NOT change
Code:
<integer name="config_lidKeyboardAccessibility">[COLOR="red"]0[/COLOR]</integer>
When I did, I got bootloops.
Click to expand...
Click to collapse
PHYSICAL KEYBOARD BUTTON BACKLIGHT
I've tried lms24's fix for ICS (scroll down to the bottom of the post) but unfortunately this does not work, which I'm slightly surprised at being as other framework tweaks (for soft keyboard) work, and comparing JB's values for this stuff to ICS's does not show much difference.
Click to expand...
Click to collapse
PHYSICAL KEYBOARD OPEN / LID OPEN STATE (SCREEN ROTATION UPON OPENING KEYBOARD)
I've had a look in android.policy.jar and in PhoneWindowManager.smali there is an interesting method, it is in the original Jelly Belly ROM (which is what, if you're porting, you should be using because the other JB ROMs are test builds) but is not in the PA ROM I'm porting (nor will it be in any other non-Vision ROM, I guess). Take a look. Simply putting the method into the ported ROM's PhineWindowManager.smali file doesn't work, there must be something deeper at work here.
Code:
.method private applyLidSwitchState()V
.registers 4
.prologue
.line 5042
iget-object v0, p0, Lcom/android/internal/policy/impl/PhoneWindowManager;->mPowerManager:Landroid/os/LocalPowerManager;
invoke-direct {p0}, Lcom/android/internal/policy/impl/PhoneWindowManager;->isBuiltInKeyboardVisible()Z
move-result v1
invoke-interface {v0, v1}, Landroid/os/LocalPowerManager;->setKeyboardVisibility(Z)V
.line 5044
iget v0, p0, Lcom/android/internal/policy/impl/PhoneWindowManager;->mLidState:I
if-nez v0, :cond_1a
iget-boolean v0, p0, Lcom/android/internal/policy/impl/PhoneWindowManager;->mLidControlsSleep:Z
if-eqz v0, :cond_1a
.line 5045
iget-object v0, p0, Lcom/android/internal/policy/impl/PhoneWindowManager;->mPowerManager:Landroid/os/LocalPowerManager;
invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J
move-result-wide v1
invoke-interface {v0, v1, v2}, Landroid/os/LocalPowerManager;->goToSleep(J)V
.line 5047
:cond_1a
return-void
.end method
Click to expand...
Click to collapse
TO FINISH OFF
Here's how strapped365 told me to finish it off (I used Ubuntu's built in archive manager to do this, it should work fine, if you're not using 7zip just extract the right files from the original, delete the respective files in the new one and pack the old stuff):
Once the apk is compiled open the newly compiled apk with 7zip on one window and then open the original untouched apk in another 7zip window and drag the META_inf and manifest XML from the original apk into the new apk ( the new apk NEEDS these ) once that's done your good to go. Just note that this still leaves an onscreen keyboard in landscape when then keyboard is open, but its better than what your dealing with.
Click to expand...
Click to collapse
Obviously make sure the new file is renamed to to framework-res.apk.
THANKS TO...
ajhavery
lms24
strapped365
For helping me out with all this... so far this is not spawned in any way from my own knowledge (although I have been doing my own investigating) but has been from help and advice from the above.
Click to expand...
Click to collapse
RESERVED
RESERVED
AW: [INFO][REF][MON 18 FEB '13] Jelly Bean Porting thread | Vision Keyboard Fixes
Good job man! This will be appreciated by many g2 devs, when it comes to in porting. Thanks for sharing.
Sent from my HTC One X using xda app-developers app
So as you probably know by now, Android 4.4 came with a hidden feature in SystemUI to enable %battery within the battery icon when it's not charging. This can be accomplished by an app (credit to @kroegerama), an adb command, or a manual SystemUI smali edit (a quite easy one explained in this walkthrough). The problem is this text is the same color as the battery fill (white), making it useless until the battery is about 50% or less. I played around with the smali for a while and couldn't properly get the text to change colors (smali is certainly not my native tongue...), so I did it the old fashioned way. I changed it in source, built, and compared the results. With that, I'll show you how you can change the text color of the digits when %battery is enabled.
This tutorial will assume you have know how to use APKTool to decompile/recompile APKs while keeping their signatures in tact. There are walkthroughs that will show you how to accomplish this readily available. Method 1 will show you an easy way to change the color to black, and method 2 will show you how you can change things so you can set the text color to whatever you want, without having to figure out the java hex -> smali const equation (though if someone knows it I'm always loving to learn new things). This tutorial is for users on a DEODEXED ROM. If your ROM is odexed, it's probably easiest to deodex SystemUI, make the changes, then reodex ALWAYS HAVE A BACKUP READILY AVAILABLE IN CASE SOMETHING GOES WRONG!
Things you'll need:
APKTool
Notepad++
SystemUI.apk from your 4.4 ROM
Method 1 - an easy way to make the digits black.
{
"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"
}
1. Using APKTool, decompile SystemUI.apk
2. Open \smali\com\android\systemui\BatteryMeterView.smali in Notepad++
3. If you don't already have the white %battery enabled, enable it now. Find:
Code:
const-string v7, "status_bar_show_battery_percent"
const/4 v8, 0x0
and change 0x0 to 0x1
4. Now find:
Code:
iget-object v6, p0, Lcom/android/systemui/BatteryMeterView;->mTextPaint:Landroid/graphics/Paint;
const/4 v7, -0x1
and change "const/4 v7, -0x1" to "const/high16 v7, -0x100" (this is changing white (-0x1) to black (-0x100))
(Note: if you get an error regarding this line when recompiling, try "const/16 v7, -0x100" (without the "high". I know, where's the fun in that?))
4b. - Optional: If you'd like to change the font family, or make it bold, etc, you can do it here as well.
Search for:
Code:
const-string v6, "sans-serif-condensed"
const/4 v7, 0x0
"sans-serif-condensed" can be changed to "sans-serif" (or other families), and the result is slightly larger digits. The 0x0 is indicating it's normal style. Change this to 0x1 for Bold.
5. Save the changes and recompile the APK making sure to retain the original signature. Push back to /system/priv-app/ and set with RW/R/R permissions. Voila, now you have black text for your %battery
Method 2 - a few extra steps and a little more involved smali change, but will make it much easier to change the color to whatever you want once it's complete:
1. Using APKTool, decompile SystemUI.apk
2. Open \res\values\colors.xml
3. Under
Code:
<color name="batterymeter_bolt_color">#b2000000</color>
make a new line that reads
Code:
<color name="batterymeter_percent_color">#xxxxxxxx</color>
(where xxxxxxxx is an 8 digit hex color value - first 2 alpha, last 6 color):
4. Recompile the apk with the changes, preserving the signature
5. Decompile the new SystemUI that was just created
6. Open \res\values\public.xml and find:
Code:
<public type="color" name="batterymeter_percent_color" id="0x########" />
and write down/copy/take note of the 10 digit id number (0x########)
7. Open \smali\com\android\systemui\BatteryMeterView.smali in Notepad++
8. If you don't already have the white %battery enabled, enable it now. Find:
Code:
const-string v7, "status_bar_show_battery_percent"
const/4 v8, 0x0
and change 0x0 to 0x1
9. Now find:
Code:
iget-object v6, p0, Lcom/android/systemui/BatteryMeterView;->mTextPaint:Landroid/graphics/Paint;
const/4 v7, -0x1
invoke-virtual {v6, v7}, Landroid/graphics/Paint;->setColor(I)V
and replace it with the following, changing the id (0x########) with the one you previously made a note of:
Code:
iget-object v6, p0, Lcom/android/systemui/BatteryMeterView;->mTextPaint:Landroid/graphics/Paint;
const v7, 0x########
invoke-virtual {v5, v7}, Landroid/content/res/Resources;->getColor(I)I
move-result v7
invoke-virtual {v6, v7}, Landroid/graphics/Paint;->setColor(I)V
9b - Optional: If you'd like to change the font family, or make it bold, etc, you can do it here as well.
Directly under the code you just pasted, you'll see
Code:
const-string v6, "sans-serif-condensed"
const/4 v7, 0x0
"sans-serif-condensed" can be changed to "sans-serif" (or other families), and the result is slightly larger digits. The 0x0 is indicating it's normal style. Change this to 0x1 for Bold.
10. Save the changes and recompile the APK making sure to retain the original signature. Push back to /system/priv-app/ and set with RW/R/R permissions
Now if you want to change the color, just change the HEX value in \res\values\colors.xml and recompile
Building from source?
Method 1 when building from source:
-Open \frameworks\base\packages\SystemUI\src\com\android\systemui\BatteryMeterView.java.
-On line 191 you can turn the %battery on and off
-On line 208 you can set the %color.
Method 2 from source:
-Open \frameworks\base\packages\SystemUI\src\com\android\systemui\BatteryMeterView.java.
-On line 191 you can turn the %battery on and off, and on line 208 change (0xFF000000) to (res.getColor(R.color.batterymeter_percent_color)).
-Now open \frameworks\base\packages\SystemUI\res\values\colors.xml and add a line under "#B2000000" that reads "#XXXXXXXX" (where XXXXXXXX is your hex color value).
Happy Modding! :good:
homeslice976 said:
So as you probably know by now, Android 4.4 came with a hidden feature in SystemUI to enable %battery within the battery icon when it's not charging...
Happy Modding! :good:
Click to expand...
Click to collapse
Great guide :good:
As I'm running 4.4 odexed, I don't have access to the smali when decompiling SystemUI.apk so I went in a different direction and changed the colour of the battery icon (and a lot of other stuff too).
Spannaa said:
Great guide :good:
As I'm running 4.4 odexed, I don't have access to the smali when decompiling SystemUI.apk so I went in a different direction and changed the colour of the battery icon (and a lot of other stuff too).
Click to expand...
Click to collapse
Ah that's a good point. Odexed roms are going to be a little different, as you'll be working with Systemui.odex rather than Systemui.apk. I'll add that to the guide..
homeslice976 said:
So as you probably know by now, Android 4.4 came with a hidden feature in SystemUI to enable %battery within the battery icon when it's not charging. This can be accomplished by an app (credit to @kroegerama), an adb command, or a manual SystemUI smali edit (a quite easy one explained in this walkthrough). The problem is this text is the same color as the battery fill (white), making it useless until the battery is about 50% or less. I played around with the smali for a while and couldn't properly get the text to change colors (smali is certainly not my native tongue...), so I did it the old fashioned way. I changed it in source, built, and compared the results. With that, I'll show you how you can change the text color of the digits when %battery is enabled.
This tutorial will assume you have know how to use APKTool to decompile/recompile APKs while keeping their signatures in tact. There are walkthroughs that will show you how to accomplish this readily available. Method 1 will show you an easy way to change the color to black, and method 2 will show you how you can change things so you can set the text color to whatever you want, without having to figure out the java hex -> smali const equation (though if someone knows it I'm always loving to learn new things). This tutorial is for users on a DEODEXED ROM. If your ROM is odexed, it's the same idea, but you'll need to be working with SystemUI.odex and SystemUIapk, and decompliling/recompiling/pushing the odex file. Or deodex SystemUI before starting. ALWAYS HAVE A BACKUP READILY AVAILABLE IN CASE SOMETHING GOES WRONG!
Things you'll need:
APKTool
Notepad++
SystemUI.apk from your 4.4 ROM
Method 1 - an easy way to make the digits black.
1. Using APKTool, decompile SystemUI.apk
2. Open \smali\com\android\systemui\BatteryMeterView.smali in Notepad++
3. If you don't already have the white %battery enabled, enable it now. Find:
Code:
const-string v7, "status_bar_show_battery_percent"
const/4 v8, 0x0
and change 0x0 to 0x1
4. Now find:
Code:
iget-object v6, p0, Lcom/android/systemui/BatteryMeterView;->mTextPaint:Landroid/graphics/Paint;
const/4 v7, -0x1
and change "const/4 v7, -0x1" to "const/high16 v7, -0x100"
5. Save the changes and recompile the APK making sure to retain the original signature. Push back to /system/priv-app/ and set with RW/R/R permissions. Voila, now you have black text for your %battery
Method 2 - a few extra steps and a little more involved smali change, but will make it much easier to change the color to whatever you want once it's complete:
1. Using APKTool, decompile SystemUI.apk
2. Open \res\values\colors.xml
3. Under "#B2000000", make a new line that reads (where xxxxxxxx is an 8 digit hex color value - first 2 alpha, last 6 color):
Code:
#xxxxxxxx
4. Recompile the apk with the changes, preserving the signature
5. Decompile the new SystemUI that was just created
6. Open \res\values\public.xml and find:
Code:
and write down/copy/take note of the 10 digit id number
7. Open \smali\com\android\systemui\BatteryMeterView.smali in Notepad++
8. If you don't already have the white %battery enabled, enable it now. Find:
Code:
const-string v7, "status_bar_show_battery_percent"
const/4 v8, 0x0
and change 0x0 to 0x1
9. Now find:
Code:
iget-object v6, p0, Lcom/android/systemui/BatteryMeterView;->mTextPaint:Landroid/graphics/Paint;
const/4 v7, -0x1
invoke-virtual {v6, v7}, Landroid/graphics/Paint;->setColor(I)V
and replace it with the following, changing the id (0x########) with the one you previously made a note of:
Code:
iget-object v6, p0, Lcom/android/systemui/BatteryMeterView;->mTextPaint:Landroid/graphics/Paint;
const v7, 0x########
invoke-virtual {v5, v7}, Landroid/content/res/Resources;->getColor(I)I
move-result v7
invoke-virtual {v6, v7}, Landroid/graphics/Paint;->setColor(I)V
10. Save the changes and recompile the APK making sure to retain the original signature. Push back to /system/priv-app/ and set with RW/R/R permissions
Now if you want to change the color, just change the HEX value in \res\values\colors.xml and recompile
Building from source?
Method 1 when building from source:
-Open \frameworks\base\packages\SystemUI\src\com\android\systemui\BatteryMeterView.java.
-On line 191 you can turn the %battery on and off
-On line 208 you can set the %color.
Method 2 from source:
-Open \frameworks\base\packages\SystemUI\src\com\android\systemui\BatteryMeterView.java.
-On line 191 you can turn the %battery on and off, and on line 208 change (0xFF000000) to (res.getColor(R.color.batterymeter_percent_color)).
-Now open \frameworks\base\packages\SystemUI\res\values\colors.xml and add a line under "#B2000000" that reads "#XXXXXXXX" (where XXXXXXXX is your hex color value).
Happy Modding! :good:
Click to expand...
Click to collapse
This is a great tutorial for changing battery text color. In particular, I like your method 2. I can change color with success.
Sorry on offtopic.. Is there any solution to disable double press home button on cm11? Because home button has delay when I press it.. It is some kind of laggy ..
Sent from my One using Tapatalk
I wanna thank you.... Worked like a charm on Nexus 7 2013
Sent from my Nexus 7 using XDA Premium 4 mobile app
vrda08 said:
Sorry on offtopic.. Is there any solution to disable double press home button on cm11? Because home button has delay when I press it.. It is some kind of laggy ..
Sent from my One using Tapatalk
Click to expand...
Click to collapse
Yes. See this ( http://forum.xda-developers.com/showthread.php?p=47660002) post. You'll want to set double tap to 0 for no action
mrjaydee82 said:
I wanna thank you.... Worked like a charm on Nexus 7 2013
Sent from my Nexus 7 using XDA Premium 4 mobile app
Click to expand...
Click to collapse
Glad its working!
Sent from my One using Tapatalk 4
homeslice976 said:
Yes. See this ( http://forum.xda-developers.com/showthread.php?p=47660002) post. You'll want to set double tap to 0 for no action
Glad its working!
Sent from my One using Tapatalk 4
Click to expand...
Click to collapse
Anyway to make the writing bigger or bolder Lol?
Sent from my Nexus 7 using XDA Premium 4 mobile app
mrjaydee82 said:
Anyway to make the writing bigger or bolder Lol?
Sent from my Nexus 7 using XDA Premium 4 mobile app
Click to expand...
Click to collapse
Sure is. That was my next venture. Should be simple enough though and when I've got it bI'll add to the walkthrough
Sent from my One using Tapatalk 4
homeslice976 said:
Sure is. That was my next venture. Should be simple enough though and when I've got it bI'll add to the walkthrough
Sent from my One using Tapatalk 4
Click to expand...
Click to collapse
Awesome ? can't wait
Sent from my Nexus 7 using XDA Premium 4 mobile app
@homeslice976 I try method 1 & 2 but not sucsess, would you mind to share your SystemUI.apk in method 1? Thanks
Device: Nexus 4
Rom: Stock KRT16S
Also interested on put this baby on my nexus 5 but to stupid to do it myself,any help will be much aprecieted.
mrjaydee82 said:
Anyway to make the writing bigger or bolder Lol?
Sent from my Nexus 7 using XDA Premium 4 mobile app
Click to expand...
Click to collapse
Added notes in method 2 for making the digits slightly larger and/or bold..will keep playing to see if I can make them even larger
PigFire said:
@homeslice976 I try method 1 & 2 but not sucsess, would you mind to share your SystemUI.apk in method 1? Thanks
Device: Nexus 4
Rom: Stock KRT16S
Click to expand...
Click to collapse
Cruzfire said:
Also interested on put this baby on my nexus 5 but to stupid to do it myself,any help will be much aprecieted.
Click to expand...
Click to collapse
If you guys can upload your SystemUI I can probably do it for you
homeslice976 said:
If you guys can upload your SystemUI I can probably do it for you
Click to expand...
Click to collapse
Attached, thanks
PigFire said:
Attached, thanks
Click to expand...
Click to collapse
Here ya go. No reason anything should break, but for peace of mind please make a backup first. This is flashable in recovery. It will be black text, but I used method 2, so if you want to change the font color, all you need to do is decompile, open \res\values\colors.xml, change the hex value of <color name="batterymeter_percent_color">#ff000000</color>, and recompile.
i'm also having errors on compiling it..il just upload OMNI systemui instead.. TIA
View attachment SystemUI.apk
homeslice976 said:
Added notes in method 2 for making the digits slightly larger and/or bold..will keep playing to see if I can make them even larger
If you guys can upload your SystemUI I can probably do it for you
Click to expand...
Click to collapse
Thanks man try it later after work
Sent from my HTC One using XDA Premium 4 mobile app
---------- Post added at 09:23 PM ---------- Previous post was at 09:06 PM ----------
I can't compile the 2nd method and want the bold... https://docs.google.com/file/d/0B6ptKjzTSh3SUHJYZWNkeXhMTHM/edit?usp=docslist_api here's my systemui.apk if you could do it...I'd be very greatful..thank you for your awesome work..this is for a nexus 7.2
Sent from my HTC One using XDA Premium 4 mobile app
jefbuan said:
i'm also having errors on compiling it..il just upload OMNI systemui instead.. TIA
View attachment 2406866
Click to expand...
Click to collapse
Here ya go. No reason anything should break, but for peace of mind please make a backup first. This is flashable in recovery. It will be black text, but I used method 2, so if you want to change the font color, all you need to do is decompile, open \res\values\colors.xml, change the hex value of <color name="batterymeter_percent_color">#ff000000</color>, and recompile.
mrjaydee82 said:
Thanks man try it later after work
Sent from my HTC One using XDA Premium 4 mobile app
---------- Post added at 09:23 PM ---------- Previous post was at 09:06 PM ----------
I can't compile the 2nd method and want the bold... https://docs.google.com/file/d/0B6ptKjzTSh3SUHJYZWNkeXhMTHM/edit?usp=docslist_api here's my systemui.apk if you could do it...I'd be very greatful..thank you for your awesome work..this is for a nexus 7.2
Sent from my HTC One using XDA Premium 4 mobile app
Click to expand...
Click to collapse
Here ya go. No reason anything should break, but for peace of mind please make a backup first. This is flashable in recovery. It will be black text, but I used method 2, so if you want to change the font color, all you need to do is decompile, open \res\values\colors.xml, change the hex value of <color name="batterymeter_percent_color">#ff000000</color>, and recompile. I also changed the font from sans-serif-condensed to sans-serif, bold
homeslice976 said:
Here ya go. No reason anything should break, but for peace of mind please make a backup first. This is flashable in recovery. It will be black text, but I used method 2, so if you want to change the font color, all you need to do is decompile, open \res\values\colors.xml, change the hex value of <color name="batterymeter_percent_color">#ff000000</color>, and recompile. I also changed the font from sans-serif-condensed to sans-serif, bold
Click to expand...
Click to collapse
Awesome...ty so much
Sent from my HTC One using XDA Premium 4 mobile app
Hello to all Developers and XDA members! I have come here to give you a few guides for some tethering mods, you just have to follow the instructions below so you can learn on how you can do it!
NOTE: This is an updated guide based on my guide that I have done a while ago here -> CLICK HERE, just updated for Kitkat.
What Is Required...
★ First you need to have experience and know how to decompile/recompile apks with Apktools, apkmanager, smali, and baksmali
★ Have 7-zip installed onto your computer/laptop
★ Make sure you have Notepad++ also installed!
★HOW TO ENABLE NATIVE TETHERING WITHOUT RESTRICTIONS★
STEP 1
★ Go into your system/framework folder and take out your "framework-res.apk"
★ Then use one of the applications such as apktools and then use the commands to decompile the framework-res.apk
★ Once you have decompiled the framework-res.apk, go to:
res/values/arrays.xml
Click to expand...
Click to collapse
Now open up "arrays.xml" with your notepad++ for editing.
Now for this part of this guide what I have highlighted in "GREEN" text is what you have to find using Notepad++, What you see in "RED" is the line you have to remove/delete completely, And also what you see in "BLUE" is the line you have to make changes to:
SEARCH FOR:
Code:
[COLOR="Green"]<string-array name="config_mobile_hotspot_provision_app">[/COLOR]
NOW REMOVE:
Code:
[COLOR="Red"] <string-array name="config_mobile_hotspot_provision_app">
<item>com.sec.tetheringprovision</item>
<item>com.sec.tetheringprovision.TetheringProvisionActivity</item>
</string-array>[/COLOR]
AND CHANGE TO:
Code:
[COLOR="Blue"]<array name="config_mobile_hotspot_provision_app" />[/COLOR]
ONCE DONE, IT WILL LOOK SOMETHING LIKE THIS:
Code:
<array name="config_tether_dhcp_range" />
[COLOR="Blue"]<array name="config_mobile_hotspot_provision_app" />[/COLOR]
<integer-array name="config_tether_upstream_types">
<item>0</item>
<item>1</item>
<item>4</item>
<item>5</item>
<item>7</item>
</integer-array>
Now recompile your framework-res.apk using apktools and your DONE!!!
NOTE: Remember by removing those "com.sec.tetheringprovision" lines in the arrays.xml, it bypasses all the checks, There will be no more popup message that's telling you to upgrade to a T-Mobile Hotspot Plan, and you will get no errors!. There is no need for any third party apps or creating a APN just to have Tether to work properly!
STEP 2
The next step that your going to have to do is go into your roms:
system/app
Click to expand...
Click to collapse
folder and then remove these two apks:
TetheringAutomation.apk
Click to expand...
Click to collapse
TetheringProvision.apk
Click to expand...
Click to collapse
The TetheringAutomation.apk and TetheringProvision.apk is no longer needed, so delete it.
STEP 3
Now for this step, this is going to give you the opportunity to edit/remove the locked APNS And also it will show you how you can see any of the hidden APN's from the "Access Point Names" Menu which is in Settings -> Connections -> More Networks -> Mobile Networks -> Access Point Names. Also this step your going to have to change the APN site name which makes you tether without bringing you into the T-Mobile Hotspot Browser Page.
First your going to have to go into your roms folder which is:
system/csc
Click to expand...
Click to collapse
And then open up "customer.xml" with your notepad++ for editing.
Now for this part of this guide what I have highlighted in "GREEN" text is what you have to find using Notepad++, What you see in "RED" is the line you have to remove/delete completely, And also what you see in "BLUE" is the line you have to make changes to:
SEARCH FOR:
Code:
[COLOR="Green"]<ProfileName>T-Mobile US LTE</ProfileName>[/COLOR]
NOW REMOVE:
Code:
<NetworkName>T-Mobile</NetworkName>
[COLOR="Red"]<Editable>no</Editable>[/COLOR]
<EnableStatus>enable</EnableStatus>
[COLOR="Green"]<ProfileName>T-Mobile US LTE</ProfileName>[/COLOR]
<Auth>none</Auth>
<MTUSize>1440</MTUSize>
<Bearer>ps</Bearer>
<Protocol>http</Protocol>
[COLOR="Red"]<IpVersion>ipv6</IpVersion>[/COLOR]
<Proxy>
<EnableFlag>off</EnableFlag>
</Proxy>
<PSparam>
<APN>fast.t-mobile.com</APN>
</PSparam>
</Profile>
<Profile>
AND CHANGE TO:
Code:
<NetworkName>T-Mobile</NetworkName>
[COLOR="Blue"]<Editable>yes</Editable>[/COLOR]
<EnableStatus>enable</EnableStatus>
[COLOR="Green"]<ProfileName>T-Mobile US LTE</ProfileName>[/COLOR]
<Auth>none</Auth>
<MTUSize>1440</MTUSize>
<Bearer>ps</Bearer>
<Protocol>http</Protocol>
[COLOR="Blue"]<IpVersion>ipv4</IpVersion>[/COLOR]
<Proxy>
<EnableFlag>off</EnableFlag>
</Proxy>
<PSparam>
<APN>fast.t-mobile.com</APN>
</PSparam>
</Profile>
<Profile>
NOW SEARCH FOR:
Code:
[COLOR="Green"]<ProfileName>T-Mobile Tethering</ProfileName>[/COLOR]
NOW REMOVE:
Code:
<NetworkName>T-Mobile</NetworkName>
[COLOR="Red"]<Editable>no</Editable>[/COLOR]
<EnableStatus>enable</EnableStatus>
[COLOR="Green"]<ProfileName>T-Mobile Tethering</ProfileName>[/COLOR]
<Auth>none</Auth>
<MTUSize>1440</MTUSize>
<Bearer>ps</Bearer>
<Protocol>http</Protocol>
<Proxy>
<EnableFlag>off</EnableFlag>
</Proxy>
<PSparam>
[COLOR="Red"]<APN>pcweb.tmobile.com</APN>[/COLOR]
</PSparam>
</Profile>
<Profile>
AND CHANGE TO:
Code:
<NetworkName>T-Mobile</NetworkName>
[COLOR="Blue"]<Editable>yes</Editable>[/COLOR]
<EnableStatus>enable</EnableStatus>
[COLOR="Green"]<ProfileName>T-Mobile Tethering</ProfileName>[/COLOR]
<Auth>none</Auth>
<MTUSize>1440</MTUSize>
<Bearer>ps</Bearer>
<Protocol>http</Protocol>
<Proxy>
<EnableFlag>off</EnableFlag>
</Proxy>
<PSparam>
[COLOR="Blue"]<APN>fast.t-mobile.com</APN>[/COLOR]
</PSparam>
</Profile>
<Profile>
Now what your doing is changing where it says <Editable>no</Editable> into <Editable>yes</Editable>. By changing this, this will give you the permission to edit/remove this APN setting. Next your going to change <IpVersion>ipv6</IpVersion> to <IpVersion>ipv4</IpVersion>. When the APN protocol is on ipv6 I couldn't get Tethering to play nicely when tethering my device to my PC, once I have changed the APN Protocol to ipv4 it worked perfectly! Also you can change <IpVersion>ipv6</IpVersion> to <IpVersion>ipv4v6</IpVersion>, It has also worked for me so try which one works best for you. Once your done with that go to where it says <APN>pcweb.tmobile.com</APN> and change it into <APN>fast.t-mobile.com</APN>. By changing this APN site name it should give you total access for you to tether without bringing you into the T-Mobile Hotspot Browser Page from your PC's internet browser. If <APN>fast.t-mobile.com</APN> isn't working for you change it to <APN>epc.tmobile.com</APN>. I believe fast.t-mobile.com has to do with LTE and epc.tmobile.com has to do with No LTE.
Now save this file with the new edits with Notepad++ and your DONE!
But your not done yet with this step, The Tethering APN that you have modified from "above" is still hidden. Now what your going to have to do is go into your roms folder again to:
system/csc
Click to expand...
Click to collapse
And then open up "feature.xml" with your notepad++ for editing.
Now with Notepad++ go and find:
<CscFeature_Setting_HideApnList>pcweb.tmobile.com,ims</CscFeature_Setting_HideApnList>
Click to expand...
Click to collapse
Now DELETE THIS WHOLE LINE! [This csc feature hides the T-Mobile Tethering APN that you have modified from above from view]. By removing it completely it will now show in "Settings -> Connections -> More Networks -> Mobile Networks -> Access Point Names". Once done save your changes with Notepad++ and your DONE!
STEP 3
★ Go into your system/framework folder and take out your "services.jar"
★ Then use one of the applications such as a baksmali tool and then use the commands to baksmali the services.jar
★ Once you have decompiled the services.jar, go to:
smali/com/android/server/connectivity/Tethering.smali
Click to expand...
Click to collapse
Now open up "Tethering.smali" with your notepad++ for editing.
Now for this part of this guide what I have highlighted in "GREEN" text is what you have to find using Notepad++, What you see in "RED" is the line you have to remove/delete completely, And also what you see in "BLUE" is the line you have to make changes to:
SEARCH FOR:
Code:
[COLOR="Green"]const-string v1, "Set dun requiered as 1"[/COLOR]
NOW REMOVE:
Code:
.line 1827
:try_start_a1
iget-object v0, p0, Lcom/android/server/connectivity/Tethering;->mContext:Landroid/content/Context;
invoke-virtual {v0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v0
const-string/jumbo v1, "tether_dun_required"
[COLOR="Red"]const/4 v2, 0x1[/COLOR]
invoke-static {v0, v1, v2}, Landroid/provider/Settings$Secure;->putInt(Landroid/content/ContentResolver;Ljava/lang/String;I)Z
.line 1828
const-string v0, "Tethering"
[COLOR="Green"]const-string v1, "Set dun requiered as 1"[/COLOR]
invoke-static {v0, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
:try_end_b5
.catchall {:try_start_a1 .. :try_end_b5} :catchall_f6
NOW CHANGE TO:
Code:
.line 1827
:try_start_a1
iget-object v0, p0, Lcom/android/server/connectivity/Tethering;->mContext:Landroid/content/Context;
invoke-virtual {v0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v0
const-string/jumbo v1, "tether_dun_required"
[COLOR="Blue"]const/4 v2, 0x0[/COLOR]
invoke-static {v0, v1, v2}, Landroid/provider/Settings$Secure;->putInt(Landroid/content/ContentResolver;Ljava/lang/String;I)Z
.line 1828
const-string v0, "Tethering"
[COLOR="Green"]const-string v1, "Set dun requiered as 1"[/COLOR]
invoke-static {v0, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
:try_end_b5
.catchall {:try_start_a1 .. :try_end_b5} :catchall_f6
STILL HAVING PROBLEMS WITH TETHERING EVEN AFTER THE MOD? - Go into "Settings -> Connections -> More Networks -> Mobile Networks -> Access Point Names" and then press your phone's "Menu Settings Key" on the bottom left of your phone and then select "Reset To Default" and see if that helps.
★HOW TO ENABLE BLUETOOTH TETHERING★
This guide will show you how you can enable bluetooth tethering so here is how you can do it!
STEP 1
★ Go into your system/framework folder and take out your "framework-res.apk"
★ Then use one of the applications such as apktools and then use the commands to decompile the framework-res.apk
★ Once you have decompiled the framework-res.apk, go to:
res/values/arrays.xml
Click to expand...
Click to collapse
Now open up "arrays.xml" with your notepad++ for editing.
Now for this part of this guide what I have highlighted in "GREEN" text is what you have to find using Notepad++, What you see in "RED" is the line you have to remove/delete completely, And also what you see in "BLUE" is the line you have to make changes to:
SEARCH FOR:
Code:
[COLOR="Green"]<array name="config_tether_bluetooth_regexs" />[/COLOR]
IT WILL LOOK SOMETHING LIKE BELOW:
Code:
<array name="config_tether_wimax_regexs" />
[COLOR="Green"]<array name="config_tether_bluetooth_regexs" />[/COLOR]
<array name="config_tether_dhcp_range" />
NOW REMOVE:
Code:
<array name="config_tether_wimax_regexs" />
[COLOR="Red"]<array name="config_tether_bluetooth_regexs" />[/COLOR]
<array name="config_tether_dhcp_range" />
AND CHANGE TO:
Code:
<array name="config_tether_wimax_regexs" />
[COLOR="Blue"]<string-array name="config_tether_bluetooth_regexs">
<item>bnep\\d</item>
<item>bt-pan</item>
</string-array>[/COLOR]
<array name="config_tether_dhcp_range" />
Once done save changes, recompile your framework-res.apk using apktools and your DONE!
After step 1 the Bluetooth Tethering setting will now show in "Settings -> Connections -> Tethering And Mobile Hotspot". Even while enabling the setting Bluetooth Internet Access Connection will still not work and the Bluetooth Internet Access setting in the Paired Bluetooth Device menu will not show on any device that your trying to pair with which seems to only work on Sprint/International Note 3 Variants. I have gotten it to work on Jellybean and also I have gotten it to work on Kitkat firmware on our T-Mobile Note 3 Device (Should also work for ATT/Verizon Note 3 devices) which is so simple to do so go to step 2 below on how I got it to work!
STEP 2
1. To get Bluetooth Tethering Internet Access to work, your going to need to get any stock International based firmware/rom that is already deodexed/odexed! REMEMBER: GET IT ONLY FROM THE INTERNATIONAL VARIANT! Make sure your getting it from the same android version that your device is on so if your on T-Mobile and your latest updated stock firmware is 4.4.2 Kitkat (N900TUVUDNF1), your going to need to download the latest stock 4.4.2 Kitkat firmware from http://www.sammobile.com or get it from the International thread related to your specific device "Note 3".
Just As A Reference For This Part Of The Guide: The International SM-N9005 stock 4.4.2 Kitkat firmware from sammobile that I have downloaded is (N9005XXUFNF4).
Now once you get it deodexed (Or get any rom that is based off of N9005XXUFNF4), your going to have to go into the roms folder and go to:
KITKAT...
system/lib/hw
Click to expand...
Click to collapse
and take the bluetooth.default.so file from the International based rom, and add it into your T-Mobile/ATT/Verizon rom and your DONE! No smali work, no decompiling apks, nothing just overwrite that file to the same location into your rom and THAT'S ABOUT IT! If your on Jellybean, the file is renamed differently, check below!
JELLYBEAN...
system/lib/hw
Click to expand...
Click to collapse
and take the bplus.default.so file from the International based rom, and add it into your T-Mobile/ATT/Verizon rom and your DONE!
NOTE #1 - Because there are many International firmwares out based from the same android version, your going to have to download a few to get the right one.
NOTE #2 - This should work for all Galaxy/Note Samsung Devices And ETC! (Your going to have to test it out on the other devices and let me know.)
IF YOUR ON A N900TUVUDNF1 BASED ROM, FLASH THE FILE BELOW TO GET BLUETOOTH TETHERING (INTERNET ACCESS) TO WORK!
Download Link - CLICK HERE
taking this spot....
taking this one also :good:
Interesting for sure
Sent from my SAMSUNG-SM-N900A using Tapatalk
Thanks a bunch for this guide. Now to get my framework to recompile nicely....
On NF1 will the flash file take care of all the steps ... or it just for Bluetooth tethering?
Sent From Far Far Away !
What is bluetooth tethering used for?
mlock420 said:
What is bluetooth tethering used for?
Click to expand...
Click to collapse
Its connecting your other devices to your phone internet via Bluetooth. Regular tethering but via Bluetooth.
Sent from my SM-N900T using XDA Premium 4 mobile app
mlock420 said:
What is bluetooth tethering used for?
Click to expand...
Click to collapse
Most new wearables use bluetooth like the smartwatch's and stuff. So silly things like the old Gear 1 watch can actually access the play store and basically do everything a phone can like browse the web etc.
Chris
Frickkn sweet guide
thanks jovy, I found this guide was on the Samsung Galaxy S3 site, and yes that is how I learned on how to do this...
thanked all 3 posts...
I am on the latest nf1 and download the zip you provided and can not get blue tooth tethering to work. Any help would be great. Thanks in advance
Sent from my SM-G900W8 using XDA Premium 4 mobile app
Is there a way to make it flashable if your not as savvy with smai/ baksmali, apk tools.
demon28 said:
Is there a way to make it flashable if your not as savvy with smai/ baksmali, apk tools.
Click to expand...
Click to collapse
when I was reading back on Jovys SG S3 thread months ago, he never wanted to create a flashable since it would break other mods that the developers would do on there roms.
Beautiful. Am going to try on my s5 rom
mdiaz33685 said:
when I was reading back on Jovys SG S3 thread months ago, he never wanted to create a flashable since it would break other mods that the developers would do on there roms.
Click to expand...
Click to collapse
That makes sense I guess I'm a have to upgrade my skills. Thanks
I did a quick flashable zip with both unlimited tethering and Bluetooth tethering modifications completed. I have not been able to extensively test, but the phone does boot correctly, and the bluetooth tethering option is available. I am going to test it more tomorrow.
THIS WILL ONLY WORK ON TWEAKED 3 by dwitherell WITH NO THEME INSTALLED!
DO NOT USE WITH ANY OTHER ROMS OR TWEAKED3 + THEME COMBINATIONS!
You can grab the mod zip from http://www.androidfilehost.com/?fid=23578570567719327
If you want to revert the changes download and flash the zip file from http://www.androidfilehost.com/?fid=23578570567719326
Enjoy and many thanks jovy23 for this excellent mod!
Can someone make a flashable zip
Sent from my SM-N900T using XDA Premium 4 mobile app
I believe crackpot created one in the post before..
demon28 said:
I believe crackpot created one in the post before..
Click to expand...
Click to collapse
This for this rom only
Sent from my SM-N900T using XDA Premium 4 mobile app