[Q] Fake Wifi for App - Thunderbolt Q&A, Help & Troubleshooting

Is there anyway to make an App think I am on Wifi when I am really on 4G? The best broadband I can get at home is Satellite which is sucky slow and has daily download caps. However I work in a 4G area and have unlimited download plan. It drives me insane when an app (Plant vs. Zombies for example) requires me to be on Wifi to download. I am rooted, so was hoping someone would have some way to trick the app.

--solution 1--
decompile the app
mod the source
recompile
Basically just need to look for the constants it uses to set the size limit it requires wifi.
--solution 2--
reroute wlan to eth (wireless to your network connection) using iptables (if you are rooted and on a netfiltered enabled kernel [most are that are not stock kernels])
http://www.google.com/search?client...m+eth0+wlan0&sourceid=opera&ie=utf-8&oe=utf-8
Doing that most likely means some work unless you want to forward all of your wifi connections and then disable the rule after. Otherwise you would have to find what IPs it's download from and just forward only those. Shouldn't be overly hard to do if you know how to use iptables and things like netstat. Also involves using the linux terminal shell on the phone. It's a solution easier to do if you are in front of the phone than explaining online though.
--solution 3--
Plug your phone into your router (if it is usb enable and pass the connection through to your router and then use the wifi to get it). It's possible to do that, though you may need custom firmware on the router like ddwrt, tomatousb or openwrt. It may also not work since the phone might not like having wifi active at the same time it's sharing the internet connection with the router and then basically doing a full circle back to the phone via wifi.
--solution 4--
get a faster wifi connection
--solution 5--
Do something else while it downloads, because it'll take less time than the above solutions. I mean unless you're on dialup, you're saving like what? 5-10 minutes?
Probably not what you wanted to hear though, but those are the solutions. There doesn't exist any magical app that I know of that you can get from the market to do that.

Another solution,
Sit at McDonalds, hook up to free wifi. Enjoy a Big Mac and Fries while downloading.
Finish your download, finish your meal, be on your merry way.

If this can be done it would enable users to upload youtube videos via 3g without using a special kernel.

Get a fried to do wifi tethering for you.

The app you are talking about is Amazon Appstore and I was wondering the same thing and was about to make a topic about it, I believe all someone would have to do is change the value allowed in the app (Which seems easy I know they changed the limit recently), I will try to see if I can but it would be the first thing I've done on android.

It is easy, assuming this works. I decompiled it and one of the xml files (arrays.xml) has the values for uploading. Assuming they dont cross check those in the source, you can just add them there. If they do, then have to mod one of the settings files in the smali folder by messing with the byte code.
Code:
<!-- mod to something like this -->
<string-array name="connection_wifi_array">
<item>1 MB</item>
<item>5 MB</item>
<item>10 MB</item>
<item>20 MB</item>
<item>200 MB</item>
<item>500 MB</item>
<item>950 MB</item>
</string-array>
UPDATE: modding and recompiling this and reinstalling seems to throw some exception errors and force close the app. Logcat dump of the errors http://pastebin.com/5B6Eqv1c
Recompiling might have messed up something in the files, only thing I can think of why it force closes when trying to run it (after installing).

Wow this is an old thread but might as well not start a new one for the same question. Unused to use Matt's Privacy Blocker app and that worked well fornapoofing until the app stopped getting updates and won't run. So, let's use MC5 as an example. I decompiled just the source and went through each file changing every connectivity request with 0x1 which is the constant in that case for wifi. Recompiled without error and no go.
What else am I missing here? This would be much easier if Google didn't have that tool that developers can use to obfuscate their code with. Yeah a class named "1" makes lots of sense..lol. I need to figure this out so I can ditch the fake WiFixposed module. That and rootcloak are the only ones holding me back from ditching Xposed completely

Did you get mc5 to run like you wanted after recompile? my brothers phone is rooted but write protected so he can't have xposed please help

inameasone said:
Did you get mc5 to run like you wanted after recompile? my brothers phone is rooted but write protected so he can't have xposed please help
Click to expand...
Click to collapse
If you mean that his phone is s-on, you can still unlock...

