signalapp / Signal-Android

A private messenger for Android.
https://signal.org
GNU Affero General Public License v3.0
25.46k stars 6.1k forks source link

Fails to retrieve received MMS messages. #107

Closed maabuss closed 11 years ago

maabuss commented 11 years ago

the TS app will not successfully receive a mms message. it just sits there and does nothing, no errors, just sits there "connecting to mms server". i thought it might be ann issue with my provider, however, they were not able to find any issues with my phone nor the towers i am connected to. i’d like an option to enable system messenger for receipt of mms messages if this cannot be rectified.

thanks for your time.

Maabuss

thoughtbox commented 11 years ago

I see this when I am on 2G (no different from the stock app). Does this happen on 2G or 3G?

maabuss notifications@github.com wrote:

the TS app will not successfully receive a mms message. it just sits there and does nothing, no errors, just sits there "connecting to mms server". i thought it might be ann issue with my provider, however, they were not able to find any issues with my phone nor the towers i am connected to. i’d like an option to enable system messenger for receipt of mms messages if this cannot be rectified.

thanks for your time.

Maabuss


Reply to this email directly or view it on GitHub: https://github.com/WhisperSystems/TextSecure/issues/107

http://www.bogus.net/~torh

jamesbeebop commented 11 years ago

I have two phones in my home with TS installed, and both see this behavior with MMS. As we don't send/receive that many of these, I haven't followed it up. This happens on 3g for us.

dolanor commented 11 years ago

@maabuss There is an options in TextSecure that is enabled by default about MMS handling. If you uncheck it, I think the stock app will handle the MMS instead

moxie0 commented 11 years ago

@maabuss If you could post adb logcat output for the period when you receive an MMS message, that would help us figure out what is going wrong. You can either use the "adb" command-line interface, or on some devices install the app "aLogcat" from the Play Store. Thanks!

skyebend commented 11 years ago

Thanks for all the great work on this app!

I'm having the MMS download issue on HTC G2 T-Mobile. Android 2.3.4. I don't have a dataplan, so only use data when connected via WiFi. I believe MMS was working fine when I first installed TextSecure a few weeks ago, but am not absolutely sure. Now when receiving MMS messages it just displays "Connecting to MMS server..." And sometimes the application then crashes. Same message appears on reload.

Only system changes I am aware of is that I recently changed my passphrase.

Not sure what log segments to report, but these seems relevant. I can post more if you tell me what to look for. Let me know if anything else I can do to help debug.

This log chunk looks like it has a java exception:

