Je souhaite ajouter une sorte de fonctionnalité "Rédiger un avis" ou "Évaluez-nous" à mon application afin que mes clients puissent facilement évaluer et évaluer mon application.
La meilleure pratique à laquelle je peux penser est d'avoir une sorte de fenêtre contextuelle ou d'ouvrir une UIWebView dans mon application afin que l'utilisateur ne soit pas expulsé de mon application lors de l'ouverture de l'application App Store comme dans:
[[UIApplication sharedApplication] openURL: [NSURL URLWithString: @ "itms: //iTunes.com/apps/myAppName"]];
Quelqu'un connaît-il un moyen de le faire?
Depuis iOS 10.3, l'API StoreKit fournit un moyen de demander un examen sur l'App Store sans quitter votre application. Lorsqu'il est appelé, le système peut présenter à l'utilisateur une alerte qui demande une révision. L'utilisateur peut fournir un nombre d'étoiles directement à l'intérieur de l'alerte, continuer à écrire un avis ou rejeter l'alerte. StoreKit gère à peu près tout pour vous. Pour présenter la demande de révision, effectuez l'appel suivant lorsque cela est approprié dans votre application:
// Objective-C
[SKStoreReviewController requestReview]
// Swift
SKStoreReviewController.requestReview()
Selon les instructions d'Apple, vous ne devez pas les appeler en réponse à une interaction directe de l'utilisateur (c'est-à-dire en appuyant sur un bouton qui dit "Écrire un avis") car il peut ne pas toujours afficher l'alerte. En effet, l'alerte ne peut être affichée que trois fois tous les 365 jours.
Vous trouverez ci-dessous un exemple de l'alerte. Pour plus d'informations, consultez documentation d'Apple .
Si votre application fonctionne sur des versions d'iOS antérieures à 10.3 ou vous avez besoin d'un contrôle plus robuste sur les demandes de notes des utilisateurs, iRate est une bonne solution.
Pour les appareils avec iOS 10.3 ou supérieur, iRate utilise l'API StoreKit susmentionnée. Pour les appareils exécutant iOS 7.0 à 10.2, iRate utilise ialertview et storekit pour demander à l'utilisateur une note (ou pour le lui rappeler plus tard). Tout est personnalisable, du titre du bouton Annuler à l'intervalle auquel il le rappelle à l'utilisateur.
Par défaut, iRate s'ouvre automatiquement lorsque certaines conditions sont remplies (par exemple, l'application a été lancée X fois, l'utilisateur a passé X nombre de niveaux), mais vous pouvez également utiliser une variété de méthodes et votre propre logique (à l'aide des méthodes iRate) pour afficher manuellement une fenêtre contextuelle iRate.
Pour installer, faites simplement glisser le fichier d'en-tête, le fichier d'implémentation et le .bundle
(pour la localisation) dans votre projet.
#import "iRate.h"
Dans ton application: didFinishLaunchingWithOptions:
, définissez les paramètres suivants:
// Configure iRate
[iRate sharedInstance].daysUntilPrompt = 5;
[iRate sharedInstance].usesUntilPrompt = 15;
La propriété ci-dessous est utile à des fins de test. Réglez-le sur YES
pendant les tests pour vous assurer que la boîte de dialogue s'affiche correctement. Lorsqu'il est réglé sur YES
, il apparaîtra immédiatement au démarrage, sans tenir compte des autres paramètres d'affichage. Définissez ce paramètre sur NO
pour les versions de sortie de votre application.
[iRate sharedInstance].previewMode = NO;
La propriété appStoreID
vous permet de définir l'ID de votre application. Ceci est requis uniquement si vous avez à la fois des applications Mac et iOS avec le même identifiant de bundle. L'ID d'application défini ici doit également correspondre à l'ID de l'ensemble défini dans Xcode et iTunes Connect:
[iRate sharedInstance].appStoreID = 555555555;
Plus de détails sont disponibles sur la page iRate GitHub.
Un très bon que j'utilise est Appirater: https://github.com/arashpayan/appirater/
Il invite automatiquement vos utilisateurs à laisser des avis, il vous suffit de fournir votre identifiant d'application.