Post Reply

WiFix - Fixes regional Wi-Fi problems in Android 4.0

OP fardjad

14th January 2012, 06:52 PM   |  #1  
fardjad's Avatar
OP Member
Thanks Meter: 296
 
92 posts
Join Date:Joined: Mar 2011
WiFi Fix for Android 4.0

Description

I recently found out many people in certain countries no matter what kinds of devices they're using, have issues with WiFi when SIM-Card is inserted.

I realized that changing the WiFi Country Code solves the problem and made an application that does this automatically on each boot and on network state changes.

Download

You can download it and follow the updates here.

You can also download and install WiFix Manager from Google Play (Make sure to rate the application.)

Installation

It's pretty easy; first of all you should root your device.

Then install WiFixManager.apk.



Start WiFix Manager from applications menu and tap Install WiFix (allow SuperUser permission.)



Once installed, you're ready to go. The application will change the country code when needed. You can also invoke it manually by dialing *#94349# (*#WIFIX#) and pressing the call button (don't forget to press call button; it's not a MSL code).



Updates

You can check for updates and install them via WiFix Manager.



Code:
Change Log:
1/14/12 WiFix V1.0, WiFix Manager V1.1:
Initial Release
1/25/12 WiFix 1.1, WiFix Manager V1.2:
Changed minimum SDK version and API Level to 3
Minor layout changes
Minor bug fixes
1/30/12 WiFix 1.2, WiFix Manager V1.3:
Added custom country code support
7/3/12 WiFix V1.2, WiFix Manager V1.31:
Minor layout bug fixes
Compiled with Android SDK 14
12/9/12 WiFix V1.2, WiFix Manager V1.32
Minor bug fixes (Device compatibility improvement.)
Added reboot prompt after installation and removal.
Compiled with Android SDK 16
Known Issues

Sometimes when you reboot your phone with WiFi turned on, you won't have internet access (you can't open webpages, download files etc.) even though it says it's already connected to your AP.
This issue can be fixed by turning WiFi Off and On or dialing *#WIFIX# as described before.

For ROM Cookers

By placing WiFix.apk in /system/app you'll have a WiFix enabled ROM.
If you're publishing that ROM, please include a link to this thread

Newer fix by XDA Member HTCZ715E

As of today, most of the manufacturers (including HTC and Sony) solved this Wi-Fi issue with their ROMs. Fortunately, there's no need for WiFix anymore.

For those who still have issues with custom ROMs and WiFix, try this.
Last edited by fardjad; 1st October 2014 at 10:21 PM.
The Following 196 Users Say Thank You to fardjad For This Useful Post: [ View ]
15th January 2012, 04:47 PM   |  #2  
omar302's Avatar
Senior Member
Flag Doha
Thanks Meter: 417
 
1,159 posts
Join Date:Joined: Feb 2006
More
Thanks. Working fine. much simpler to setup than the script.
15th January 2012, 08:13 PM   |  #3  
jhedfors's Avatar
Member
Flag Maple Valley
Thanks Meter: 10
 
91 posts
Join Date:Joined: Oct 2009
More
Exclamation Not working....
While I have given the app root permissions, when I click "Install WiFix" it replies with:

"Can't get root access. Either your device is not rooted, or SuperUser request has been rejected."

Ironically, it is immediately followed by:

"WiFi Manager has been granted Superuser permissions."

Any suggestions... am I missing something?
The Following User Says Thank You to jhedfors For This Useful Post: [ View ]
15th January 2012, 09:27 PM   |  #4  
fardjad's Avatar
OP Member
Thanks Meter: 296
 
92 posts
Join Date:Joined: Mar 2011
Quote:
Originally Posted by jhedfors

While I have given the app root permissions, when I click "Install WiFix" it replies with:

"Can't get root access. Either your device is not rooted, or SuperUser request has been rejected."

Ironically, it is immediately followed by:

"WiFi Manager has been granted Superuser permissions."

Any suggestions... am I missing something?

It's a little bit strange.

Root access checking routine, basically opens su, and checks the User ID. So either it can't execute su or the id is different when you're root (!!!) or there is a problem with IO streams (I hope not.)

Anyways, you can help me fix this problem by posting the steps (from installation to error message) to reproduce the error.
Please do the following and post the result:
  1. Install a Terminal Emulator app (this one for example) or get into shell with adb (note that installing Terminal Emulator is preferred since you always log-in as root with an insecure kernel.)
  2. Open it and type "su" (without quotes), and press enter.
  3. Allow SuperUser permission request.
  4. Type "id" (without quotes), and press enter.
  5. Post the result here.
  6. Type "exit" (without quotes), and press enter to logout.

It will be useful to post your device and ROM information as well.

Thanks in advance for your help,
I'll fix it as soon as I realize where the problem is
Last edited by fardjad; 5th June 2013 at 12:43 PM.
The Following 3 Users Say Thank You to fardjad For This Useful Post: [ View ]
15th January 2012, 10:11 PM   |  #5  
fardjad's Avatar
OP Member
Thanks Meter: 296
 
92 posts
Join Date:Joined: Mar 2011
Quote:
Originally Posted by omar302

