[Guide] Add Roaming options to Phone.apk

Search This thread

freeza

Recognized Developer
May 28, 2006
5,391
14,164
Pasadena, CA
www.freeza-inc.com
OnePlus 10 Pro
Hi guys! Here's how you add roaming options to phone.apk. I forgot where I got this apk from, but I decided to dissect it and figure out how to do it to the new OTA. What I do remember, is that it came from Synergy, so thanks goes to TrevE and the whole Synergy team.

Step 1: Start off by decompiling Phone.apk with apktool, apk manager, or apk multi-tool.

Step 2: Navigate to res\values\arrays.xml and open it in Notepad++ or whatever editor you use.

Step 3: FIND:
Code:
<string-array name="cdma_system_select_choices_sprint">
<item>Sprint only</item>
<item>Automatic</item>

ADD:
Code:
<item>Roam only</item>

FINAL RESULT:
Code:
<string-array name="cdma_system_select_choices_sprint">
<item>Sprint only</item>
<item>Automatic</item>
<item>Roam only</item>
</string-array>

Step 4: FIND:
Code:
<string-array name="cdma_system_select_values_sprint">
<item>0</item>
<item>2</item>
</string-array>

ADD:
Code:
<item>3</item>

FINAL RESULT:
Code:
<string-array name="cdma_system_select_values_sprint">
<item>0</item>
<item>2</item>
<item>3</item>
</string-array>

Step 5: Navigate to com\android\phone\cdmaroaminglistpreference$myhandler.smali and open with your editor.

Step 6: FIND:
Code:
.local v1, settingsRoamingMode:I
if-eqz v2, :cond_0

const/4 v3, 0x2

if-eq v2, v3, :cond_0

const/4 v3, 0x3

NOTE: You should only have to search for
Code:
.local v1, settingsRoamingMode:I
, as the rest MAY not look like that.

CHANGE:
Code:
const/4 v3, 0x3
INTO:
Code:
const/4 v3, 0x1

Step 6: Navigate to com\android\phone\cdmaroaminglistpreference.smali and open with editor:

Step 7: FIND AROUND:
Code:
.line 84
.end local v2           #statusCdmaRoamingMode:I
:pswitch_1
const/4 v2, 0x3

NOTE: There will be multiple occurences if this, but you should only need to find around ".line 84", which is the first occurence.

CHANGE:
Code:
const/4 v2, 0x3
INTO:
Code:
const/4 v2, 0x1

Step 8: Recompile Phone.apk and push to phone, chmod with 0644, or create flashable zip and flash in recovery.

roaming.jpg



For convenience, I've attached a flashable zip below. This is based on software version 2.17.651.5.

KNOWN ISSUES: "Roaming only" doesn't show up as "ticked" when you select it. However, it still works, and is only a minor cosmetic flaw.
 

Attachments

  • freEVO-3D-RoamingOptions.zip
    2.2 MB · Views: 448
Last edited:

Anon9mouz

Senior Member
Sep 24, 2009
4,247
747
38
Rineyville, KY
www.facebook.com
Ne way to do this to the latest miui? TIA homie I. Need to. Gtalk u bro. Just been busy with school. I just got a new nook tablet trying to figure out root and recovery its a Greek to. Me hmm:confused:

Sent from my PG86100-EVO3D-using Tapatalk Born Jan 5th 84 and still getting it in eeee
 
Last edited:

Anon9mouz

Senior Member
Sep 24, 2009
4,247
747
38
Rineyville, KY
www.facebook.com
Ok one more thing if i flash and try to take one for the team what's the worst that can happen a reflash of the rom or brick?

Sent from my PG86100-EVO3D-using Tapatalk Born Jan 5th 84 and still getting it in eeee
 

freeza

Recognized Developer
May 28, 2006
5,391
14,164
Pasadena, CA
www.freeza-inc.com
OnePlus 10 Pro
Ok one more thing if i flash and try to take one for the team what's the worst that can happen a reflash of the rom or brick?

Sent from my PG86100-EVO3D-using Tapatalk Born Jan 5th 84 and still getting it in eeee

I can just post the previous software version apk here for you to flash.

But I'm certain it'll work. I'm pretty sure I was using the previous apk on the new software version for a few days.
 

mwalt2

Senior Member
Feb 22, 2009
2,248
1,531
If I use this for forced roaming will my data be 1x only?

