[APP] + [MOD] Enable forced roaming

Search This thread

nfinitefx45

Senior Member
Apr 12, 2010
1,654
708
56
Abingdon, MD.
You could try the version from 2.3.3, not sure what the differences are though. Otherwise I would recommend modding the apk from your rom.

Sent from my HERO200 using XDA App

well MrGreg I am going to try this mod on a .5 version of the phone.apk and see what this does as I have tried about 30 times with no success, it just crashes the dialer + dialer storage on both my roms. One thing I have see is that 7zip is compressing them this was causing the fc on phone apk originally doing it store mode took care of this issue, now i just need to figure out why it crashes dialer

Any thoughts on your end?
 

MrGreg

Senior Member
Dec 30, 2009
245
152
well MrGreg I am going to try this mod on a .5 version of the phone.apk and see what this does as I have tried about 30 times with no success, it just crashes the dialer + dialer storage on both my roms. One thing I have see is that 7zip is compressing them this was causing the fc on phone apk originally doing it store mode took care of this issue, now i just need to figure out why it crashes dialer

Any thoughts on your end?

Not really, unfortunately.

I did find this, perhaps it's worth a shot...
http://xdaforums.com/showpost.php?p=6783187&postcount=378
 

MrGreg

Senior Member
Dec 30, 2009
245
152
well MrGreg I am going to try this mod on a .5 version of the phone.apk and see what this does as I have tried about 30 times with no success, it just crashes the dialer + dialer storage on both my roms. One thing I have see is that 7zip is compressing them this was causing the fc on phone apk originally doing it store mode took care of this issue, now i just need to figure out why it crashes dialer

Any thoughts on your end?

Not really, unfortunately.

I did find this, perhaps it's worth a shot...
http://xdaforums.com/showpost.php?p=6783187&postcount=378

Perhaps these are the instructions that we need:
http://xdaforums.com/showthread.php?p=7633685

If this is the case, it's a decent amount of work for everyone to do for their ROM...perhaps the best idea is to bother the dev/s of your favorite ROM (like nfinitefx45 :) ) to build this feature in the next release.
 

SteveMoore

New member
Aug 11, 2010
2
0
uk (gsm) hero

Hi,

If anyone using a gsm hero needs to force roam try the below, it worked for me but word of warning I accidentally messed with the smsc setting when doing this (broke my sms, fixed by googling for the smsc number for my provider).

Dial: *#*#4636#*#*
Click: phone info
Scrowl down to "set preferred network type"
Select: gsm only
Hit back till you are at the home screen

In a couple of seconds the sweet little R appears :)

Hope someone finds that useful

Cheers,
Steve
 

my2cents

Senior Member
Jul 24, 2010
613
202
California
here's the Phone.apk I've been using that works on the moment... modded to remove haptic feedback during dialing (twelvekeydialer smali or something like that) and themed a bit... but other than that, it's the same as stock for the moment...

thanks again for your help!

MrGreg,

Have you had a chance to poke around with the moment phone.apk? chibucks has been trying to make this work for all of us and I think he is only one step away. Any help you can give would be very appreciated.
 

MrGreg

Senior Member
Dec 30, 2009
245
152
MrGreg,

Have you had a chance to poke around with the moment phone.apk? chibucks has been trying to make this work for all of us and I think he is only one step away. Any help you can give would be very appreciated.

I'm looking at the code now. With the moment, what roaming options do you normally have in the settings menu? Do you have both Automatic and Sprint only?

What progress has chibucks made so far?
 

CherryWine

New member
Aug 13, 2010
2
0
Could someone please provide step by step instructions. There's so many posts in this thread that I have no clue where to start and what to download.
 

my2cents

Senior Member
Jul 24, 2010
613
202
California
I'm looking at the code now. With the moment, what roaming options do you normally have in the settings menu? Do you have both Automatic and Sprint only?

What progress has chibucks made so far?

That is correct. We can chose between "Home only" and "Automatic" in the system select menu under network settings.

Here is a link to the information that chibucks has provided over at sdx: http://forum.sdx-developers.com/and...aming-i-know-it's-possible/msg76266/#msg76266

I think it is similar to what he posted here at xda.

