A couple of thoughts about extensibility in the context of the #DMA, #GooglePlay ( #Android ) and #AppStore ( #ios ), specifically about extension support within #Fediverse software.
Currently, Google play says that:
An app distributed via Google Play may not modify, replace, or update itself using any method other than Google Play's update mechanism. Likewise, an app may not download executable code (such as dex, JAR, .so files) from a source other than Google Play.
What does this mean? Say a user on the official instance, social.example.app, wants to move to a non-official instance, example.scoial, that has a custom Calendar extension. The client now needs to have a new, custom Calendar screen that is only available within an extension. If the user has downloaded the client from Google Play, the only way to install the extension is to download it as an additional app. This may sound bad, but it really isn't.
1/n