pushandplay / cordova-plugin-apprate

This plugin provide the "rate this app" functionality into your Cordova/Phonegap application
Apache License 2.0
298 stars 192 forks source link

Does not pop up app rating #224

Open mike-nelson opened 6 years ago

mike-nelson commented 6 years ago

When I tap "Rate It Now" nothing happens on iOS.

I am calling this code.

    AppRate.preferences.displayAppName = "Speaking Email";

    AppRate.preferences.storeAppURL = {
        ios: '991406423',
        android: 'market://details?id=nz.co.beweb.speakingemail'
    };

    AppRate.promptForRating();

What should I look for?

Nelo-cool commented 6 years ago

Me too, with cordova 8 in ios and android.

geshub commented 6 years ago

Doesn't work anymore for me on IOS with: cordova (Cordova CLI) : 8.1.2 (cordova-lib@8.1.1) Cordova Platforms : android 7.1.1, ios 4.5.5

Nelo-cool commented 6 years ago

Please, set useLanguage to "en" end try this. This is dependency from useLanguage. AppRate.preferences.useLanguage = 'en'; AppRate.preferences.storeAppURL = { ios: 'you_number', android: 'market://details?id=you_packageName', //windows: 'ms-windows-store://pdp/?ProductId=', //blackberry: 'appworld://content/[App Id]/', //windows8: 'ms-windows-store:Review?name=' };

Nelo-cool commented 6 years ago

But you will can see english dialog only:)

geshub commented 6 years ago

Hi, @Nelo-cool , thanks a lot for your help, I tried with en language but it's still not prompting on IOS, no errors returned. It was working before i upgrade to Cordova 8.

geshub commented 6 years ago

Just an update, If i set AppRate.promptForRating to true, it's prompting again. I had it to false because i'm using usesUntilPrompt.

Nelo-cool commented 6 years ago

When i updated my cordova to 8 and other plugins, i had the same thing behavior! Without erros and not show the dialog. I try set language to en and plugin was able to show the dialog! But only english. If you will get other solution, please, write this.

geshub commented 6 years ago

@Nelo-cool mine is prompting now with useLanguage set to 'fr', What's seems to be broken for me if the use of usesUntilPrompt.

geshub commented 6 years ago

Ok, it's working again for me, What i did was just add a semicolon after: Storage = require('./storage'); On line 27 in www/AppRate.js. Build app again and it's prompting again with usesUntilPrompt.

artuska commented 5 years ago

+1, the same here, clicking on «Rate It Now» just do nothing.

artuska commented 5 years ago

@geshub no, this does not help at all

regevbr commented 5 years ago

Same issue here!

TerryZH commented 5 years ago

Same issue here when used in ionic. It appears that preferences cannot be assigned.

  constructor(injector:Injector) {

    this.appRate = injector.get(AppRate);

    this.appRate.preferences = {
      storeAppURL: {
        ios: '1376367384',
        android: 'market://details?id=com.iutu.iching',
      },
      callbacks: {
        handleNegativeFeedback: () => {
          console.log("negative feedback");
        },
        onButtonClicked: (buttonIndex) => {
          console.log("onButtonClicked -> " + buttonIndex);
        },
      }
    };
    console.log(this.appRate.preferences); // we get null here
  }

Also, I did not install any of the following. Does it matter?

https://github.com/EddyVerbruggen/cordova-plugin-safariviewcontroller https://github.com/apache/cordova-plugin-inappbrowser

pushkarstorehippo commented 3 years ago

Will this package work if app is not published on Playstore/Appstore ?