The DCA extension, short for Discourse Community Authentication, is my first open-source extension! Over the next few weeks you will see many improvements to code and a great amount of customization! If you come across errors, please file an issue report as I did make this in two-three days.
Please respect my wish that you do not take a snippet from this extension, create a one-block extension for yourself, and then not use my extension. More customization will come in the future, just be patient <3
@hammerhai I really don’t understood the use/purpose of this extension. Is it like fb authentication or it will authenticate users who are using discourse.
It provides an easier way to get someone to grant you access to their profile on the community using the Discourse API. Certain routes will require a User API Key and some will require an Admin API Key (which can only be generated from the Admin Dashboard). This extension makes it easier to get the User API Key to use for the Discourse API if need be.
I haven’t touched on this extension topic in a few months, but I have been working on improvements BTS. I came to do a survey of what you want to see, so that improvements can be made to the already done improvements based on polls.
There will be an option to show the authentication request at the bottom of the screen, like a bottom sheet.
How clear the authentication request should be, will be left up to the application developer. This might change according to country laws and API specifications.
Multiple accounts will be allowed.[1]
Checking how many accounts are on the device and which one is actively signed in if any will be left up to the application developer.[1]
There will be a way to get all saved accounts and the current user if one exists.[1]
1 In accordance with the Kodular Communities Staff Preferences and Kodular Community TOS, the ability to login with multiple accounts will be disallowed. It is best to show that this behavior is unacceptable and so it’s done in the best interests of both Kodular and the DCA extension itself. Thank you for your understanding!
I made the survey to collect suggestions about what I should do for the Discourse Community Authentication extension in the future. And it is something I am looking into for other extensions of mine.
It has come to my attention that there is a possible memory leak while the authentication activity is visible and possibly even afterwards. Be aware that if performance has degraded for older Android versions, I recommend you remove DCA from your application and wait patiently while a fix is being developed.
This memory leak is only possible because I am not sure how well, or if at all MemoryLeakUtil.java from AI2 works. It is better to be safe, than sorry.
After further investigation into the issue, I’ve concluded that this is in fact a memory leak, and no longer just “possible.” It’s recommended that you stop using DCA as performance may degrade for older Android versions.
The “Discourse Community Authentication” extension has reached it’s end-of-life term. It will no longer receive Extended Maintenance for Critical Issues and Major Upgrades for the following reasons:
Drop in popularity
Drop in understanding of uses
Memory leak
Recently I did learn there was an easy fix to this, however, I never got around to implementing it.
Alternatives
No available alternatives to the “Discourse Community Authentication” extension have been released at this time, with none planned for the future.
Moving forward
It’s up to the developer to remove the extension from her/his project(s). Questions will no longer be answered on this topic regarding the “Discourse Community Authentication” extension.
Thanks to all who downloaded the “Discourse Community Authentication” extension and attempted to use it in their projects!
To those in the Northern Hemisphere, have a nice summer! To those in the Southern Hemisphere, have a nice winter :)