Using RCS with Google Messages on GrapheneOS
GrapheneOS, Pixel 7, Swiss carrier. I use a VPN.
- Install Play services.
- Install Google Messages and disable RCS in the app
- Give SMS, phone, network and scoped contacts permissions to Google Messages
- Give SMS, phone and network permissions to Play Services.
- Install Shizuku and app opps. Enable wireless USB debugging with Shizuku.
- Force close Messages and Play Services and clear cache of both.
- In App Opps, give the read device identifiers permission to Play Services.
- Open Messages, enable RCS. It connected in a few minutes (I would say max 1h).
- Very important step : donate to GrapheneOS
You can remove the device identifiers, SMS and phone permissions to Play Services and uninstall App Opps and Shizuku.
It disconnected after a few weeks. I did the trick again and it reconnected.
I did not touch any setting in the Google tab in the settings.
- Edited
83639273
You're steps worked for me.
I followed everything, then I cleared cache in messages and rebooted. (cap9qd )
In addition, after rebooting, I also turned off developer options.
Unless, someone can give me a reason why I shouldn't, I'm going to leave SMS and phone permissions ON in Play Services for a few weeks and see if RCS disconnects.
Thanks everyone. Now let's see if it lasts.
I was able to get RCS to work. I was missing adding my phone number in the messages app. I went into settings, advanced and put my phone number in which allowed it to work
83639273 Thanks! This also worked for me (Pixel 8 Pro on T-Mobile USA). Worked straight away after a reboot.
I granted READ_DEVICE_IDENTIFIERS
the old fashioned way via adb:
adb shell appops set com.google.android.gms READ_DEVICE_IDENTIFIERS allow
The state of the permission can be found with:
adb shell appops get com.google.android.gms | grep READ_DEVICE_IDENTIFIER
Previously, I had:
READ_DEVICE_IDENTIFIERS: deny; rejectTime=+2m21s554ms ago
After enabling the permission, I have:
READ_DEVICE_IDENTIFIERS: allow; time=+47s616ms ago; rejectTime=+7m4s585ms ago
Note that this will give Google Play Services your IMEI information:
Pixel 6a, GrapheneOS, Germany, o2-SIM.
Over a period of several months I tried all steps in the various instructions in this forum and on several other webpages. Never got further than „Setting up...“. After a GrapheneOS update RCS suddenly started working. IMO the problems are not GrapheneOS related, there are several threads in official Google support forums from stock OS users who experience the same problems. Maybe a kind of dysfunctional anti spam measure from Google.
chenxiaolong Just another confirmation post: I've tried this on and off over the past few months and this is what did it for me (Pixel 8 on MEO Portugal). I've been running this for the past week with no issues to report.
For the record, I have a Xiaomi Redmi Note 7 running LineageOS 21 and RCS worked immediately, even while failing SafetyNet / PlayIntegrity, so I have a suspicion that this is not a anti-root measure, but something else on Google's end (as some of you have pointed out already)
rcs works for me, I changed my subscription from free to bouygues and it works
As far as I'm aware there's no way to get RCS working without the Google Play Services? Can someone confirm that I have that right ?
- Edited
For what it's worth, things I did to get it to work;
- used default "Owner" profile
- installed google play services, permissions Contacts, Network, Phone, SMS
- installed carrier services, allow Unrestricted running in background
- installed Messages, permissions Contacts, Network, Phone, SMS, storage spaces setup, set SMS app to Messages
- chenxiaolong this step here
- turned off any VPN, WiFi (to use mobile data)
- open Messages, turn on RCS
- wait around 5 minutes
- working!
011235 I don't have Carrier Services installed and I've been up and running a few weeks now.
biscuit_tosser_88 Interesting. I required it. It was not working at all for me without Carrier Services...
011235 it's possible I had it installed when I set it up and then removed it.
New install of graphene and RCS works pretty much out the box. Did nothing but install Google messaging, turned on RCS, typed in my number and that's it. T-Mobile US is my carrier, no carrier services installed.
Ducter I don't know if you'll run into the same issue I did. It initially behaved that way for me too (also T-Mobile USA), but Google would silently block access a day later. After the silent "ban", RCS would show as connected, but actually sending and receiving messages would fail. It wasn't until I granted the READ_DEVICE_IDENTIFIERS
permission (https://discuss.grapheneos.org/d/1353-using-rcs-with-google-messages-on-grapheneos/352) that it stayed working (a little over 2 weeks for me now).
chenxiaolong I've tested between phones and it works but it's only been a couple days and you're correct, it could stop at any point. Maybe I'll go on and enable that just in case.