[HTC EVO 3D] krowley3:
Virgin Mobile MMS

Agrabren,

I know that you are busy with bug fixes and such. I have continued to install your most recent builds. The only thing that I cannot get to work on any AOSP is MMS. I have been working on this for some time. I know that there are quiet a few Virgin users this would help out greatly, so if something sticks out to you, we would appreciate the help. Again, I know that you don't directly support CDMA and especially Virgin but it never hurts to ask for help. Thank you.

First here are the changes that I make to build.prop:

gsm.sim.operator.alpha = Virgin Mobile

gsm.sim.operator.numeric = 311490

gsm.operator.alpha = Virgin Mobile

gsm.operator.numeric = 311490

ro.cdma.home.operator.numeric=311490

ro.cdma.home.operator.alpha=Virgin Mobile

I then swap out the apns-config.xml with this one:

- <apns version="7">
<apn carrier="Virgin Mobile US" mcc="311" mnc="490" apn="0" mmsproxy="205.239.233.136" mmsport="81" mmsc="hxxp://mmsc.vmobl.com:8088/mms?" port="" type="mms" />
</apns>

The above apns-config.xml is working on other AOSP builds for Virgin Mobile phones.

I have even gone so far to decompile Mms.apk and modify mms_config.xml to show the following:

<?xml version="1.0" encoding="utf-8" ?>
- <mms_config version="4">
<bool name="enabledMMS">true</bool>
<bool name="enableSplitSMS">true</bool>
<int name="maxMessageSize">307200</int>
<int name="maxImageHeight">1000</int>
<int name="maxImageWidth">1296</int>
<string name="uaProfTagName">Profile</string>
<string name="userAgent">HTC_X515c_BST/1.2</string>
<string name="uaProfUrl">hxxp://uaprof.vmobl.com/HTC/X515C-VMUB/1.0/UAProf.xml</string>
<string name="emailGatewayNumber">6245</string>
<int name="recipientLimit">-1</int>
<int name="smsToMmsTextThreshold">4</int>
<bool name="enableMultipartSMS">true</bool>
<int name="maxMessageTextSize">-1</int>
</mms_config>

Which I got from the default.xml from the Virgin Mobile Evo V 4g base rom (system/customize/MNS/default.xml). I have also edited the eri.xml to show Virgin Mobile instead of Sprint.

Even after doing all of that the MMS still times out at connecting to the mmsproxy. Below I will paste both logcats from sending and receiving and MMS.

Sending:

I/ActivityManager( 324): START {act=android.intent.action.MAIN cat=[android.intent.category.HOME] flg=0x10200000 cmp=com.cyanogenmod.trebuchet/.Launcher u=0} from pid 324
I/ActivityManager( 324): START {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.android.mms/.ui.ConversationList bnds=[321,852][424,948] u=0} from pid 600
D/MP-Decision( 899): UP Nw:2.700000 Tw:180 rq:6.200000 seq:198
I/ActivityManager( 324): Displayed com.android.mms/.ui.ConversationList: +324ms
D/MP-Decision( 899): DOWN Ns:2.100000 Ts:270 rq:0.000000 seq:307 (Up time:502)
I/ActivityManager( 324): START {dat=content://mms-sms/conversations/2 cmp=com.android.mms/.ui.ComposeMessageActivity u=0} from pid 8366
D/Mms/compose( 8366): [1] [initialize] savedInstanceState = null intent = Intent { dat=content://mms-sms/conversations/2 cmp=com.android.mms/.ui.ComposeMessageActivity } mConversation = [913-687-4877] (tid 2)
D/MMS Input Type( 8366): 64
I/ActivityManager( 324): Displayed com.android.mms/.ui.ComposeMessageActivity: +281ms
D/MP-Decision( 899): UP Nw:2.700000 Tw:180 rq:5.400000 seq:198
D/MP-Decision( 899): DOWN Ns:2.100000 Ts:270 rq:0.000000 seq:297 (Up time:393)
I/ActivityManager( 324): START {act=android.intent.action.MAIN cat=[android.intent.category.HOME] flg=0x10200000 cmp=com.cyanogenmod.trebuchet/.Launcher u=0} from pid 324
D/MP-Decision( 899): UP Nw:2.700000 Tw:180 rq:5.000000 seq:198
W/IInputConnectionWrapper( 8366): showStatusIcon on inactive InputConnection
D/MP-Decision( 899): DOWN Ns:2.100000 Ts:270 rq:1.000000 seq:307 (Up time:403)
W/ProcessStats( 324): Skipping unknown process pid 9019
I/ActivityManager( 324): START {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 pkg=org.jtb.alogcat cmp=org.jtb.alogcat/.LogActivity bnds=[12,299][141,475] u=0} from pid 600
D/MP-Decision( 899): UP Nw:2.700000 Tw:180 rq:4.400000 seq:197
D/MP-Decision( 899): DOWN Ns:2.100000 Ts:270 rq:0.300000 seq:314 (Up time:314)
I/BATT_ALG( 143): charging time: 180000
I/BATT_ALG( 143): batt_alg_overtemp_check:temp:312, isOver_temp:0
I/BATT_ALG( 143): set_battery_voltage_alarm level=100, alarm_config=25, batt_alarm_config=25
I/BATT_ALG( 143): vol=4362;curr=63;dis_curr=0;temp=312;id=2;level=100;chg_src=1;chg_en=1;isOver_temp=0;timer=60;safety_count=0
E/Mms:transaction( 8366): Url: hxxp://mmsc.vmobl.com:8088/mms?
E/Mms:transaction( 8366): Connect to /205.239.233.136:81 timed out
E/SendTransaction( 8366): java.io.IOException: Connect to /205.239.233.136:81 timed out
E/SendTransaction( 8366):	at com.android.mms.transaction.HttpUtils.handleHttpConnectionException(HttpUtils.java:299)
E/SendTransaction( 8366):	at com.android.mms.transaction.HttpUtils.httpConnection(HttpUtils.java:285)
E/SendTransaction( 8366):	at com.android.mms.transaction.Transaction.sendPdu(Transaction.java:176)
E/SendTransaction( 8366):	at com.android.mms.transaction.Transaction.sendPdu(Transaction.java:154)
E/SendTransaction( 8366):	at com.android.mms.transaction.SendTransaction.run(SendTransaction.java:115)
E/SendTransaction( 8366):	at java.lang.Thread.run(Thread.java:856)
E/SendTransaction( 8366): Caused by: org.apache.http.conn.ConnectTimeoutException: Connect to /205.239.233.136:81 timed out
E/SendTransaction( 8366):	at org.apache.http.conn.scheme.PlainSocketFactory.connectSocket(PlainSocketFactory.java:121)
E/SendTransaction( 8366):	at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:144)
E/SendTransaction( 8366):	at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164)
E/SendTransaction( 8366):	at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)
E/SendTransaction( 8366):	at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:360)
E/SendTransaction( 8366):	at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
E/SendTransaction( 8366):	at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:509)
E/SendTransaction( 8366):	at android.net.http.AndroidHttpClient.execute(AndroidHttpClient.java:262)
E/SendTransaction( 8366):	at com.android.mms.transaction.HttpUtils.httpConnection(HttpUtils.java:205)
E/SendTransaction( 8366):	... 4 more
E/SendTransaction( 8366): Delivery failed.
D/ConnectivityService( 324): stopUsingNetworkFeature: teardown net 0: enableMMS
D/ConnectivityService( 324): ConnectivityChange for mobile_mms: DISCONNECTED/DISCONNECTED
D/MP-Decision( 899): UP Nw:2.700000 Tw:180 rq:3.000000 seq:198
D/MP-Decision( 899): DOWN Ns:2.100000 Ts:270 rq:1.138408 seq:795 (Up time:795)
D/lights ( 324): set_light_buttons_func: on=0 brightness=0
D/WimaxService( 324): onReceive ConnectivityService CONNECTIVITY_ACTION type=mobile_mms[CDMA - EvDo rev. A], state=DISCONNECTED
D/Tethering( 324): MasterInitialState.processMessage what=3
D/Tethering( 324): MasterInitialState.processMessage what=3
D/TelephonyProvider( 594): Preferred APN: -1
D/MP-Decision( 899): UP Nw:2.700000 Tw:180 rq:4.800000 seq:198
D/PicasaUploaderSyncManager( 8153): active network: NetworkInfo: type: mobile[CDMA - EvDo rev. A], state: CONNECTED/CONNECTED, reason: (unspecified), extra: , roaming: false, failover: false, isAvailable: true
D/PicasaUploaderSyncManager( 8153): background data: true
D/Beautiful Widgets(4120000)( 1398): CONNECTIVITY_CHANGE
D/PicasaUploaderSyncManager( 8153): active network: NetworkInfo: type: mobile[CDMA - EvDo rev. A], state: CONNECTED/CONNECTED, reason: (unspecified), extra: , roaming: false, failover: false, isAvailable: true
D/PicasaUploaderSyncManager( 8153): background data: true
D/Beautiful Widgets(4120000)( 1398): CONNECTIVITY_CHANGE
D/MP-Decision( 899): DOWN Ns:2.100000 Ts:270 rq:1.087336 seq:328 (Up time:424)
D/ConnectivityService( 324): handleInetConditionHoldEnd: net=0, condition=100, published condition=100