Sent from my PG86100 using XDA App
It depends on what PRL you use. If you use 11115, it will be 3G off of Verizon. This PRL is used by business accounts from what I've read, though it was the PRL that was on my Nexus S 4G by default.
 

myn

Retired Senior Recognized Developer
Nov 15, 2007
2,679
3,985
FYI,

We employed this Force Roaming mod into Warm TwoPointThree RLS1 and arguably it was one of my favorite features. Sprint service in Columbus OH is awful, being able to roam on Verizon was nothing short of perfect.

Until... I received an official letter from Sprint telling me that they were going to disconnect my service if I didn't stop.

So much for unlimited right?

In any case, Use at your own discretion.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 20
    Hi guys! Here's how you add roaming options to phone.apk. I forgot where I got this apk from, but I decided to dissect it and figure out how to do it to the new OTA. What I do remember, is that it came from Synergy, so thanks goes to TrevE and the whole Synergy team.

    Step 1: Start off by decompiling Phone.apk with apktool, apk manager, or apk multi-tool.

    Step 2: Navigate to res\values\arrays.xml and open it in Notepad++ or whatever editor you use.

    Step 3: FIND:
    Code:
    <string-array name="cdma_system_select_choices_sprint">
    <item>Sprint only</item>
    <item>Automatic</item>

    ADD:
    Code:
    <item>Roam only</item>

    FINAL RESULT:
    Code:
    <string-array name="cdma_system_select_choices_sprint">
    <item>Sprint only</item>
    <item>Automatic</item>
    <item>Roam only</item>
    </string-array>

    Step 4: FIND:
    Code:
    <string-array name="cdma_system_select_values_sprint">
    <item>0</item>
    <item>2</item>
    </string-array>

    ADD:
    Code:
    <item>3</item>

    FINAL RESULT:
    Code:
    <string-array name="cdma_system_select_values_sprint">
    <item>0</item>
    <item>2</item>
    <item>3</item>
    </string-array>

    Step 5: Navigate to com\android\phone\cdmaroaminglistpreference$myhandler.smali and open with your editor.

    Step 6: FIND:
    Code:
    .local v1, settingsRoamingMode:I
    if-eqz v2, :cond_0
    
    const/4 v3, 0x2
    
    if-eq v2, v3, :cond_0
    
    const/4 v3, 0x3

    NOTE: You should only have to search for
    Code:
    .local v1, settingsRoamingMode:I
    , as the rest MAY not look like that.

    CHANGE:
    Code:
    const/4 v3, 0x3
    INTO:
    Code:
    const/4 v3, 0x1

    Step 6: Navigate to com\android\phone\cdmaroaminglistpreference.smali and open with editor:

    Step 7: FIND AROUND:
    Code:
    .line 84
    .end local v2           #statusCdmaRoamingMode:I
    :pswitch_1
    const/4 v2, 0x3

    NOTE: There will be multiple occurences if this, but you should only need to find around ".line 84", which is the first occurence.

    CHANGE:
    Code:
    const/4 v2, 0x3
    INTO:
    Code:
    const/4 v2, 0x1

    Step 8: Recompile Phone.apk and push to phone, chmod with 0644, or create flashable zip and flash in recovery.

    roaming.jpg



    For convenience, I've attached a flashable zip below. This is based on software version 2.17.651.5.

    KNOWN ISSUES: "Roaming only" doesn't show up as "ticked" when you select it. However, it still works, and is only a minor cosmetic flaw.
    1
    I have no idea. Since this is based on Sense and MIUI isn't, it's probably completely different.

    OK thanks plus I edit my post ill get at u bro a bit later k

    Sent from my PG86100-EVO3D-using Tapatalk Born Jan 5th 84 and still getting it in eeee
    1
    Credit goes to Mr_Greg for this
    http://forum.xda-developers.com/showthread.php?t=745092
    its hard to forget,same dev made roam control app
    1
    FYI,

    We employed this Force Roaming mod into Warm TwoPointThree RLS1 and arguably it was one of my favorite features. Sprint service in Columbus OH is awful, being able to roam on Verizon was nothing short of perfect.

    Until... I received an official letter from Sprint telling me that they were going to disconnect my service if I didn't stop.

    So much for unlimited right?

    In any case, Use at your own discretion.