Related

Tethering and Web top without AT&T'S Overpriced plan

It's quite clear now that something in the new update has disabled much of our precious tethering features, I have tried all of the different guides and tutorials I've found on the net with no success. Does anyone have any ideas?
pimpedz said:
It's quite clear now that something in the new update has disabled much of our precious tethering features, I have tried all of the different guides and tutorials I've found on the net with no success. Does anyone have any ideas?
Click to expand...
Click to collapse
#1 You're going to get bashed for posting in dev forum.
#2 Check out the lastest ROMs : Alien, AURA, etc. do everything except wipe your butt.
I apologize, I was much too vague in my original post. Allow to explain:
Pretty much every ROM out there enables tethering, however, AT&T has some sort of verification system when one uses the lapdock. This system is completely independent of the regular tethering hacks. I posted in the dev form in the hopes of inciting people to try and figure out what exactly has change. This is my current theory:
When the phone is placed into the lapdock cradle a request is sent to AT&T's servers to see if the account has a tethering plan or not. I also tried tethering to my laptop at the same time as putting the phone in the dock. Tethering worked just fine until my phone was placed into the dock, where it proceeded to give the error of "Lost 3g connection". Disabling entitlement check bypasses this for regular tethering, but not the dock. So then the these are my best guesses on how to fix the situation:
If we simply blocked the IP that this check is going through, would it bypass it?
Is there anyway to simply remove the check?
pimpedz said:
Pretty much every ROM out there enables tethering, however, AT&T has some sort of verification system when one uses the lapdock...
Click to expand...
Click to collapse
I am running Alien #4 ROM and this is working; this has also worked perfectly for me on Froyo stock as well.
1. Plug phone into lapdock
2. Click okay on error message saying you have to be on wifi
3. Turn on mobile hotspot (entitlement check disabling will allow this)
4. Open browser and find that you now have internet
5. Disable mobile hotspot (if you want)
6. Continue surfing on browser
7. ???
8. Profit!
bleuiko said:
I am running Alien #4 ROM and this is working; this has also worked perfectly for me on Froyo stock as well.
1. Plug phone into lapdock
2. Click okay on error message saying you have to be on wifi
3. Turn on mobile hotspot (entitlement check disabling will allow this)
4. Open browser and find that you now have internet
5. Disable mobile hotspot (if you want)
6. Continue surfing on browser
7. ???
8. Profit!
Click to expand...
Click to collapse
+1 Worked for me
First of all, you are asking a question in the Dev forum which is a no-no, regardless of what the question is about. Just try to remember that for next time.
Second, there is a thread for this already here:
http://forum.xda-developers.com/showthread.php?t=1160452
Take a look in there and see if any of their solutions can help you out or you could have at least asked your question there.
(It is also frustrating that this thread I just linked you to is on the first page of this forum so it would have taken no effort at all to find, just saying)
Excuse if I seem rude, I still haven't had my coffee...
pimpedz said:
I apologize, I was much too vague in my original post. Allow to explain:
Pretty much every ROM out there enables tethering, however, AT&T has some sort of verification system when one uses the lapdock. This system is completely independent of the regular tethering hacks. I posted in the dev form in the hopes of inciting people to try and figure out what exactly has change. This is my current theory:
When the phone is placed into the lapdock cradle a request is sent to AT&T's servers to see if the account has a tethering plan or not. I also tried tethering to my laptop at the same time as putting the phone in the dock. Tethering worked just fine until my phone was placed into the dock, where it proceeded to give the error of "Lost 3g connection". Disabling entitlement check bypasses this for regular tethering, but not the dock. So then the these are my best guesses on how to fix the situation:
If we simply blocked the IP that this check is going through, would it bypass it?
Is there anyway to simply remove the check?
Click to expand...
Click to collapse
An infraction was given to the OP to remind them to not create question threads in the developer forums. Hopefully this will prevent them and others from doing so in the future.

[Q] Custom rom settings; EDVO Only, Any Wifi, ect...