I/ActivityManager( 1291): Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=org.thoughtcrime.securesms/.ConversationListActivity bnds=[245,231][355,349] } from pid 1375 W/ConversationListActivity(13178): onPrepareOptionsMenu... W/KeyCharacterMap(13178): No keyboard for id -1 W/KeyCharacterMap(13178): Using default keymap: /system/usr/keychars/qwerty.kcm.bin W/ConversationListActivity(13178): onResume called... W/ConversationListActivity(13178): Checking caching service... W/SMSSenderService(13178): Processing outgoing message: -1 W/KeyCachingService(13178): Incrementing activity count... W/DecryptingQueue(13178): Processing pending decrypts... W/ConversationListActivity(13178): onPrepareOptionsMenu... W/ConversationListActivity(13178): createConversationIfNecessary called V/RenderScript_jni( 1375): surfaceDestroyed D/dalvikvm(13178): GC_EXTERNAL_ALLOC freed 229K, 44% free 4015K/7111K, external 4315K/4614K, paused 69ms D/Launcher.AllApps3D( 1375): surfaceDestroyed D/Launcher.AllApps3D( 1375): set mMessageCallback null I/ActivityManager( 1291): Displayed org.thoughtcrime.securesms/.ConversationListActivity: +359ms D/dalvikvm( 1375): GC_EXPLICIT freed 59K, 58% free 3385K/7879K, external 6250K/7767K, paused 366ms I/Kineto::wifi( 1372): onReceive Enter V/Kineto::wifi( 1372): RSSI_CHANGED_ACTION newRssi: -67 I/Kineto::wifi( 1372): onReceive Exit W/ConversationListActivity(13178): Creating conversation: 22 I/ActivityManager( 1291): Starting: Intent { cmp=org.thoughtcrime.securesms/.ConversationActivity (has extras) } from pid 13178 W/ConversationListActivity(13178): Unregistering receiver... W/KeyCharacterMap(13178): No keyboard for id -1 W/KeyCharacterMap(13178): Using default keymap: /system/usr/keychars/qwerty.kcm.bin W/SmsDatabase(13178): setMessagesRead time: 1 W/MmsSmsDatabase(13178): Executing query: SELECT _id, body, read, type, address, subject, thread_id, normalized_date AS date, m_type, msg_box, transport_type FROM (SELECT DISTINCT date * 1 AS normalized_date, _id, body, read, thread_id, type, address, subject, date, NULL AS m_type, NULL AS msg_box, 'sms' AS transport_type FROM sms WHERE (read = 0) UNION ALL SELECT DISTINCT date * 1000 AS normalized_date, _id, NULL AS body, read, thread_id, NULL AS type, NULL AS address, NULL AS subject, date, m_type, msg_box, 'mms' AS transport_type FROM mms WHERE (read = 0) ORDER BY normalized_date ASC) W/KeyUtil (13178): Checking session... W/LocalKeyRecord(13178): Checking: 22-local W/KeyCachingService(13178): Incrementing activity count... W/MmsSmsDatabase(13178): Executing query: SELECT _id, body, type, address, subject, normalized_date AS date, m_type, msg_box, transport_type FROM (SELECT DISTINCT date * 1 AS normalized_date, _id, body, read, thread_id, type, address, subject, date, NULL AS m_type, NULL AS msg_box, 'sms' AS transport_type FROM sms WHERE (thread_id = 22) UNION ALL SELECT DISTINCT date * 1000 AS normalized_date, _id, NULL AS body, read, thread_id, NULL AS type, NULL AS address, NULL AS subject, date, m_type, msg_box, 'mms' AS transport_type FROM mms WHERE (thread_id = 22) ORDER BY normalized_date ASC) I/dalvikvm(13178): Jit: resizing JitTable from 4096 to 8192 D/dalvikvm(13178): GC_EXTERNAL_ALLOC freed 299K, 41% free 4222K/7111K, external 4274K/4942K, paused 45ms W/MmsDatabase(13178): Getting label for status: 3 W/MmsDatabase(13178): Getting label for status: 3 I/ActivityManager( 1291): Displayed org.thoughtcrime.securesms/.ConversationActivity: +575ms W/KeyCachingService(13178): Decrementing activity count... D/KIPC ( 1218): KIPC_SendMessage: len = 4, socket = 15 D/KIPC ( 1218): Sent 4 bytes D/KIPCapp ( 1372): doSocketRead returning 2 bytes D/KIPCapp ( 1372): Attempt to read 4 bytes D/KIPCapp ( 1372): calling recv(43) D/KIPCapp ( 1372): doSocketRead returning 4 bytes D/KIPCapp ( 1372): Issuing MsgInd callback, len = 4 E/KINETO ( 1372): KLOG0C3- UKCCQueuePost : Enter len =%d E/KINETO ( 1372): KLOG082- 01 00 09 02 00 00 00 00 E/KINETO ( 1372): D/KIPCapp ( 1372): READ FD = 43 D/KIPCapp ( 1372): calling recv(43) E/KINETO ( 1372): KLOG0C4- xInEnv: 0x324e18 --> 0x324e18, opcode=521 E/KINETO ( 1372): KLOG0C4- AsGanRrModeIndEncoder E/KINETO ( 1372): KLOG0C4- AsGanRrModeIndEncoder: rrmode 0 E/KINETO ( 1372): KLOG0C4- SendIpaGsmRRState E/KINETO ( 1372): KLOG0C4- SendIpcDataReq 0xa6 E/KINETO ( 1372): KLOG0C4- IPC_SEND 3331 E/KINETO ( 1372): KLOG0C3- GAN_OS_sendIpcMessage : Enter E/KINETO ( 1372): KLOG003- IPA_MSG_GSM_RR_STATE event E/KINETO ( 1372): KLOG0C4- XMK_SEND_ENV: id=218 recv=3 E/KINETO ( 1372): KLOG0C4- xmk_Send: 254 -> 3, id=218 E/KINETO ( 1372): KLOG0C4- snd: 254 recv: 3 sig: 218 prio: 100 E/KINETO ( 1372): KLOG0C4- NewState: Process 3 to State 254, Symbol 60 E/KINETO ( 1372): KLOG004- GSM RR State: 0 - UMA RR State: 3 I/Kineto::main( 1372): Kineto: WifiAppStatusCallback Enter ganMode: 80 D/dalvikvm( 1375): GC_EXPLICIT freed <1K, 58% free 3385K/7879K, external 6250K/7767K, paused 48ms W/KeyCharacterMap(13178): Can't open keycharmap file W/KeyCharacterMap(13178): Error loading keycharmap file '/system/usr/keychars/atmel-touchscreen.kcm.bin'. hw.keyboards.131074.devname='atmel-touchscreen' W/KeyCharacterMap(13178): Using default keymap: /system/usr/keychars/qwerty.kcm.bin W/ConversationListActivity(13178): onResume called... W/ConversationListActivity(13178): Checking caching service... W/KeyCachingService(13178): Incrementing activity count... W/DecryptingQueue(13178): Processing pending decrypts... W/ConversationListActivity(13178): onPrepareOptionsMenu... W/KeyCharacterMap(13178): No keyboard for id -1 W/KeyCharacterMap(13178): Using default keymap: /system/usr/keychars/qwerty.kcm.bin W/ConversationListActivity(13178): createConversationIfNecessary called W/KeyCachingService(13178): Decrementing activity count... W/ConversationListActivity(13178): Creating conversation: 8 I/ActivityManager( 1291): Starting: Intent { cmp=org.thoughtcrime.securesms/.ConversationActivity (has extras) } from pid 13178 W/ConversationListActivity(13178): Unregistering receiver... W/SmsDatabase(13178): setMessagesRead time: 1 W/MmsSmsDatabase(13178): Executing query: SELECT _id, body, read, type, address, subject, thread_id, normalized_date AS date, m_type, msg_box, transport_type FROM (SELECT DISTINCT date * 1 AS normalized_date, _id, body, read, thread_id, type, address, subject, date, NULL AS m_type, NULL AS msg_box, 'sms' AS transport_type FROM sms WHERE (read = 0) UNION ALL SELECT DISTINCT date * 1000 AS normalized_date, _id, NULL AS body, read, thread_id, NULL AS type, NULL AS address, NULL AS subject, date, m_type, msg_box, 'mms' AS transport_type FROM mms WHERE (read = 0) ORDER BY normalized_date ASC) W/KeyUtil (13178): Checking session... W/LocalKeyRecord(13178): Checking: 8-local W/KeyCachingService(13178): Incrementing activity count... W/MmsSmsDatabase(13178): Executing query: SELECT _id, body, type, address, subject, normalized_date AS date, m_type, msg_box, transport_type FROM (SELECT DISTINCT date * 1 AS normalized_date, _id, body, read, thread_id, type, address, subject, date, NULL AS m_type, NULL AS msg_box, 'sms' AS transport_type FROM sms WHERE (thread_id = 8) UNION ALL SELECT DISTINCT date * 1000 AS normalized_date, _id, NULL AS body, read, thread_id, NULL AS type, NULL AS address, NULL AS subject, date, m_type, msg_box, 'mms' AS transport_type FROM mms WHERE (thread_id = 8) ORDER BY normalized_date ASC) D/dalvikvm(13178): GC_EXTERNAL_ALLOC freed 511K, 41% free 4455K/7431K, external 5668K/6695K, paused 51ms W/MmsDatabase(13178): Getting label for status: 3 W/MmsDatabase(13178): Getting label for status: 3 I/ActivityManager( 1291): Displayed org.thoughtcrime.securesms/.ConversationActivity: +547ms W/KeyCachingService(13178): Decrementing activity count... W/MmsDownloadClickListener(13178): Content location: http://10.165.193.17/mms/wapenc?location=15034735784_3bcunc&rid=152 W/MmsService(13178): Got network info: NetworkInfo: type: mobile_mms[HSDPA], state: DISCONNECTED/DISCONNECTED, reason: dataDisabled, extra: epc.tmobile.com, roaming: false, failover: false, isAvailable: true I/TelephonyRegistry( 1291): notifyDataConnection: state=0 isDataConnectivityPossible=true reason=apnSwitched interfaceName=null networkType=8 I/TelephonyRegistry( 1291): notifyDataConnection: state=1 isDataConnectivityPossible=true reason=apnSwitched interfaceName=null networkType=8 W/SmsDatabase(13178): setMessagesRead time: 1 W/MmsService(13178): Dispatching connectivity change... W/MmsService(13178): Dispatched... W/MmsDatabase(13178): Getting label for status: 3 W/MmsDatabase(13178): Getting label for status: 3 W/MmsService(13178): NetworkInfo: NetworkInfo: type: mobile_mms[HSDPA], state: CONNECTING/CONNECTING, reason: apnSwitched, extra: epc.tmobile.com, roaming: false, failover: false, isAvailable: true W/MmsService(13178): Got network info: NetworkInfo: type: mobile_mms[HSDPA], state: CONNECTING/CONNECTING, reason: apnSwitched, extra: epc.tmobile.com, roaming: false, failover: false, isAvailable: true I/TelephonyRegistry( 1291): notifyDataConnection: state=2 isDataConnectivityPossible=true reason=apnSwitched interfaceName=rmnet0 networkType=8 D/Tethering( 1291): MasterInitialState.processMessage what=3 W/MmsService(13178): Dispatching connectivity change... W/MmsService(13178): Dispatched... W/MmsService(13178): NetworkInfo: NetworkInfo: type: mobile_mms[HSDPA], state: CONNECTED/CONNECTED, reason: apnSwitched, extra: epc.tmobile.com, roaming: false, failover: false, isAvailable: true W/MmsDownloadService(13178): Handling MMS download continuation... I/MediaUploader(13486): No need to wake up D/Smack ( 1403): [XMPPConn] close connection, notifyClosed=false E/DatabaseUtils( 1370): Writing exception to parcel E/DatabaseUtils( 1370): android.database.sqlite.SQLiteException: bind or column index out of range: handle 0x3cae40 E/DatabaseUtils( 1370): at android.database.sqlite.SQLiteProgram.native_bind_string(Native Method) E/DatabaseUtils( 1370): at android.database.sqlite.SQLiteProgram.bindString(SQLiteProgram.java:244) E/DatabaseUtils( 1370): at android.database.sqlite.SQLiteQuery.bindString(SQLiteQuery.java:185) E/DatabaseUtils( 1370): at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:48) E/DatabaseUtils( 1370): at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1356) E/DatabaseUtils( 1370): at android.database.sqlite.SQLiteQueryBuilder.query(SQLiteQueryBuilder.java:330) E/DatabaseUtils( 1370): at android.database.sqlite.SQLiteQueryBuilder.query(SQLiteQueryBuilder.java:280) E/DatabaseUtils( 1370): at com.android.providers.telephony.TelephonyProvider.query(TelephonyProvider.java:383) E/DatabaseUtils( 1370): at android.content.ContentProvider$Transport.bulkQuery(ContentProvider.java:174) E/DatabaseUtils( 1370): at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:111) E/DatabaseUtils( 1370): at android.os.Binder.execTransact(Binder.java:320) E/DatabaseUtils( 1370): at dalvik.system.NativeStart.run(Native Method) W/dalvikvm(13178): threadid=9: thread exiting with uncaught exception (group=0x4001d570) E/AndroidRuntime(13178): FATAL EXCEPTION: SendReceveService-WorkerThread E/AndroidRuntime(13178): android.database.sqlite.SQLiteException: bind or column index out of range: handle 0x3cae40 E/AndroidRuntime(13178): at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:158) E/AndroidRuntime(13178): at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:114) E/AndroidRuntime(13178): at android.content.ContentProviderProxy.bulkQueryInternal(ContentProviderNative.java:330) E/AndroidRuntime(13178): at android.content.ContentProviderProxy.query(ContentProviderNative.java:366) E/AndroidRuntime(13178): at android.content.ContentResolver.query(ContentResolver.java:262) E/AndroidRuntime(13178): at org.thoughtcrime.securesms.database.MmsDatabase.getCarrierMmsInformation(MmsDatabase.java:435) E/AndroidRuntime(13178): at org.thoughtcrime.securesms.mms.MmsCommunication.getMmsConnectionParameters(MmsCommunication.java:55) E/AndroidRuntime(13178): at org.thoughtcrime.securesms.mms.MmsDownloadHelper.retrieveMms(MmsDownloadHelper.java:56) E/AndroidRuntime(13178): at org.thoughtcrime.securesms.service.MmsDownloader.handleDownloadMmsContinued(MmsDownloader.java:70) E/AndroidRuntime(13178): at org.thoughtcrime.securesms.service.MmsDownloader.handleConnectivityChange(MmsDownloader.java:121) E/AndroidRuntime(13178): at org.thoughtcrime.securesms.service.MmsDownloader.process(MmsDownloader.java:135) E/AndroidRuntime(13178): at org.thoughtcrime.securesms.service.SendReceiveService$SendReceiveWorkItem.run(SendReceiveService.java:198) E/AndroidRuntime(13178): at org.thoughtcrime.securesms.util.WorkerThread.run(WorkerThread.java:46) W/ActivityManager( 1291): Force finishing activity org.thoughtcrime.securesms/.ConversationActivity E/Listen (14301): wifiReceiver onReceive W/ConversationListActivity(13178): onResume called... W/ConversationListActivity(13178): Checking caching service... I/ReportAgentReceiver(11475): [onReceive] android.net.conn.CONNECTIVITY_CHANGE V/ReportAgentReceiver(11475): Recv Intent: Intent { act=android.net.conn.CONNECTIVITY_CHANGE flg=0x10000000 cmp=com.htc.reportagent/.ReportAgentReceiver (has extras) } W/KeyCachingService(13178): Incrementing activity count... W/DecryptingQueue(13178): Processing pending decrypts... W/ConversationListActivity(13178): onPrepareOptionsMenu... W/KeyCharacterMap(13178): No keyboard for id -1 W/KeyCharacterMap(13178): Using default keymap: /system/usr/keychars/qwerty.kcm.bin W/ConversationListActivity(13178): createConversationIfNecessary called

