# 应用类型

> 对比 Shoplazza 公开应用与私有应用：分发方式、生命周期，以及嵌入式与独立式两种集成方式怎么选。

## 前置需求

你已完成[注册合作伙伴](/docs/app/getting-started/create-public-app/register-partner)，拥有一个合作伙伴账号。

应用是 Shoplazza 生态系统的重要组成部分，可分为两大类：**公有应用**和**私有应用**。

# 公有应用

公有应用上架于 **[Shoplazza 应用市场](https://appstore.shoplazza.com/)**，商家可以轻松发现、安装并使用这些应用来增强店铺功能。

## 公有应用生命周期

公有应用的生命周期包括以下阶段：

![](https://cnres.appracle.com/046e6c1c3b74d70115c7b49ca943dc4e.png)

1. **创建阶段**

* 开发者在合作伙伴平台上创建应用并构建相应的软件服务。

2. **审核阶段**

* 开发者在[合作伙伴平台](https://partners.shoplazza.com/)上提交应用审核。
* Shoplazza 运营团队在 **7 个工作日**内完成审核。

3. **上架状态**

* 审核通过后，应用上架至[应用市场](https://appstore.shoplazza.com/)，商家可发现该应用。
* 商家可浏览、安装并使用该应用为店铺添加功能。

4. **商家卸载应用**

* 如不再需要该应用的服务，商家可随时卸载。
* 卸载不影响应用在[应用市场](https://appstore.shoplazza.com/)的上架状态。

5. **下架状态**

* 如果应用服务质量未达预期，或开发者希望下架应用，可通过邮件申请。
* 下架后，应用在应用市场中不可见，商家无法安装或使用该应用。

## 公有应用与 Shoplazza 店铺的集成方式

### 嵌入式应用方式 {#embedded-apps-method}

嵌入式方式将整个应用置于 Shoplazza 店铺框架内（iframe 内部），应用可能需要适配 Shoplazza 的界面展示。如需使用 Shoplazza 前端的一些通用组件或 UI 样式，可能需要用到 [APP\_Bridge](/docs/app/developer-tools/app-bridge/) 组件库。\
嵌入式集成是推荐的集成方式，能为商家提供更好的体验，但对应用的开发能力要求较高。整体效果如下图所示：

![](https://cnres.appracle.com/1394ceab680768d5b0e67be5ddee1aa0.png)

如果您以嵌入式方式集成到 Shoplazza 框架中，可能需要在 ShopCraft 框架下自定义部分页面组件或 UI 效果。此时，您可能需要使用 [APP\_bridge](/docs/app/developer-tools/app-bridge/)。您可以将其理解为 ShopCraft 的前端 JavaScript 组件库，它允许您使用 ShopCraft 的一些通用组件功能和样式，例如隐藏"退出登录"按钮。如下图所示：

![](https://cnres.appracle.com/93ed66d0dd4fa20cc037218eb6d0721a.png)

:::note
想动手构建一个？参见 [开发嵌入式应用](/docs/app/getting-started/create-public-app/embed-in-admin)。
:::

### 独立应用方式

独立应用方式使用应用自己的域名打开应用，整个应用展示为一个完整的独立网页。因此，该方式无需适配 Shoplazza 店铺界面效果，自由度较高。\
如下图所示：

![](https://cnres.appracle.com/ae029d31bc40c6b83b256381ffd3ddf1.png)

# 私有应用

[私有应用](/docs/app/getting-started/create-private-app)是特定于某个店铺的，不会出现在[应用市场](https://appstore.shoplazza.com/)中。

## 私有应用生命周期

由于[私有应用](/docs/app/getting-started/create-private-app)仅服务于特定店铺，因此没有在[应用市场](https://appstore.shoplazza.com/)上架的流程，也没有安装或卸载过程。软件服务状态也由店铺自行维护。

![](https://cnres.appracle.com/994fd6238f8e0cf65a209c8806d58c41.png)

1. **创建阶段**

* 商家在店铺后台创建应用，并为应用准备相应的软件服务。

2. **商家删除应用**

* 如不再需要该应用，商家可将其删除。
* 应用将变为不可用，与该应用关联的所有 access token 将失效。

# 两者差异对比

详细差异如下：

  
    
      
        应用类型
      

      
        创建方式
      

      
        状态差异
      

      
        授权方式
      

      
        安装方式
      

      
        是否需要审核
      
    
  

  
    
      
        公有应用
      

      
        [在合作伙伴中心创建](https://partners.shoplazza.com/)
      

      
        有多种状态可用。
      

      
        OAuth
      

      
        可安装到多个 Shoplazza 店铺
      

      
        是，需发布到应用市场
      
    

    
      
        私有应用
      

      
        [在 Shoplazza 店铺后台创建](https://www.shoplazza.com/)
      

      
        只有两种状态：创建和删除。
      

      
        Access Token
      

      
        无需安装，仅服务于创建该应用的店铺
      

      
        无需图标、\
        无需详细描述、\
        无需发布
      
    
  

## 下一步

要构建公有应用（本指南主线）？继续阅读[创建应用](/docs/app/getting-started/create-public-app/create-app)。要构建私有应用或支付应用？参见[创建私有应用](/docs/app/getting-started/create-private-app)或[创建支付应用](/docs/app/getting-started/create-payment-app/)。
