signalapp / signalapp/Signal-Android

Inappropriate way of sending locations is used

Open
#13,006 32 comments 9 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

acknowledged
Dominant language
Kotlin
Stars
29.4k
Forks
6.9k
PR merge metrics
No merged PRs in 30d

Description

The Signal app currently uses the following method of sharing a user's location, after the user has selected a location on the in-app map.

  1. Load Google Map.
  2. Wait for Google Map to finish loading.
  3. Take snapshot of Google Map.
  4. Remove Google Map and replace it with its snapshot.
  5. Once the user hits send, send this snapshot as an image.

This is implemented in the following snippet:

https://github.com/signalapp/Signal-Android/blob/55af6ca84e32683662a96f9f621728d47fabae9e/app/src/main/java/org/thoughtcrime/securesms/components/location/SignalMapView.java#L77-L96

The two issues are:

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Read SignalMapView.java around lines 77-96 and the linked Google Maps Lite mode lifecycle guidance. Compare the current snapshot flow with the location-send path and review PR #13008 for related lifecycle omissions. Done means the map-sharing flow no longer transmits a map snapshot and follows the documented API constraints.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, kotlin
Domain
mobile
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Clearly specified
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.