I/ActivityManager( 1291): Start proc org.thoughtcrime.securesms for service org.thoughtcrime.securesms/.service.SendReceiveService: pid=14573 uid=10098 gids={3003, 1015} I/ActivityThread(14573): Pub org.thoughtcrime.provider.securesms: org.thoughtcrime.securesms.providers.PartProvider W/SendReceiveService(14573): SendReceive service got master secret: null W/PartProvider(14573): Got master secret: null D/KIPC ( 1218): KIPC_SendMessage: len = 4, socket = 15 D/KIPC ( 1218): Sent 4 bytes D/KIPCapp ( 1372): doSocketRead returning 2 bytes D/KIPCapp ( 1372): Attempt to read 4 bytes D/KIPCapp ( 1372): calling recv(43) D/KIPCapp ( 1372): doSocketRead returning 4 bytes D/KIPCapp ( 1372): Issuing MsgInd callback, len = 4 E/KINETO ( 1372): KLOG0C3- UKCCQueuePost : Enter len =%d E/KINETO ( 1372): KLOG082- 01 00 09 02 00 00 00 00 E/KINETO ( 1372): D/KIPCapp ( 1372): READ FD = 43 D/KIPCapp ( 1372): calling recv(43) D/dalvikvm( 1403): GC_CONCURRENT freed 1085K, 43% free 4825K/8455K, external 1625K/2137K, paused 3ms+6ms E/KINETO ( 1372): KLOG0C4- xInEnv: 0x324e18 --> 0x324e18, opcode=521 E/KINETO ( 1372): KLOG0C4- AsGanRrModeIndEncoder E/KINETO ( 1372): KLOG0C4- AsGanRrModeIndEncoder: rrmode 0 E/KINETO ( 1372): KLOG0C4- SendIpaGsmRRState E/KINETO ( 1372): KLOG0C4- SendIpcDataReq 0xa6 E/KINETO ( 1372): KLOG0C4- IPC_SEND 3331 E/KINETO ( 1372): KLOG0C3- GAN_OS_sendIpcMessage : Enter E/KINETO ( 1372): KLOG003- IPA_MSG_GSM_RR_STATE event E/KINETO ( 1372): KLOG0C4- XMK_SEND_ENV: id=218 recv=3 E/KINETO ( 1372): KLOG0C4- xmk_Send: 254 -> 3, id=218 E/KINETO ( 1372): KLOG0C4- snd: 254 recv: 3 sig: 218 prio: 100 E/KINETO ( 1372): KLOG0C4- NewState: Process 3 to State 254, Symbol 60 E/KINETO ( 1372): KLOG004- GSM RR State: 0 - UMA RR State: 3 I/Kineto::main( 1372): Kineto: WifiAppStatusCallback Enter ganMode: 80 I/Kineto::wifi( 1372): onReceive Enter V/Kineto::wifi( 1372): RSSI_CHANGED_ACTION newRssi: -74 I/Kineto::wifi( 1372): onReceive Exit I/Kineto::wifi( 1372): onReceive Enter V/Kineto::wifi( 1372): RSSI_CHANGED_ACTION newRssi: -70 I/Kineto::wifi( 1372): onReceive Exit W/KeyCharacterMap(14541): Can't open keycharmap file W/KeyCharacterMap(14541): Error loading keycharmap file '/system/usr/keychars/atmel-touchscreen.kcm.bin'. hw.keyboards.131074.devname='atmel-touchscreen'
moxie0 commented 11 years ago

Thanks for the log @skyebend . Your problem is also a result of a device with an unqueryable APN database. We've fixed that particular bug in 54fad30f9f19c68e8e42ae3f85f76dd7f1113a3f, so the next release will include the fix.

thoughtbox commented 11 years ago

Hm; I just this morning updated to the latest version (and since running CyanogenMod 10.1 / 4.2.1 I have had issues with receiving MMS).

Just tried to send an MMS after manually entering the APN settings within TextSecure. TextSecure crashed.

Now trying to open TextSecure again, after I enter the passphrase, it crashes again. The logs seem to be pretty clear why (missing permission):