First off hello I'm new to this forum but a friend suggested I came here for some answers to my questions.
I've successfully compiled (and am currently running) a version of CyanogenMod
I've edited a good number of roms both on my HTC and LG so I have a decent knowledge of the file system
I have Eclipse set up and have been messing around with that a bit. Now that I have that done I want to get into editing the settings (I've taken a few courses with computer programming but never java so editing the Zip would be easier but with more guidance so would editing the source)
Now for the questions
1) Is there a way to make it so that it is EDVO only? without going through the service menu?
I'm going to be using SIP only so I have no need for calls or texts and 1x is never enough to hold a good conversion for me so I'd rather EDVO only
2) I know there are apps like Wefi that allow you to connect to any wireless network but I was hoping there was a way to do this at the source? I was figuring I could bypass the check if its a remembered wifi or not this way theres no need for another program to running.
I've been looking through the wifi settings on eclipse but don't really know what to look for.
3) If the EDVO is a possibility is there a way to change the signal bars to not reflect 1x anymore and simply show no service when that is the option? I figured a theme would be the best way for this but was checking if there was an easier way.
4) I'd also like to set it up so that if theres a wifi connection it will turn off the radio and if the wifi connection is lost it will turn the radio back on. so basically Wifi OR EDVO since I don't need both for sip calls.
This can be done with tasker so it's not as important as the other ones but it would still be nice if it was a built in feature.
I've been doing a lot of googling and these are the answers I couldn't find. I'm only lookin for points in the right direction I'm trying to take this as a learning experience but really haven't got much of an idea on where to start other then theming the singal bars. The first two are the ones I would really like to accomplish first.

[Q] Tasker enable Wifi Tether problem

