generating-custom-application

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

When to Use This Skill

何时使用此技能

Use this skill when you need to:
  • Create Lightning applications
  • Organize tabs and features into focused apps
  • Configure application navigation and branding
  • Set up custom page layouts for objects
  • Troubleshoot deployment errors related to custom applications
当你需要以下操作时,使用此技能:
  • 创建Lightning应用
  • 将标签和功能组织到聚焦型应用中
  • 配置应用导航和品牌标识
  • 为对象设置自定义页面布局
  • 排查与自定义应用相关的部署错误

CustomApplication (Lightning App) Metadata Specification

CustomApplication(Lightning应用)元数据规范

Overview

概述

Custom applications (Lightning Apps) that group tabs and functionality to provide a focused user experience for specific business processes. Always configured for Lightning Experience.
自定义应用(Lightning应用)可将标签和功能分组,为特定业务流程提供聚焦的用户体验。此类应用始终针对Lightning Experience进行配置。

🎯 Purpose

🎯 用途

  • Organize related functionality into focused applications
  • Group tabs and components for specific user roles
  • Provide tailored user experiences
  • Control access to specific features and data
  • Use Standard navigation for general business applications or Console navigation for specialized service/support workflows requiring multi-tab workspaces
  • Create professional, branded application identity with custom colors and branding
  • Override standard actions with custom Lightning pages for enhanced user experience
  • Enable profile-specific experiences through profile action overrides
  • 将相关功能组织到聚焦型应用中
  • 为特定用户角色分组标签和组件
  • 提供定制化的用户体验
  • 控制对特定功能和数据的访问权限
  • 对于通用业务应用使用标准导航,对于需要多标签工作区的专业服务/支持工作流使用控制台导航
  • 通过自定义颜色和品牌标识打造专业、独特的应用形象
  • 使用自定义Lightning页面覆盖标准操作,提升用户体验
  • 通过配置文件操作覆盖实现针对特定配置文件的体验

⚙️ Required Properties

⚙️ 必填属性

Core Application Properties

核心应用属性

  • fullName: API name of the application
  • label: Display name of the application
  • uiType: Always "Lightning" for modern apps
  • navType: CRITICAL - Choose based on user requirements and workflow patterns
    • "Standard": DEFAULT for general business applications (e.g., sales, marketing, operations)
    • "Console": ONLY when workflow requires managing multiple records simultaneously with split-view or multi-tab workspace (e.g., customer service, call centers, support operations)
  • formFactors: Array of form factors (["LARGE"] for desktop, ["SMALL"] for mobile, or both)
  • fullName:应用的API名称
  • label:应用的显示名称
  • uiType:现代应用始终设为"Lightning"
  • navType:关键属性 - 根据用户需求和工作流模式选择
    • "Standard":通用业务应用的默认选项(例如销售、营销、运营)
    • "Console":仅当工作流需要同时管理多条记录、使用拆分视图或多标签工作区时使用(例如客户服务、呼叫中心、支持运营)
  • formFactors:适配设备类型的数组(["LARGE"]对应桌面端,["SMALL"]对应移动端,或两者皆选)

Optional Properties

可选属性

  • description: Brief description of the application's purpose
  • tabs: Array of tab names to include
  • utilityBar: API name of the Utility Bar configuration
  • brand: ⚠️ HIGHLY RECOMMENDED - Branding configuration object (headerColor, shouldOverrideOrgTheme, footerColor)
  • actionOverrides: ⚠️ REQUIRED when custom record pages exist - Action override configuration (actionName, content, formFactor, type, pageOrSobjectType)
  • profileActionOverrides: Profile-specific action overrides (actionName, content, formFactor, pageOrSobjectType, type, profile)
  • isNavAutoTempTabsDisabled: Navigation behavior setting (default: false)
  • isNavPersonalizationDisabled: Personalization setting (default: false)
  • isNavTabPersistenceDisabled: Tab persistence setting (default: false)
  • description:应用用途的简要说明
  • tabs:要包含的标签名称数组
  • utilityBar:Utility Bar配置的API名称
  • brand:⚠️ 强烈推荐配置 - 品牌标识配置对象(headerColor、shouldOverrideOrgTheme、footerColor)
  • actionOverrides:⚠️ 当存在自定义记录页面时为必填项 - 操作覆盖配置(actionName、content、formFactor、type、pageOrSobjectType)
  • profileActionOverrides:针对特定配置文件的操作覆盖(actionName、content、formFactor、pageOrSobjectType、type、profile)
  • isNavAutoTempTabsDisabled:导航行为设置(默认值:false)
  • isNavPersonalizationDisabled:个性化设置(默认值:false)
  • isNavTabPersistenceDisabled:标签持久化设置(默认值:false)

