# moduleçš„åˆ‡æ¢ ä»ŽFA模型切æ¢åˆ°Stage模型时,开å‘者需è¦å°†config.json文件moduleæ ‡ç¾ä¸‹çš„é…ç½®è¿ç§»åˆ°module.json5é…置文件moduleæ ‡ç¾ä¸‹ï¼Œå…·ä½“差异è§ä¸‹åˆ—è¡¨æ ¼ã€‚ **表1** FA模型moduleæ ‡ç¾ä¸ŽStage模型moduleæ ‡ç¾å·®å¼‚对比 | FAæ ‡ç¾ | æ ‡ç¾è¯´æ˜Ž | 对应的Stageæ ‡ç¾ | 差异说明 | | -------- | -------- | -------- | -------- | | mainAbility | æœåŠ¡ä¸å¿ƒå›¾æ ‡éœ²å‡ºçš„ability,常驻进程拉起时会å¯åЍmainAbility。 | mainElement | æ ‡ç¾åç§°å˜æ›´ï¼ŒStage模型ä¸åœ¨ä½¿ç”¨â€œ.â€ç¬¦å·ã€‚ | | package | æ ‡è¯†HAP的包结构å称,在应用内ä¿è¯å”¯ä¸€æ€§ã€‚ | / | Stage模型使用nameæ¥ä¿è¯åº”用唯一性。**FA模型å‡çº§åˆ°Stage模型时,Stage模型的name需è¦å’ŒFA模型的packageä¿æŒä¸€è‡´ï¼Œå¦åˆ™ä¼šå¯¼è‡´å‡çº§å¤±è´¥ã€‚** | | name | æ ‡è¯†HAP的类å。 | / | FA模型ä¸å®žé™…未使能,Stageæ¨¡åž‹æ²¡æœ‰ä¸Žä¹‹å¯¹åº”çš„æ ‡ç¾ã€‚ | | supportedModes | æ ‡è¯†åº”ç”¨æ”¯æŒçš„è¿è¡Œæ¨¡å¼ï¼Œå½“å‰åªå®šä¹‰äº†é©¾é©¶æ¨¡å¼ï¼ˆdrive)。 | / | Stage模型已废弃。 | | distro对象ä¸çš„moduleName | æ ‡è¯†å½“å‰HAPçš„å称。<br/>**distro对象**ä¸çš„moduleName。 | name | æ ‡ç¾å˜æ›´ã€‚ | | distro对象ä¸çš„moduleType | æ ‡è¯†å½“å‰HAP的类型,包括两ç§ç±»åž‹ï¼šentryå’Œfeature。å¦å¤–,如果表示HAR包类型,请设置为har。 | type | æ ‡ç¾å˜æ›´ã€‚ | | distro对象ä¸çš„installationFree | æ ‡è¯†å½“å‰HAPæ˜¯å¦æ”¯æŒå…安装特性。 | installationFree | æ ‡ç¾å˜æ›´ã€‚ | | distro对象ä¸çš„deliveryWithInstall | æ ‡è¯†å½“å‰HAPæ˜¯å¦æ”¯æŒéšåº”用安装。 | deliveryWithInstall | æ ‡ç¾å˜æ›´ã€‚ | | metaData | æ ‡è¯†HAP的元信æ¯ã€‚ | metadata | 具体差异è§è¡¨2。 | | abilities | æ ‡è¯†å½“å‰æ¨¡å—内的所有Ability。 | abilities | 具体差异è§è¡¨5。 | | js | æ ‡è¯†åŸºäºŽArkUI框架开å‘çš„JS模å—集åˆï¼Œå…¶ä¸çš„æ¯ä¸ªå…ƒç´ ä»£è¡¨ä¸€ä¸ªJS模å—的信æ¯ã€‚ | pages | Stage模型在moduleæ ‡ç¾ä¸‹ä¿ç•™è¯¥å¯¹è±¡ä¸çš„pages,windowé…置与pages的下一级。 | | shortcuts | æ ‡è¯†åº”ç”¨çš„å¿«æ·æ–¹å¼ä¿¡æ¯ã€‚ | shortcut_config.json文件 | 在开å‘视图的resources/base/profile下é¢å®šä¹‰é…置文件shortcut_config.json。 | | reqPermissions | æ ‡è¯†åº”ç”¨è¿è¡Œæ—¶å‘系统申请的æƒé™ã€‚ | requestPermissions | æ ‡ç¾åç§°å˜æ›´ã€‚ | | colorMode | æ ‡è¯†åº”ç”¨è‡ªèº«çš„é¢œè‰²æ¨¡å¼ã€‚ | / | Stageæ¨¡åž‹ä¸æ”¯æŒã€‚ | | distroFilter | æ ‡è¯†åº”ç”¨çš„åˆ†å‘规则。 | distributionFilter_config.json文件 | Stage模型在开å‘视图的resources/base/profile下é¢å®šä¹‰é…置文件distributionFilter_config.json。 | | reqCapabilities | æ ‡è¯†è¿è¡Œåº”ç”¨ç¨‹åºæ‰€éœ€çš„设备能力。 | / | Stageæ¨¡åž‹ä¸æ”¯æŒã€‚ | | commonEvents | 公共事件。 | common_event_config.json文件 | Stage模型在开å‘视图的resources/base/profile下é¢å®šä¹‰é…置文件common_event_config.json。 | | entryTheme | æ¤æ ‡ç¾æ ‡è¯†ç³»ç»Ÿå†…部主题的关键å—。 | / | Stageæ¨¡åž‹ä¸æ”¯æŒã€‚ | **表2** FA模型metaDataå’ŒStageä¸metadata对比 | FAæ ‡ç¾ | æ ‡ç¾è¯´æ˜Ž | 对应的Stageæ¨¡åž‹æ ‡ç¾ | 差异对比 | | -------- | -------- | -------- | -------- | | parameters | æ ‡è¯†è°ƒç”¨Abilityæ—¶æ‰€æœ‰è°ƒç”¨å‚æ•°çš„元信æ¯ã€‚ | / | Stageæ¨¡åž‹ä¸æ”¯æŒã€‚ | | results | æ ‡è¯†Ability返回值的元信æ¯ã€‚ | / | Stageæ¨¡åž‹ä¸æ”¯æŒã€‚ | | customizeData | è¯¥æ ‡ç¾æ ‡è¯†çˆ¶çº§ç»„件的自定义元信æ¯ï¼ŒParameterså’Œresults在applicationä¸å¯é…。 | metadata | 具体差异è§è¡¨3。 | **表3** FA模型metaDataçš„customizeDataå’ŒStageä¸metadata对比 | FAæ ‡ç¾ | æ ‡ç¾è¯´æ˜Ž | 对应的Stageæ¨¡åž‹æ ‡ç¾ | 差异对比 | | -------- | -------- | -------- | -------- | | name | æ ‡è¯†æ•°æ®é¡¹çš„é”®å称。å—符串最大长度为255å—节。 | name | æ— ã€‚ | | value | æ ‡è¯†æ•°æ®é¡¹çš„值。å—符串最大长度为255å—节。 | value | æ— ã€‚ | | extra | æ ‡è¯†å½“å‰customæ•°æ®çš„æ ¼å¼ï¼Œå–值为表示extra的资æºå€¼ã€‚ | resource | æ ‡ç¾å˜æ›´ã€‚具体实例è§è¡¨4。 | **表4** FA模型metaDataå’ŒStageä¸metadata示例 | FA模型示例 | Stage模型示例 | | -------- | -------- | | “meteDataâ€: {<br/> "customizeDate": [{<br/> "name": "label",<br/> "value": "string",<br/> "extra": "$string:label",<br/> }]<br/>} | “meteDataâ€: [{<br/> "name": "label",<br/> "value": "string",<br/> "resource": "$string:label",<br/>}] | **表5** FA模型和Stageä¸abilities差异对比 | FA模型的abilitieså¯¹è±¡æ ‡ç¾ | æè¿° | Stage模型ä¸abilitieså¯¹è±¡æ ‡ç¾ | 差异对比 | | -------- | -------- | -------- | -------- | | process | è¿è¡Œåº”ç”¨ç¨‹åºæˆ–Ability的进程å称。 | / | Stageæ¨¡åž‹ä¸æ”¯æŒabilitiesä¸é…置,在moduleæ ‡ç¾ä¸‹é…ç½®process。 | | uri | æ ‡è¯†Abilityçš„ç»Ÿä¸€èµ„æºæ ‡è¯†ç¬¦ã€‚ | / | Stageæ¨¡åž‹ä¸æ”¯æŒã€‚ | | deviceCapability | æ ‡è¯†Abilityè¿è¡Œæ—¶è¦æ±‚设备具有的能力,采用å—ç¬¦ä¸²æ•°ç»„çš„æ ¼å¼è¡¨ç¤ºã€‚ | / | Stageæ¨¡åž‹ä¸æ”¯æŒã€‚ | | metaData | è¯¥æ ‡ç¾æ ‡è¯†ability的元信æ¯ã€‚ | metadata | 具体差异è§è¡¨2。 | | type | æ ‡è¯†Ability的类型。 | / | Stageæ¨¡åž‹ä¸æ”¯æŒã€‚ | | grantPermission | 指定是å¦å¯ä»¥å‘Abilityå†…ä»»ä½•æ•°æ®æŽˆäºˆæƒé™ã€‚ | / | abilities内䏿”¯æŒã€‚ | | readPermission | æ ‡è¯†è¯»å–Abilityçš„æ•°æ®æ‰€éœ€çš„æƒé™ã€‚è¯¥æ ‡ç¾ä»…适用于data类型的Ability。 | / | abilities内䏿”¯æŒï¼Œåœ¨extensionAbilitiesæ ‡ç¾ä¸æ”¯æŒã€‚ | | writePermission | æ ‡è¯†å‘Abilityå†™æ•°æ®æ‰€éœ€çš„æƒé™ã€‚ | / | abilities内䏿”¯æŒï¼Œåœ¨extensionAbilitiesæ ‡ç¾ä¸æ”¯æŒã€‚ | | configChanges | æ ‡è¯†Ability关注的系统é…置集åˆã€‚ | / | Stageæ¨¡åž‹ä¸æ”¯æŒã€‚ | | mission | æ ‡è¯†AbilityæŒ‡å®šçš„ä»»åŠ¡æ ˆã€‚ | / | Stageæ¨¡åž‹ä¸æ”¯æŒã€‚ | | targetAbility | æ ‡è¯†å½“å‰Abilityé‡ç”¨çš„ç›®æ ‡Ability。 | / | Stageæ¨¡åž‹ä¸æ”¯æŒã€‚ | | multiUserShared | æ ‡è¯†Abilityæ˜¯å¦æ”¯æŒå¤šç”¨æˆ·çжæ€è¿›è¡Œå…±äº«ï¼Œè¯¥æ ‡ç¾ä»…适用于data类型的Ability。 | / | Stageæ¨¡åž‹ä¸æ”¯æŒã€‚ | | supportPipMode | æ ‡è¯†Abilityæ˜¯å¦æ”¯æŒç”¨æˆ·è¿›å…¥PIP模å¼ï¼ˆç”¨äºŽåœ¨é¡µé¢æœ€ä¸Šå±‚悬浮å°çª—å£ï¼Œä¿—ç§°"ç”»ä¸ç”»",常è§äºŽè§†é¢‘æ’æ”¾ç‰åœºæ™¯ï¼‰ã€‚ | / | Stageæ¨¡åž‹ä¸æ”¯æŒã€‚ | | formsEnabled | æ ‡è¯†Abilityæ˜¯å¦æ”¯æŒå¡ç‰‡ï¼ˆforms)功能。 | / | Stageæ¨¡åž‹ä¸æ”¯æŒã€‚ | | forms | æ ‡è¯†æœåŠ¡å¡ç‰‡çš„å±žæ€§ã€‚è¯¥æ ‡ç¾ä»…当formsEnabled为"true"时,æ‰èƒ½ç”Ÿæ•ˆã€‚ | form_config.json文件 | Stage模型在开å‘视图的resources/base/profile下é¢å®šä¹‰é…置文件form_config.json。 | | srcLanguage | Abilityå¼€å‘è¯è¨€çš„类型。 | / | Stageæ¨¡åž‹ä¸æ”¯æŒã€‚ | | srcPath | è¯¥æ ‡ç¾æ ‡è¯†Ability对应的JS组件代ç 路径。 | srcEntry | è¯¥æ ‡ç¾æ ‡è¯†ability所对应的js代ç 路径。 | | uriPermission | æ ‡è¯†è¯¥Ability有æƒè®¿é—®çš„åº”ç”¨ç¨‹åºæ•°æ®ã€‚ | / | Stageæ¨¡åž‹ä¸æ”¯æŒã€‚ |