I posted this in Tasker's Google Groups, but nobody had a solid solution for me. Since the XDA is full of intelligent people, figured I'd give this a shot.
I want to use Tasker to automatically enable my WiFi Tether app automatically under certain circumstances (namely, to sync my tablet's RSS while I get ready for work in the morning).
I followed these directions to set it up, but quickly discovered that the command was wrong. After a little searching and then taking this picture, I arrived at the command being !/data/data/com.googlecode.android.wifi.tether/bin/tether start. However, that doesn't work. When I test it, it grants superuser permissions, but never starts tethering.
It was recommended to me that I try the misc/script function, but I don't understand how that works. Alternately, they recommended I try the built-in wifi tether functionality, but as I'm on a completely stock ROM, I don't believe I can do that (unless someone figure out what to change to unlock it). I used to do that on my old EVO 4G with MikG, though, so I know that would work if I had a ROM with the feature unlocked.
So, any advice on how to resolve this problem is welcome. At current, I turn it on manually, but Tasker is great at making life easier and this would be a huge convenience if I could get it to work.
And before someone recommends a custom ROM, I'm on the fence with doing that. There are features I'd love to have, but the ROMs that have all of those features also have features I don't want (like remapping the multi-tasking button, for example). Perhaps someday I'll have the time to sit down and figure out how to build my own ROM.
No ideas? The XDA has never let me down, before...
I read a mod yesterday that enables the built-in tethering.. it was like 1 change.. it worked for me.
btw i have tasker but maybe people didn't want to buy it and therefore can't help, just a thought?
edit:
open your build.prop and add anywhere in it the following line:
code:
ro.tether.denied=false
then reboot and u should be good to tether.
Well it's not necessarily familiarity with Tasker that I figured would help (of course, with the Misc/Script explanation, it would be), but rather the program language stuff. Perhaps the command I was using was wrong, and someone with ADB experience could correct it. With that said, I have seen a lot of people on here comment about how they use Tasker, so I didn't think it was a stretch that someone familiar with it could help with the Misc/Script part.
I will give your recommendation a shot, though. Thanks!
So I added the line to the build.prop, and it worked exactly once. Second time I started it, I got a data call failure as it dropped 3G. Continued getting the failure warning until turning off tethering. Repeating process yielded same results.
Sent from my EVO LTE using Tapatalk 2
Tasker for Wifi Tether
Not sure if your even paying attention to this post anymore but I had a few tidbits of info that might help.
I have had the same problem but I am using tasker in addition to NFC task launcher. I wanted to be able to turn WiFi tether on after swiping an NFC tag.
I tried the same string that you mentioned in post 1(!/data/data......) to no avail. The way that I got it to work was I set a task in NFC task launcher to open the WiFi tether app then a task that ran the string. Although the app opened and it APPEARED that it did nothing after that but it actually was working in the back ground. I haven't tested the same scenario using just tasker but it should work. So you should just need a task to open WiFi tether and one that runs the string. The string should be controlled with the Locale plugin. At least I think that is what its called. Hope this helps.

[Q] Wifi Tethering de-activated HTC Incredible 4G to other device

I'm looking for a way to use my "retired" HTC Incredible 4G (ADR6410LVW) as a GPS puck. It was my wife's phone for 2 years and the screen is cracked, the battery is in bad shape, the camera lens is smudged, and it's been mistreated by each of my children. So it's in pretty rough shape, but I got it for a good price, and it still seems to work.
Because my tablet (rooted Kindle Fire 1st edition - stock ROM) doesn't have an internal GPS, I need to tether it to the phone to get mock GPS coordinates for several mapping applications. For this purpose, the phone works with TetherGPS if both devices are on the same (external) WiFi.
The problem is that with the provided Mobile Hotspot app, the software won't allow a connection unless there is a data source (i.e. Verizon network). Since the phone is de-activated, no source exists, so the mobile hotspot won't turn on. I will be using this in vehicles far from WiFi and I have no plans to re-activate a phone just to get a GPS. Maybe there is a way to trick the app into thinking there is a data source, I'm not sure.
I've also tried Android WiFi Tether, but I run into permission errors on the phone, and it doesn't seem to be working. I've learned from this thread (http://forum.xda-developers.com/showpost.php?p=19935112&postcount=40) that I may need root access to use Android WiFi Tether.
I'd prefer not to root the phone if I don't have to, but if that's the only way, I'll do it. I learned from reading this post (http://forum.xda-developers.com/showthread.php?t=2214653) that IF I want to root my phone (and do a lot more which may or may not be necessary), I need to flash update 2.17.605.5. My phone already has firmware version 2.19.605.2, so if I was to go that route, I have no idea whether I should just do a factory reset, backload the old firmware, or what.
Can someone please point me in the right direction?
You are correct that most non-carrier based WiFi Tether apps do require root. I tried experimenting with the app I use (WiFi Tether for Root Users) by changing my radio mode to GSM Only (i.e. mobile data is on, but not really going anywhere), and my laptop connected to the phone just fine.
Regarding rooting your phone, the thread you referenced for rooting is for older firmware. Since you're on 2.19.605.2, you will want this method: http://forum.xda-developers.com/showthread.php?t=2664460
cwaskey said:
I'm looking for a way to use my "retired" HTC Incredible 4G (ADR6410LVW) as a GPS puck. It was my wife's phone for 2 years and the screen is cracked, the battery is in bad shape, the camera lens is smudged, and it's been mistreated by each of my children. So it's in pretty rough shape, but I got it for a good price, and it still seems to work.
Because my tablet (rooted Kindle Fire 1st edition - stock ROM) doesn't have an internal GPS, I need to tether it to the phone to get mock GPS coordinates for several mapping applications. For this purpose, the phone works with TetherGPS if both devices are on the same (external) WiFi.
The problem is that with the provided Mobile Hotspot app, the software won't allow a connection unless there is a data source (i.e. Verizon network). Since the phone is de-activated, no source exists, so the mobile hotspot won't turn on. I will be using this in vehicles far from WiFi and I have no plans to re-activate a phone just to get a GPS. Maybe there is a way to trick the app into thinking there is a data source, I'm not sure.
I've also tried Android WiFi Tether, but I run into permission errors on the phone, and it doesn't seem to be working. I've learned from this thread (http://forum.xda-developers.com/showpost.php?p=19935112&postcount=40) that I may need root access to use Android WiFi Tether.
I'd prefer not to root the phone if I don't have to, but if that's the only way, I'll do it. I learned from reading this post (http://forum.xda-developers.com/showthread.php?t=2214653) that IF I want to root my phone (and do a lot more which may or may not be necessary), I need to flash update 2.17.605.5. My phone already has firmware version 2.19.605.2, so if I was to go that route, I have no idea whether I should just do a factory reset, backload the old firmware, or what.
Can someone please point me in the right direction?
Click to expand...
Click to collapse
Got My Rum - Now What?
junkmail9 said:
You are correct that most non-carrier based WiFi Tether apps do require root. I tried experimenting with the app I use (WiFi Tether for Root Users) by changing my radio mode to GSM Only (i.e. mobile data is on, but not really going anywhere), and my laptop connected to the phone just fine.
Regarding rooting your phone, the thread you referenced for rooting is for older firmware. Since you're on 2.19.605.2, you will want this method: http://forum.xda-developers.com/showthread.php?t=2664460
Click to expand...
Click to collapse
Thanks for the link to the updated method. I was able to follow the instructions (with only minor detours) and got my rum. My phone is now showing S-OFF in the bootloader. However, when I reboot, I get a blank screen except the status bar on the top. When I switch to "Disk Drive", my files and such appear to still be intact based on browsing from my PC. But I can't see them on my phone.
How do I get back to a usable screen on my phone?
cwaskey said:
Thanks for the link to the updated method. I was able to follow the instructions (with only minor detours) and got my rum. My phone is now showing S-OFF in the bootloader. However, when I reboot, I get a blank screen except the status bar on the top. When I switch to "Disk Drive", my files and such appear to still be intact based on browsing from my PC. But I can't see them on my phone.
How do I get back to a usable screen on my phone?
Click to expand...
Click to collapse
That's an odd problem... Since you can get to your files via PC, I recommend backing up your files to your PC, then install a fresh RUU (older ones can be found here).
Installing the RUU will nuke all of your files and essentially make your phone "factory fresh", but you will remain s-off. (Once you're s-off, you should stay s-off pretty much no matter what you do, unless you intentionally make your phone s-on, but do not do that unless you really know what you're doing...).
After RUU, you'll need to install a superuser program (superuser or SuperSU) to (re)gain root.
junkmail9 said:
That's an odd problem... Since you can get to your files via PC, I recommend backing up your files to your PC, then install a fresh RUU (older ones can be found here).
Installing the RUU will nuke all of your files and essentially make your phone "factory fresh", but you will remain s-off. (Once you're s-off, you should stay s-off pretty much no matter what you do, unless you intentionally make your phone s-on, but do not do that unless you really know what you're doing...).
After RUU, you'll need to install a superuser program (superuser or SuperSU) to (re)gain root.
Click to expand...
Click to collapse
Thanks for the suggestion. Unfortunately, it looks like those RUU files have been taken down.
I wonder if my problem started with the script from mdmower. I had to run it multiple times before I got it to work; it turns out two lines had to be run immediately after each other and I was waiting for the first to finish before typing in and running the second. I wonder if the second line did something that can be undone by re-running it with different options? I have no idea what ln or -s are. Here is the script I'm talking about.
Code:
adb restore fakebackup.ab
adb shell "while ! ln -s /data/local.prop /data/data/com.android.settings/a/file99
Got it working
I was able to get it working by doing a factory reset in twrp. I lost all my data, but I had backed up to my PC first, so I can re-install.
Thanks again for the help!
Back to square one
cwaskey said:
I was able to get it working by doing a factory reset in twrp. I lost all my data, but I had backed up to my PC first, so I can re-install.
Thanks again for the help!
Click to expand...
Click to collapse
So my apps are re-installed on my phone, and Wifi Tether has root access, but I still can't connect my phone to my other devices. Neither my Kindle Fire nor my PC can see my phone's Wifi, whether the house Wifi is on or off. I tried installing the Wifi Tether on my rooted Fire and that also didn't allow me to connect the two devices.
So am I SOL - no tether without an internet stream? Is there another way to pass GPS coordinates from a de-activated phone to a wifi device? It seems like it should be such an easy thing to do.
cwaskey said:
So am I SOL - no tether without an internet stream? Is there another way to pass GPS coordinates from a de-activated phone to a wifi device? It seems like it should be such an easy thing to do.
Click to expand...
Click to collapse
I would expect that your devices should see and be able to connect to your phone's WiFi tether, but they won't be able to go anywhere unless your phone has a mobile data connection.
Maybe with the device connected to the phone, you could use something like BlueNMEA or perhaps adapt GPSTether to work? (Both apps on Google play)
If you figure it out, please post how you did it, as others may be looking to do the same thing. Good luck!
Still trying to figure this one out. I guess if it was easy, I wouldn't have learned so much along the way.
According to the Android-Wifi-Tether site (http://code.google.com/p/android-wifi-tether/wiki/Setup_HTC_Desire_Incredible) the Droid Incredible is a special case. No mention of the Incredible 4G, so the workaround probably doesn't apply.
I guess I should try other Wifi tether apps and see if that's the problem.
Have you tried a custom ROM? I powered up my fireball last night with CM11 and I could connect my nexus 5 to it. I didn't get a chance to power up my old Nook Color to check if it shared location info. But it connected to the hotspot fine.
cwaskey said:
Still trying to figure this one out. I guess if it was easy, I wouldn't have learned so much along the way.
According to the Android-Wifi-Tether site (http://code.google.com/p/android-wifi-tether/wiki/Setup_HTC_Desire_Incredible) the Droid Incredible is a special case. No mention of the Incredible 4G, so the workaround probably doesn't apply.
I guess I should try other Wifi tether apps and see if that's the problem.
Click to expand...
Click to collapse
Success!
I installed CM11 on the phone. It now creates a WiFi hotspot with no internet access that my Kindle can access, and allows me to TetherGPS. I had to re-install all my apps on the phone, but I think I got that straight finally. Both the built-in WiFi tether and the Android WiFi Tether app seem to work.
So it must have been a limitation with the original OS that was keeping it from working.
If you'd have asked me two weeks ago if I thought I'd ever hack into and modify an old cell phone, I'd have said no way. Thanks to everyone who helped along the way.
Glad it worked out. Congratulations on the learning journey.
Sent from my Nexus 5 using XDA Free mobile app
cwaskey said:
I installed CM11 on the phone. It now creates a WiFi hotspot with no internet access that my Kindle can access, and allows me to TetherGPS. I had to re-install all my apps on the phone, but I think I got that straight finally. Both the built-in WiFi tether and the Android WiFi Tether app seem to work.
So it must have been a limitation with the original OS that was keeping it from working.
If you'd have asked me two weeks ago if I thought I'd ever hack into and modify an old cell phone, I'd have said no way. Thanks to everyone who helped along the way.
Click to expand...
Click to collapse
Excellent. Glad you figured it out and got it working!

[Q] Having some issues with aggressive wifi to cellular handover

My issue is that I am constantly stepping outside, out of reach of my modem, and I'll have to turn my Wi-Fi off or my phone will stay connected to the the incredibly weak wifi signal.
So, I tried turning the dev option for "aggressive wifi to cellular handover" on thinking this would help and allow me to just leave wifi turned on while stepping outside and have it switch over to data without my assistance. And it worked, for the most part (it still held on to wifi signals *I* would deem too slow, but not often), BUT whenever I reboot the option in dev settings un-ticks so I have to go back in and turn the setting back on.
My question is, is there a way to prevent the aggressive wifi to handover from turning off on reboots, or is there another option I could try that may even be more aggressive?
Thank you in advance!
Have you tried the setting to automatically disconnect from a poor WiFi signal? It's under WiFi>settings>advanced WiFi>avoid unstable connections
Juggernaut79 said:
Have you tried the setting to automatically disconnect from a poor WiFi signal? It's under WiFi>settings>advanced WiFi>avoid unstable connections
Click to expand...
Click to collapse
That says it'll automatically disconnect from no connection, but I still have an internet connection off the wifi, it's just like slow as all get out
6NomoN6 said:
That says it'll automatically disconnect from no connection, but I still have an internet connection off the wifi, it's just like slow as all get out
Click to expand...
Click to collapse
For me it disconnects from a weak signal.
I'll be back!
6NomoN6 said:
My question is, is there a way to prevent the aggressive wifi to handover from turning off on reboots, or is there another option I could try that may even be more aggressive?
Click to expand...
Click to collapse
I have the same problem, discovered the same solution, and have run into the same issue with no persistence after reboot! I'm googling now for a solution because going into developer options every reboot is incredibly damaging to the smoothness of the user experience I've worked so hard to customize.
Whether I find a solution or not I'll post in this thread again to let you know. If the latter is the result I will personally either write a tasker script, init.d script, or if nesseceary an Xposed module depending on factors I've yet to research. Can you Beta test for me if it comes to that? Maybe it's as simple as editing build.prop, I don't know yet, but I wanted to make this post ASAP so that you know you aren't alone on this and someone capable is working on the issue. For a developer like myself tapping menus every boot is unacceptable! Hopefully there is already a fix out there in the wild and I won't have to do any work.
P.S. Don't forget to also enable cellular radio always active for fast network switching at the price of some battery life. It's a few options below aggressive handover in Developer Options and thank jolly the setting is sticky unlike it's counterpart. Also, sorry for the poor turnout on your thread. I figured there'd be 100 posts by now, but at least you got my attention.
Edit 1: "setprop persist.{i-dont-know-yet}" in terminal emulator may do the trick. Checking for variables for the setting we want now. Hopefully they exist!
Edit 2: :laugh: I FOUND EVERYTHING I NEED FOR A FIX!!! However, an Xposed module will be required. I need some sleep but I should have something by tomorrow night. In case any other developers are reading this, here is the information required to make things work the way Iwe want them to:
http://android.stackexchange.com/qu...-cellular-handover-option-in-developer-settin
https://android.googlesource.com/pl...ndroid/settings/DevelopmentSettings.java#1061
Edit 3: Now that I know how this setting actually works together with wifi_watchdog (see source code WifiWatchdogService.java) I think I may have changed my mind regarding how to go about solving the root problem at hand (network switching) which this setting really does a "hack" job of taking care of. The developer that made it decided on a arbitrary, static number to be used for decreasing the connected WiFi AP's RSSI value (thereby making handover more "aggressive") instead of exposing any kind of grainular control to the user. So yes I could easily make the developer options setting stick but a much better approach would be to hook the method android.net.wifi.WifiManager with an Xposed module and implement additional logic to the network switching. The great thing about this method is there is the possibility for adding additional checks besides just periodically pinging the current primary dns server and monitoring the delay and timeout of the result. I also know for a fact modding the framework persists after reboot which is afterall all we originally wanted to have. The second or alternative route would be to edit the secure settings database using SQLite. The pro of this method is it is guranteed to be compatible with nearly ANY rom, won't break anything after an update, and doesn't use resources like an Xposed module. The con is that you are limited to the variables built into android, can't implement any new logic, and the worst is that I'm not even sure the modified tables would even persist after a reboot (or network state change for that matter) which if true would defeat the original purpose of this expedition. I'll make a fourth edit to this post after I've thought about and considered how to best proceede to reaching the goal of having a solution to our problem. :victory:
FoxysWorkplace said:
I have the same problem, discovered the same solution, and have run into the same issue with no persistence after reboot! (...)
Click to expand...
Click to collapse
First of all, thank you so very much for looking into this!
I'm sorry for not responding sooner, but I had honestly lost hope of finding a solution to this issue mainly because I am not a developer myself and haven't the foggiest how to get started with it on Android
But when I opened my notifications and saw a response to this post (!) I got *extremely* excited, and as I read through your post, my excitement intensified to great happiness!
I can't express my gratitude, but I would be more than happy to help with anything that I can!
Any news on this?
Has anyone found a solution?
Had anyone found a solution that doesn't require root access?
Can we expect that fourth update any time soon? Any solution without xposed?
I'm following this thread in the event that someone finds a non-rooted solution. The Galaxy S7 really cannot be rooted without a serious performance hit (and yes I've gone through the two or three best/popular lag-fix solutions) but it works best in stock :-/

Categories

Resources