How do I Add Real-Time Timestamp and GPS Location Directly Onto Captured Image?

Hello everyone,

I am developing an Android app using MIT App Inventor and I want to implement a feature similar to a “TimeMark” camera.

My goal is:

  • When the user takes a photo using the Camera component
  • The saved image should automatically include:
    • Real-time timestamp (date and time)
    • GPS location (either full address or latitude/longitude)
  • The text should be embedded directly into the image file (not just overlayed on the screen)

I would like the final result to be a single image file with the timestamp and location permanently written onto it.

My questions:

  1. What is the best way to draw text (timestamp + GPS data) directly onto the captured image in App Inventor?
  2. Is using Canvas.DrawText after loading the image into Canvas the correct approach?
  3. Are there recommended extensions (e.g., image processing extensions) that handle this more reliably?
  4. What is the best practice to ensure the GPS location is accurate before capturing the photo?

I want the solution to be stable and reliable on modern Android versions.

Any guidance or recommended architecture would be greatly appreciated.

Thank you!

Use Canvas draw text.