---
title: Publish a Capacitor App on Huawei AppGallery
description: Publish a Capacitor app on Huawei AppGallery with the APK you already build. Audit plugins for Google Play services and automate every submission.
date:
  created: 2026-09-28
  updated: 2026-09-28
authors:
  - robingenz
categories:
  - Capacitor
  - Cloud
  - Guides
links:
  - Huawei AppGallery Destination: cloud/app-store-publishing/destinations/huawei-appgallery.md
  - Submit Automatically After a Build: cloud/app-store-publishing/submit-automatically.md
faq: true
---

# Publish a Capacitor App on Huawei AppGallery

Yes, you can publish a Capacitor app on Huawei AppGallery with the same APK or App Bundle you build for Google Play, and Capacitor itself has no Google Play services dependency. The work is in your plugins. Huawei phones launched since late 2019 ship without Google services, so push notifications through Firebase Cloud Messaging, Google Maps and Google Play Billing need a check or a fallback before the first upload. This guide covers the plugin audit, the one-time setup in AppGallery Connect and automatic submission from Capawesome Cloud. Huawei puts AppGallery at more than 580 million monthly active users in more than 170 countries and regions, according to its [September 2025 figures](https://www.prnewswire.com/news-releases/huawei-appgallery-wraps-up-record-breaking-gamescom-2025-with-exclusive-offers-for-player-community-302546813.html){:target="_blank"}.

<!-- more -->

<div class="capawesome-z29o10a">
  <a href="https://capawesome.io/" target="_blank">
    <img alt="Try Capawesome Cloud free for 14 days — iOS builds without a Mac" src="https://capawesome.io/assets/banners/cloud-free-trial-capacitor-apps.png" />
  </a>
</div>

**Key takeaways:**

- AppGallery accepts the APK or App Bundle you already build for Google Play, so a Capacitor app needs no separate build for Huawei.
- Capacitor core depends only on AndroidX and the Cordova framework library, so Google Play services problems on Huawei phones come from individual plugins.
- Without Google Play services, FCM, Google Maps, Google Sign-In, Play Billing and unbundled ML Kit modules fail, while Firestore, Crashlytics, Firebase email sign-in and bundled ML Kit models keep working.
- The Capacitor Google Play Services plugin's `getStatus()` method resolves to `SERVICE_MISSING` on Huawei devices, so the app can hide features that need Google Play services.
- A Capawesome Cloud destination uploads builds to AppGallery Connect and, with the release status Completed, submits them for review, which usually takes 1 to 3 working days.

## Same build, different store

AppGallery Connect accepts Android apps as APK or App Bundle (AAB), according to Huawei's [release overview](https://developer.huawei.com/consumer/en/doc/app/agc-help-release-overview-0000001272395372){:target="_blank"}, so publishing a Capacitor app on Huawei AppGallery starts from the package you already build for Google Play. The Capacitor Android library declares only AndroidX libraries and the Cordova framework as dependencies in its [build file](https://github.com/ionic-team/capacitor/blob/main/android/capacitor/build.gradle){:target="_blank"}, and Capacitor's [Android requirements](https://capacitorjs.com/docs/android){:target="_blank"} ask for API level 24 and a WebView with Chrome 60 or later, not for Google Play services. The app template applies the `google-services` Gradle plugin when it finds a `google-services.json` file, and Firebase states that this build-time plugin is ["not related to Google Play services"](https://firebase.google.com/docs/android/android-play-services){:target="_blank"}.

If you build with [Capawesome Cloud](https://capawesome.io/){:target="_blank"}, you have both formats after every build, because it [builds an AAB alongside the APK](../../cloud/native-builds/android-app-bundles.md) for each Android application module.

The two formats follow different rules on AppGallery. Huawei's [APK release guide](https://developer.huawei.com/consumer/en/doc/app/agc-help-releaseapkrpk-0000001106463276){:target="_blank"} requires an APK smaller than 4 GB, a 64-bit package for phones and a single APK per version, and Huawei's [App Signing service](https://developer.huawei.com/consumer/en/doc/development/AppGallery-connect-Guides/agc-appsigning-introduction-0000001051379577){:target="_blank"} is optional for APKs. An AAB works only after you sign the App Signing agreement and configure a key, because AppGallery Connect compiles the bundle into APKs and re-signs them in 2 to 5 minutes, and it sends back any bundle whose download size exceeds 150 MB ([AAB release guide](https://developer.huawei.com/consumer/en/doc/app/agc-help-releasebundle-0000001100316672){:target="_blank"}).

We recommend the APK, signed with your own keystore through the [Android signing certificate](../../cloud/native-builds/certificates/android.md) you upload to Capawesome Cloud. The key stays with you, there is no agreement to sign, and the 150 MB limit doesn't apply. Pick that key with care, since Huawei's [release FAQ](https://developer.huawei.com/consumer/en/doc/app/agc-help-releasefaq-0000001110342644){:target="_blank"} requires every update to keep the package name and the signature of the version already on AppGallery. The destination guide shows where you choose the format, under [Publishing format](../../cloud/app-store-publishing/destinations/huawei-appgallery.md#publishing-format).

Which phones can install that APK depends on the operating system. Huawei phones sold outside China, such as the [Pura 80](https://consumer.huawei.com/en/phones/pura80/specs/){:target="_blank"} and the [Mate 80 Pro](https://consumer.huawei.com/en/phones/mate80-pro/specs/){:target="_blank"}, run Android-based EMUI and install your APK from AppGallery, while HarmonyOS 5 and 6 phones in China run only native HarmonyOS apps, according to Huawei's [data migration guide](https://developer.huawei.com/consumer/en/doc/harmonyos-guides/app-data-migration-overview){:target="_blank"} and [reporting by SCMP](https://www.scmp.com/tech/tech-war/article/3288398/huawei-has-global-ambitions-pure-blood-os-china-focus-now){:target="_blank"}.

## Google Play services audit

Google Play services is the dependency to check before your first AppGallery submission, because Huawei phones have shipped without it since the Mate 30 series. [CNBC reported](https://www.cnbc.com/2019/09/19/huawei-mate-30-announced-specs-price-android.html){:target="_blank"} at the September 2019 launch that the phones came without the Play Store and Google's apps, four months after the US Commerce Department added Huawei to its [Entity List](https://www.federalregister.gov/documents/2019/05/21/2019-10616/addition-of-entities-to-the-entity-list){:target="_blank"}. Google's [setup guide](https://developers.google.com/android/guides/setup){:target="_blank"} states that devices without the Google Play Store don't have Google Play services and tells apps to check for it before they call Google APIs.

A Google feature that fails on a Huawei phone is also a review risk. Huawei's guideline [3.1](https://developer.huawei.com/consumer/en/doc/app/50104-03){:target="_blank"} expects an app to work properly on mainstream Huawei devices, and its [common rejection reasons](https://developer.huawei.com/consumer/en/doc/distribution/app/50106){:target="_blank"} include crashes and launches with a blank screen.

The table maps common Capacitor plugins to their Google dependency, based on each plugin's Android build file and documentation:

| Plugin | Google services dependency | On Huawei devices |
|---|---|---|
| `@capacitor/push-notifications` | [Firebase Cloud Messaging](https://firebase.google.com/docs/cloud-messaging/android/client){:target="_blank"} | Breaks |
| [Capacitor Firebase Cloud Messaging plugin](../../sdks/capacitor/firebase/cloud-messaging.md) | Firebase Cloud Messaging | Breaks |
| `@capacitor/google-maps` | [Maps SDK for Android](https://developers.google.com/maps/documentation/android-sdk/config){:target="_blank"} | Breaks |
| [Capacitor Google Sign-In plugin](../../sdks/capacitor/google-sign-in.md) | `play-services-auth` | Breaks |
| [Capacitor Purchases plugin](../../sdks/capacitor/purchases.md) (Insiders) | [Google Play Billing](https://developer.android.com/google/play/billing){:target="_blank"} | Breaks |
| [Capacitor App Update plugin](../../sdks/capacitor/app-update.md) | [Play in-app updates](https://developer.android.com/guide/playcore/in-app-updates){:target="_blank"} | Breaks |
| [Capacitor App Review plugin](../../sdks/capacitor/app-review.md) | [Play in-app review](https://developer.android.com/guide/playcore/in-app-review){:target="_blank"} | Breaks |
| [Capacitor App Integrity plugin](../../sdks/capacitor/app-integrity.md) | [Play Integrity](https://developer.android.com/google/play/integrity/overview){:target="_blank"} | Breaks |
| [Capacitor Document Scanner plugin](../../sdks/capacitor/document-scanner.md) (Insiders) | Play services ML Kit module | Breaks |
| [Capacitor Watch plugin](../../sdks/capacitor/watch.md) (Insiders) | `play-services-wearable` | Breaks, all methods reject |
| [Capacitor ML Kit Barcode Scanning plugin](../../sdks/capacitor/mlkit/barcode-scanning.md) | Bundled model, Google code scanner | `startScan(...)` works, `scan(...)` breaks |
| [Capacitor Barcode Scanner plugin](../../sdks/capacitor/barcode-scanner.md) (Insiders) | Bundled ML Kit model | Works |
| `@capacitor/geolocation` | `play-services-location` | Works, falls back to `LocationManager` |
| [Capacitor Background Geolocation plugin](../../sdks/capacitor/background-geolocation.md) (Insiders) | `play-services-location` | Works, falls back to the platform location manager |
| [Capacitor MapLibre plugin](../../sdks/capacitor/maplibre.md) | None | Not affected |
| [Capacitor Live Update plugin](../../sdks/capacitor/live-update.md) | None | Not affected |

Plugins marked Insiders are part of the paid [Capawesome Insiders](../../insiders/index.md) subscription.

The barcode rows split on where the ML Kit model lives. Google [documents](https://developers.google.com/ml-kit/vision/barcode-scanning/android){:target="_blank"} that an unbundled model is downloaded through Google Play services, while a bundled model is linked into the app at build time and adds about 2.4 MB. In the Capacitor ML Kit Barcode Scanning plugin, [`scan(...)`](../../sdks/capacitor/mlkit/barcode-scanning.md#scan) hands the whole scan to the Google code scanner inside Google Play services, and [`startScan(...)`](../../sdks/capacitor/mlkit/barcode-scanning.md#startscan) uses the bundled model.

`@capacitor/geolocation` keeps working because its `enableLocationFallback` option defaults to `true` and switches to Android's `LocationManager` when the Google Play services location checks fail. Its [README](https://github.com/ionic-team/capacitor-geolocation/blob/main/README.md){:target="_blank"} warns that `LocationManager` "may not be as effective" as the Google Play services implementation. The [Capacitor Geofences plugin](../../sdks/capacitor/geofences.md) (Insiders) uses Google Play services' `GeofencingClient` and documents no fallback. In-app updates through the Capacitor App Update plugin need the Play Store, and its [`openAppStore(...)`](../../sdks/capacitor/app-update.md#openappstore) method opens the app's Play Store entry, the wrong store for an AppGallery install.

Firebase publishes its own [per-SDK list](https://firebase.google.com/docs/android/android-play-services){:target="_blank"}. Cloud Messaging has no functionality without Google Play services, and neither does the App Check Play Integrity provider, which the [Capacitor Firebase App Check plugin](../../sdks/capacitor/firebase/app-check.md) uses on Android. Analytics still sends events, but automatic insights such as demographics need Google Play services. Authentication, Cloud Firestore, Crashlytics, Remote Config, Cloud Storage and Realtime Database don't need it. The exception inside Authentication is the Google provider of the [Capacitor Firebase Authentication plugin](../../sdks/capacitor/firebase/authentication.md), which adds `play-services-auth` when you enable it, so email and password sign-in keeps working while Google sign-in doesn't.

## Degrade gracefully

The [Capacitor Google Play Services plugin](../../sdks/capacitor/google-play-services.md) tells your app at runtime whether Google Play services exists on the device, so you can hide the features from the table before a Huawei user or reviewer opens them. The plugin is free, depends only on `play-services-base`, and its documentation states that the check works on any Android device, including devices without Google Play services. To install it, refer to the [Installation](../../sdks/capacitor/google-play-services.md#installation) section of the plugin documentation.

[`getStatus()`](../../sdks/capacitor/google-play-services.md#getstatus) resolves to `SERVICE_MISSING` when Google Play services is not installed at all, which the plugin documentation names as the case for Huawei devices with Huawei Mobile Services, and to `SUCCESS` only when it is installed, enabled and up to date. The following example skips push registration and turns off the map screen unless the status is `SUCCESS`:

```typescript
import { Capacitor } from '@capacitor/core';
import { PushNotifications } from '@capacitor/push-notifications';
import { GooglePlayServices, Status } from '@capawesome/capacitor-google-play-services';

export const features = { maps: true, pushNotifications: true };

const isGooglePlayServicesUsable = async () => {
  if (Capacitor.getPlatform() !== 'android') {
    return true;
  }
  const { status } = await GooglePlayServices.getStatus();
  return status === Status.Success;
};

const initializeFeatures = async () => {
  const usable = await isGooglePlayServicesUsable();
  features.maps = usable;
  features.pushNotifications = usable;
  if (features.pushNotifications) {
    await PushNotifications.register();
  }
};
```

The platform check keeps iOS and web builds away from the plugin, which is Android-only and rejects every call on other platforms. Statuses such as `SERVICE_DISABLED` and `SERVICE_VERSION_UPDATE_REQUIRED` mean Google Play services is installed but disabled or outdated, so the features stay off as well until [`makeAvailable()`](../../sdks/capacitor/google-play-services.md#makeavailable) has fixed that with the system dialog and a second `getStatus()` call reports `SUCCESS`. On a Huawei phone, `makeAvailable()` is rejected, because there is no Play Store to install Google Play services from.

Hiding a feature is the minimum. When Huawei users need the feature itself, HMS Core has replacements. For push, that is [Push Kit](https://developer.huawei.com/consumer/en/doc/HMSCore-Guides/service-introduction-0000001050040060){:target="_blank"}, and since there is no official Capacitor HMS plugin, Huawei's [documented Capacitor route](https://developer.huawei.com/consumer/en/doc/HMS-Plugin-Guides-V1/push-integrating-cordova-sdk-0000001050135717-V1){:target="_blank"} is its Cordova plugin `@hmscore/cordova-plugin-hms-push`, while devices with Google Play services keep the FCM setup from [Capacitor Push Notifications: The Complete Guide](./capacitor-push-notifications-guide.md). [Map Kit](https://developer.huawei.com/consumer/en/doc/HMSCore-Guides/android-sdk-introduction-0000001061991291){:target="_blank"}, [Account Kit](https://developer.huawei.com/consumer/en/doc/HMSCore-Guides/introduction-0000001050048870){:target="_blank"} and [HUAWEI IAP](https://developer.huawei.com/consumer/en/doc/HMSCore-Guides/introduction-0000001050033062){:target="_blank"} cover maps, sign-in with a HUAWEI ID and in-app purchases, and AppGallery guideline [6.4](https://developer.huawei.com/consumer/en/doc/app/50104-06){:target="_blank"} recommends Huawei IAP for apps with in-app purchases without requiring it. Huawei's [HMS Toolkit](https://developer.huawei.com/consumer/en/doc/development/Tools-Guides/overview-0000001050060881){:target="_blank"} is no shortcut here. Its Convertor rewrites Java and Kotlin projects, not a web layer, and Huawei is sunsetting the toolkit, with overseas services ending on December 30, 2026.

## AppGallery Connect setup

AppGallery Connect requires a verified HUAWEI Developers account before you can create an app, and the account is [free to register](https://developer.huawei.com/consumer/en/doc/help/identityverfication-0000001053292680){:target="_blank"} for individual and enterprise developers. Individuals verify with a bank document plus an ID card, passport or driver's license, and the bank document has to show the full name in English and stay valid for at least 6 months ([individual verification](https://developer.huawei.com/consumer/en/doc/start/ibca-0000001062388135){:target="_blank"}). Enterprises submit a business license or a [DUNS number](https://developer.huawei.com/consumer/en/doc/start/atpopb-0000001062836624){:target="_blank"} renewed within the last two years. Huawei reviews either within 1 to 2 working days and emails the result. Two choices are permanent. An individual account can't become an enterprise account later, and the country or region you select during verification can't be changed.

With the account verified, [create the Android app](https://developer.huawei.com/consumer/en/doc/app/agc-help-createapk-0000001912873100){:target="_blank"} under **Apps and atomic services** on the **Android** tab, with APK as the package type. The device type "Mobile phone" includes tablets. The package name and the App or Game category are fixed once set, and the app name has to match the one in your package.

The first version needs a store listing, which Huawei specifies in its [APK release guide](https://developer.huawei.com/consumer/en/doc/app/agc-help-releaseapkrpk-0000001106463276){:target="_blank"} and its [asset requirements](https://developer.huawei.com/consumer/en/doc/app/agc-help-app-material-requirement-0000001146534651){:target="_blank"}:

- **Icon**: 216 × 216 or 512 × 512 pixels, PNG up to 2 MB, not animated.
- **Screenshots**: 3 to 8 images at 800 × 450 or 450 × 800 pixels.
- **Introductions**: A brief introduction of up to 80 characters, with 25 or fewer advised, and a full introduction of up to 8,000 characters.
- **Age rating**: A questionnaire that produces the rating.
- **Privacy policy**: A URL if the app collects user data, plus an easy-to-find link inside the app under guideline [7.1](https://developer.huawei.com/consumer/en/doc/app/50104-07){:target="_blank"}.
- **Language**: English (US) in the app package and on the App information page, if you distribute outside the Chinese mainland.
- **Test account**: Sign-in details for Huawei's reviewers if the app requires sign-in.

Guideline [1.16](https://developer.huawei.com/consumer/en/doc/app/50104-01){:target="_blank"} bans names, icons and imagery of other device brands and app platforms from your listing, so screenshots with a Google Play badge have to go. If the same app is already on Google Play, AppGallery can reject it as a duplicate. Huawei's [release FAQ](https://developer.huawei.com/consumer/en/doc/app/agc-help-releasefaq-0000001110342644){:target="_blank"} asks the owner to email Huawei operations from the contact details used on Google Play, with the developer name and email address of both accounts. For assets you share with Apple and Google, see [How to Prepare Your App Store Listing](./how-to-prepare-your-app-store-listing.md).

The last one-time step is the API client that Capawesome Cloud uses to reach AppGallery Connect, which the destination guide covers under [Obtaining credentials](../../cloud/app-store-publishing/destinations/huawei-appgallery.md#obtaining-credentials).

## Submit with Capawesome Cloud

A [Huawei AppGallery destination](../../cloud/app-store-publishing/destinations/huawei-appgallery.md) lets Capawesome Cloud upload a finished Android build to AppGallery Connect, so nobody has to upload APKs in the browser. You create it once, in the Console with the fields listed under [Configuration](../../cloud/app-store-publishing/destinations/huawei-appgallery.md#configuration) or with [`apps:destinations:create`](../../cloud/cli/commands.md#appsdestinationscreate) from the Capawesome CLI:

```bash
npx @capawesome/cli apps:destinations:create \
  --app-id 00000000-0000-0000-0000-000000000000 \
  --name "AppGallery Production" \
  --platform android \
  --type huawei-appgallery \
  --huawei-app-id <huawei_app_id> \
  --huawei-client-id <client_id> \
  --huawei-client-secret <client_secret> \
  --android-build-artifact-type apk \
  --android-release-status completed
```

`--app-id` is the ID of your app in Capawesome Cloud, while the three `--huawei-*` values come from AppGallery Connect as described under [Obtaining credentials](../../cloud/app-store-publishing/destinations/huawei-appgallery.md#obtaining-credentials). The artifact type follows the APK recommendation above, and the release status is explained below. Huawei's [Publishing API](https://developer.huawei.com/consumer/en/doc/development/AppGallery-connect-Guides/agcapi-publish_api_overview-0000001111685332){:target="_blank"} can neither create an app nor complete its content rating, which is why the listing from the previous section stays a one-time manual step.

From then on, a submission is one command. [`apps:deployments:create`](../../cloud/cli/commands.md#appsdeploymentscreate) takes the build number and the destination name:

```bash
npx @capawesome/cli apps:deployments:create --build-number 42 --destination "AppGallery Production"
```

In the Console, the Deployments page does the same with **Create deployment**. The destination's release status decides whether the upload stays a draft for you to submit in AppGallery Connect or goes to review automatically, as the guide explains under [Release status](../../cloud/app-store-publishing/destinations/huawei-appgallery.md#release-status). The same build number can go to a [Google Play Store destination](../../cloud/app-store-publishing/destinations/google-play-store.md) in a second deployment, so one [native build](../../cloud/native-builds/index.md) serves both stores.

To take the command out of your release process, attach the destination and your signing certificate to an automation that triggers on `v*` tags. Every matching tag then runs the pipeline from Git to build to AppGallery Connect, as described in [Submit Automatically After a Build](../../cloud/app-store-publishing/submit-automatically.md) and the [auto-submit walkthrough](../../cloud/automations/auto-submit.md).

A successful deployment means Huawei has the build, not that users can install it ([After submitting](../../cloud/app-store-publishing/submit-a-build.md#after-submitting)). Huawei's [APK release guide](https://developer.huawei.com/consumer/en/doc/app/agc-help-releaseapkrpk-0000001106463276){:target="_blank"} says app review usually takes 1 to 3 working days and that rejections arrive by email. Reviewers also check each release country or region against local policies and remove the ones where the app doesn't comply. If a deployment fails because another version is still under review, the guide covers the fix under [Submission fails because a version is under review](../../cloud/app-store-publishing/destinations/huawei-appgallery.md#submission-fails-because-a-version-is-under-review).

## FAQ

### Can I publish my Capacitor app on Huawei AppGallery?

Yes. AppGallery Connect accepts the same APK or AAB you build for Google Play, and Capacitor core has no Google Play services dependency. Check your plugins first, because Huawei phones ship without Google Play services, and features such as FCM push notifications, Google Maps and Google Play Billing don't work there. A Capawesome Cloud destination can then upload and submit every release.

### Do Huawei phones still run Android apps?

Huawei phones sold outside China do. Huawei's international models run Android-based EMUI, currently EMUI 15 and 16, and install APKs from AppGallery. Phones in China that run HarmonyOS 5 or 6 accept only native HarmonyOS apps, so a Capacitor APK doesn't reach them.

### Does Capacitor need Google Play services?

No. The Capacitor Android library depends only on AndroidX and the Cordova framework. Google Play services comes in through plugins such as `@capacitor/push-notifications`, which uses Firebase Cloud Messaging, and `@capacitor/google-maps`, which uses the Maps SDK for Android. That is why the audit happens at the plugin level.

### How long does AppGallery review take?

Huawei's current release documentation says app review usually takes 1 to 3 working days, and a rejection arrives by email. If your developer account is new, add 1 to 2 working days for identity verification before your first submission.

### Can I upload the same APK to Google Play and AppGallery?

Yes. AppGallery takes the APK you build for Google Play as it is. If Google Play signs your app through Play App Signing, installs from Google Play carry the app signing key that Google holds, while installs from AppGallery carry the key you signed the APK with, so the two usually report different certificate fingerprints.

### Does Capawesome Cloud submit to AppGallery automatically?

Yes. A Huawei AppGallery destination uploads the build to AppGallery Connect and, with the release status Completed, submits the version for review. Attach the destination to an automation that triggers on `v*` tags, and every release tag goes from Git to AppGallery without a manual step.

## Related posts

- [Convert a Web App to a Mobile App in 11 Steps](./11-steps-to-get-your-web-app-on-the-app-store.md)
- [How to Sign & Build Capacitor Apps in the Cloud](./how-to-sign-and-build-your-capacitor-app-in-the-cloud.md)
- [How to Prepare Your App Store Listing](./how-to-prepare-your-app-store-listing.md)

## Try it yourself

Once your Android builds run in Capawesome Cloud, AppGallery is one destination away. Upload your keystore, add a Huawei AppGallery destination and push a `v*` tag to watch the first version arrive in AppGallery Connect. You can run all of it during the 14-day free trial.

[Try Capawesome Cloud Free](https://capawesome.io){ .md-button .md-button--primary }

## Final thoughts

Run the audit before the first upload. If none of your plugins lands in a "Breaks" row, submit the APK you already build. If one does, gate it with [`getStatus()`](../../sdks/capacitor/google-play-services.md#getstatus), ship without that feature on Huawei phones, and add an HMS replacement only when Huawei users can't do without it. Sign the APK with your own keystore unless you want Huawei to hold the key, and hand the submissions to a tag automation once the first listing is live.

Before that first submission, put the APK on a Huawei phone without a store, as described in [How to Distribute iOS and Android Apps to Testers](./how-to-distribute-ios-and-android-apps-to-testers.md). Questions about a specific plugin on Huawei devices are welcome on the [Capawesome Discord server](https://discord.gg/VCXxSVjefW){:target="_blank"}, and the [Capawesome newsletter](https://capawesome.io/newsletter/){:target="_blank"} announces new plugins and Cloud features as they ship.