🔧 Application Configuration

🔧 应用配置

Navigation Type Selection (CRITICAL)

导航类型选择(关键)

Decision Criteria for navType:
Choose "Standard" (DEFAULT) for:
  • General business applications and most workflows
  • Single-record focus or linear navigation patterns
  • Standard tab-based navigation is sufficient
Choose "Console" ONLY when workflow requires:
  • Managing multiple related records simultaneously in split-view
  • Multi-tab workspace for handling complex, interconnected data
  • Contextual information from multiple sources visible at once
  • Examples: customer service operations, support desks, call centers
When in doubt: Default to "Standard" for most general business use cases
navType决策标准:
选择"Standard"(默认)的场景:
  • 通用业务应用及大多数工作流
  • 单记录聚焦或线性导航模式
  • 标准标签式导航已足够满足需求
仅在以下工作流场景选择"Console":
  • 需要在拆分视图中同时管理多条相关记录
  • 需要多标签工作区处理复杂、相互关联的数据
  • 需要同时查看来自多个来源的上下文信息
  • 示例:客户服务运营、支持台、呼叫中心
不确定时: 大多数通用业务场景默认选择"Standard"

Navigation Settings

导航设置

  • isNavAutoTempTabsDisabled: Controls automatic temporary tab creation
  • isNavPersonalizationDisabled: Controls user personalization features
  • isNavTabPersistenceDisabled: Controls tab persistence across sessions
  • isNavAutoTempTabsDisabled:控制自动临时标签的创建
  • isNavPersonalizationDisabled:控制用户个性化功能
  • isNavTabPersistenceDisabled:控制跨会话的标签持久化

Tab Management

标签管理

  • tabs: Array of tab names to include in the application
  • formFactors: Device-specific configurations (Large for desktop, Small for mobile)
  • tabs:应用中要包含的标签名称数组
  • formFactors:针对不同设备的配置(Large对应桌面端,Small对应移动端)

Utility Bar

Utility Bar

  • utilityBar: Reference to Lightning utility bar (appears at bottom of Lightning Experience)
  • utilityBar:引用Lightning utility bar(显示在Lightning Experience底部)

Branding (HIGHLY RECOMMENDED - DO NOT SKIP)

品牌标识配置(强烈推荐 - 请勿跳过)

IMPORTANT: Provide branding configuration to create a professional, visually distinct application identity.
  • brand.headerColor: Header bar color in hex format (e.g., "#0070D2") - RECOMMENDED
  • brand.shouldOverrideOrgTheme: Override organization theme (true/false) - Default: false
  • brand.footerColor: Footer color in hex format
重要提示:配置品牌标识以打造专业、视觉独特的应用形象。
  • brand.headerColor:标题栏颜色(十六进制格式,例如"#0070D2")- 推荐配置
  • brand.shouldOverrideOrgTheme:是否覆盖组织主题(true/false)- 默认值:false
  • brand.footerColor:页脚颜色(十六进制格式)

Action Overrides (CRITICAL - DO NOT SKIP)

操作覆盖配置(关键 - 请勿跳过)

IMPORTANT: Action overrides MUST be created for every custom object tab that has a record page generated by flexipage expert.
  • actionOverrides.actionName: Action to override ("View" or "Tab")
  • actionOverrides.content: Page/component name (FlexiPage, Visualforce, Lightning component)
    • For "View" action: Reference record pages generated by flexipage expert
    • For "Tab" action: Reference home/app pages generated by flexipage expert
  • actionOverrides.formFactor: Device type ("Large" or "Small")
  • actionOverrides.type: Override type ("Default", "Visualforce", "Flexipage", "LightningComponent", "Scontrol")
    • Recommended: Use "Flexipage" for Lightning record/home pages generated by flexipage expert
  • actionOverrides.pageOrSobjectType: Object API name the override applies to
  • actionOverrides.comment: Optional description (max 1000 characters)
    • Auto-generated comment: "Action override created by Lightning App Builder during activation."
  • actionOverrides.skipRecordTypeSelect: Skip record type selection (default: false)
