-
Notifications
You must be signed in to change notification settings - Fork 17
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: Capacitor Plugin #3
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
theproducer
requested review from
markemer,
ItsChaceD,
IT-MikeS and
giralte-ionic
April 26, 2023 15:15
giralte-ionic
approved these changes
Apr 27, 2023
# Conflicts: # package.json # packages/ios-engine/.gitignore # packages/ios-engine/Package.swift # packages/ios-engine/Sources/RunnerEngine/Context.swift # packages/ios-engine/Sources/RunnerEngine/Errors.swift # packages/ios-engine/Sources/RunnerEngine/JSConsole.swift # packages/ios-engine/Sources/RunnerEngine/JSCrypto.swift # packages/ios-engine/Sources/RunnerEngine/JSTextDecoder.swift # packages/ios-engine/Sources/RunnerEngine/JSTextEncoder.swift # packages/ios-engine/Sources/RunnerEngine/Runner.swift # packages/ios-engine/Tests/RunnerEngineTests/ContextTests.swift # packages/ios-engine/Tests/RunnerEngineTests/RunnerTests.swift # pnpm-lock.yaml # pnpm-workspace.yaml
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR wraps both
iOS-engine
andandroid-engine
into a capacitor plugin.Users define their runner configuration in their application's
capacitor.config.ts
file. On load, the plugin parses the config file and sets up the configurations for the defined runners, and will automatically register them with the system when the app is backgrounded (so long asautoStart
istrue
).dispatchEvent
: Can be called with arguments to call an event and get a response back from an already registered runner config while the app is in the foreground.registerBackgroundTask
: Will set up a passed in runner configuration and configure it to run the next time the app is backgrounded (if a runner for the same label exists, will update the config).Android
Uses WorkManager for scheduling and running tasks in the background. Runner events that are configured to run once use the
OneTimeWorkRequest
, while repeatable runner events use thePeriodicWorkRequest
.iOS
Uses the BackgroundTasks framework for scheduling and running tasks in the background. One time and repeatable events use
BGAppRefreshTaskRequest
, in the future if we run into issues with users attempting to execute long running processes, we can create some config options to useBGProcessingTaskRequest
.