Automatic naming of exported images, more export options ideas, maybe bugs

Automatic naming of exported images
When I export timeline or map images and save them to the Files app, I end up with a bunch of “arc-map #.jpeg” and “arc-timeline #.jpeg” files with a bunch of numbers. It would be useful to include in the filenames automatically the category/type of map/timeline (daily/weekly/monthly/yearly or even the activity type for the map of a selected activity from a daily timeline) and the time of it to make it easier to organize the exported files and find the relevant ones later on. For example there could be an “arc-map-yearly-2021.jpeg”, “arc-map-daily-2021-10-30.jpeg” or “arc-map-daily-2021-oct-30.jpeg”, “arc-map-monthly-2021-10.jpeg” or “arc-map-monthly-2021-oct.jpeg”, “arc-map-daily-walking-2021-oct-10.jpeg” or “arc-map-walking-2021-oct-10.jpeg” maybe the start and end time of the activity could be included or just the start time, same with timeline files where it fits. (Or could be similar to the exported .gpx and .json file names with not including the type/category, just the time of it.)

Maybe bugs?
Also there seems to be a bug with certain export image buttons, I can’t export weekly timeline images (“Export timeline as image” button in weekly timeline view) and can’t export separate activity images (“Export as image” button in the details view for an activity timeline item) because the buttons don’t do anything when I press them. In other places the very same buttons work correctly.

Export options for activity menu items + more options for timeline items (places/activities details)
Export options for the map and graphs or the whole data sheet both from place/visit/activity timeline items and the summary sheets of each activity in the activity menu would be also useful similarly to the already existing ones in other menus.

Pdf exports
Also it would be great if everything that can be exported as image could be exported as a searchable .pdf file as well (if it can be done).

Map+timeline / full screen exports
I think an export image (or pdf too) option for both the map and the timeline (or other info for timeline items and activity data sheets) together (map+timeline, like inside the app with probably just the visible part of the map above the timeline/sheet and the complete timeline/sheet from start to end) would be useful too. (Maybe support for iOS full screen screenshot pdfs/images like in Safari and other apps if that can be done?)

Csv exports?
Plus, maybe .csv exports where it fits (raw and plain text data)?

All in all, even more export options (I know, there is already a lot) would be useful and welcome for sure for even more parts/elements of the app where a simple screenshot of the app on its own isn’t enough.

1 Like

Great write up! Thanks :smile:

I’d added this one to the todos. It should be straightforward to get this done.

I’ll look into these. I haven’t been using image exports myself for a long time, due to not having a use case personally.

Though I am aware of one specific bug: exporting the timeline can produce an empty image if the timeline view is long and/or has a lot of images in it. This is presumably due to a memory issue in iOS’s UIKit layer. The image exports are done simply by telling UIKit to create a bitmap image of the view tree. That request sometimes produces a blank image, but with no error reported. So it’s a hard one to deal with. But I do have a plan for working around it.

I’ll look into the other potential bugs too. Thanks for the heads up!

Aside: I’ve long wanted to provide better map export options. But exporting maps of different sizes / scales / content is a troublesome one, limited somewhat by the Mapbox SDK. Though perhaps that’s improved in recent years, and I’m due to update Arc to the latest Mapbox SDK soon, so hopefully I’ll get a chance to look into it then.

I suspect this one won’t be possible. Or at least, would be prohibitively complex. But I’ll check what’s available/possible.

It might be worth adding this one to Arc’s Changemap site (if it’s not already there), to get votes for it.

1 Like

Just want to give an update on some of these, as I’ve managed to chip away at a few of them for the next Arc update!

The exports from the Export menu on Timeline view now use a naming scheme very similar to your suggested one :smile: So you’ll get files like arc-map-yearly.2021.jpeg, arc-timeline-daily.01-01-2024.jpeg, arc-map-weekly.2021-W26.jpeg, etc. Ditto the GPX and JSON export files.

This one I still haven’t got working yet. I suspect the resulting image data is too big, so iOS is just silently failing, as also sometimes happens when trying to export longer daily timelines. So this one will have to wait until I’ve reworked the timeline image exporting to export in chunks then restitch.

I’ve also finally added the date as a header to timeline image exports. I can’t find where that was last discussed on the forum here, but it’s an oft requested improvement.

I’m not sure whether I’ll hold off on shipping the next update until I’ve finished building at least one of the main new features targeted for the release, or whether I’ll ship an intermediate update with the already completed improvements. I’m tempted to do the latter, but will have a better feel for it in a few days.

I saw somewhere you’re moving to weekly exports

Any chance for a button to merge files in iCloud in the foreground? I merge my files by hand since I don’t know how to write a script, and it’s going to be tedious to do it for 50+ exports a year rather than 12 to make my own “wrapped” at the end of the year

Realize that’s probably out of the scope of the app but it would be useful

Oh, you’re making one big GPX (or JSON?) file for the year? Hmm. Thinking…

Yeah, ok, it’ll be too big for Arc to do it itself. I think that’s a non-starter. It’ll probably be best to come up with a little python script or something that does it.

Off the top of my head, I don’t think I could come up with such a script quickly myself - I’m too out of practice with python. But I bet ChatGPT or one of the other robots could do a good job of it pretty easily. Even the free chatbots should be able to manage that python, I think. (Though I always trust GPT4 / ChatGPT Plus the most, because it’s really hard to know when the other ones are talking beyond their intellect and leading you astray).

If you showed it an example snippet of one of the GPX or JSON files, and described what you want to achieve, I bet it could flesh out a decent python script.

Aside: One of the big problems with Arc is that it works with way more data than iOS likes. Lots of things that would normally be a case of “yeah sure, that’ll be easy to add to the app” end up instead falling into the category of “nope, too big, iOS will scream in anger”.

You can actually see this mirrored in Apple’s own Health app. The underlying HealthKit database for most people is likely absurdly large, and as such the Health app ends up often taking a really long time to load things, update things, etc. They’ve “cleverly” got around this by removing all loading spinners from the Health app entirely, and simply showing outdated info (or no info at all) until the app has managed to load or update.

But for a third party app like Arc, just taking longer isn’t an option, because it’ll make iOS angry and result in the app getting terminated / blacklisted for background time. Apple’s Health app can get away with just sticking at it and taking longer because a) it’s first party, so it probably gets various affordances, and b) it doesn’t have to continue running in the background, like Arc does, so it doesn’t have to worry about getting punished for doing too much.

Anyway, total tangent, but I thought it was interesting when I realised it recently - Apple Health app can’t handle its own massive database, and kinda has similar problems to Arc :joy: