moezbhatti / qksms

The most beautiful SMS messenger for Android
https://qklabs.com/download
GNU General Public License v3.0
4.45k stars 1.06k forks source link

Can't send quick-replies from Samsung Gear smartwatches #1850

Open e-t-l opened 2 years ago

e-t-l commented 2 years ago

DESCRIPTION

It's a known issue that Samsung smartwatches' ability to send quick-replies in response to SMS notifications depends on the SMS app. For example, With Textra and Signal it works fine, but with Android Messages and QKSMS, it doesn't. Since Signal is an open-source app, there might be a chance to figure out what the difference is between how quick replies are handled.

STEPS

  1. Sync a Samsung Gear smartwatch like a Gear Fit 2 to your phone with the Samsung Wearables app.
  2. Enable Notifications for QKSMS.
  3. Send a text to your phone from a different phone.
  4. View the notification on the smartwatch, and tap "Reply."

EXPECTED

A list of pre-set quick replies appears on the smartwatch.

OBSERVATIONS

The smartwatch produces a popup that just says, "Check your phone." Interestingly, the phone does send a reply text. It simply reads: "null"

I suspect there's something that QKSMS and Signal do differently regarding how other apps are allowed to interact with their notifications. For example, another option for an SMS notification on the smartwatch is "Mark Read"; this works as expected for both QKSMS and Signal, but for QKSMS it also shows that "Check your phone" popup again.

I know this is a niche issue, but if anyone can help me figure out what the difference is between how QKSMS and Signal handle these 3rd-party-app quick replies, I would be extremely grateful. Hell, I'd even be willing to put a bounty on this.

e-t-l commented 1 year ago

Some resources that might be a good starting place for this... Quick replies from smartwatches appear to involve NotificationCompat.WearableExtender API: https://developer.android.com/training/wearables/notifications An example of the API implemented in the AOSP Messaging app: https://android.googlesource.com/platform/packages/apps/Messaging/+/refs/heads/master/src/com/android/messaging/datamodel/BugleNotifications.java