https://bugs.kde.org/show_bug.cgi?id=464392

Simon Redman <si...@ergotech.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Latest Commit|                            |https://invent.kde.org/netw
                   |                            |ork/kdeconnect-android/comm
                   |                            |it/bcf080f6eb93b12194208e41
                   |                            |14b52767f5b0acb0
         Resolution|---                         |FIXED
             Status|CONFIRMED                   |RESOLVED

--- Comment #2 from Simon Redman <si...@ergotech.com> ---
Git commit bcf080f6eb93b12194208e4114b52767f5b0acb0 by Simon Redman.
Committed on 23/01/2023 at 22:02.
Pushed by sredman into branch 'master'.

[SMS Plugin] Change android-smsmms to in-house build until upstream supports
SDK31

## Summary

Android apps which target SDK 31+ require specifying the mutability of any
PENDING_INTENT. This is not supported in the upstream android-smsmms library:
https://github.com/klinker41/android-smsmms/pull/193

Until the above PR is merged, we need a solution. I have pulled the code into
https://invent.kde.org/sredman/android-smsmms and published the package in the
Maven repository in gitlab.

## Test Plan

### Before:
Attempting to send an SMS or MMS message using kdeconnect-sms results in no
message being sent, and an error being logged:

> V/Sending message: Sending new SMS
> E/Sending message: Exception
>     java.lang.IllegalArgumentException: org.kde.kdeconnect_tp: Targeting S+ 
> (version 31 and above) requires that one of FLAG_IMMUTABLE or FLAG_MUTABLE be 
> specified when creating a PendingIntent.
>     Strongly consider using FLAG_IMMUTABLE, only use FLAG_MUTABLE if some 
> functionality depends on the PendingIntent being mutable, e.g. if it needs to 
> be used with inline replies or bubbles.
>         at android.app.PendingIntent.checkFlags(PendingIntent.java:382)
>         at 
> android.app.PendingIntent.getBroadcastAsUser(PendingIntent.java:673)
>         at android.app.PendingIntent.getBroadcast(PendingIntent.java:660)
>         at 
> com.klinker.android.send_message.Transaction.sendSmsMessage(Transaction.java:267)
>         at 
> com.klinker.android.send_message.Transaction.sendNewMessage(Transaction.java:158)
>         at 
> com.klinker.android.send_message.Transaction.sendNewMessage(Transaction.java:172)
>         at 
> org.kde.kdeconnect.Plugins.SMSPlugin.SmsMmsUtils.sendMessage(SmsMmsUtils.java:188)
>         at 
> org.kde.kdeconnect.Plugins.SMSPlugin.SMSPlugin.onPacketReceived(SMSPlugin.java:414)
>         at org.kde.kdeconnect.Device.onPacketReceived(Device.java:570)
>         <snipped for brevity>

### After:
SMS and MMS sends normally.

M  +8    -2    build.gradle
M  +6    -0    settings.gradle

https://invent.kde.org/network/kdeconnect-android/commit/bcf080f6eb93b12194208e4114b52767f5b0acb0

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to