Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MMS Receiving not working with non signal users #8571

Open
aeppacher opened this issue Jan 28, 2019 · 62 comments

Comments

@aeppacher
Copy link

commented Jan 28, 2019

Bug description

Cannot receive MMS from non signal users at all

Steps to reproduce

  • Have non-signal user send MMS
  • fails to download, retrying also fails

Attempts to fix

Actual result:
Message just says mms fails to download, click to retry
Expected result:
See the mms

Device info

Device: OnePlus 6T
Android version: 9.0.0
Signal version: 4.32.8
Carrier: Verizon

Link to debug log

https://debuglogs.org/c4b1cd7ad755c63f96d26c173b5324b5d7125dedf51032e09e0e1715e0f52280

@greyson-signal

This comment has been minimized.

Copy link
Contributor

commented Jan 28, 2019

Looks like we're having trouble establishing an MMS connection:

2019-01-28 17:14:07.325 EST W IncomingLollipopMmsConnection: null
2019-01-28 17:14:07.325 EST W IncomingLollipopMmsConnection: java.io.FileNotFoundException: open failed: ENOENT (No such file or directory)
2019-01-28 17:14:07.325 EST W IncomingLollipopMmsConnection: 	at android.os.ParcelFileDescriptor.openInternal(ParcelFileDescriptor.java:313)
2019-01-28 17:14:07.325 EST W IncomingLollipopMmsConnection: 	at android.os.ParcelFileDescriptor.open(ParcelFileDescriptor.java:211)
2019-01-28 17:14:07.325 EST W IncomingLollipopMmsConnection: 	at org.thoughtcrime.securesms.providers.MmsBodyProvider.openFile(MmsBodyProvider.java:77)
2019-01-28 17:14:07.325 EST W IncomingLollipopMmsConnection: 	at android.content.ContentProvider.openAssetFile(ContentProvider.java:1626)
2019-01-28 17:14:07.325 EST W IncomingLollipopMmsConnection: 	at android.content.ContentProvider.openTypedAssetFile(ContentProvider.java:1806)
2019-01-28 17:14:07.325 EST W IncomingLollipopMmsConnection: 	at android.content.ContentProvider.openTypedAssetFile(ContentProvider.java:1872)
2019-01-28 17:14:07.325 EST W IncomingLollipopMmsConnection: 	at android.content.ContentProvider$Transport.openTypedAssetFile(ContentProvider.java:487)
2019-01-28 17:14:07.325 EST W IncomingLollipopMmsConnection: 	at android.content.ContentResolver.openTypedAssetFileDescriptor(ContentResolver.java:1503)
2019-01-28 17:14:07.325 EST W IncomingLollipopMmsConnection: 	at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1340)
2019-01-28 17:14:07.325 EST W IncomingLollipopMmsConnection: 	at android.content.ContentResolver.openInputStream(ContentResolver.java:1060)
2019-01-28 17:14:07.325 EST W IncomingLollipopMmsConnection: 	at org.thoughtcrime.securesms.providers.MmsBodyProvider$Pointer.getInputStream(MmsBodyProvider.java:133)
2019-01-28 17:14:07.325 EST W IncomingLollipopMmsConnection: 	at org.thoughtcrime.securesms.mms.IncomingLollipopMmsConnection.retrieve(IncomingLollipopMmsConnection.java:92)
2019-01-28 17:14:07.325 EST W IncomingLollipopMmsConnection: 	at org.thoughtcrime.securesms.mms.CompatMmsConnection.retrieve(CompatMmsConnection.java:76)
2019-01-28 17:14:07.325 EST W IncomingLollipopMmsConnection: 	at org.thoughtcrime.securesms.jobs.MmsDownloadJob.onRun(MmsDownloadJob.java:140)
2019-01-28 17:14:07.325 EST W IncomingLollipopMmsConnection: 	at org.thoughtcrime.securesms.jobmanager.Job.doWorkInternal(Job.java:111)
2019-01-28 17:14:07.325 EST W IncomingLollipopMmsConnection: 	at org.thoughtcrime.securesms.jobmanager.Job.doWork(Job.java:64)
2019-01-28 17:14:07.325 EST W IncomingLollipopMmsConnection: 	at androidx.work.Worker$1.run(Worker.java:84)
2019-01-28 17:14:07.325 EST W IncomingLollipopMmsConnection: 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
2019-01-28 17:14:07.325 EST W IncomingLollipopMmsConnection: 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
2019-01-28 17:14:07.325 EST W IncomingLollipopMmsConnection: 	at java.lang.Thread.run(Thread.java:764)
2019-01-28 17:14:07.337 EST W CompatMmsConnection: null
2019-01-28 17:14:07.337 EST W CompatMmsConnection: org.thoughtcrime.securesms.mms.MmsException: java.io.FileNotFoundException: open failed: ENOENT (No such file or directory)
2019-01-28 17:14:07.337 EST W CompatMmsConnection: 	at org.thoughtcrime.securesms.mms.IncomingLollipopMmsConnection.retrieve(IncomingLollipopMmsConnection.java:105)
2019-01-28 17:14:07.337 EST W CompatMmsConnection: 	at org.thoughtcrime.securesms.mms.CompatMmsConnection.retrieve(CompatMmsConnection.java:76)
2019-01-28 17:14:07.337 EST W CompatMmsConnection: 	at org.thoughtcrime.securesms.jobs.MmsDownloadJob.onRun(MmsDownloadJob.java:140)
2019-01-28 17:14:07.337 EST W CompatMmsConnection: 	at org.thoughtcrime.securesms.jobmanager.Job.doWorkInternal(Job.java:111)
2019-01-28 17:14:07.337 EST W CompatMmsConnection: 	at org.thoughtcrime.securesms.jobmanager.Job.doWork(Job.java:64)
2019-01-28 17:14:07.337 EST W CompatMmsConnection: 	at androidx.work.Worker$1.run(Worker.java:84)
2019-01-28 17:14:07.337 EST W CompatMmsConnection: 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
2019-01-28 17:14:07.337 EST W CompatMmsConnection: 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
2019-01-28 17:14:07.337 EST W CompatMmsConnection: 	at java.lang.Thread.run(Thread.java:764)
2019-01-28 17:14:07.337 EST W CompatMmsConnection: Caused by: java.io.FileNotFoundException: open failed: ENOENT (No such file or directory)
2019-01-28 17:14:07.337 EST W CompatMmsConnection: 	at android.os.ParcelFileDescriptor.openInternal(ParcelFileDescriptor.java:313)
2019-01-28 17:14:07.337 EST W CompatMmsConnection: 	at android.os.ParcelFileDescriptor.open(ParcelFileDescriptor.java:211)
2019-01-28 17:14:07.337 EST W CompatMmsConnection: 	at org.thoughtcrime.securesms.providers.MmsBodyProvider.openFile(MmsBodyProvider.java:77)
2019-01-28 17:14:07.337 EST W CompatMmsConnection: 	at android.content.ContentProvider.openAssetFile(ContentProvider.java:1626)
2019-01-28 17:14:07.337 EST W CompatMmsConnection: 	at android.content.ContentProvider.openTypedAssetFile(ContentProvider.java:1806)
2019-01-28 17:14:07.337 EST W CompatMmsConnection: 	at android.content.ContentProvider.openTypedAssetFile(ContentProvider.java:1872)
2019-01-28 17:14:07.337 EST W CompatMmsConnection: 	at android.content.ContentProvider$Transport.openTypedAssetFile(ContentProvider.java:487)
2019-01-28 17:14:07.337 EST W CompatMmsConnection: 	at android.content.ContentResolver.openTypedAssetFileDescriptor(ContentResolver.java:1503)
2019-01-28 17:14:07.337 EST W CompatMmsConnection: 	at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1340)
2019-01-28 17:14:07.337 EST W CompatMmsConnection: 	at android.content.ContentResolver.openInputStream(ContentResolver.java:1060)
2019-01-28 17:14:07.337 EST W CompatMmsConnection: 	at org.thoughtcrime.securesms.providers.MmsBodyProvider$Pointer.getInputStream(MmsBodyProvider.java:133)
2019-01-28 17:14:07.337 EST W CompatMmsConnection: 	at org.thoughtcrime.securesms.mms.IncomingLollipopMmsConnection.retrieve(IncomingLollipopMmsConnection.java:92)
2019-01-28 17:14:07.337 EST W CompatMmsConnection: 	... 8 more
2019-01-28 17:14:07.344 EST I CompatMmsConnection: Falling back to receiving via legacy connection
2019-01-28 17:14:07.345 EST W MmsDownloadJob: null
2019-01-28 17:14:07.345 EST W MmsDownloadJob: java.io.IOException: Both lollipop and fallback APIs failed...
2019-01-28 17:14:07.345 EST W MmsDownloadJob: 	at org.thoughtcrime.securesms.mms.CompatMmsConnection.retrieve(CompatMmsConnection.java:98)
2019-01-28 17:14:07.345 EST W MmsDownloadJob: 	at org.thoughtcrime.securesms.jobs.MmsDownloadJob.onRun(MmsDownloadJob.java:140)
2019-01-28 17:14:07.345 EST W MmsDownloadJob: 	at org.thoughtcrime.securesms.jobmanager.Job.doWorkInternal(Job.java:111)
2019-01-28 17:14:07.345 EST W MmsDownloadJob: 	at org.thoughtcrime.securesms.jobmanager.Job.doWork(Job.java:64)
2019-01-28 17:14:07.345 EST W MmsDownloadJob: 	at androidx.work.Worker$1.run(Worker.java:84)
2019-01-28 17:14:07.345 EST W MmsDownloadJob: 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
2019-01-28 17:14:07.345 EST W MmsDownloadJob: 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
2019-01-28 17:14:07.345 EST W MmsDownloadJob: 	at java.lang.Thread.run(Thread.java:764)
@aeppacher