Thanks again!!!
 

MrGreg

Senior Member
Dec 30, 2009
245
152
That is correct. We can chose between "Home only" and "Automatic" in the system select menu under network settings.

Here is a link to the information that chibucks has provided over at sdx: http://forum.sdx-developers.com/and...aming-i-know-it's-possible/msg76266/#msg76266

I think it is similar to what he posted here at xda.

Thanks again!!!

Thanks, that's helpful to know the exact strings that you see in the settings menu. I can probably take a look tonight once I get the kids to bed and everything.
 

MrGreg

Senior Member
Dec 30, 2009
245
152
That is correct. We can chose between "Home only" and "Automatic" in the system select menu under network settings.

Here is a link to the information that chibucks has provided over at sdx: http://forum.sdx-developers.com/and...aming-i-know-it's-possible/msg76266/#msg76266

I think it is similar to what he posted here at xda.

Thanks again!!!

Oookay, I finally got a few minutes to look through the Moment code, and I see what is going on here. I've got a few ideas...the easy way that might not work, the other easy way, and the right way (which actually isn't that much more work, it just introduces some new code). The suggested changes are shown below...I copied some tag/line number for reference, and added comments to the lines I added/modified.

The easy (and interesting) way that might not work:

Replace "Home only" with "Roam only". Try changing how the roaming options are defined, nice and easy. You lose the ability to force to Sprint, but does anyone do that?

filename=arrays.xml
Code:
    <string-array name="cdma_system_select_choices">
        <item>Roam only</item> #was "Home only"
        <item>Automatic</item>
    </string-array>
    <string-array name="cdma_system_select_values">
        <item>0</item>
        <item>2</item>
    </string-array>

filename=Settings.smali
Code:
.field private static final CDMA_ROAMING_MODE_AFFILIATED:I = 0x0 #was 0x1

.field private static final CDMA_ROAMING_MODE_ANY:I = 0x2

.field private static final CDMA_ROAMING_MODE_HOME:I = 0x1 #was 0x0

The easy way that should work

Replace "Home only" with "Roam only". Swap 0x0 with 0x1 in the code. You lose the ability to force to Sprint, but does anyone do that? More code changes with this one...

filename=arrays.xml
Code:
    <string-array name="cdma_system_select_choices">
        <item>Roam only</item> #was "Home only"
        <item>Automatic</item>
    </string-array>
    <string-array name="cdma_system_select_values">
        <item>0</item>
        <item>2</item>
    </string-array>

filename=CdmaRoamingListPreference$MyHandler.smali
Code:
    .line 120
    .local v1, settingsRoamingMode:I

    const/4 v3, 0x1 #new
    
    if-eq v2, v3, :cond_0 #modified

    const/4 v3, 0x2

    if-ne v2, v3, :cond_3

filename=CdmaRoamingListPreference.xml
Code:
    .line 81
    const/4 v2, 0x1 #was 0x0

The right way

Add a Roam only option. This way requires more code updates and will require some trial and error on your part.

filename=arrays.xml
Code:
    <string-array name="cdma_system_select_choices">
        <item>Home only</item>
        <item>Roam only</item> #new
        <item>Automatic</item>
    </string-array>
    <string-array name="cdma_system_select_values">
        <item>0</item>
        <item>1</item> #maybe supposed to be 3, i'm not sure, trial and error
        <item>2</item>
    </string-array>

filename=CdmaRoamingListPreference.smali
Code:
    .line 75
    packed-switch v0, :pswitch_data_0

    const/4 v2, 0x1 #new 
    if-eq v0, v2, :goto_0 #new

    .line 81
    const/4 v2, 0x0

filename=CdmaRoamingListPreference$MyHandler.smali
Code:
    .line 120
    .local v1, settingsRoamingMode:I
    if-eqz v2, :cond_0

    const/4 v3, 0x1 #new
    
    if-eq v2, v3, :cond_0 #new

    const/4 v3, 0x2

    if-ne v2, v3, :cond_3
 
Last edited:

MrGreg

Senior Member
Dec 30, 2009
245
152
here's the Phone.apk I've been using that works on the moment... modded to remove haptic feedback during dialing (twelvekeydialer smali or something like that) and themed a bit... but other than that, it's the same as stock for the moment...

