Giter Site home page Giter Site logo

Comments (20)

dpa99c avatar dpa99c commented on July 18, 2024 3

The country code and app name must be present in the URL but are ignored - only the ID needs to change. Also mt=8 is not required. I.e. this works:

itms-apps://itunes.apple.com/xy/app/foo/id{your_app_id}?acti‌​on=write-review

Tested on iOS 11.0 (15A372).

from irate.

mstolin avatar mstolin commented on July 18, 2024 3

@dpa99c
I fixed this issue for my app (im not using iRate) with using an url like tms-apps://itunes.apple.com/app/twitter/id333903271?mt=8&action=write-review. I didnt add a language code but mt=8 is still necessary. Without mt=8 the App Store app will show the Can't connect to App Store error message. I tested on iPhone 5s iOS 11.0.

from irate.

nicklockwood avatar nicklockwood commented on July 18, 2024 2

@zapjonny you can override the URL without forking iRate by adding this to your setup code:

 [iRate sharedInstance].ratingsURL = ...

from irate.

nicklockwood avatar nicklockwood commented on July 18, 2024

Is this using the latest version of iRate? The URL changed recently.

from irate.

janbjelicic-sunhill avatar janbjelicic-sunhill commented on July 18, 2024

I tried it an hour ago, updated to the version 1.12.1 via Cocoapods

from irate.

EddyLB avatar EddyLB commented on July 18, 2024

I use version 1.12.1 via Cocoapods and confirm.
I get the message 'Cannot Connect to App Store' in the App Store app when calling [[iRate sharedInstance] openRatingsPageInAppStore];

from irate.

bvirlet avatar bvirlet commented on July 18, 2024

The URL seems not to work anymore with the action=write-review parameter (I can reproduce the issue in Safari). Eg the App Store doesn't support opening (scrolling) to the new "Ratings & Reviews" section.

from irate.

vtourraine avatar vtourraine commented on July 18, 2024

I confirm this is an issue. Even using the https-based URL (e.g. https://itunes.apple.com/app/blabla/idXXXXXX?action=write-review) fails to load.

The documentation is still suggesting to use action=write-review, so I think it’s Radar time.

In the meantime, apps should not open the “write review” URL on iOS 11, just the basic App Store link.

from irate.

hixfield avatar hixfield commented on July 18, 2024

I confirm I have the same issue on the iOS 11 GM seed. How can we fix this?

from irate.

zapjonny avatar zapjonny commented on July 18, 2024

Will this repo be fixed soon?

How can we fix this in the meantime?

from irate.

zapjonny avatar zapjonny commented on July 18, 2024

Update:

First, sorry my bad, I had locked iRate below version 12 in my podfile.

Fixing that, I think I know what was going on. I probably locked iRate below 12 in order to avoid the iOS 10.3+ way of opening the in-app rate alert (I don't remember the reason for this, but hey).

In my app I had two cases where I used iRate.

  1. When you do an in-app action enough times, the alert "wanna rate?" popped up.
  2. In the options menu, I had an extra option "rate now" which directed the user to the app store review page, so the user could rate easily at any time.

Now, the iRate.sharedInstance().openRatingsPageInAppStore() is still broken for iOS 11.0 users.
However iRate.sharedInstance().promptIfNetworkAvailable() will work, if we accept the 10.3 in our app. I guess that should be the proper way since iOS 10.3 anyway and we just have to live with it.

So at this point, I assume that for me, 1 should work if I use the latest iRate, and 2 will work if use iRate.sharedInstance().promptIfNetworkAvailable() instead of iRate.sharedInstance().openRatingsPageInAppStore() which won't work on iOS 11.0.

from irate.

zapjonny avatar zapjonny commented on July 18, 2024

Okay, I guess even that's not the end of the story. I thought twice and thrice and I guess case 2 above is a no-go since iOS 11.0 (or probably also since 10.3, in a way).

First, it doesn't make sense to prompt the user in the same way in 2 as I do in 1, I'd want to open the review page below 10.3 and open the in-app SKStoreReviewController from 10.3 and up. However with the current iRate there is no way to do that, unless possibly if we fix it so we can call [self promptForRating: NO];.

But the discussion doesn't end there because on iOS 10.3+ that would ultimately call https://developer.apple.com/documentation/storekit/skstorereviewcontroller/2851536-requestreview which, as is stated in the docs, might or might not open the review UI. Which is in terms with how Apple wants the review experience to work...

I guess I will have to advocate to my director to remove case 2 and only use case 1 above - rate upon some rare user interaction.

Also in the long run I guess Apple is specifically wanting to shoot down iRate and similar libraries that show review popups.

from irate.

neave avatar neave commented on July 18, 2024

A workaround is to include a two-letter country code and app name in the URL, such as this:

https://itunes.apple.com/us/app/twitter/id333903271?mt=8&action=write-review
or
itms-apps://itunes.apple.com/us/app/twitter/id333903271?mt=8&action=write-review

The full URL for your app can be obtained from https://linkmaker.itunes.apple.com/

This successfully opens the "write a review" interface in the iOS 11 App Store. This workaround is not ideal however as changing the app title would also change its URL, thus breaking the workaround. Hopefully Apple will fix this soon for the shorter URL.

See rdar://34498138

from irate.

zapjonny avatar zapjonny commented on July 18, 2024

^ That one really works... so for a fast fix, I guess I could go with it if iRate was updated with this. Will iRate be updated or will I have to fork this? 🙄

from irate.

bvirlet avatar bvirlet commented on July 18, 2024

Maybe you can fork, and offer a pull request 😉

from irate.

zapjonny avatar zapjonny commented on July 18, 2024

@nicklockwood Good one! It works ✌️
I’ll use this and go back to iRate below 12 for minimum code changes.

from irate.

tirrorex avatar tirrorex commented on July 18, 2024

Can confirm workaround to be working, thanks

from irate.

EddyLB avatar EddyLB commented on July 18, 2024

Confirmed. Thanks

from irate.

spookyhouse avatar spookyhouse commented on July 18, 2024

Thanks @neave. This works!

from irate.

alper avatar alper commented on July 18, 2024

OK. And this also works on iOS 10 I just tested.

from irate.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.