This comment has been minimized.

Copy link
Author

commented Jan 28, 2019

Any ideas on what could cause this/what I could do to fix it?

@greyson-signal

This comment has been minimized.

Copy link
Contributor

commented Jan 28, 2019

I don't have any immediate ideas, sorry. Just wanted to note what the issue was for future reference.

@aeppacher

This comment has been minimized.

Copy link
Author

commented Jan 28, 2019

I am thinking this may have something to do with using a oneplus phone on Verizon. Its a new CDMAless service they offer. The default APN can't be changed and it disallows any custom apns from being used. This is the apn in use https://photos.app.goo.gl/opc3dtBE3AJ2mgQR8

@MaddawgX9

This comment has been minimized.

Copy link

commented Feb 1, 2019

I too have this problem and am using a oneplus 6t on the Verizon network. MMS works fine in other apps like the Android "Messages" app.

@jadedgnome

This comment has been minimized.

Copy link

commented Feb 6, 2019

I'm using a h2o sim on a unlocked sprint device and i've been experiencing the same thing.

p.s my APN settings are correct

@leondague

This comment has been minimized.

Copy link

commented Feb 16, 2019

FWIW, I got someone on Google Hangouts to send an MMS with a PNG image file to my AT&T Samsung S7, Signal 4.33.5, Android 8.0.0, and I seemed to get it OK.