重要提示:对于每个拥有flexipage expert生成的记录页面的自定义对象标签,必须创建操作覆盖。
  • actionOverrides.actionName:要覆盖的操作("View"或"Tab")
  • actionOverrides.content:页面/组件名称(FlexiPage、Visualforce、Lightning组件)
    • 对于"View"操作:引用flexipage expert生成的记录页面
    • 对于"Tab"操作:引用flexipage expert生成的首页/应用页面
  • actionOverrides.formFactor:设备类型("Large"或"Small")
  • actionOverrides.type:覆盖类型("Default"、"Visualforce"、"Flexipage"、"LightningComponent"、"Scontrol")
    • 推荐:对于flexipage expert生成的Lightning记录/首页,使用"Flexipage"
  • actionOverrides.pageOrSobjectType:覆盖适用的对象API名称
  • actionOverrides.comment:可选描述(最多1000字符)
    • 自动生成的描述:"Action override created by Lightning App Builder during activation."
  • actionOverrides.skipRecordTypeSelect:是否跳过记录类型选择(默认值:false)

Profile Action Overrides

配置文件操作覆盖

  • profileActionOverrides.actionName: Action to override ("View" or "Tab")
  • profileActionOverrides.content: Page/component name
    • For "View" action: Reference profile-specific record pages generated by flexipage expert
    • For "Tab" action: Reference profile-specific home pages generated by flexipage expert
    • Can reference same or different FlexiPages than actionOverrides for profile-specific experiences
  • profileActionOverrides.formFactor: Device type ("Large" or "Small")
  • profileActionOverrides.pageOrSobjectType: Object API name
  • profileActionOverrides.type: Override type
    • Recommended: Use "Flexipage" for Lightning pages generated by flexipage expert
  • profileActionOverrides.profile: Profile API name (e.g., "Admin", "Standard User")
    • Enables different page layouts for different user profiles
  • profileActionOverrides.actionName:要覆盖的操作("View"或"Tab")
  • profileActionOverrides.content:页面/组件名称
    • 对于"View"操作:引用flexipage expert生成的特定配置文件记录页面
    • 对于"Tab"操作:引用flexipage expert生成的特定配置文件首页
    • 可引用与actionOverrides相同或不同的FlexiPages,以实现针对特定配置文件的体验
  • profileActionOverrides.formFactor:设备类型("Large"或"Small")
  • profileActionOverrides.pageOrSobjectType:对象API名称
  • profileActionOverrides.type:覆盖类型
    • 推荐:对于flexipage expert生成的Lightning页面,使用"Flexipage"
  • profileActionOverrides.profile:配置文件API名称(例如"Admin"、"Standard User")
    • 可为不同用户配置文件启用不同的页面布局

📱 Device Support

📱 设备支持

Desktop Configuration

桌面端配置

  • formFactor: "Large"
  • tabs: Full list of application tabs
  • formFactor:"Large"
  • tabs:完整的应用标签列表

Phone Configuration

移动端配置

  • formFactor: "Small"
  • tabs: Mobile-optimized tab selection
  • formFactor:"Small"
  • tabs:经过移动端优化的标签选择

Tablet Configuration

平板端配置

  • formFactor: "Medium"
  • tabs: Tablet-appropriate tab selection
  • formFactor:"Medium"
  • tabs:适合平板的标签选择

🎨 User Experience Features

🎨 用户体验功能

Navigation Behavior

导航行为

  • Auto Temporary Tabs: Can be enabled/disabled
  • Personalization: User customization options
  • Tab Persistence: Remember user's tab selections
  • 自动临时标签:可启用/禁用
  • 个性化:用户自定义选项
  • 标签持久化:记住用户的标签选择

Accessibility

无障碍访问

  • Keyboard Navigation: Full keyboard support
  • Screen Reader: Compatible with assistive technologies
  • High Contrast: Support for high contrast modes
  • 键盘导航:完整的键盘支持
  • 屏幕阅读器:兼容辅助技术
  • 高对比度:支持高对比度模式

🔗 Integration Points

