IndiePass/indiepass-android

Option to upload exclusively using media-endpoint

Closed this issue ยท 10 comments

Is your feature request related to a problem? Please describe.
My Micropub endpoint just doesn't support storing files, I delegated that completely to my media endpoint... but Indigenous seems to be trying to upload stuff anyway because it doesn't know my server can't handle it! :3

Describe the solution you'd like
An option to upload files from post activity separately via media endpoint.

Describe alternatives you've considered
Implementing a proxy in my app could be a solution, but I think it's a rather clunky one...

Additional context
IMHO, media endpoint uploads should be given priority over uploading directly, since presence of a media endpoint signifies that it's preferred to upload to it, according to https://www.w3.org/TR/micropub/#uploading-files-p-1:

To upload files, the client MUST check for the presence of a Media Endpoint.

Which Indigenous seems to ignore (except when explicitly using the Upload activity).

I've actually implemented the proxy, which uses the same token to upload pictures, crashing the whole request down if the rights are insufficient :3 But this issue still stands, since it means Indigenous doesn't follow Micropub spec to full extent

Ugh, I always get cranky when I'm reminded of that part of the spec because it just puts additional burden on clients. But oh well, I'll implement it since I do have most of the code ready anyway.

Did a quick test with my Drupal module which now supports this feature and that's working out fine. Will look at the android side of things this week!

This is ready for next release. Give me a few days to test a bit more - and also enjoy new year :)

Once I have better defaults for #278 as well, I'll push a new release, probably at the end of the week.
I'll close this when released.

Important note: it's an explicit setting you need to toggle in the settings screen in the 'Media' section, even though I know there's a media endpoint. But once configured, it will always use that of course.

By the way, are git commits stable enough to be just built with Android Studio and used? can I get a release just like one installed from Google Play? (excluding signing keys obviously)

Master is (normally) stable as I use that version on my phones. You just wouldn't get any updates from playstore if you build it yourself of course as the signatures are different and can't be updated.

The only tricky part might be database updates, as I probably need to add maybe two or more columns. I don't provide an upgrade path between master commits.

One of perks of IndieWeb is the fact that readers are essentially almost stateless. Indigenous is the easiest app to reinstall when I wipe my phone or something goes horribly wrong with it. #notaproblem

pushed in a release

Thank you! Just posted my first one at https://www.jvt.me/mf2/2020/01/ds8ng/ ๐Ÿ™Œ