History log of /expo/packages/expo-task-manager/src/TaskManager.ts (Results 1 – 16 of 16)
Revision Date Author Comments
# 1c4ab95f 15-May-2023 Kazuma Ohashi <[email protected]>

[task-manager] Update defineTask to accept type arguments (#21958)

Co-authored-by: Expo Bot <[email protected]>
Co-authored-by: Tomasz Sapeta <[email protected]>


# 40194603 01-Apr-2022 Bartosz Kaszubowski <[email protected]>

[docs] APISection: improve tables content rendering, add default values to interfaces (#16873)


# 8285c032 13-Aug-2021 Tomasz Sapeta <[email protected]>

Rename unimodules imports to expo-modules-core


# 16e1b7f9 06-May-2021 Bartosz Kaszubowski <[email protected]>

[task-manager] add doc comments in source (#12745)


# 06661b85 19-Jan-2021 Noitidart <[email protected]>

[task-manager] Add typing for executionInfo.appState (#11670)


# 285c19c2 19-Jan-2021 Noitidart <[email protected]>

[task-manager] Make TaskManagerTaskBody data generic (#11669)


# 2c95eb52 14-Oct-2020 Pranshu Chittora <[email protected]>

[expo-task-manager]<feat>: Add isAvailableAsync (#10657)

Closes #9659


# 65428d51 01-Sep-2020 Bartłomiej Klocek <[email protected]>

[packages] Add @deprecated annotations to deprecated APIs (#9959)

# Why

_This follows the TS 4.0 update PR: #9960_

Typescript 4.0 comes with support for `@deprecated` annotations, which gives

[packages] Add @deprecated annotations to deprecated APIs (#9959)

# Why

_This follows the TS 4.0 update PR: #9960_

Typescript 4.0 comes with support for `@deprecated` annotations, which gives nice VS Code (and probably other IDE) messages informing users about API deprecation. It also marks deprecated methods/properties with ~~Strikethrough~~.

See [this](https://devblogs.microsoft.com/typescript/announcing-typescript-4-0/#deprecated-support) and https://github.com/microsoft/TypeScript/pull/38523

# How

- Added appropriate annotations to every possible deprecated Expo API that I found.
- Updated existing comments to play nice with VS Code messages

Also, added note about dead code in Notifications, which is related to #9563 (I forgot to add it then)

> Not sure what to do with changelogs ❓

# Test Plan

Tested messages in VS Code with _TS 4.0.2_ enabled.

show more ...


# fa77eb64 28-Feb-2020 Tomasz Sapeta <[email protected]>

[task-manager] ♻️ Better support for fast refresh, improved typings (#7202)

# Why

Fixes #6619, improves TypeScript typings and adds doc comments.

# How

- Removed check whether the `defineTa

[task-manager] ♻️ Better support for fast refresh, improved typings (#7202)

# Why

Fixes #6619, improves TypeScript typings and adds doc comments.

# How

- Removed check whether the `defineTask` is called in top-level scope or not. That was causing unnecessary warnings and some problems with fast refresh or snacks. This check is not really needed now and appropriate warning will be logged either way but later, when the task is gonna be executed but there is no executor defined on the JS side.
- Exported some types that were not exported.
- Added doc comments.

# Test Plan

Tested in NCL example on iOS simulator while tracking device's location in the background and overriding tasks in the meantime by calling `defineTask` multiple times for the same task using fast refresh.

show more ...


# dc814a6b 24-Feb-2020 Stanisław Chmiela <[email protected]>

[test-suite] Fix test-suite error on start (#7163)

# Why

Dismissing error screen on every refresh can be daunting after some time (when running in `bare-expo`).

# How

- added `try`-`catch`

[test-suite] Fix test-suite error on start (#7163)

# Why

Dismissing error screen on every refresh can be daunting after some time (when running in `bare-expo`).

# How

- added `try`-`catch` around calls to missing Facebook Ads module
- added `if (ExpoTaskManager)` around `eventEmitter.addListener`, since event name is fetched as a constant of the module which may be `undefined`
- moved `require(testScreen)` which define tasks to _initialization phase_
- moved `require(cameraScreen)` to global scope since I feel `optionalRequire` only works in global scope (and well, it let me get rid of red screen)

# Test Plan

Running `bare-expo` does not show error screen.

show more ...


# 92f6de58 14-Feb-2020 Will Schurman <[email protected]>

[eslint-config-universe] Add import ordering alphabetization (#7038)


# 4ca5841d 22-Aug-2019 James Ide <[email protected]>

[lint] Fix lint errors and warnings in all packages that have the "lint" script defined

This will get the linting feature of `expotools check-packages` passing.


# 69185572 23-Apr-2019 Bartłomiej Bukowski <[email protected]>

@bbarthec/migrate native component list to typescript (#3975)

* [ncl] Migrate to TypeScript

* [ncl] fix runtime on mobile devices

* [ncl] Apply review suggestions


# 8d441c7e 14-Mar-2019 Stanisław Chmiela <[email protected]>

[packages] Move unimodules foundation to `org.unimodules` scope


# 11d9214b 19-Dec-2018 Evan Bacon <[email protected]>

[Web] Added shim for running in a web target (#3021)

* Added shim for running in a web target
* added `expo-errors` to `expo-task-manager`
* added `ExpoTaskManager.web`
* Fixed format


# 3b6a24fb 13-Dec-2018 Tomasz Sapeta <[email protected]>

[ios][android][sdk][ncl] Background location, geofencing and background fetch (#2338)

# Why

Canny issues:
- https://expo.canny.io/feature-requests/p/background-tasks-support
- https://expo.cann

[ios][android][sdk][ncl] Background location, geofencing and background fetch (#2338)

# Why

Canny issues:
- https://expo.canny.io/feature-requests/p/background-tasks-support
- https://expo.canny.io/feature-requests/p/background-location-tracking
- https://expo.canny.io/feature-requests/p/geofencing-api

Related PR:
- https://github.com/expo/universe/pull/3201 (docs)

# How

The core of this PR is to implement TaskManager that provides an API to manage tasks, especially these that run while the app is in the background. I hope I documented this piece enough so I don't have to write it here again ��

This PR also adds three ways of how we can use background tasks:
- Background location updates
`Location.startLocationUpdatesAsync`, `Location.stopLocationUpdatesAsync`, `Location.hasStartedLocationUpdatesAsync`
- Geofencing
`Location.startGeofencingAsync`, `Location.stopGeofencingAsync`, `Location.hasStartedGeofencingAsync`
- Background fetch
`expo-background-fetch` module, *iOS only so far*

Also, to improve the quality of `expo-location`, I've deprecated `enableHighAccuracy` option and introduced a new one called `accuracy`. It allows to use all possible accuracies provided by iOS platform. Android has fewer options of accuracy, but I've made simple mapping (see https://github.com/expo/expo/pull/2338/files#diff-66bdbbc66d3410d9198aa17584b5409eR633).

All new modules and `expo-location` are now TypeScripted ��

# Test Plan

New APIs examples in `native-component-list`:
- `BackgroundFetch` - shows the status and the date of the last background fetch which can be manually triggered in Xcode (Debug -> Simulate background fetch).
- `Location` -> `Background location map` - it tracks your location by drawing a polyline.
- `Location` -> `Geofencing map` - this one will work better once we merge #2316, as it should show local notifications when the device enters/exits a region.
- `TaskManager` - shows all registered tasks for the experience.

There are also some quick tests in `test-suite` for the new methods in `Location` and `TaskManager` modules.

show more ...