🔗 集成点

  • Custom Tabs: Include custom object and web tabs
  • Standard Tabs: Include standard Salesforce tabs
  • Lightning Pages: Integrate with Lightning page layouts
  • Components: Include custom Lightning components
  • 自定义标签:包含自定义对象和网页标签
  • 标准标签:包含Salesforce标准标签
  • Lightning页面:与Lightning页面布局集成
  • 组件:包含自定义Lightning组件

✅ Best Practices

✅ 最佳实践

  • Always use Lightning UI: Set
    uiType
    to "Lightning" for modern apps
  • Choose appropriate navigation: CRITICAL - Analyze requirements carefully for
    navType
    selection
    • Use "Standard" (DEFAULT) for general business applications
    • Use "Console" ONLY when workflow requires multi-tab workspace, split-view, or managing multiple related records simultaneously
    • Examples for Console: customer service, call centers, support operations
    • Default to "Standard" for most general business use cases
  • Include Standard Tabs: Add common Salesforce tabs (Home, Accounts, Contacts, etc.)
  • Use clear, descriptive application names
  • Group related functionality logically
  • Consider different user roles and needs
  • Test across different device types
  • Ensure proper permissions and access control
  • Provide meaningful descriptions for users
  • Follow consistent naming conventions
  • Always configure branding: Set headerColor to create professional application identity
  • Use accessible brand colors: Ensure hex colors have sufficient contrast (WCAG AA compliant)
  • Configure utility bars: Add useful quick-access tools for users
  • Leverage action overrides: Customize page layouts for specific objects using FlexiPages from flexipage expert
  • Use profile overrides: Provide role-specific experiences by referencing different flexipage expert generated pages per profile
  • 始终使用Lightning UI:将
    uiType
    设为"Lightning"以获得现代应用体验
  • 选择合适的导航类型:关键操作 - 仔细分析需求以选择
    navType
    • 通用业务应用使用"Standard"(默认)
    • 仅当工作流需要多标签工作区、拆分视图或同时管理多条相关记录时使用"Console"
    • Console适用场景示例:客户服务、呼叫中心、支持运营
    • 大多数通用业务场景默认选择"Standard"
  • 包含标准标签:添加常见的Salesforce标签(Home、Accounts、Contacts等)
  • 使用清晰、描述性的应用名称
  • 按逻辑分组相关功能
  • 考虑不同用户角色和需求
  • 在不同设备类型上进行测试
  • 确保权限和访问控制设置正确
  • 为用户提供有意义的描述
  • 遵循一致的命名规范
  • 始终配置品牌标识:设置headerColor以打造专业的应用形象
  • 使用无障碍品牌颜色:确保十六进制颜色具有足够的对比度(符合WCAG AA标准)
  • 配置utility bars:为用户添加实用的快捷工具
  • 利用操作覆盖:使用flexipage expert生成的FlexiPages为特定对象自定义页面布局
  • 使用配置文件覆盖:通过为每个配置文件引用flexipage expert生成的不同页面,实现基于角色的定制化体验

🎯 Enhancement Rules

