[APK] WiFix - Fixes regional Wi-Fi problems in Android 4.x
WiFi Fix for Android 4.x
IMPORTANT
I keep getting requests like "can you make this app work on a certain device/rom" almost everyday.
If the app doesn't work on your device, make sure to include the following information in your request or I WILL ignore it:
Your device manufacturer/model.
Your mobile operator.
A dump of system log messages.
Your ROM information.
What you've done and what's not working.
Note that I didn't receive ANY donations so far (Apr 12 2013), implementing the requested features takes a lot of time and effort.
Make sure to support app development (Paypal)
People in Iran who are interested in donating can Email me and I will provide further instructions.
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 searched a little bit and realized that changing the Wifi country code in Secure system settings should solve the problem and finally made an APK for doing so automatically on phone boot and network state change events.
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 have your phone rooted. Then install WiFixManager.apk on your device (Note that I also attached WiFix.apk which is for ROM cookers. You only need to download 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
I will release updates to this tool when needed, you can easily check for updates and install them via WiFix Manager.
I'll be glad if you test this tool and tell me your opinion, report bugs, suggest features, etc. either by sending me Emails, PMs, or posting replies in this thread.
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 router.
This issue can be fixed by turning WiFi Off and On or dialing *#WIFIX# as described before.
Recovery Flashable ZIP
As requested, here's an alternative installation method, Recovery Flashable ZIP file.
You can download it here.
For ROM Cookers
By placing WiFix.apk into /system/app folder you'll have a WiFix enabled ROM.
If you're publishing that ROM, please include a link to this thread WiFix.apk can be downloaded here.
Donate me if you like my work and want to help me keeping it up
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 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:
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.)
Open it and type "su" (without quotes), and press enter.
Allow SuperUser permission request.
Type "id" (without quotes), and press enter.
Post the result here.
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
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 do this automatically with one time root permission.)
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:
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.)
Open it and type "su" (without quotes), and press enter.
Allow SuperUser permission request.
Type "id" (without quotes), and press enter.
Post the result here.
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.
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 (fix your permissions), however I will release another APK (after about 10 hours) that wont't fail if id does not contain root.
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 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:
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.)
Open it and type "su" (without quotes), and press enter.
Allow SuperUser permission request.
Type "id" (without quotes), and press enter.
Post the result here.
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
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!
Quote:
Originally Posted by fardjad
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, however I will release another APK (after about 10 hours) that wont't fail if id does not contain root.
By now, we’re all quite familiar with Tasker, the personal automation app that seems to be able to … more
XDA Developers was founded by developers, for developers. It is now a valuable resource for people who want to make the most of their mobile devices, from customizing the look and feel to adding new functionality. Are you a developer?