@emptyflask

This comment has been minimized.

Copy link

commented Feb 18, 2019

Same problem with Signal 4.33.5 on a Samsung Galaxy S9 and T-Mobile.

@greyson-signal greyson-signal added the mms label Mar 3, 2019
@dschoel

This comment has been minimized.

Copy link

commented Mar 21, 2019

@tgp1994

This comment has been minimized.

Copy link

commented Mar 24, 2019

Chiming in here as another OP6T user on Verizon. Then again, back when I had an HTC One M8 user also on Verizon, I remember Signal had the same issue...

https://debuglogs.org/433a6f92aad3742488b8f7bf903797e050e975574583daae623d4b523b347393

@JoshRacine

This comment has been minimized.

Copy link

commented Mar 27, 2019

Same issue with new phone I got yesterday.

Carrier: Verizon
Phone: Razer Phone 2 (Latest updates, android 9)
Signal Version: 4.36.2

Old nexus 6p did not have this issue. Same carrier, same signal version, android 8.1.0.

@seanhead

This comment has been minimized.

Copy link

commented Apr 9, 2019

also seeing this on a OP6T connected to verizon.

@crc128

This comment has been minimized.

Copy link

commented Apr 10, 2019

Started happening to me sometime after the 19th Feb 2019.

Carrier: Optus
Phone: Samsung S5
Current Signal Version: 4.34.5.461

@robojerk

This comment has been minimized.

Copy link

commented Apr 17, 2019

Usually if I have wifi connected I get the problem, turning it off fixes it. If I don't have wifi on when I experience the issue, turning Airplane mode on then off gets things working.
Pixel 2XL on TMO.

@rbavery

This comment has been minimized.

Copy link

commented May 7, 2019

Same problem on Android S7. Carrier: vErizon. Signal version 4.38.3.