🎯 增强规则

  • uiType: Always set to "Lightning" for modern app experience
  • navType: CRITICAL DECISION - Analyze user requirements carefully
    • Set to "Standard" (DEFAULT) for general business applications
    • Set to "Console" ONLY when workflow requires:
      • Managing multiple related records simultaneously with split-view capability
      • Multi-tab workspace for handling complex, interconnected data
      • Contextual information from multiple sources visible at once
    • Console examples: customer service operations, call centers, support desks
    • When in doubt between Standard and Console, choose "Standard" for most business use cases
  • formFactors: Always set to ["LARGE"] for desktop Lightning Experience
  • Standard Tabs: Automatically add Home, Accounts, Contacts, Opportunities, Leads, Cases
  • Navigation Settings: Set all navigation flags to false for best user experience
  • Branding: ALWAYS include brand configuration for professional application identity
    • MANDATORY: Set brand.headerColor to appropriate color (e.g., "#0070D2" for Salesforce Blue)
    • Set brand.shouldOverrideOrgTheme based on requirements
  • Action Overrides: ALWAYS create action overrides when custom record pages exist
    • MANDATORY: Add actionOverrides for "View" action pointing to flexipage expert generated record pages
    • Use "Flexipage" type and reference the exact FlexiPage name
    • Set formFactor to "Large" for desktop
    • Include pageOrSobjectType with the object API name
  • Profile Action Overrides: Reference flexipage expert generated pages for role-based customization
  • Form Factors: Use "Large" for desktop, "Small" for mobile in overrides
  • uiType:现代应用始终设为"Lightning"
  • navType:关键决策 - 仔细分析用户需求
    • 通用业务应用设为"Standard"(默认)
    • 仅当工作流需要以下场景时设为"Console":
      • 使用拆分视图同时管理多条相关记录
      • 使用多标签工作区处理复杂、相互关联的数据
      • 同时查看来自多个来源的上下文信息
    • Console适用场景示例:客户服务运营、呼叫中心、支持台
    • 当在Standard和Console之间不确定时,大多数业务场景选择"Standard"
  • formFactors:桌面端Lightning Experience始终设为["LARGE"]
  • 标准标签:自动添加Home、Accounts、Contacts、Opportunities、Leads、Cases
  • 导航设置:将所有导航标志设为false以获得最佳用户体验
  • 品牌标识:始终包含品牌配置以打造专业的应用形象
    • 必填:将brand.headerColor设为合适的颜色(例如Salesforce蓝色"#0070D2")
    • 根据需求设置brand.shouldOverrideOrgTheme
  • 操作覆盖:当存在自定义记录页面时,始终创建操作覆盖
    • 必填:添加针对"View"操作的actionOverrides,指向flexipage expert生成的记录页面
    • 使用"Flexipage"类型并引用准确的FlexiPage名称
    • 桌面端将formFactor设为"Large"
    • 包含pageOrSobjectType并设置为正确的对象API名称
  • 配置文件操作覆盖:引用flexipage expert生成的页面以实现基于角色的定制化
  • 设备类型:覆盖配置中,桌面端使用"Large",移动端使用"Small"

⚠️ CRITICAL Verification Checklist (MUST VERIFY)

⚠️ 关键验证清单(必须验证)

  • All tabs are included in the application
  • navType IS CORRECTLY SET - Verify Console vs Standard selection
  • Default to "Standard" for most general business applications
  • Set to "Console" ONLY if workflow requires managing multiple records simultaneously, split-view, or multi-tab workspace
  • If requirements are general/ambiguous → navType should be "Standard"
  • BRANDING IS CONFIGURED - This is HIGHLY RECOMMENDED for professional applications
  • brand.headerColor is set with valid hex color (e.g., "#0070D2")
  • brand.shouldOverrideOrgTheme is set (default: false)
  • ACTION OVERRIDES ARE CREATED - This is MANDATORY for every custom object with a record page
  • Action overrides are defined for EACH custom object tab pointing to the correct record page
  • actionOverrides.content matches the exact FlexiPage name generated by flexipage expert
  • actionOverrides.pageOrSobjectType is set to the correct object API name
  • actionOverrides.type is set to "Flexipage"
  • actionOverrides.actionName is set to "View"
  • actionOverrides.formFactor is set to "Large"
  • All required fields are populated (fullName, label, uiType, navType, formFactors)
  • 所有标签已包含在应用中
  • navType已正确设置 - 验证Console和Standard的选择是否正确
  • 大多数通用业务应用默认选择"Standard"
  • 仅当工作流需要同时管理多条记录、拆分视图或多标签工作区时选择"Console"
  • 如果需求通用/不明确 → navType应设为"Standard"
  • 已配置品牌标识 - 专业应用强烈推荐配置此项
  • brand.headerColor已设置为有效的十六进制颜色(例如"#0070D2")
  • brand.shouldOverrideOrgTheme已设置(默认值:false)
  • 已创建操作覆盖 - 每个拥有记录页面的自定义对象必须配置此项
  • 已为每个自定义对象标签定义操作覆盖,并指向正确的记录页面
  • actionOverrides.content与flexipage expert生成的FlexiPage名称完全匹配
  • actionOverrides.pageOrSobjectType已设置为正确的对象API名称
  • actionOverrides.type已设为"Flexipage"
  • actionOverrides.actionName已设为"View"
  • actionOverrides.formFactor已设为"Large"
  • 所有必填字段已填充(fullName、label、uiType、navType、formFactors)