public final class Timing extends ReactContextBaseJavaModule implements LifecycleEventListener, OnExecutorUnregisteredListener, HeadlessJsTaskEventListener
BaseJavaModule.JavaMethodNativeModule.NativeMethod| Modifier and Type | Field and Description |
|---|---|
protected static java.lang.String |
NAME |
METHOD_TYPE_ASYNC, METHOD_TYPE_PROMISE, METHOD_TYPE_SYNC| Constructor and Description |
|---|
Timing(ReactApplicationContext reactContext,
DevSupportManager devSupportManager) |
| Modifier and Type | Method and Description |
|---|---|
void |
createTimer(ExecutorToken executorToken,
int callbackID,
int duration,
double jsSchedulingTime,
boolean repeat) |
void |
deleteTimer(ExecutorToken executorToken,
int timerId) |
java.lang.String |
getName() |
void |
initialize()
This is called at the end of
CatalystApplicationFragment#createCatalystInstance()
after the CatalystInstance has been created, in order to initialize NativeModules that require
the CatalystInstance or JS modules. |
void |
onCatalystInstanceDestroy()
Called before {CatalystInstance#onHostDestroy}
|
void |
onExecutorDestroyed(ExecutorToken executorToken) |
void |
onHeadlessJsTaskFinish(int taskId)
Called when a JS task finishes (i.e.
|
void |
onHeadlessJsTaskStart(int taskId)
Called when a JS task is started, on the UI thread.
|
void |
onHostDestroy()
Called when host activity receives destroy event (e.g.
|
void |
onHostPause()
Called when host activity receives pause event (e.g.
|
void |
onHostResume()
Called either when the host activity receives a resume event (e.g.
|
void |
setSendIdleEvents(ExecutorToken executorToken,
boolean sendIdleEvents) |
boolean |
supportsWebWorkers()
In order to support web workers, a module must be aware that it can be invoked from multiple
different JS VMs.
|
getCurrentActivity, getReactApplicationContextcanOverrideExistingModule, getConstants, getMethodsprotected static final java.lang.String NAME
public Timing(ReactApplicationContext reactContext, DevSupportManager devSupportManager)
public void initialize()
NativeModuleCatalystApplicationFragment#createCatalystInstance()
after the CatalystInstance has been created, in order to initialize NativeModules that require
the CatalystInstance or JS modules.initialize in interface NativeModuleinitialize in class BaseJavaModulepublic void onHostPause()
LifecycleEventListenerActivity#onPause. Always called
for the most current activity.onHostPause in interface LifecycleEventListenerpublic void onHostDestroy()
LifecycleEventListenerActivity#onDestroy. Only called
for the last React activity to be destroyed.onHostDestroy in interface LifecycleEventListenerpublic void onHostResume()
LifecycleEventListenerActivity#onResume or
if the native module that implements this is initialized while the host activity is already
resumed. Always called for the most current activity.onHostResume in interface LifecycleEventListenerpublic void onHeadlessJsTaskStart(int taskId)
HeadlessJsTaskEventListeneronHeadlessJsTaskStart in interface HeadlessJsTaskEventListenertaskId - the unique identifier of this task instancepublic void onHeadlessJsTaskFinish(int taskId)
HeadlessJsTaskEventListenerHeadlessJsTaskSupportModule#notifyTaskFinished is called, or when it times out), on the
UI thread.onHeadlessJsTaskFinish in interface HeadlessJsTaskEventListenerpublic void onCatalystInstanceDestroy()
NativeModuleonCatalystInstanceDestroy in interface NativeModuleonCatalystInstanceDestroy in class BaseJavaModulepublic java.lang.String getName()
getName in interface NativeModulerequire() this module
from javascript.public boolean supportsWebWorkers()
NativeModuleExecutorToken as the first parameter before any arguments
from JS. This ExecutorToken internally maps to a specific JS VM and can be used by the
framework to route calls appropriately. In order to make JS module calls correctly, start using
the version of ReactContext.getJSModule(ExecutorToken, Class) that takes an
ExecutorToken. It will ensure that any calls you dispatch to the returned object will go to
the right VM. For Callbacks, you don't have to do anything special -- the framework
automatically tags them with the correct ExecutorToken when the are created.
Note: even though calls can come from multiple JS VMs on multiple threads, calls to this module
will still only occur on a single thread.supportsWebWorkers in interface NativeModulesupportsWebWorkers in class BaseJavaModulepublic void onExecutorDestroyed(ExecutorToken executorToken)
onExecutorDestroyed in interface OnExecutorUnregisteredListenerpublic void createTimer(ExecutorToken executorToken, int callbackID, int duration, double jsSchedulingTime, boolean repeat)
public void deleteTimer(ExecutorToken executorToken, int timerId)
public void setSendIdleEvents(ExecutorToken executorToken, boolean sendIdleEvents)