Debug log: https://debuglogs.org/48507d6ad975b3e21fe3674c587f7139f5538e33eb9087e3327664aaf0bb148f

@kuc

This comment has been minimized.

Copy link

commented May 8, 2019

It never worked for me, on many Android versions, including 9.

@pgkdc

This comment has been minimized.

Copy link

commented May 10, 2019

Same issue on blackberry key2le on verizon. Also a CDMA-less device.

@sfstout

This comment has been minimized.

Copy link

commented May 22, 2019

Same issue with OnePlus 7 Pro on Verizon. Able to receive MMS fine using the default app. I love Signal and would love to keep using it as my default app.

Interestingly, I am able to send MMS messages, I just cannot receive them.

Steps to reproduce:

  1. Have a non-Signal user send an MMS message
  2. Wait to receive

Expected results:
Receive MMS message

Observed results:
Do not receive MMS message, instead get "Error downloading MMS message, tap to retry".

Additional info:
If I tap to retry, it still fails.

Debug log:
https://debuglogs.org/a79d1bf259faac21ec373eb5d27907a82ca4c9f6fe23222421385bf10cc345be

Version: 4.39.4

@dtenenba

This comment has been minimized.

Copy link

commented May 22, 2019

Same issue with a Google Pixel 3 (blueline) on AT&T (unlocked).

I do find I am able to see the MMS if I reboot the phone. Killing and restarting the Signal App is not enough to do it.

Signal 4.39.4

Debug log:
https://debuglogs.org/747cb071ff28b4f21e8b9c0fd2cef63de9a031a76243cf646f8b6b6b3b65efc1

This is a fairly big blocker as I receive a number of messages like this every day.

@Coehill

This comment has been minimized.

Copy link

commented Jun 10, 2019

I'm getting this issue too with a Samsung Galaxy S8, latest OS version, and latest signal version. Every time I tap to retry, it fails to download the image. For now, I am using a different messaging app as this is a necessary functionality for me. I would love nothing more than to go back to using Signal!

Android Version 9
Signal 4.40.4
Rogers ISP

Debug Log: https://debuglogs.org/41520d64f26830573acdbbb612271fa562a7472ca264bec238ca82048468d1c1

@akwala

This comment has been minimized.

Copy link

commented Jun 19, 2019

+1

Signal 4.41.6
Android 9
Moto G5 Plus XT1687
AT&T

@timothydlister

This comment has been minimized.

Copy link

commented Jun 25, 2019

Same issue. OnePlus 7 Pro - Verizon - CDMA Less feature activated.

@timothydlister

This comment has been minimized.

Copy link

commented Jul 4, 2019

Exact same issue. One Plus 7 Pro - VZW with CDMA Less enabled.

@Whitak3r

This comment has been minimized.

Copy link

commented Jul 6, 2019

Same problem here. Oneplus 7 pro, Verizon CDMA-less. Signal to signal works fine... All non signal users "fail to download mms"

@GrahamHensley

This comment has been minimized.

Copy link

commented Jul 9, 2019

I have the same issue.
One Plus 7 Pro
Verizon CDMA-less
MMS send correctly from Signal, when received always "fail to download mms"
switching to Android Messages MMS are received correctly
Signal 4.43.8

@lahma69

This comment has been minimized.

Copy link

commented Jul 12, 2019

I also have the same problem on Verizon with the OnePlus 7 Pro. As already stated by others, this phone is registered as a "CDMA-less" device on Verizon's network (specifically, "Feature #83856" has to be added to the line the device is used on).

  • I am able to send MMS messages to Signal users.
  • I am able to send MMS messages to non-Signal users.
  • I am able to receive MMS messages from Signal users.
  • I am not able to receive MMS messages from non-Signal users.

The behavior is the same regardless of whether I have 'WiFi Calling' compatibility mode turned on/off in the Signal settings and the outcome is also the same regardless of whether I am connected only to WiFi or only to mobile data (LTE). As others have also stated, sending/receiving MMS messages works fine in other SMS applications. I feel absolutely naked when Signal is not set as my default SMS/messaging, so I hope this can be resolved soon. I would be happy to provide packet captures or anything else that would be helpful in fixing the issue so please just let me know (my bootloader is currently locked, so I will need a bit of time to unlock it and gain root, but I would be happy to do so in order to provide any info that would be useful).
Signal 4.43.8
Debug Log:
https://debuglogs.org/b41ec97282c18311c88f95224270c8b3f752f68f3a1e17adef15dbd4202ec823
(Relevant lines start @ 07-12 04:39:18.573)

