AppRegistry
AppRegistry是所有 React Native 应用的 JS 入口。应用的根组件应当通过AppRegistry.registerComponent方法注册自己,然后原生系统才可以加载应用的代码包并且在启动完成之后通过调用AppRegistry.runApplication来真正运行应用。
import { Text, AppRegistry } from 'react-native';
const App = (props) => (
<View>
<Text>App1</Text>
</View>
);
AppRegistry.registerComponent('Appname', () => App);
要“结束”一个应用并销毁视图的话,请调用AppRegistry.unmountApplicationComponentAtRootTag方法,参数为在runApplication中使用的标签名。它们必须严格匹配。
AppRegistry应当在require序列中尽可能早的被 require 到,以确保 JS 运行环境在其它模块之前被准备好。
文档
方法
cancelHeadlessTask()
static cancelHeadlessTask(taskId, taskKey)
Only called from native code. Cancels a headless task. @param taskId the native id for this task instance that was used when startHeadlessTask was called @param taskKey the key for the task that was used when startHeadlessTask was called
参数:
| 名称 | 类型 | 说明 |
|---|---|---|
| taskId Required | number | The native id for this task instance that was used when startHeadlessTask was called. |
| taskKey Required | string | The key for the task that was used when startHeadlessTask was called. |
enableArchitectureIndicator()
static enableArchitectureIndicator(enabled)
参数:
| 名称 | 类型 |
|---|---|
| enabled Required | boolean |
getAppKeys()
static getAppKeys()
Returns an Array of AppKeys
getRegistry()
static getRegistry()
Returns a Registry object.
getRunnable()
static getRunnable(appKey)
Returns a Runnable object.
参数:
| 名称 | 类型 |
|---|---|
| appKey Required | string |
getSectionKeys()
static getSectionKeys()
Returns an array of strings.
getSections()
static getSections()
Returns a Runnables object.
registerCancellableHeadlessTask()
static registerCancellableHeadlessTask(taskKey, taskProvider, taskCancelProvider)
Register a headless task which can be cancelled. A headless task is a bit of code that runs without a UI.
参数:
| 名称 | 类型 | 说明 |
|---|---|---|
| taskKey Required | string | The native id for this task instance that was used when startHeadlessTask was called. |
| taskProvider Required | TaskProvider | A promise returning function that takes some data passed from the native side as the only argument. When the promise is resolved or rejected the native side is notified of this event and it may decide to destroy the JS context. |
| taskCancelProvider Required | TaskCancelProvider | a void returning function that takes no arguments; when a cancellation is requested, the function being executed by taskProvider should wrap up and return ASAP. |
registerComponent()
static registerComponent(appKey, componentProvider, section?)
参数:
| 名称 | 类型 |
|---|---|
| appKey Required | string |
| componentProvider Required | ComponentProvider |
| section | boolean |
registerConfig()
static registerConfig(config)
参数:
| 名称 | 类型 |
|---|---|
| config Required | AppConfig |
registerHeadlessTask()
static registerHeadlessTask(taskKey, taskProvider)
Register a headless task. A headless task is a bit of code that runs without a UI.
This is a way to run tasks in JavaScript while your app is in the background. It can be used, for example, to sync fresh data, handle push notifications, or play music.
参数:
| 名称 | 类型 | 说明 |
|---|---|---|
| taskKey Required | string | The native id for this task instance that was used when startHeadlessTask was called. |
| taskProvider Required | TaskProvider | A promise returning function that takes some data passed from the native side as the only argument. When the promise is resolved or rejected the native side is notified of this event and it may decide to destroy the JS context. |
registerRunnable()
static registerRunnable(appKey, run)
参数:
| 名称 | 类型 |
|---|---|
| appKey Required | string |
| run Required | function |
registerSection()
static registerSection(appKey, component)
参数:
| 名称 | 类型 |
|---|---|
| appKey Required | string |
| component Required | ComponentProvider |
runApplication()
static runApplication(appKey, appParameters)
加载 JavaScript bundle 并运行应用。
参数:
| 名称 | 类型 |
|---|---|
| appKey Required | string |
| appParameters Required | any |
setComponentProviderInstrumentationHook()
static setComponentProviderInstrumentationHook(hook)
参数:
| 名称 | 类型 |
|---|---|
| hook Required | function |
A valid hook function accepts the following as arguments:
| 名称 | 类型 |
|---|---|
| component Required | ComponentProvider |
| scopedPerformanceLogger Required | IPerformanceLogger |
The function must also return a React Component.
setWrapperComponentProvider()
static setWrapperComponentProvider(provider)
参数:
| 名称 | 类型 |
|---|---|
| provider Required | ComponentProvider |
startHeadlessTask()
static startHeadlessTask(taskId, taskKey, data)
Only called from native code. Starts a headless task.
参数:
| 名称 | 类型 | 说明 |
|---|---|---|
| taskId Required | number | The native id for this task instance to keep track of its execution. |
| taskKey Required | string | The key for the task to start. |
| data Required | any | The data to pass to the task. |
unmountApplicationComponentAtRootTag()
static unmountApplicationComponentAtRootTag(rootTag)
Stops an application when a view should be destroyed.
参数:
| 名称 | 类型 |
|---|---|
| rootTag Required | number |
类型定义
AppConfig
Application configuration for the registerConfig method.
| 类型 |
|---|
| object |
Properties:
| 名称 | 类型 |
|---|---|
| appKey Required | string |
| component | ComponentProvider |
| run | function |
| section | boolean |
Note: Every config is expected to set either
componentorrunfunction.
Registry
| 类型 |
|---|
| object |
Properties:
| 名称 | 类型 |
|---|---|
| runnables | array of Runnables |
| sections | array of strings |
Runnable
| 类型 |
|---|
| object |
Properties:
| 名称 | 类型 |
|---|---|
| component | ComponentProvider |
| run | function |
Runnables
An object with key of appKey and value of type of Runnable.
| 类型 |
|---|
| object |
Task
A Task is a function that accepts any data as argument and returns a Promise that resolves to undefined.
| 类型 |
|---|
| function |
TaskCanceller
A TaskCanceller is a function that accepts no argument and returns void.
| 类型 |
|---|
| function |
TaskCancelProvider
A valid TaskCancelProvider is a function that returns a TaskCanceller.
| 类型 |
|---|
| function |
TaskProvider
A valid TaskProvider is a function that returns a Task.
| 类型 |
|---|
| function |