thanks again for your help!

If you have problems with recompiling the apk, perhaps you can ask the person who did the haptic feedback mod.
 

chibucks

Senior Member
Nov 20, 2009
86
8
If you have problems with recompiling the apk, perhaps you can ask the person who did the haptic feedback mod.

LOL... that was me (haptic feedback mod - based off of J here on xda). :)

thanks for the help, i'll try out some of your ideas and let you know. i know a lot of people have been wanting this for a while, so if it works, all credit to you and will definitely will point them in your direction.
 

MrGreg

Senior Member
Dec 30, 2009
245
152
LOL... that was me (haptic feedback mod - based off of J here on xda). :)

thanks for the help, i'll try out some of your ideas and let you know. i know a lot of people have been wanting this for a while, so if it works, all credit to you and will definitely will point them in your direction.

Nice, so you already know what's going on. Hopefully this works!

Sent from my HERO200 using XDA App
 

Top Liked Posts

  • There are no posts matching your filters.
  • 3
    I have an app on the market that forces roam. It requires root access, and it has not been tested on every phone/ROM yet, so please let me know if you encounter any issues.

    http://www.appbrain.com/app/com.vuvuzela.roamcontrol

    ------------------------------------------------------------

    I also have a mod to enable forced roam, however it has been difficult to get it to work with many ROMs. I'll be happy to help you out with any questions, although I don't understand why some apks recompile correctly and others do not.

    I modded Phone.apk to enable forced roaming. I have a couple of apks attached, but Fresh 2.3.3 is the only one that I've tested. It sounds like people are having mixed success with the DC version, and the EVO version doesn't work.

    Lots of credit to incognito03:
    http://code.google.com/p/android/issues/detail?id=7603#c24

    Rename the attached file to "Phone.apk" and push it to /system/app. Not sure if a reboot is required. Remember, always do a nandroid backup when trying something new!

    If you want to use this with a different ROM, you should decompile/modify/recompile/sign the apk from the ROM you are using. I attached a diff report for the files I modified so you can see the changes. See my post for instructions: http://xdaforums.com/showthread.php?p=7625035#post7625035

    In the code diff, 0x2 is for "Automatic", and 0x4 is for "Sprint only". There is also code for 0x3 (I'm not sure what this is, EVDO only perhaps? As far as I can tell, it's not used), which I changed to 0x1 for "Roam only".

    Let me know if you find any issues. The only thing I've noticed is after enabling, when you go back to change the setting again, it doesn't remember/highlight the "roam only" option like it would for the other settings...seems purely cosmetic.
    2
    Could you please enumerate the advantages and useful applications of being able to force roaming?

    At my office, I get a terrible Sprint signal but a great Verizon signal. When on automatic, the phone is constantly searching for towers and switching between Sprint and Verizon. The phone is incredibly unreliable (almost unusable), and the battery drains rather quickly. Now when I'm at work, I can just force it to roam and everything is peachy.

    Forced roaming is available on winmo phones, and it was the one reason I was hesitant to switch to android.
    1
    thats a cool apk

    but why not just switch PRLs since you get better Verizon at your work?

    I do that at my job or whenever i leave town and its fine dont gotta roam

    I tried that but got mixed results. My phone would stop being very responsive and my speeds weren't that great. This is a bit quicker for me since I plan on forcing roam 5 days a week.
    1
    THis is what I've been needing TOO. MrGREG thanks for sharing. Unfortunately when I tried it on CM6 it just closed down all cell reception. When I tried to go to settings it said Phone.apk had FC'ed. Is there anyway to get this running on CM6? I am in the same situation as you are and Being able to ROAM would Help Tremendously.

    I've only tested my version with Fresh (since it was based off Fresh). I probably wouldn't try it with other ROMs. Doesn't the latest build of CM6 have force roaming built in?
    1
    It does have it builtin, but it forces the data connection to 1x...

    My mod does the same thing. Sprint has an agreement with Verizon to roam with 1x, not EVDO. I believe the PRL hack (mentioned earlier in this thread) will allow you to roam with EVDO, but I never had much luck with that.