@Rewzilla

This comment has been minimized.

Copy link

commented Jul 12, 2019

Same issues here...

  • Verizon CDMA-Less
  • 4.43.8
  • Oneplus 7 Pro
  • OxygenOS 9.5.8.GM21AA (Android 9 Pie)

Debug log suggests it's failing to download the MMS

@mdaniel

This comment has been minimized.

Copy link

commented Sep 16, 2019

#8837 needs to land before one can build in docker; I guess the Signal team uses image caching or doesn't build in docker for that PR to be open since May :-(

@lahma69

This comment has been minimized.

Copy link

commented Sep 16, 2019

Ya, I appreciate the advice. I decided to install IntelliJ instead. I used Eclipse previously when I was doing Android development but the last Android project I worked on (a client app for communicating with a bluetooth low energy prototype device) was quite a long time ago (like Android 4.4/5.0). A docker image would have been nice, but it's no big deal. I went ahead and just installed it on my Windows box. I'm juggling several different things at the moment, but I will try to get it compiled some time tonight or in the morning. (Btw, I quickly realized that Github no longer has PMs after posting my previous reply. I was just going to ask whether you might send me the APK you had already compiled, but I think it is better that I went ahead and did it myself. That way if I need to make any modifications or insert some quick lines for logcat output or something I can.)

@lahma69

This comment has been minimized.

Copy link

commented Sep 18, 2019

I haven't forgotten to test your build @mdaniel... Just been super busy. I'm going to try to get to it today if I can. I'll post an update just as soon as I do.

@lahma69

This comment has been minimized.

Copy link

commented Sep 19, 2019

