britannio / in_app_review

A Flutter plugin for showing the In-App Review/System Rating pop up on Android, IOS, and MacOS. It makes it easy for users to rate your app.
311 stars 81 forks source link

Unhandled Exception: MissingPluginException(No implementation found for method openStoreListing on channel dev.britannio.in_app_review #16

Closed mutant0113 closed 3 years ago

mutant0113 commented 3 years ago

Hi, I'm facing an issue that there is no implementation for the method openStoreListing. I expected to open Google Play on Android. Do you have any idea what happened?

The package version

in_app_review: ^1.0.3

Code

final InAppReview inAppReview = InAppReview.instance;
inAppReview.openStoreListing();

Logs

E/flutter ( 1050): [ERROR:flutter/lib/ui/ui_dart_state.cc(177)] Unhandled Exception: MissingPluginException(No implementation found for method openStoreListing on channel dev.britannio.in_app_review)
E/flutter ( 1050): #0      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:157:7)
E/flutter ( 1050): <asynchronous suspension>
E/flutter ( 1050): #1      MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:332:12)
E/flutter ( 1050): #2      MethodChannelInAppReview.openStoreListing (package:in_app_review_platform_interface/method_channel_in_app_review.dart:42:22)
E/flutter ( 1050): #3      InAppReview.openStoreListing (package:in_app_review/in_app_review.dart:45:36)
E/flutter ( 1050): #4      _DebugBottomSheetState._inAppReviewDialog.<anonymous closure> (package:xxxxx/presentation/widget/debug/debug_bottom_sheet.dart:222:25)
E/flutter ( 1050): <asynchronous suspension>
E/flutter ( 1050): #5      _DebugBottomSheetState._inAppReviewDialog.<anonymous closure> (package:xxxxx/presentation/widget/debug/debug_bottom_sheet.dart)
E/flutter ( 1050): #6      _InkResponseState._handleTap (package:flutter/src/material/ink_well.dart:993:19)
E/flutter ( 1050): #7      _InkResponseState.build.<anonymous closure> (package:flutter/src/material/ink_well.dart:1111:38)
E/flutter ( 1050): #8      GestureRecognizer.invokeCallback (package:flutter/src/gestures/recognizer.dart:183:24)
E/flutter ( 1050): #9      TapGestureRecognizer.handleTapUp (package:flutter/src/gestures/tap.dart:598:11)
E/flutter ( 1050): #10     BaseTapGestureRecognizer._checkUp (package:flutter/src/gestures/tap.dart:287:5)
E/flutter ( 1050): #11     BaseTapGestureRecognizer.acceptGesture (package:flutter/src/gestures/tap.dart:259:7)
E/flutter ( 1050): #12     GestureArenaManager.sweep (package:flutter/src/gestures/arena.dart:157:27)
E/flutter ( 1050): #13     GestureBinding.handleEvent (package:flutter/src/gestures/binding.dart:362:20)
E/flutter ( 1050): #14     GestureBinding.dispatchEvent (package:flutter/src/gestures/binding.dart:338:22)
E/flutter ( 1050): #15     RendererBinding.dispatchEvent (package:flutter/src/rendering/binding.dart:267:11)
E/flutter ( 1050): #16     GestureBinding._handlePointerEvent (package:flutter/src/gestures/binding.dart:295:7)
E/flutter ( 1050): #17     GestureBinding._flushPointerEventQueue (package:flutter/src/gestures/binding.dart:240:7)
E/flutter ( 1050): #18     GestureBinding._handlePointerDataPacket (package:flutter/src/gestures/binding.dart:213:7)
E/flutter ( 1050): #19     _rootRunUnary (dart:async/zone.dart:1206:13)
E/flutter ( 1050): #20     _CustomZone.runUnary (dart:async/zone.dart:1100:19)
E/flutter ( 1050): #21     _CustomZone.runUnaryGuarded (dart:async/zone.dart:1005:7)
E/flutter ( 1050): #22     _invoke1 (dart:ui/hooks.dart:265:10)
E/flutter ( 1050): #23     _dispatchPointerDataPacket (dart:ui/hooks.dart:174:5)

Flutter doctor

[✓] Flutter (Channel stable, 1.22.4, on Mac OS X 10.15.4 19E287 darwin-x64, locale zh-Hant-TW)
    • Flutter version 1.22.4 at /Users/evanfang/flutter
    • Framework revision 1aafb3a8b9 (3 weeks ago), 2020-11-13 09:59:28 -0800
    • Engine revision 2c956a31c0
    • Dart version 2.10.4

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.0-rc1)
    • Android SDK at /Users/evanfang/Library/Android/sdk
    • Platform android-30, build-tools 30.0.0-rc1
    • ANDROID_HOME = /Users/evanfang/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 11.7)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.7, Build version 11E801a
    • CocoaPods version 1.9.1

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 49.0.2
    • Dart plugin version 193.7547
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)

[✓] Connected device (1 available)
    • SM G970F (mobile) • xxxxxx • android-arm64 • Android 9 (API 28)
britannio commented 3 years ago

That's odd. v1.0.4-dev uses method channels for openStoreListing().

Does your pubspec.lock file contain the following:

  in_app_review:
    dependency: "direct main"
    description:
      name: in_app_review
      url: "https://pub.dartlang.org"
    source: hosted
    version: "1.0.3"
  in_app_review_platform_interface:
    dependency: transitive
    description:
      name: in_app_review_platform_interface
      url: "https://pub.dartlang.org"
    source: hosted
    version: "1.0.4"
mutant0113 commented 3 years ago

Here's my pubspec.lock.

in_app_review:
    dependency: "direct main"
    description:
      name: in_app_review
      url: "https://pub.dartlang.org"
    source: hosted
    version: "1.0.3"
  in_app_review_platform_interface:
    dependency: transitive
    description:
      name: in_app_review_platform_interface
      url: "https://pub.dartlang.org"
    source: hosted
    version: "1.0.5-dev"
britannio commented 3 years ago

@mutant0113 I didn't think that the dependencies could be resolved this way but switching to in_app_review: ^1.0.4-dev should fix the issue.

britannio commented 3 years ago

1.0.4 is out now so you can use in_app_review: ^1.0.4 in your pubspec.yaml.

mutant0113 commented 3 years ago

Thanks for helping! It works with version 1.0.4.

maitycyrus commented 2 years ago

Have the same problem in version 2.0.4

in_app_review: dependency: "direct main" description: name: in_app_review url: "https://pub.dartlang.org" source: hosted version: "2.0.4" in_app_review_platform_interface: dependency: transitive description: name: in_app_review_platform_interface url: "https://pub.dartlang.org" source: hosted version: "2.0.3"

britannio commented 2 years ago

Have the same problem in version 2.0.4

in_app_review: dependency: "direct main" description: name: in_app_review url: "https://pub.dartlang.org" source: hosted version: "2.0.4" in_app_review_platform_interface: dependency: transitive description: name: in_app_review_platform_interface url: "https://pub.dartlang.org" source: hosted version: "2.0.3"

Hey, can you file a new issue with a stack trace? The issue you are facing is likely separate to this one.

maitycyrus commented 2 years ago

It worked on restart. Thanks!