I/ActivityManager( 2207): START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 pkg=org.thoughtcrime.securesms cmp=org.thoughtcrime.securesms/.ConversationListActivity bnds=[144,508][255,631]} from pid 2740 D/dalvikvm(12050): GC_CONCURRENT freed 209K, 15% free 2590K/3040K, paused 17ms+2ms, total 86ms D/dalvikvm(12050): GC_FOR_ALLOC freed 19K, 14% free 2675K/3096K, paused 14ms, total 15ms I/dalvikvm-heap(12050): Grow heap (frag case) to 3.465MB for 635812-byte allocation D/dalvikvm(12050): GC_FOR_ALLOC freed 2K, 12% free 3294K/3720K, paused 24ms, total 24ms D/dalvikvm(12050): GC_CONCURRENT freed 6K, 11% free 3344K/3720K, paused 3ms+9ms, total 37ms W/ConversationListActivity(12050): onResume called... W/ConversationListActivity(12050): Checking caching service... W/KeyCachingService(12050): Incrementing activity count... W/ConversationListActivity(12050): createConversationIfNecessary called I/ActivityManager( 2207): START u0 {cmp=org.thoughtcrime.securesms/.PassphrasePromptActivity} from pid 12050 D/libEGL (12050): loaded /system/lib/egl/libEGL_mali.so D/libEGL (12050): loaded /system/lib/egl/libGLESv1_CM_mali.so D/libEGL (12050): loaded /system/lib/egl/libGLESv2_mali.so D/OpenGLRenderer(12050): Enabling debug mode 0 W/ConversationListActivity(12050): Unregistering receiver... W/ConversationListActivity(12050): onPrepareOptionsMenu... W/ConversationListActivity(12050): onPrepareOptionsMenu... D/dalvikvm( 2207): GC_CONCURRENT freed 1899K, 25% free 16261K/21584K, paused 21ms+9ms, total 231ms I/ActivityManager( 2207): Displayed org.thoughtcrime.securesms/.ConversationListActivity: +645ms D/dalvikvm(12050): GC_CONCURRENT freed 139K, 10% free 3642K/4036K, paused 2ms+3ms, total 42ms I/ActivityManager( 2207): Displayed org.thoughtcrime.securesms/.PassphrasePromptActivity: +378ms D/dalvikvm( 2586): GC_CONCURRENT freed 2579K, 25% free 12019K/15888K, paused 3ms+6ms, total 46ms D/dalvikvm( 2586): WAIT_FOR_CONCURRENT_GC blocked 40ms D/dalvikvm( 2712): GC_FOR_ALLOC freed 1304K, 30% free 4325K/6160K, paused 58ms, total 58ms D/dalvikvm( 2712): GC_CONCURRENT freed 27K, 21% free 4926K/6160K, paused 4ms+11ms, total 51ms W/RecipientProvider(12050): Cache miss [ASYNC]! W/RecipientProvider(12050): Cache miss [ASYNC]! W/RecipientProvider(12050): Cache miss [ASYNC]! W/RecipientProvider(12050): Cache miss [ASYNC]! D/dalvikvm(12050): GC_CONCURRENT freed 131K, 9% free 3971K/4360K, paused 3ms+3ms, total 24ms W/service (12050): Broadcasting new secret... D/dalvikvm(12050): GC_EXPLICIT freed 203K, 11% free 3998K/4460K, paused 3ms+3ms, total 44ms W/SurfaceFlinger( 1861): FB is protected: PERMISSION_DENIED W/WindowManager( 2207): Failure taking screenshot for (246x410) to layer 21060 W/SendReceiveService(12050): Got a MasterSecret broadcast... W/PartProvider(12050): Got master secret: org.thoughtcrime.securesms.crypto.MasterSecret@411a40c0 W/SendReceiveService(12050): Got a MasterSecret broadcast... W/SendReceiveService(12050): SendReceive service got master secret: org.thoughtcrime.securesms.crypto.MasterSecret@411912d0 W/SMSSenderService(12050): Processing outgoing message: -1 W/ConversationListActivity(12050): onResume called... W/ConversationListActivity(12050): Checking caching service... W/EncryptingPartDatabase(12050): Getting part at: /data/data/org.thoughtcrime.securesms/app_parts/part1269300858.mms W/DecryptingQueue(12050): Processing pending decrypts... W/ConversationListActivity(12050): createConversationIfNecessary called W/ConversationListActivity(12050): onPrepareOptionsMenu... I/dalvikvm(12050): Total arena pages for JIT: 11 I/dalvikvm(12050): Total arena pages for JIT: 12 I/dalvikvm(12050): Total arena pages for JIT: 13 I/dalvikvm(12050): Total arena pages for JIT: 14 I/dalvikvm(12050): Total arena pages for JIT: 15 I/dalvikvm(12050): Total arena pages for JIT: 16 I/dalvikvm(12050): Total arena pages for JIT: 17 W/MmsService(12050): Got network info: NetworkInfo: type: mobile_mms[HSDPA], state: DISCONNECTED/DISCONNECTED, reason: dataDisabled, extra: telenor, roaming: false, failover: false, isAvailable: true D/ConnectivityService( 2207): startUsingNetworkFeature reconnecting to 0: enableMMS D/ConnectivityService( 2207): ConnectivityChange for mobile_mms: CONNECTED/CONNECTED W/MmsService(12050): Dispatching connectivity change... W/MmsService(12050): Dispatched... W/NetworkPolicy( 2207): shared quota unsupported; generating rule for each iface I/dalvikvm(12050): Total arena pages for JIT: 18 W/MmsService(12050): NetworkInfo: NetworkInfo: type: mobile_mms[HSDPA], state: CONNECTED/CONNECTED, reason: dataEnabled, extra: telenor, roaming: false, failover: false, isAvailable: true W/MmsSenderService(12050): Handling MMS send continuation... W/PduComposer(12050): Making send request... W/PduComposer(12050): Making message body... W/PduComposer(12050): Returning: 8045 bytes... W/MmsSender(12050): Sending MMS of length: 8045 E/DatabaseUtils( 2731): Writing exception to parcel E/DatabaseUtils( 2731): java.lang.SecurityException: No permission to write APN settings: Neither user 10092 nor current process has android.permission.WRITE_APN_SETTINGS. E/DatabaseUtils( 2731): at android.app.ContextImpl.enforce(ContextImpl.java:1572) E/DatabaseUtils( 2731): at android.app.ContextImpl.enforceCallingOrSelfPermission(ContextImpl.java:1601) E/DatabaseUtils( 2731): at com.android.providers.telephony.TelephonyProvider.checkPermission(TelephonyProvider.java:768) E/DatabaseUtils( 2731): at com.android.providers.telephony.TelephonyProvider.query(TelephonyProvider.java:474) E/DatabaseUtils( 2731): at android.content.ContentProvider.query(ContentProvider.java:652) E/DatabaseUtils( 2731): at android.content.ContentProvider$Transport.query(ContentProvider.java:189) E/DatabaseUtils( 2731): at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:113) E/DatabaseUtils( 2731): at android.os.Binder.execTransact(Binder.java:351) E/DatabaseUtils( 2731): at dalvik.system.NativeStart.run(Native Method) W/dalvikvm(12050): threadid=11: thread exiting with uncaught exception (group=0x40d71930) E/AndroidRuntime(12050): FATAL EXCEPTION: SendReceveService-WorkerThread E/AndroidRuntime(12050): java.lang.SecurityException: No permission to write APN settings: Neither user 10092 nor current process has android.permission.WRITE_APN_SETTINGS. E/AndroidRuntime(12050): at android.os.Parcel.readException(Parcel.java:1425) E/AndroidRuntime(12050): at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:185) E/AndroidRuntime(12050): at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:137) E/AndroidRuntime(12050): at android.content.ContentProviderProxy.query(ContentProviderNative.java:366) E/AndroidRuntime(12050): at android.content.ContentResolver.query(ContentResolver.java:372) E/AndroidRuntime(12050): at android.content.ContentResolver.query(ContentResolver.java:315) E/AndroidRuntime(12050): at org.thoughtcrime.securesms.database.MmsDatabase.getCarrierMmsInformation(MmsDatabase.java:435) E/AndroidRuntime(12050): at org.thoughtcrime.securesms.mms.MmsCommunication.getMmsConnectionParameters(MmsCommunication.java:80) E/AndroidRuntime(12050): at org.thoughtcrime.securesms.mms.MmsSendHelper.sendMms(MmsSendHelper.java:57) E/AndroidRuntime(12050): at org.thoughtcrime.securesms.service.MmsSender.sendMms(MmsSender.java:142) E/AndroidRuntime(12050): at org.thoughtcrime.securesms.service.MmsSender.handleSendMmsContinued(MmsSender.java:189) E/AndroidRuntime(12050): at org.thoughtcrime.securesms.service.MmsSender.handleConnectivityChange(MmsSender.java:89) E/AndroidRuntime(12050): at org.thoughtcrime.securesms.service.MmsSender.process(MmsSender.java:81) E/AndroidRuntime(12050): at org.thoughtcrime.securesms.service.SendReceiveService$SendReceiveWorkItem.run(SendReceiveService.java:197) E/AndroidRuntime(12050): at org.thoughtcrime.securesms.util.WorkerThread.run(WorkerThread.java:46) W/ActivityManager( 2207): Force finishing activity org.thoughtcrime.securesms/.ConversationListActivity D/dalvikvm(12050): GC_CONCURRENT freed 339K, 13% free 4231K/4812K, paused 5ms+12ms, total 64ms W/SurfaceFlinger( 1861): FB is protected: PERMISSION_DENIED W/WindowManager( 2207): Failure taking screenshot for (246x410) to layer 21055 W/ConversationListActivity(12050): Unregistering receiver... W/SecureSMS(12050): onDestroy... W/KeyCachingService(12050): Decrementing activity count... I/Process (12050): Sending signal. PID: 12050 SIG: 9 I/ActivityManager( 2207): Process org.thoughtcrime.securesms (pid 12050) has died.

Of course, android.permission.WRITE_APN_SETTINGS is not available to applications not signed with a manufacturer key (ICS onwards, it seems). So adding this permission does not fix anything unless you have a rooted phone and stick it in /system/app (can confirm this works).