Alright.. So I can now officially confirm that implementing the changes suggested by @mdaniel in the file IncomingLollipopMmsConnection.java do indeed fix the MMS problems described in this issue (#8571). Or more precisely, implementing those changes restores complete MMS functionality for me on my OnePlus 7 Pro on Verizon (running Android 9/Oxygen OS 9.5.11.GM21AA).

Strangely, I was not able to retroactively download previously failed MMS messages as @mdaniel suggested he was able to. I'm not sure why this would be different for me, but I don't think its really of much importance since the primary issue is solved. Hopefully, now that there are at least 2 confirmed reports of this change fixing the described issue, the Signal devs will either implement the changes themselves or allow @mdaniel to submit the changes himself for their approval.

If anyone wants to test if these changes fix the problem for them as well, but don't want to spend the time and effort to setup a build environment, I will share the APK I compiled/signed myself. You should be aware of the risks of installing an unverified APK and if you don't trust me (which you probably shouldn't if you don't know me), you should probably limit your use of the APK to testing only (and there may still be risks because of the inherently private information required to setup Signal and the permissions it requires). While it would be a relatively straight forward task for someone with the necessary tools/skills to verify that the only file I've changed is IncomingLollipopMmsConnection.java, I doubt anyone is going to go take the time to do that in this instance. So, with all of that out the way, all you need to do is download the modified APK, backup your existing Signal messages, uninstall Signal (this is required since this APK is signed with a different key), and install the modified APK. Again, unless you trust me, I wouldn't restore your backup messages (requiring you to input your backup/restore password). Just do the minimal setup and then test the MMS functionality that was failing for you previously.
Signal-play-universal-release-SignedWithTestKeys-4.47.6-MMSFix.apk

It would be very helpful to get some input from one of the official developers on how to best move forward on getting these changes implemented. Thanks again for finding the fix @mdaniel!

@geoffro10

This comment has been minimized.

Copy link

commented Sep 20, 2019

FWIW, I was having similar problems with MMS messages being delivered on my Pixel with Google Fi. Switched to regular messaging and all was fine. Tried the @lahma69 APK and did some test messaging and it worked fine. Not sure if it's coincidence or not, just wanted to add my input. Thanks @mdaniel and @lahma69 for your work.

@lahma69

This comment has been minimized.

Copy link

commented Sep 20, 2019

Hey @geoffro10. It is good to know that the fix implemented by @mdaniel worked for someone else. What version of Android are you running on your Pixel?

@geoffro10

This comment has been minimized.

Copy link

commented Sep 20, 2019

@lahma69 , I'm on Android 10.

@pjv

This comment has been minimized.

Copy link

commented Sep 21, 2019

i don't want to run an unknown APK on my phone, but i really DO want signal to receive MMS messages (and especially group MMS texts). Can any official signal-android dev chime in here and say something about the likelihood and timing of this patch being evaluated for merging?

@mdaniel

This comment has been minimized.

Copy link

commented Sep 21, 2019

I wired up a CircleCI build for this branch: https://circleci.com/gh/mdaniel/Signal-Android/8#artifacts/containers/0 which means one of two things: you can inspect the build log to see that nothing underhanded went on, or you can clone the repo, apply that patch, apply the .circleci/config.yml to your own fork, build it (CircleCI does not charge for building open source projects), and then install your own built APK

There are two three further caveats about that build: up until this point, I had been applying that patch to v4.47.6 but that APK is built from master, in preparation for (hopefully!) going through the PR process to land the change for real, and the second caveat is that I have been building release builds for my phone using my android key, so I've never actually tested any of the unsigned debug builds, and the build is against CircleCI's generic android docker image (not the one from #8837) since there was some userns tomfoolery that made CircleCI unhappy. They probably work fine just be aware if those are things which are relevant to you

@greyson-signal

This comment has been minimized.

Copy link
Contributor

commented Sep 27, 2019

Ah, well, discovered that commit isn't foolproof. Gonna revert it. Breaks downloads for some people who have that "append transaction id" flag set. More research will have to be done to figure out exactly what's happening here.

@mdaniel

This comment has been minimized.

Copy link

commented Sep 29, 2019

I did read that adding options is bad and similarly about the "power users," but as a for-your-consideration, leaving the code in but perhaps behind a toggle (even if hidden in the Advanced screen) would allow the folks in this issue to continue to test if it fixes the problem for them, with their phones (on their carriers), without giving up the (tiny?) forward progress we made

Regrettably, that commit a few weeks ago was the first time I had ever had to deal with the Android telephony API, so the number of potential dragons feels enormous, but without gathering more reports of "works for me with $phone on $carrier" and "not for me with $otherPhone on $otherCarrier" I fear this issue will go back onto the backburner as not a priority for Signal


FWIW, I also went sniffing around F-Droid to see if there were other open source MMS-friendly apps from which we could learn, and discovered there is a fork of Signal, wherein they -- unsurprisingly -- had this same bug. However, in their issue they report that the stock OmniROM Messages app cured their woes by updating the rom's APN configuration. So I believe it's plausible that the users for whom this doesn't work are on an old rom that just outright advertises incorrect MMS settings for their carrier.

@AMP3D

This comment has been minimized.

Copy link

commented Sep 29, 2019

This issue has been plaguing me as of April 2017 at least!

I'm on a Galaxy S7 and the Verizon network. It seems to almost always happen when I send a message at the same time as I am receiving messages from one or more people in the MMS group. That combination throws everything into limbo for a while. Eventually (sometimes up to an hour?) later, everything is downloaded and i'm bombarded with a massive amount of messages that have been queuing up since the time the original error occurred.

This is by far the biggest problem Signal has and why i'm reluctant to recommend it. Thankfully MMS messages are not common for me so I can text 90% of the time just fine.

Here are my logs:
https://debuglogs.org/0ac6d9bd7352c9ca0484576aa0d95d84257be3e2138e269ef02d7d5f7f7025e1

@pwdove

This comment has been minimized.

Copy link

commented Oct 1, 2019

@mdaniel

Works for me

Oneplus 6t
OxygenOS 9.0.16
Verizon

Stock signal failed, same as everyone else.

@mdaniel

This comment has been minimized.

Copy link

commented Oct 1, 2019

Apologies, which "works for you?" A local build, or the Signal release v4.48.4 that contained the fix?

@pwdove

This comment has been minimized.

Copy link

commented Oct 1, 2019

Sorry. The apk posted. Shows v4.47.6 on my phone

@pgkdc

This comment has been minimized.

Copy link

commented Oct 2, 2019

v4.48.4 resolves the MMS issues for me.

Blackberry Key2LE on Verizon, CDMA-less

@cbdh2024

This comment has been minimized.

Copy link

commented Oct 3, 2019

The APK posted by @lahma69 worked for me. Checked the beta branch on the play store (v4.48.10) and it didn't work. Don't know if this fix was pushed to release/beta but the fix worked for me too.

ONEplus 6t Verizon CDMA-less

@vyruz

This comment has been minimized.

Copy link

commented Oct 4, 2019

Holy shit finally a fix, @lahma69 all worked on my Galaxy fold on Verizon and is the only way I was able to get group texting to work. I really hope this fix gets put into the actual version that's on the play store.

@mdaniel

This comment has been minimized.

Copy link

commented Oct 4, 2019

Checked the beta branch on the play store (v4.48.10) and it didn't work. Don't know if this fix was pushed to release/beta but the fix worked for me too.

It was specifically rolled back and that commit went out in v4.48.5 (relevant comment on this bug)

I lobbied for a toggle that would enable leaving the code in, but switching it off for most users, but so far no response

It would be super ironic if this was the thing that finally got Signal builds into F-Droid, just so it had an alternative distribution mechanism that would allow for the application of this patch.

As before, I'm also glad to help anyone get a CircleCI build of Signal going, if you want to track upstream builds without trusting random APKs

@vyruz

This comment has been minimized.

Copy link

commented Oct 4, 2019

@gone

This comment has been minimized.

Copy link

commented Oct 5, 2019

Getting this fixed would be a major win for me. This issue has been hitting me for years.

@jtsylve

This comment has been minimized.

Copy link

commented Oct 5, 2019

I'm also having this issue with non-signal users on Android with Google Fi.

@pixiespaz

This comment has been minimized.

Copy link

commented Oct 7, 2019

Still experiencing this issue on Android 10 with Google Fi as well.

@CincyRon

This comment has been minimized.

Copy link

commented Oct 7, 2019

Happy to say that the @lahma69 @mdaniel fix is working for me on my Pixel 3a xl on the visible (verizon) network!

@lahma69

This comment has been minimized.

Copy link

commented Oct 10, 2019

First, a quick note: I'm glad the APK I posted is helping some of y'all to have a temporary working solution, but FYI, I definitely deserve no credit for the fix, I literally just built an APK with the exact code changes suggested by @mdaniel.

I've been incognito for a week or so, so I missed the development of these changes actually being rolled out to the beta and then subsequently being reverted. That is both hopeful and disappointing...

Ah, well, discovered that commit isn't foolproof. Gonna revert it. Breaks downloads for some people who have that "append transaction id" flag set. More research will have to be done to figure out exactly what's happening here.

Hey @greyson-signal, could you give us some input on what kind of configs (phone/carrier) that the patch was causing problems for (or possibly a link to where this has already been discussed)? My understanding is that you're saying for some people, their MMS was working fine before the patches (not affected by #8571), when the following was being used:

smsManager.downloadMultimediaMessage(getContext(),
contentLocation,
pointer.getUri(),
null,
getPendingIntent());

but then, after the patches, even though smsManager.getCarrierConfigValues().getBoolean(SmsManager.MMS_CONFIG_APPEND_TRANSACTION_ID) was returning a true value for these users, appending Util.toIsoString(transactionId) to contentLocation and/or replacing the null value with smsManager.getCarrierConfigValues() was causing their MMS to stop working?

Do we know if contentLocation ended with "message-id=" in those cases or was perhaps the message id already appended? Also, is it possible that these users were perhaps using custom roms that have implemented changes to resolve this issue and perhaps those changes could be conflicting with the changes made to Signal?

As @mdaniel suggested, it would be awesome if these changes could at least be implemented on a provisional basis with some type of non-default/hidden toggle, manual config value change, drop-in file, or something else. I can't see any downsides or negatives to that approach.

@boggle247

This comment has been minimized.

Copy link

commented Oct 16, 2019

Using the playstore build.

Same issue with Google Pixel 1 , Android 9/Pie, on Verizon network.

Doesn't happen all of the time though. Some non-signal users are able to send me MMS messages (picture or group text messages), just fine.

@JChristensen

This comment has been minimized.

Copy link

commented Oct 18, 2019

We are having the same issue. I moved my wife back to the standard Android Messages app as she was missing important information. When MMS messages are sent by non-Signal users, we see no indication that anything has been received or that any issue has occurred.
Signal: v4.48.17
OS: Android 10
Phone: Pixel 3
Carrier: Google Fi
For us, the issue may have started with the update to Android 10 that we received a couple weeks ago.
It's very disappointing that this issue has been going on for some time and still the cause is evidently not well understood.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
You can’t perform that action at this time.