Building Plugins: Getting Started - AnesHamdani08/QuickBeat GitHub Wiki
QuickBeat V2 code name Exceed introduced a new plugin framework, this allows third-party developers to build plugin to enhance the functionality of the app. At the end of this guide you'll have a functioning Quickbeat plugin.
Bear in mind
- The plugin framework is guarded with a poweful Hypervisor that allow/blocks API calls that don't match the plugin permissions signature.
- Each plugin must inherit from the base
QuickBeat.Plugins.Plugin
class - Each plugin must supply a
QuickBeat.Plugins.Classes.PluginSecret
attribute - Plugin permissions are read, given and memorised at each app startup. This means that selective permissions allowance isn't available at the moment and all requested permissions are given at plugin load
- Plugin permissions are requested at compile time and can't be changed after building the DLL
- Plugin permissions are requested using
QuickBeat.Plugins.Classes.RequiredPermissions
attribute - When a plugin is disabled all framework calls are blocked and throws a
Security.SecurityException
- The framework and the app are developed using .NET Framework 4.8
- All framework calls are async
- Calls that are blocked by the Hypervisor throws a
Security.SecurityException
Creating The Project
Before creating the project make sure you either have QuickBeat installed or the SDK supplied with each release starting from 2.0.0.0