Quite a contentious issue, from what I can see: http://code.google.com/p/android/issues/detail?id=24227

Tor

moxie0 commented 11 years ago

What's even more contentious is that we're never even trying to write to the DB! The stack trace is clearly a query, and yet for some reason your device is trying to enforce WRITE_APN. This is probably an OEM mod that's a defensive mechanism against anyone accessing it for some reason. I'll have to catch the exception and fall back to the user-configured APN setting.

moxie0 commented 11 years ago

68c29f283d6d3c9664852e2ae672b93fe409fa2f

thoughtbox commented 11 years ago

Can confirm that the patch prevents TS from crashing, but on my device, MMS send/receive now does not work (installed as a non-system app).

W/PduComposer( 5859): Making send request... W/PduComposer( 5859): Making message body... W/PduComposer( 5859): Returning: 26796 bytes... W/MmsSender( 5859): Sending MMS of length: 26796 E/DatabaseUtils( 3114): Writing exception to parcel E/DatabaseUtils( 3114): java.lang.SecurityException: No permission to write APN settings: Neither user 10092 nor current process has android.permission.WRITE_APN_SETTINGS. E/DatabaseUtils( 3114): at android.app.ContextImpl.enforce(ContextImpl.java:1572) E/DatabaseUtils( 3114): at android.app.ContextImpl.enforceCallingOrSelfPermission(ContextImpl.java:1601) E/DatabaseUtils( 3114): at com.android.providers.telephony.TelephonyProvider.checkPermission(TelephonyProvider.java:768) E/DatabaseUtils( 3114): at com.android.providers.telephony.TelephonyProvider.query(TelephonyProvider.java:474) E/DatabaseUtils( 3114): at android.content.ContentProvider.query(ContentProvider.java:652) E/DatabaseUtils( 3114): at android.content.ContentProvider$Transport.query(ContentProvider.java:189) E/DatabaseUtils( 3114): at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:113) E/DatabaseUtils( 3114): at android.os.Binder.execTransact(Binder.java:351) E/DatabaseUtils( 3114): at dalvik.system.NativeStart.run(Native Method) W/MmsCommunication( 5859): java.lang.SecurityException: No permission to write APN settings: Neither user 10092 nor current process has android.permission.WRITE_APN_SETTINGS. W/MmsCommunication( 5859): at android.os.Parcel.readException(Parcel.java:1425) W/MmsCommunication( 5859): at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:185) W/MmsCommunication( 5859): at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:137) W/MmsCommunication( 5859): at android.content.ContentProviderProxy.query(ContentProviderNative.java:366) W/MmsCommunication( 5859): at android.content.ContentResolver.query(ContentResolver.java:372) W/MmsCommunication( 5859): at android.content.ContentResolver.query(ContentResolver.java:315) W/MmsCommunication( 5859): at org.thoughtcrime.securesms.database.MmsDatabase.getCarrierMmsInformation(MmsDatabase.java:435) W/MmsCommunication( 5859): at org.thoughtcrime.securesms.mms.MmsCommunication.getMmsConnectionParameters(MmsCommunication.java:80) W/MmsCommunication( 5859): at org.thoughtcrime.securesms.mms.MmsSendHelper.sendMms(MmsSendHelper.java:57) W/MmsCommunication( 5859): at org.thoughtcrime.securesms.service.MmsSender.sendMms(MmsSender.java:142) W/MmsCommunication( 5859): at org.thoughtcrime.securesms.service.MmsSender.handleSendMmsContinued(MmsSender.java:189) W/MmsCommunication( 5859): at org.thoughtcrime.securesms.service.MmsSender.handleConnectivityChange(MmsSender.java:89) W/MmsCommunication( 5859): at org.thoughtcrime.securesms.service.MmsSender.process(MmsSender.java:81) W/MmsCommunication( 5859): at org.thoughtcrime.securesms.service.SendReceiveService$SendReceiveWorkItem.run(SendReceiveService.java:197) W/MmsCommunication( 5859): at org.thoughtcrime.securesms.util.WorkerThread.run(WorkerThread.java:46) E/Trace ( 6064): error opening trace file: No such file or directory (2) I/UpdateCheckReceiver( 6064): Got connectivity change, has connection: true I/UpdateCheckReceiver( 6064): Scheduling future, repeating update checks.

moxie0 commented 11 years ago

@thoughtbox have you specified your MMSC in TextSecure application settings?

thoughtbox commented 11 years ago

Yes.

unknown4x commented 11 years ago

Have the same exact issue as thoughtbox. Never had mms problems (send / recv) till todays 0.8.3 update which introduced configurable apns. After that sending mms crashes textsecure with the same dump from above. I did not change / configure anything / make use of the new functionality. Updating to 0.8.4 fixed that but i still cannot send mms. It now gives the normal "error sending message".

moxie0 commented 11 years ago

@unknown4x can you post logcat output?

moxie0 commented 11 years ago

@thoughtbox what value are you specifying for your MMC in TextSecure settings?

thoughtbox commented 11 years ago

For MMSC i put in http://mmsc (like the system APN setting), for proxy, I've tried http://10.10.10.11:8080/ as well as 10.10.10.11:8080 (the system APN setting uses both host and port, however it does not specify this as a URL but host and port in two separate fields, so I'm guessing here).

moxie0 commented 11 years ago

@thoughtbox I think the proxy port is your problem. I've added an option for setting the port in ead97953e896295b48a6259eef096c6432f9ffbe . Could you test whether that solves your problems?

thoughtbox commented 11 years ago

I shall endeavour to do that and get back to you., Thanks!

thoughtbox commented 11 years ago

Can confirm this fix is good. Thank you.

One comment; can we (you) change the text from "Enable local APNs" to "Override local APN" ?

Tor

moxie0 commented 11 years ago

Thanks for the confirmation.

As for the language, the idea was that with these settings we're "locally" configuring the APN. We could perhaps change it to "Override system APN," but we're not actually overriding it. We're falling back to this if there are problems retrieving the system APN.

thoughtbox commented 11 years ago

I see your point, but. How about, as you say, "Enable Fallback MMSC Values" or Configuration/Settings?

After all, we are not defining any access point names, just values for the mms centre?

moxie0 commented 11 years ago

Sure, fair enough: 25f75cb3d22270a6ddbaeb623e22d48488760d21

albell commented 11 years ago

I had this issue months ago, you pushed a fix which seemed to work, and now it's happening again. Cannot receive MMS pix. I'm using a Virgin Mobile phone, an HTC EVO 4G, (runs on the Sprint network). Here's a logcat:

D/DATA    (  570): [PhoneNotifier] [DPN] state=CONNECTED possible=true reason=dataEnabled apn= type=mms lp=<<InterfaceName: rmnet0 LinkAddresses: [21.14.255.33/32,] Routes: [0.0.0.0/0 -> 21.14.255.34,] DnsAddresses: [68.29.9.7,68.29.1.7,] >> tech=6 roaming=false errorCause=0 carrier=null D/DATA    (  570): [PhoneNotifier] update DcParam of mms(1) I/TelephonyRegistry(  232): notifyDataConnection: state=2 isDataConnectivityPossible=true reason='dataEnabled' apn='' apnType=mms networkType=6 roaming=false errorCause=0 D/PhoneStatusBarPolicy(  495): onDataConnectionStateChanged , state= 2, networkType= 6, mPhoneState = 0 D/HtcCdmaStatusBar(  495): return sDataNetType_3g_cdma D/PhoneStatusBarPolicy(  495): isCdma():true mSimState=UNKNOWN gprsState=0 mDataState=2 dataActivity=0 D/PhoneStatusBarPolicy(  495): hasService:true mPhone.htcModemLinkOn:false D/PhoneStatusBarPolicy(  495): hasService()=true ,mDataState=2 ,mPhone.htcModemLinkOn()=false ,mDataActivity=0 D/PhoneStatusBarPolicy(  495): slotType[0]=NV D/PhoneStatusBarPolicy(  495): mDataIconVisible = false, set visibility of 3g icon = false D/PhoneStatusBarPolicy(  495): mDataIconVisible != visible D/MobileDataStateTracker(  232): mms: mMobileDataState=CONNECTING mTeardownRequested=false got [AnyDataCSC] : type=mms state=CONNECTED reason=dataEnabled apn= roaming=false unavailable=false NetworkType=6 NetworkTypeName=CDMA - EvDo rev. A entitleError=0 apnCarrier=null D/MobileDataStateTracker(  232): mms: setDetailed state, old=CONNECTING and new state=CONNECTED reason=dataEnabled extra= mEntitleError=0 D/ConnectivityService(  232): [embedded] ConnectivityChange for mobile_mms: CONNECTED/CONNECTED, default=1 D/ConnectivityService(  232): ConnectivityChange for mobile_mms: CONNECTED/CONNECTED D/ConnectivityService(  232): handleConnect() networkinfo=NetworkInfo: type: mobile_mms[CDMA - EvDo rev. A], state: CONNECTED/CONNECTED, reason: dataEnabled, extra: , roaming: false, failover: false, isAvailable: true, isIpv4Connected: true, isIpv6Connected: false, isFailover=false D/ConnectivityService(  232): [Dual mode]:handleConnectDualMode: Normal Mode handler D/MobileDataStateTracker(  232): mms: setTeardownRequested(false) D/ConnectivityService(  232): net.tcp.buffersize.evdo not found in system properties. Using defaults D/ConnectivityService(  232): Setting TCP values: [4096,87380,110208,4096,16384,110208] which comes from [net.tcp.buffersize.default] D/DATA    (  570): [PhoneNotifier] [DPN] state=DISCONNECTED possible=true reason=dataEnabled apn= type=default lp=<> tech=6 roaming=false errorCause=0 carrier=null D/DATA    (  570): [PhoneNotifier] compareLinkProperty linkProperties = null ,return true D/DATA    (  570): [PhoneNotifier] HtcDupNotifyDcParam: the same notification, ignore D/ConnectivityService(  232): Adding 21.14.255.34/32 -> 0.0.0.0 for interface rmnet0 I/ipd     (  122): --- IP CMD I/ipd     (  122): +++ IP CMD: /system/bin/ip -f inet ro flush table hipri D/ConnectivityService(  232): Adding 0.0.0.0/0 -> 21.14.255.34 for interface rmnet0 D/ConnectivityService(  232): Removing 0.0.0.0/0 -> 21.14.255.34 for interface rmnet0 D/ConnectivityService(  232): Adding 21.14.255.34/32 -> 0.0.0.0 for interface rmnet0 D/ConnectivityService(  232): Adding 68.29.9.7/32 -> 21.14.255.34 for interface rmnet0 D/ConnectivityService(  232): Adding 21.14.255.34/32 -> 0.0.0.0 for interface rmnet0 D/ConnectivityService(  232): Adding 68.29.1.7/32 -> 21.14.255.34 for interface rmnet0 D/ConnectivityService(  232): resetting DNS cache for rmnet0 D/ConnectivityService(  232): sendStickyBroadcast: action=android.net.conn.CONNECTIVITY_CHANGE_IMMEDIATE I/ipd     (  122): --- IP CMD I/ipd     (  122): +++ IP CMD: /system/bin/ip -f inet ro add 21.14.255.32/30 dev rmnet0 src 21.14.255.33 table hipri D/ConnectivityService(  232): sendStickyBroadcastDelayed: delayMs=3000, action=android.net.conn.CONNECTIVITY_CHANGE W/NetworkStats(  232): dropping UID delta from unknown iface: iface=rmnet0 uid=0 set=DEFAULT tag=0x0 rxBytes=612 rxPackets=2 txBytes=76 txPackets=1 operations=0 D/MP-Decision(  294): UP Nw:2.700000 Tw:180 rq:18.000000 seq:198 I/ipd     (  122): --- IP CMD I/ipd     (  122): +++ IP CMD: /system/bin/ip -f inet ro add default via 21.14.255.34 dev rmnet0 table hipri I/ipd     (  122): --- IP CMD I/ipd     (  122): +++ IP CMD: /system/bin/ip -f inet ru add from all to 68.29.9.7 table hipri prio 1710 I/ipd     (  122): --- IP CMD I/ipd     (  122): +++ IP CMD: /system/bin/ip -f inet ru add from all to 68.29.1.7 table hipri prio 1720 I/ipd     (  122): --- IP CMD I/ipd     (  122): +++ IP CMD: /system/bin/ip -f inet ro flush table gprs I/ipd     (  122): --- IP CMD I/ipd     (  122): +++ IP CMD: /system/bin/ip -f inet ro add 21.14.255.32/30 dev rmnet0 src 21.14.255.33 table gprs I/ipd     (  122): --- IP CMD I/ipd     (  122): +++ IP CMD: /system/bin/ip -f inet ro add default via 21.14.255.34 dev rmnet0 table gprs I/ipd     (  122): --- IP CMD I/ipd     (  122): +++ IP CMD: /system/bin/ip -f inet ru add from all to all table gprs prio 3300 I/ipd     (  122): --- IP CMD D/dalvikvm(  232): GC_CONCURRENT freed 1938K, 40% free 11586K/19043K, paused 4ms+12ms D/NetworkPolicy(  232): applying policy NetworkPolicy[NetworkTemplate: matchRule=MOBILE_ALL, subscriberId=valid]: cycleDay=5, warningBytes=2147483648, limitBytes=-1, lastSnooze=-1 to ifaces [rmnet0] D/ConnectivityService(  232): onMeteredIfacesChanged(ifaces=[]) D/MP-Decision(  294): DOWN Ns:2.100000 Ts:270 rq:0.000000 seq:298 (Up time:394) D/PhoneStatusBarPolicy(  495): ServiceState ss: 0 D/PhoneStatusBarPolicy(  495): @@ iconIndex=1 V/PhoneStatusBarPolicy(  495): cdmaLevel:5;max:6 D/PhoneStatusBarPolicy(  495): iconLevel:5 D/PhoneStatusBarPolicy(  495): ServiceState ss: 0 D/PhoneStatusBarPolicy(  495): @@ iconIndex=1 V/PhoneStatusBarPolicy(  495): cdmaLevel:4;max:6 D/PhoneStatusBarPolicy(  495): iconLevel:4 D/PhoneStatusBarPolicy(  495): isCdma():true mSimState=UNKNOWN gprsState=0 mDataState=2 dataActivity=2 D/PhoneStatusBarPolicy(  495): hasService:true mPhone.htcModemLinkOn:false D/PhoneStatusBarPolicy(  495): hasService()=true ,mDataState=2 ,mPhone.htcModemLinkOn()=false ,mDataActivity=2 D/PhoneStatusBarPolicy(  495): slotType[0]=NV D/WifiStateMachine(  232): fetchRssiAndLinkSpeedNative send RSSIChange intent, newSignalLevel =3mLastSignalLevel = 2 D/PhoneStatusBarPolicy(  495): ServiceState ss: 0 D/PhoneStatusBarPolicy(  495): @@ iconIndex=1 V/PhoneStatusBarPolicy(  495): cdmaLevel:6;max:6 D/PhoneStatusBarPolicy(  495): iconLevel:6 D/PhoneStatusBarPolicy(  495): isCdma():true mSimState=UNKNOWN gprsState=0 mDataState=2 dataActivity=0 D/PhoneStatusBarPolicy(  495): hasService:true mPhone.htcModemLinkOn:false D/PhoneStatusBarPolicy(  495): hasService()=true ,mDataState=2 ,mPhone.htcModemLinkOn()=false ,mDataActivity=0 D/PhoneStatusBarPolicy(  495): slotType[0]=NV D/ConnectivityService(  232): sendStickyBroadcast: action=android.net.conn.CONNECTIVITY_CHANGE W/MmsService( 2172): Dispatching connectivity change... D/Tethering(  232): Tethering got CONNECTIVITY_ACTION type: mobile_mms, subtype: CDMA - EvDo rev. A, status: CONNECTED D/MP-Decision(  294): UP Nw:2.700000 Tw:180 rq:5.200000 seq:198 D/ConnectivityService(  232): reportInetCondition for net 1, percentage: 100 by 637/10012 D/ConnectivityService(  232): handleInetConditionChange: net=1, condition=100,mActiveDefaultNetwork=1 D/ConnectivityService(  232): handleInetConditionChange: starting a change hold W/MmsService( 2172): Dispatched... W/MmsService( 2172): NetworkInfo: NetworkInfo: type: mobile_mms[CDMA - EvDo rev. A], state: CONNECTED/CONNECTED, reason: dataEnabled, extra: , roaming: false, failover: false, isAvailable: true, isIpv4Connected: true, isIpv6Connected: false W/MmsDownloadService( 2172): Handling actual MMS download... I/ActivityManager(  232): Start proc com.android.settings for broadcast com.android.settings/.wimax.WimaxReceiver: pid=9284 uid=1000 gids={1015, 3002, 3001, 3003, 5001, 5004, 5003, 3007, 3006, 2001, 1007} W/MmsDownloadHelper( 2172): org.thoughtcrime.securesms.mms.ApnUnavailableException: No parameters available from ApnDefaults. W/MmsDownloadHelper( 2172): at org.thoughtcrime.securesms.mms.MmsCommunication.getLocalMmsConnectionParameters(MmsCommunication.java:78) W/MmsDownloadHelper( 2172): at org.thoughtcrime.securesms.mms.MmsCommunication.getMmsConnectionParameters(MmsCommunication.java:95) W/MmsDownloadHelper( 2172): at org.thoughtcrime.securesms.mms.MmsDownloadHelper.retrieveMms(MmsDownloadHelper.java:75) W/MmsDownloadHelper( 2172): at org.thoughtcrime.securesms.service.MmsDownloader.downloadMms(MmsDownloader.java:94) W/MmsDownloadHelper( 2172): at org.thoughtcrime.securesms.service.MmsDownloader.handleConnectivityChange(MmsDownloader.java:151) W/MmsDownloadHelper( 2172): at org.thoughtcrime.securesms.service.MmsDownloader.process(MmsDownloader.java:59) W/MmsDownloadHelper( 2172): at org.thoughtcrime.securesms.service.SendReceiveService$SendReceiveWorkItem.run(SendReceiveService.java:223) W/MmsDownloadHelper( 2172): at org.thoughtcrime.securesms.util.WorkerThread.run(WorkerThread.java:46) D/ConnectivityService(  232): requestRouteToHost 68.28.202.9 from network 2 to 2 by 2172/10123 D/MobileDataStateTracker(  232): mms: Requested host route to 9ca1c44 for mms(rmnet0) D/MobileDataStateTracker(  232): mms: [RIL.DEBUG] requestRouteToHost(): Set ril.route.waitresponse = 1 D/DataConnectionTracker(  232): HtcSetRequestRouteToHost(mms,IPV4,mms,350,68.28.202.9) ruid=2 ru_numer=0 from property=net.gprs.mms.ru.number D/DataConnectionTracker(  232): HtcSetRequestRouteToHost Try to Add routing rule #1 to mms for IP: 68.28.202.9 D/NetUtils(  232): addRoutingRule_ext(from: all, to: 68.28.202.9, rtb: mms, prio: 351, ipv: 0) D/NetUtils(  232): addRoutingRule_ext, try to do ru add, inet_params: inet I/NetUtils(  232): ipd_cmd(/system/bin/ip -f inet ru add from all to 68.28.202.9 table mms prio 351) I/NetUtils(  232): ipd_cmd: ipd socket is done, fd=326 I/NetUtils(  232): ifc_utils : +++ blockingWrite I/NetUtils(  232): ifc_utils : --- blockingWrite I/NetUtils(  232): ifc_utils: send cmd :/system/bin/ip -f inet ru add from all to 68.28.202.9 table mms prio 351 I/NetUtils(  232): ifc_utils : +++ blockingWrite I/NetUtils(  232): ifc_utils : --- blockingWrite I/NetUtils(  232): ipd: finish sending ipd command. D/NetUtils(  232): addRoutingRule_ext done I/ipd     (  122): +++ IP CMD: /system/bin/ip -f inet ru add from all to 68.28.202.9 table mms prio 351 D/DataConnectionTracker(  232): HtcSetRequestRouteToHost Added routing rule #1 to mms for IP: 68.28.202.9 D/MobileDataStateTracker(  232): mms: delay 1 secs I/ipd     (  122): --- IP CMD D/LocationManagerService(  232): CONNECTIVITY_ACTION: synchronized+ D/LocationManagerService(  232): updateNetworkState available info: NetworkInfo: type: mobile_mms[CDMA - EvDo rev. A], state: CONNECTED/CONNECTED, reason: dataEnabled, extra: , roaming: false, failover: false, isAvailable: true, isIpv4Connected: true, isIpv6Connected: false D/LocationManagerService(  232): CONNECTIVITY_ACTION: synchronized+ provider size: 3 D/GpsLocationProvider(  232): + synchronized updateNetworkState  info: NetworkInfo: type: mobile_mms[CDMA - EvDo rev. A], state: CONNECTED/CONNECTED, reason: dataEnabled, extra: , roaming: false, failover: false, isAvailable: true, isIpv4Connected: true, isIpv6Connected: false D/LocationManagerService(  232): CONNECTIVITY_ACTION: synchronized- D/GpsLocationProvider(  232): [handleMessage] message :4 D/GpsLocationProvider(  232): [handleMessage] UPDATE_NETWORK_STATE D/GpsLocationProvider(  232): updateNetworkState available info: NetworkInfo: type: mobile_mms[CDMA - EvDo rev. A], state: CONNECTED/CONNECTED, reason: dataEnabled, extra: , roaming: false, failover: false, isAvailable: true, isIpv4Connected: true, isIpv6Connected: false D/GpsLocationProvider(  232): mInjectNtpTimePending(FALSE) D/GpsLocationProvider(  232): mDownloadXtraDataPending(TRUE): send message: DOWNLOAD_XTRA_DATA D/GpsLocationProvider(  232): [handleMessage] message :6 D/GpsLocationProvider(  232): [handleMessage] DOWNLOAD_XTRA_DATA mSupportsXtra:false D/GpsLocationProvider(  232): [handleMessage] mSupportsXtra disable pending until enable it I/ActivityThread( 9284): Pub com.android.settings.provider.suggestion: com.android.settings.framework.search.SuggestionProvider I/ActivityThread( 9284): Pub com.android.settings.provider.cdmasettings: com.android.settings.HtcCdmaSettingsProvider D/HtcCdmaSettingsProvider( 9284): onCreate ! I/ActivityThread( 9284): Pub framework.activity.powersaver: com.android.settings.framework.activity.powersaver.SmartSyncProvider V/WimaxReceiver( 9284): onReceive(), action:android.net.conn.CONNECTIVITY_CHANGE V/WimaxReceiver( 9284): detailedState:CONNECTED; netType:2 I/ActivityManager(  232): Start proc com.facebook.katana for broadcast com.facebook.katana/.binding.UploadManagerConnectivity: pid=9302 uid=10020 gids={3003, 1015} I/dalvikvm( 9302): Turning on JNI app bug workarounds for target SDK version 7... I/ActivityThread( 9302): Pub com.facebook.katana.provider.LoggingProvider: com.facebook.katana.provider.LoggingProvider I/ActivityThread( 9302): Pub com.facebook.katana.provider.KeyValueProvider: com.facebook.katana.provider.KeyValueProvider I/ActivityThread( 9302): Pub com.facebook.katana.provider.ChatHistoryProvider: com.facebook.katana.provider.ChatHistoryProvider I/ActivityThread( 9302): Pub com.facebook.katana.provider.CacheProvider: com.facebook.katana.provider.CacheProvider I/ActivityThread( 9302): Pub com.facebook.katana.provider.MailboxProvider: com.facebook.katana.provider.MailboxProvider I/ActivityThread( 9302): Pub com.facebook.katana.provider.UserStatusesProvider: com.facebook.katana.provider.UserStatusesProvider I/ActivityThread( 9302): Pub com.facebook.katana.provider.EventsProvider: com.facebook.katana.provider.EventsProvider I/ActivityThread( 9302): Pub com.facebook.katana.provider.NotificationsProvider: com.facebook.katana.provider.NotificationsProvider I/ActivityThread( 9302): Pub com.facebook.katana.provider.UserValuesProvider: com.facebook.katana.provider.UserValuesProvider I/ActivityThread( 9302): Pub com.facebook.katana.provider.PagesProvider: com.facebook.katana.provider.PagesProvider I/ActivityThread( 9302): Pub com.facebook.katana.provider.PhotosProvider: com.facebook.katana.provider.PhotosProvider I/ActivityThread( 9302): Pub com.facebook.katana.provider.ConnectionsProvider: com.facebook.katana.provider.ConnectionsProvider D/ACRA    ( 9302): Retrieve application default SharedPreferences. D/ACRA    ( 9302): Set OnSharedPreferenceChangeListener. D/ACRA    ( 9302): ACRA is enabled for com.facebook.katana, intializing... D/ACRA    ( 9302): Looking for error files in /data/data/com.facebook.katana/app_acra-reports D/SqliteDatabaseCpp( 9302): Registering sqlite logging func: /data/data/com.facebook.katana/databases/fb.db D/SqliteDatabaseCpp( 9302): DB info: open db, path = /data/data/com.facebook.katana/databases , key = bf, flag = 6, file size = 36864 D/SqliteDatabaseCpp( 9302): DB info: path = /data/data/com.facebook.katana/databases , key = bf, handle: 0x140d590, type: w, r/w: (0,1), mode: truncate, disk free size: 849 M D/SqliteDatabaseCpp( 9302): DB info: open db, path = /data/data/com.facebook.katana/databases , key = uhlkYdmYjYcev, flag = 6, file size = 4096 D/SqliteDatabaseCpp( 9302): DB info: path = /data/data/com.facebook.katana/databases , key = uhlkYdmYjYcev, handle: 0x149e7a0, type: w, r/w: (0,1), mode: truncate, disk free size: 849 M D/MP-Decision(  294): DOWN Ns:2.100000 Ts:270 rq:1.600000 seq:297 (Up time:390) D/SqliteDatabaseCpp( 9302): DB info: close db, path = /data/data/com.facebook.katana/databases , key = uhlkYdmYjYcev, handle = 0x149e7a0, type = w, r/w = (0, 0) D/ConnectivityService(  232): handleInetConditionHoldEnd: net=1, condition=100, published condition=100 D/ConnectivityService(  232): sendStickyBroadcast: action=android.net.conn.INET_CONDITION_ACTION D/PhoneStatusBarPolicy(  495): ServiceState ss: 0 D/PhoneStatusBarPolicy(  495): @@ iconIndex=1 V/PhoneStatusBarPolicy(  495): cdmaLevel:6;max:6 D/PhoneStatusBarPolicy(  495): iconLevel:6 D/dalvikvm(  232): GC_EXPLICIT freed 368K, 40% free 11432K/19043K, paused 4ms+7ms D/Process (  232): killProcessQuiet, pid=8969 D/Process (  232): dalvik.system.VMStack.getThreadStackTrace(Native Method) D/Process (  232): java.lang.Thread.getStackTrace(Thread.java:599) D/Process (  232): android.os.Process.killProcessQuiet(Process.java:818) I/ActivityManager(  232): No longer want com.htc.providers.settings:remote (pid 8969): hidden #16, adj=15 D/Process (  232): com.android.server.am.ActivityManagerService.updateOomAdjLocked(ActivityManagerService.java:15140) D/Process (  232): com.android.server.am.ActivityManagerService.updateLruProcessInternalLocked(ActivityManagerService.java:1934) D/Process (  232): com.android.server.am.ActivityManagerService.updateLruProcessLocked(ActivityManagerService.java:1941) D/Process (  232): com.android.server.am.ActivityManagerService.processCurBroadcastLocked(ActivityManagerService.java:13338) D/Process (  232): com.android.server.am.ActivityManagerService.processNextBroadcast(ActivityManagerService.java:13763) D/Process (  232): com.android.server.am.ActivityManagerService.finishReceiver(ActivityManagerService.java:13166) D/Process (  232): android.app.ActivityManagerNative.onTransact(ActivityManagerNative.java:336) D/Process (  232): com.android.server.am.ActivityManagerService.onTransact(ActivityManagerService.java:1706) D/Process (  232): android.os.Binder.execTransact(Binder.java:338) D/Process (  232): dalvik.system.NativeStart.run(Native Method) D/AutoSetting(  824): receiver - intent: android.net.conn.CONNECTIVITY_CHANGE D/AutoSetting(  824): receiver - NetworkInfo: type: mobile_mms[CDMA - EvDo rev. A], state: CONNECTED/CONNECTED, reason: dataEnabled, extra: , roaming: false, failover: false, isAvailable: true, isIpv4Connected: true, isIpv6Connected: false I/ActivityManager(  232): Start proc com.htc.htcMessageUploader for broadcast com.htc.htcMessageUploader/.UploadMessageReceiver: pid=9319 uid=10051 gids={3003} W/TelephonyManager(  637): Hidden constructor called more than once per process! W/TelephonyManager(  637): Original: com.google.android.gsf, new: com.google.android.gsf V/htcMessageUploader( 9319): [UploadMessageReceiver] UploadMessageReceiver() constructor !!! I/htcMessageUploader( 9319): Start thread to upload fota event message:com.htc.htcMessageUploader.UploadMessageReceiver D/htcMessageUploader( 9319): Total time in main thread:1 milli-seconds D/Socket_Alarm( 9319): registerHTCSocketMonitorCallBack D/Socket_Alarm( 9319): set mSocketMonitor D/htcMessageUploader( 9319): Get CONNECTIVITY_ACTION intent D/Process (  232): killProcessQuiet, pid=9007 D/Process (  232): dalvik.system.VMStack.getThreadStackTrace(Native Method) D/Process (  232): java.lang.Thread.getStackTrace(Thread.java:599) D/Process (  232): android.os.Process.killProcessQuiet(Process.java:818) D/Process (  232): com.android.server.am.ActivityManagerService.updateOomAdjLocked(ActivityManagerService.java:15140) D/Process (  232): com.android.server.am.ActivityManagerService.trimApplications(ActivityManagerService.java:15303) D/Process (  232): com.android.server.am.ActivityManagerService.finishReceiver(ActivityManagerService.java:13168) D/Process (  232): android.app.ActivityManagerNative.onTransact(ActivityManagerNative.java:336) D/Process (  232): com.android.server.am.ActivityManagerService.onTransact(ActivityManagerService.java:1706) D/Process (  232): android.os.Binder.execTransact(Binder.java:338) D/Process (  232): dalvik.system.NativeStart.run(Native Method) D/Socket_Alarm( 9319): HTCSocketMonitorImpl::HTCSocketMonitorImpl I/ActivityManager(  232): Start proc com.google.android.apps.uploader for broadcast com.google.android.apps.uploader/.ConnectivityBroadcastReceiver: pid=9332 uid=10071 gids={3003} I/ActivityManager(  232): No longer want com.sprint.zone (pid 9007): hidden #16, adj=15 I/dalvikvm( 9332): Turning on JNI app bug workarounds for target SDK version 11... I/htcMessageUploader( 9319): == UploadMessageReceiver finished == I/ActivityThread( 9332): Pub com.google.android.apps.uploader: com.google.android.apps.uploader.UploadsContentProvider D/MP-Decision(  294): UP Nw:2.700000 Tw:180 rq:3.700000 seq:198 I/ActivityThread( 9332): Pub com.google.photos.provider.Album: com.google.android.apps.uploader.clients.picasa.AlbumProvider D/MediaUploader( 9332): UploaderApplication.onCreate E/SqliteDatabaseCpp(  637): native_1x1_string (step): errno = 2, error message = No such file or directory, path = /data/data/com.google.android.gsf/databases , key = cwevragew, handle = 0x1446370

moxie0 commented 11 years ago

Hey @baloneysandwiches , under TextSecure -> Settings -> MMSC Fallback could you try entering the following values?

MMSC: http://mmsc.vmobl.com:8080/mms Proxy: 205.239.233.136 Proxy Port: 81

albell commented 11 years ago

@moxie thanks, that seems to work perfectly!

moxie0 commented 11 years ago

I've added those settings to the ApnDefaults in the next release. 3d49e90779cdded3699d2ba7248201ac4a22fc1f

albell commented 11 years ago

Awesome, thank you.