Aliucord: Difference between revisions
Use bold text for names in the introduction
(Created page with "{{Infobox | name = Aliucord | above = Aliucord | image = thumb | caption1 = Aliucord logo | label1 = Status | data1 = Active | label2 = Latest release | data2 = '''Core''': [https://github.com/Aliucord/Aliucord/commit/ce8083e74731e8fde2aec1bcf27ab047e7014d15 ce8083e] '''Installer''': [https://github.com/Aliucord/Aliucord/releases/tag/1.1.3 1.1.3] | label3 = License | data3 = Open Software License 3.0 | label4 = Repository | data4 = [ht...") |
(Use bold text for names in the introduction) |
||
(7 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
{{Infobox | __NOTOC__ | ||
{{Infobox mod | |||
| name = Aliucord | | name = Aliucord | ||
| | | logo = Aliucord logo.png | ||
| | | logoCaption = The original Aliucord logo, author unknown. | ||
[[ | | yearsActive = February 2021 - present | ||
| platforms = [[V126.21]] | |||
| developers = [[Juby210]], [[User:Vendicated]] | |||
| licenses = OSL-3.0 | |||
| repo = [https://github.com/Aliucord/Aliucord Aliucord/Aliucord] | |||
| languages = [[wikipedia:Kotlin_(programming_language)|Kotlin]] + [[wikipedia:Java_(programming_language)|Java]] | |||
}} | |||
'''Aliucord''', commonly referred to as '''Aliu''' or '''AC''', is a mobile Discord client mod for Android. It targets the [[v126.21]] version of the Android app, a version from mid-2022 now called the ''Legacy Android App''<ref>{{cite web|title=Discord incident status referencing the legacy app|url=https://discordstatus.com/incidents/pp6njm8bcwzq}}</ref>. Its primary patching method is runtime ART hooking using [[LSPlant]]. | |||
==Backstory== | |||
TODO | |||
==Architecture== | |||
While Aliucord is an extremely complex project (actively used source code is spread across ''at least'' 13 repositories), the main components can be simplified down to just four. ''Installer'' (alternatively [[#Manager|''Manager'']]), ''Injector'', ''Core'', and the external plugins. The ''Installer'' is a separate app that handles downloading the Discord APK from a mirror, adding in a precompiled ''Injector'', which replaces an entry point into the app. Once this replaced class is run, the ''Injector'' initializes LSPlant and downloads a precompiled ''Core'' to execute, which applies some fixes and then loads externally installed plugins. | |||
| | More detailed info can be found in this blog post: {{cite web|title=Aliucord: Modding the legacy Discord app|url=https://rushii.materii.dev/aliucord}} | ||
| | |||
==Manager== | |||
''Aliucord Manager'' was created in the summer of 2021<ref>{{cite web|title=Aliucord Manager initial commit|url=https://github.com/Aliucord/Manager/commit/7881279196652bf79ae83d971689d6ea6731d833}}</ref>, aiming to replace the Aliucord Installer with better design. It is written entirely in [[wikipedia:Kotlin_(programming_language)|Kotlin]] and [https://developer.android.com/jetpack/compose Jetpack Compose]. As of March 2024, it is still under development, nearly three years later. While initially, the main idea of this rewrite was to stop using [[wikipedia:Flutter_(software)|Flutter]], new ideas and features started to be implemented, aided by collaboration with [[Vendetta]]'s [https://github.com/vendetta-mod/VendettaManager Manager]. A more user-friendly UI, an install flow that handles edge cases, and multi-install support are some of the main differences. | |||
<!-- TODO: add images of various manager screens --> | |||
==Notes== | |||
<references/> | |||
[[Category:Client Mods]] | |||
[[Category:Client Mods]] |