Receiving:

I/ActivityManager( 324): START {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.android.mms/.ui.ConversationList bnds=[321,852][424,948] u=0} from pid 600
D/MP-Decision( 899): UP Nw:2.700000 Tw:180 rq:4.900000 seq:198
I/ActivityManager( 324): Displayed com.android.mms/.ui.ConversationList: +313ms
D/dalvikvm( 594): null clazz in OP_INSTANCE_OF, single-stepping
D/MP-Decision( 899): DOWN Ns:2.100000 Ts:270 rq:0.000000 seq:297 (Up time:492)
I/ActivityManager( 324): START {dat=content://mms-sms/conversations/3 cmp=com.android.mms/.ui.ComposeMessageActivity u=0} from pid 8366
D/Mms/compose( 8366): [1] [initialize] savedInstanceState = null intent = Intent { dat=content://mms-sms/conversations/3 cmp=com.android.mms/.ui.ComposeMessageActivity } mConversation = [+1 913-549-8889] (tid 3)
D/MMS Input Type( 8366): 64
I/ActivityManager( 324): Displayed com.android.mms/.ui.ComposeMessageActivity: +232ms
D/MP-Decision( 899): UP Nw:2.700000 Tw:180 rq:3.000000 seq:198
D/MP-Decision( 899): DOWN Ns:2.100000 Ts:270 rq:0.000000 seq:366 (Up time:462)
D/MP-Decision( 899): UP Nw:2.700000 Tw:180 rq:5.200000 seq:198
D/MP-Decision( 899): DOWN Ns:2.100000 Ts:270 rq:1.200000 seq:288 (Up time:592)
W/ProcessStats( 324): Skipping unknown process pid 10508
I/ActivityManager( 324): START {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 pkg=org.jtb.alogcat cmp=org.jtb.alogcat/.LogActivity bnds=[12,299][141,475] u=0} from pid 600
D/MP-Decision( 899): UP Nw:2.700000 Tw:180 rq:2.800000 seq:197
D/MP-Decision( 899): DOWN Ns:2.100000 Ts:270 rq:0.300000 seq:313 (Up time:313)
I/BATT_ALG( 143): charging time: 480000
I/BATT_ALG( 143): batt_alg_overtemp_check:temp:313, isOver_temp:0
I/BATT_ALG( 143): set_battery_voltage_alarm level=100, alarm_config=25, batt_alarm_config=25
I/BATT_ALG( 143): vol=4338;curr=-51;dis_curr=0;temp=313;id=2;level=100;chg_src=1;chg_en=1;isOver_temp=0;timer=60;safety_count=0
D/lights ( 324): set_light_buttons_func: on=0 brightness=0
D/Beautiful Widgets(4120000)( 1398): WidgetRefreshService
E/Mms:transaction( 8366): Url: hxxp://mmsc.vmobl.com:8088/mms?
E/Mms:transaction( 8366): Connect to /205.239.233.136:81 timed out
E/NotificationTransaction( 8366): java.io.IOException: Connect to /205.239.233.136:81 timed out
E/NotificationTransaction( 8366):	at com.android.mms.transaction.HttpUtils.handleHttpConnectionException(HttpUtils.java:299)
E/NotificationTransaction( 8366):	at com.android.mms.transaction.HttpUtils.httpConnection(HttpUtils.java:285)
E/NotificationTransaction( 8366):	at com.android.mms.transaction.Transaction.sendPdu(Transaction.java:176)
E/NotificationTransaction( 8366):	at com.android.mms.transaction.Transaction.sendPdu(Transaction.java:123)
E/NotificationTransaction( 8366):	at com.android.mms.transaction.NotificationTransaction.sendNotifyRespInd(NotificationTransaction.java:244)
E/NotificationTransaction( 8366):	at com.android.mms.transaction.NotificationTransaction.run(NotificationTransaction.java:211)
E/NotificationTransaction( 8366):	at java.lang.Thread.run(Thread.java:856)
E/NotificationTransaction( 8366): Caused by: org.apache.http.conn.ConnectTimeoutException: Connect to /205.239.233.136:81 timed out
E/NotificationTransaction( 8366):	at org.apache.http.conn.scheme.PlainSocketFactory.connectSocket(PlainSocketFactory.java:121)
E/NotificationTransaction( 8366):	at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:144)
E/NotificationTransaction( 8366):	at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164)
E/NotificationTransaction( 8366):	at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)
E/NotificationTransaction( 8366):	at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:360)
E/NotificationTransaction( 8366):	at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
E/NotificationTransaction( 8366):	at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:509)
E/NotificationTransaction( 8366):	at android.net.http.AndroidHttpClient.execute(AndroidHttpClient.java:262)
E/NotificationTransaction( 8366):	at com.android.mms.transaction.HttpUtils.httpConnection(HttpUtils.java:205)
E/NotificationTransaction( 8366):	... 5 more
E/NotificationTransaction( 8366): NotificationTransaction failed.
D/ConnectivityService( 324): stopUsingNetworkFeature: teardown net 0: enableMMS
D/ConnectivityService( 324): ConnectivityChange for mobile_mms: DISCONNECTED/DISCONNECTED
D/MP-Decision( 899): UP Nw:2.700000 Tw:180 rq:3.000000 seq:198
D/MP-Decision( 899): DOWN Ns:2.100000 Ts:270 rq:0.000000 seq:294 (Up time:294)
D/WimaxService( 324): onReceive ConnectivityService CONNECTIVITY_ACTION type=mobile_mms[CDMA - EvDo rev. A], state=DISCONNECTED
D/Tethering( 324): MasterInitialState.processMessage what=3
D/Tethering( 324): MasterInitialState.processMessage what=3
D/TelephonyProvider( 594): Preferred APN: -1
D/Beautiful Widgets(4120000)( 1398): CONNECTIVITY_CHANGE
D/MP-Decision( 899): UP Nw:2.700000 Tw:180 rq:6.600000 seq:198
D/PicasaUploaderSyncManager( 8153): active network: NetworkInfo: type: mobile[CDMA - EvDo rev. A], state: CONNECTED/CONNECTED, reason: (unspecified), extra: , roaming: false, failover: false, isAvailable: true
D/PicasaUploaderSyncManager( 8153): background data: true
D/TelephonyProvider( 594): Preferred APN: -1
D/Beautiful Widgets(4120000)( 1398): CONNECTIVITY_CHANGE
D/PicasaUploaderSyncManager( 8153): active network: NetworkInfo: type: mobile[CDMA - EvDo rev. A], state: CONNECTED/CONNECTED, reason: (unspecified), extra: , roaming: false, failover: false, isAvailable: true
D/PicasaUploaderSyncManager( 8153): background data: true
D/ConnectivityService( 324): handleInetConditionHoldEnd: net=0, condition=100, published condition=100

I had to replace http with hxxp because I do not have enough posts to include links, FYI.