Prompt: what advances are needed to make RCS available to all android phones, including custom ROMs
Making RCS (Rich Communication Services) universally available on all Android phones, including those running custom ROMs, faces several challenges, primarily due to Google's current implementation and its reliance on device integrity checks. Here are the key advances needed:
1. Open and Standardized RCS APIs for Third-Party Apps:
- Current Situation: While RCS is a GSMA standard, Google's primary implementation in Google Messages uses its own "Jibe" hub. The APIs for other apps to integrate with Google's RCS service are not fully open or easily accessible. This means custom ROMs often have to rely on Google Messages or workarounds.
- Needed Advance: Google needs to provide a truly open and documented API that allows any messaging app (including open-source ones or those integrated into custom ROMs) to natively connect to the RCS network. This would decouple RCS functionality from specific Google apps and allow for broader adoption. This was a stated goal for Android 11, but it hasn't fully materialized in a way that benefits custom ROMs.
2. Decoupling RCS from Play Integrity API/SafetyNet:
- Current Situation: Google has been observed to silently block RCS on rooted Android phones and devices running custom ROMs. This is often linked to the Play Integrity API (formerly SafetyNet), which checks device integrity. If a device fails these checks (common with custom ROMs or rooted phones), RCS functionality in Google Messages can be disabled without clear error messages. Google states this is to prevent spam and abuse.
- Needed Advance:
- More Granular Fraud Prevention: Instead of a blanket ban based on device integrity, Google needs more nuanced fraud and spam prevention methods that don't penalize legitimate users of custom ROMs. This could involve behavioral analysis or other indicators that don't rely on locking down the entire device.
- Transparency and User Control: If RCS is blocked, users should receive clear notifications and reasons, rather than messages simply disappearing. Users should also have options to override these blocks if they understand the risks, similar to how they might choose to proceed with a less secure banking app on a rooted device.
- Official Support for Custom ROMs: Google could work with popular custom ROM communities (like LineageOS) to ensure their builds pass necessary integrity checks for RCS, or provide official guidelines for ROM developers to implement RCS support without being flagged.
3. Carrier Neutrality and Infrastructure:
- Current Situation: While Google has largely bypassed carrier involvement for RCS activation through its Jibe platform, some legacy carrier implementations still exist, which can lead to fragmentation and issues.
- Needed Advance: Full global adoption of a standardized, carrier-agnostic RCS backbone is crucial. This would ensure that RCS works seamlessly across all networks, regardless of the user's carrier or device.
4. End-to-End Encryption as a Standard:
- Current Situation: While Google Messages offers end-to-end encryption for one-on-one RCS chats, it's not universally applied across all RCS implementations or for group chats. Apple's upcoming support for RCS will include E2EE for individual chats.
- Needed Advance: Making end-to-end encryption a mandatory part of the RCS Universal Profile, and easily implementable by all RCS clients, would increase user trust and privacy, fostering broader adoption. This is especially important for users who might be more security-conscious and drawn to custom ROMs.
5. Simplified Integration for Developers:
- Current Situation: Implementing RCS functionality can be complex, and many third-party app developers haven't adopted it due to the lack of clear, open APIs.
- Needed Advance: A comprehensive SDK and well-documented APIs would empower developers of alternative messaging apps and custom ROMs to integrate RCS features directly, fostering innovation and wider availability beyond Google Messages.
In essence, achieving universal RCS availability on all Android phones, especially those with custom ROMs, requires a shift from Google's current, somewhat walled-garden approach to a more open, transparent, and truly standardized ecosystem that prioritizes user choice and control while still addressing security concerns effectively.