# Open rating destinations and store listings

Canonical HTML: https://p-hatan.com/deeplink-x/use-cases/rate-review/

DeeplinkX 1.5.8.

Offer a rating destination without claiming that the app submits a review. The sample chooses direct rating actions for iOS, macOS, and Windows and Android store listings as alternatives.

## Reusable Flutter example

```dart
import 'package:deeplink_x/deeplink_x.dart';

Future<bool> openTelegramRatingDestination() {
  final deeplinkX = DeeplinkX();

  switch (deeplinkX.currentPlatform) {
    case PlatformType.ios:
      return deeplinkX.launchAction(
        IOSAppStore.rateApp(appId: '686449807', appName: 'telegram-messenger'),
      );
    case PlatformType.macos:
      return deeplinkX.launchAction(
        MacAppStore.rateApp(appId: '747648890', appName: 'telegram'),
      );
    case PlatformType.windows:
      return deeplinkX.launchAction(
        MicrosoftStore.rateApp(productId: '9nztwsqntd0s'),
      );
    case PlatformType.android:
      return deeplinkX.redirectToStore(
        storeActions: [
          PlayStore.openAppPage(packageName: 'org.telegram.messenger'),
          HuaweiAppGalleryStore.openAppPage(
            packageName: 'org.telegram.messenger',
            appId: 'C101184875',
          ),
        ],
      );
    case PlatformType.web:
    case PlatformType.linux:
      return Future.value(false);
  }
}
```

These are the example's Telegram destinations. Replace all store identifiers with the application's own listings.

## Current example behavior

The selector offers Automatic and five explicit manual entries. Its iOS, Mac, and Microsoft rating options are labeled “No rating fallback.” Google Play and AppGallery options open an app listing and can use their browser-listing fallback when selected manually.

Automatic Android selection uses `redirectToStore`, which filters matching native store actions and disables their fallback. If no native store opens, Automatic returns `false`. The Automatic branch returns `false` on Web and Linux even though manual listing options remain visible.

## Configuration and limits

- Compare the example [Android manifest](https://github.com/DeepLinkX/DeeplinkX/blob/00d9d2c7c1affe4e2ee459a01afeba82a1480eac/example/android/app/src/main/AndroidManifest.xml) and [iOS Info.plist](https://github.com/DeepLinkX/DeeplinkX/blob/00d9d2c7c1affe4e2ee459a01afeba82a1480eac/example/ios/Runner/Info.plist) for relevant store visibility declarations and schemes.
- Check the store API implementations for the exact rating/listing actions: [iOS App Store](https://github.com/DeepLinkX/DeeplinkX/blob/00d9d2c7c1affe4e2ee459a01afeba82a1480eac/lib/src/apps/app_stores/ios_app_store.dart), [Mac App Store](https://github.com/DeepLinkX/DeeplinkX/blob/00d9d2c7c1affe4e2ee459a01afeba82a1480eac/lib/src/apps/app_stores/mac_app_store.dart), [Microsoft Store](https://github.com/DeepLinkX/DeeplinkX/blob/00d9d2c7c1affe4e2ee459a01afeba82a1480eac/lib/src/apps/app_stores/microsoft_store.dart), [Google Play](https://github.com/DeepLinkX/DeeplinkX/blob/00d9d2c7c1affe4e2ee459a01afeba82a1480eac/lib/src/apps/app_stores/play_store.dart), and [AppGallery](https://github.com/DeepLinkX/DeeplinkX/blob/00d9d2c7c1affe4e2ee459a01afeba82a1480eac/lib/src/apps/app_stores/huawei_app_gallery_store.dart).
- This is external navigation, not an in-app rating dialog or automatic review submission.
- The launch result reports handoff; the user completes any rating or review in the store.

## UI behavior

- Each Automatic platform branch selects the listed action type and identifiers.
- Android retains Google Play before AppGallery and uses native-only automatic selection.
- Web and Linux Automatic return `false`.
- Manual listing actions can exercise their documented browser fallback; direct rating actions retain their intentional limitations.
- Repeated taps cannot start concurrent launches, and failure receives clear feedback.

## Source code

- [RateReviewPage, `_automatic`, `_showStores`](https://github.com/DeepLinkX/DeeplinkX/blob/00d9d2c7c1affe4e2ee459a01afeba82a1480eac/example/lib/use_cases/rate_review_page.dart)
- [Launch and store-selection algorithms](https://github.com/DeepLinkX/DeeplinkX/blob/00d9d2c7c1affe4e2ee459a01afeba82a1480eac/lib/src/core/deeplink_x.dart)

[All use cases](/deeplink-x/use-cases/) · [App-update store selection](/deeplink-x/use-cases/update-app/) · [Promoted app links](/deeplink-x/use-cases/promoted-app/)

