You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit f96810f
Browse filesBrowse the repository at this point in the historyBrowse files
fix: stop broadcasting to our own receivers for post-call spam and widget refresh
Android 17 QPR2 no longer raises the sender's process importance for a
broadcast an app sends to itself, and drops it when the process dies
first. Two paths depended on that:
- PostCallActivity's Spam button sent FEEDBACK_SPAM to SpamActionReceiver
and finished at once, so the block and report could be lost. The
receiver's FEEDBACK_SPAM work is now a shared function the activity
calls directly, wrapped in runAction so a failure shows the failure
toast instead of escaping into appScope after the screen closed.
- CallShieldWidget.refreshAll broadcast ACTION_APPWIDGET_UPDATE to its own
provider from background syncs. It now renders placed widgets directly
through AppWidgetManager on appScope. The widget is a RemoteViews
AppWidgetProvider, not Glance, so its own update path replaces the
broadcast. onUpdate tolerates a null goAsync() result for hosts that
call it directly.
NoSelfBroadcastTest fails if any main source calls sendBroadcast again.
Tests: SpamActionReceiverRobolectricTest gains the shared-path and
failure-toast cases. Its existing tests leave receiver work running on
appScope that reports through the same fake transport, so the new case
compares only its own number's reports and uses the shared repository
those tests already write to. CallShieldWidgetTest is new.
Copy file name to clipboardExpand all lines: CHANGELOG.md
+1Lines changed: 1 addition & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -48,6 +48,7 @@ All notable changes to CallShield will be documented in this file.
48
48
- Database v57 adds the FCC complaints published through 2026-10-29 and FTC's through 2026-10-28, for 51,379 numbers, and refreshes the 652 French telemarketing ranges. The community watch list now carries 7 numbers that several people reported.
49
49
- The Simplified Chinese translation now covers nearly every screen, with 311 more strings and every plural, from aixtin (#42). Only the two newest strings still show in English.
50
50
- The Android post-call screen has a Call back button (#43). It opens your dialer with the number filled in, so a call that dropped is one tap from a redial and CallShield still needs no permission to place calls.
51
+
- Spam on the post-call screen now records the block and the report itself, and the home screen widget redraws itself when your lists change. Both used to hand the job to the app's own receiver with a broadcast, which Android 17 QPR2 no longer delivers once the app has left the screen, so the block could have been lost.
0 commit comments