Introducing XDA:DevCon – A Conference For Developers By Developers
XDA Developers Android and Mobile Development Forum
Forgot your password?
 
Post Reply+
Tip us?
 
fardjad
Old
(Last edited by fardjad; 12th April 2013 at 02:23 PM.)
#1  
fardjad's Avatar
Member - OP
Thanks Meter 234
Posts: 85
Join Date: Mar 2011
Angry [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:
  1. Your device manufacturer/model.
  2. Your mobile operator.
  3. A dump of system log messages.
  4. Your ROM information.
  5. 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.


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 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.
Attached Files
File Type: zip WiFixRecovery_1.0_1.1.zip - [Click for QR Code] (728.0 KB, 3111 views)
File Type: apk WiFix_1.0.apk - [Click for QR Code] (23.8 KB, 1837 views)
File Type: apk WiFixManager_1.1.apk - [Click for QR Code] (57.8 KB, 1411 views)
File Type: zip WiFixRecovery_1.1_1.2.zip - [Click for QR Code] (728.1 KB, 728 views)
File Type: apk WiFix_1.1.apk - [Click for QR Code] (24.0 KB, 576 views)
File Type: apk WiFixManager_1.2.apk - [Click for QR Code] (59.1 KB, 763 views)
File Type: zip WiFixRecovery_1.2_1.3.zip - [Click for QR Code] (716.3 KB, 11219 views)
File Type: apk WiFix_1.2.apk - [Click for QR Code] (24.3 KB, 4306 views)
File Type: apk WiFixManager_1.3.apk - [Click for QR Code] (62.7 KB, 7758 views)
File Type: apk WiFixManager_1.31.apk - [Click for QR Code] (56.4 KB, 3030 views)
File Type: apk WiFixManager_1.32.apk - [Click for QR Code] (59.4 KB, 7500 views)
Donate me if you like my work and want to help me keeping it up

The Following 143 Users Say Thank You to fardjad For This Useful Post: [ Click to Expand ]
 
omar302
Old
#2  
omar302's Avatar
Senior Member
Thanks Meter 259
Posts: 939
Join Date: Feb 2006
Location: Doha
Thanks. Working fine. much simpler to setup than the script.
Current:
HTC One

Past:
Tornado "imate SP5", Trinity P3600 (sold) - TyTN II (sold) - Diamond (sold) - Diamond2 (sold) - HD2 (broke!) - Sensation(sold) - One X - (T3, sold).
 
jhedfors
Old
#3  
Member
Thanks Meter 3
Posts: 47
Join Date: Oct 2009
Location: Seattle
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: [ Click to Expand ]
 
fardjad
Old
(Last edited by fardjad; 30th April 2012 at 12:30 AM.)
#4  
fardjad's Avatar
Member - OP
Thanks Meter 234
Posts: 85
Join Date: Mar 2011
Quote:
Originally Posted by jhedfors View Post
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:
  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
The Following 3 Users Say Thank You to fardjad For This Useful Post: [ Click to Expand ]
 
fardjad
Old
(Last edited by fardjad; 15th January 2012 at 10:19 PM.)
#5  
fardjad's Avatar
Member - OP
Thanks Meter 234
Posts: 85
Join Date: Mar 2011
Quote:
Originally Posted by omar302 View Post
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.)
 
jhedfors
Old
#6  
Member
Thanks Meter 3
Posts: 47
Join Date: Oct 2009
Location: Seattle
Quote:
Originally Posted by fardjad View Post
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!
 
fardjad
Old
(Last edited by fardjad; 6th May 2012 at 11:39 PM.)
#7  
fardjad's Avatar
Member - OP
Thanks Meter 234
Posts: 85
Join Date: Mar 2011
Quote:
Originally Posted by jhedfors View Post
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 (fix your permissions), however I will release another APK (after about 10 hours) that wont't fail if id does not contain root.
The Following User Says Thank You to fardjad For This Useful Post: [ Click to Expand ]
 
omar302
Old
#8  
omar302's Avatar
Senior Member
Thanks Meter 259
Posts: 939
Join Date: Feb 2006
Location: Doha
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"
Current:
HTC One

Past:
Tornado "imate SP5", Trinity P3600 (sold) - TyTN II (sold) - Diamond (sold) - Diamond2 (sold) - HD2 (broke!) - Sensation(sold) - One X - (T3, sold).
 
fardjad
Old
(Last edited by fardjad; 16th January 2012 at 10:12 AM.)
#9  
fardjad's Avatar
Member - OP
Thanks Meter 234
Posts: 85
Join Date: Mar 2011
Quote:
Originally Posted by omar302 View Post
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.
The Following 4 Users Say Thank You to fardjad For This Useful Post: [ Click to Expand ]
 
fardjad
Old
(Last edited by fardjad; 16th January 2012 at 10:43 AM.)
#10  
fardjad's Avatar
Member - OP
Thanks Meter 234
Posts: 85
Join Date: Mar 2011
Quote:
Originally Posted by jhedfors View Post
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 View Post
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
Quote:
Originally Posted by jhedfors View Post
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 View Post
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.
OK, I updated the first post and uploaded a new APK and a Recovery Flashable Zip.

Please test and report the results

The Following 3 Users Say Thank You to fardjad For This Useful Post: [ Click to Expand ]
 
Post Reply+
Tags
country code, fix, ics, wifi, wifix
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Go to top of page...