Thanks. Working fine. much simpler to setup than the script.

You're welcome

The main difference between this application and that script is, it sets the wifi_country_code property by interacting with Secure system settings provider, thus it doesn't need to gain root access and execute sqllite for changing the country code. However it should be placed in /system/app to work. (WiFix Manager does this automatically with one time root permission.)
Last edited by fardjad; 5th June 2013 at 12:26 PM.
15th January 2012, 11:29 PM   |  #6  
jhedfors's Avatar
Member
Flag Maple Valley
Thanks Meter: 10
 
91 posts
Join Date:Joined: Oct 2009
More
Quote:
Originally Posted by fardjad

It's a little bit strange.

Root access checking routine, basically opens su, and checks the User ID. So either it can't execute su or the id is different when you're root (!!!) or there is a problem with output/input streams (I hope not.)

Anyways, if you like, you can help me fix this problem by posting the steps (From installation to error message) to reproduce the error and do the following and posting the result:

  1. Install a Terminal Emulator app (this one for example) or get into shell with adb (note that installing Terminal Emulator is preferred since in rooted devices when you get into shell with adb shell you're already logged in as root.)
  2. Open it and type "su" (without quotes), and press enter.
  3. Allow SuperUser permission request.
  4. Type "id" (without quotes), and press enter.
  5. Post the result here.
  6. Type "exit" (without quotes), and press enter to close the SuperUser session.

It will be useful to post your device and ROM information as well.

Thanks in advance for your help,
I'll fix it as soon as I realize where the problem is

My steps were:

1. Install WiFix Manager
-Successfully installed
2. Open WiFix Manager
3. Click "Install WiFix"
4. Click "Allow" on the Superuser Request pop-up
5. I then get the error above.

After entering ID in Terminal Emulator, I get the response "Toolbox!"

I have HTC Vision/G2, running "Virtuous Quattro Beta 9" in Boot Manager.

Thanks!
15th January 2012, 11:46 PM   |  #7  
fardjad's Avatar
OP Member
Thanks Meter: 296
 
92 posts
Join Date:Joined: Mar 2011
Quote:
Originally Posted by jhedfors

My steps were:

1. Install WiFix Manager
-Successfully installed
2. Open WiFix Manager
3. Click "Install WiFix"
4. Click "Allow" on the Superuser Request pop-up
5. I then get the error above.

After entering ID in Terminal Emulator, I get the response "Toolbox!"

I have HTC Vision/G2, running "Virtuous Quattro Beta 9" in Boot Manager.

Thanks!

OK, so the problem is the id command output. normally it should be something like uid=0(root) gid=0(root), most likely it's a rom issue (try fixing your permissions), however I will release another APK (after about 10 hours) that doesn't fail if id does not contain root.
Last edited by fardjad; 5th June 2013 at 12:28 PM.
The Following User Says Thank You to fardjad For This Useful Post: [ View ]
16th January 2012, 04:10 AM   |  #8  
omar302's Avatar
Senior Member
Flag Doha
Thanks Meter: 417
 
1,159 posts
Join Date:Joined: Feb 2006
More
Can I suggest something?

Why not make a flashable zip so "wifix.apk" can be flashed directly to "system/app" without having to use "wifixmanager.apk"
16th January 2012, 09:02 AM   |  #9  
fardjad's Avatar
OP Member
Thanks Meter: 296
 
92 posts
Join Date:Joined: Mar 2011
Quote:
Originally Posted by omar302

Can I suggest something?

Why not make a flashable zip so "wifix.apk" can be flashed directly to "system/app" without having to use "wifixmanager.apk"

Of course

Here it is.
Last edited by fardjad; 16th January 2012 at 10:12 AM.
The Following 4 Users Say Thank You to fardjad For This Useful Post: [ View ]
16th January 2012, 10:19 AM   |  #10  
fardjad's Avatar
OP Member
Thanks Meter: 296
 
92 posts
Join Date:Joined: Mar 2011
Quote:
Originally Posted by jhedfors

While I have given the app root permissions, when I click "Install WiFix" it replies with:

"Can't get root access. Either your device is not rooted, or SuperUser request has been rejected."

Ironically, it is immediately followed by:

"WiFi Manager has been granted Superuser permissions."

Any suggestions... am I missing something?

Quote:
Originally Posted by jhedfors

My steps were:

1. Install WiFix Manager
-Successfully installed
2. Open WiFix Manager
3. Click "Install WiFix"
4. Click "Allow" on the Superuser Request pop-up
5. I then get the error above.

After entering ID in Terminal Emulator, I get the response "Toolbox!"

I have HTC Vision/G2, running "Virtuous Quattro Beta 9" in Boot Manager.

Thanks!

OK, I updated the first post and uploaded a new APK and a Recovery Flashable Zip.

Please test and report the results
Last edited by fardjad; 5th June 2013 at 12:29 PM.

The Following 3 Users Say Thank You to fardjad For This Useful Post: [ View ]
Post Reply Subscribe to Thread

Tags
country code, fix, ics, wifi, wifix
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes


Top Threads in Android Software Development by ThreadRank