GithubHelp home page GithubHelp logo

zabolotiny / appirater Goto Github PK

View Code? Open in Web Editor NEW

This project forked from arashpayan/appirater

0.0 1.0 0.0 216 KB

A utility that reminds your iPhone app's users to review the app.

Home Page: http://arashpayan.com/blog/index.php/2009/09/07/presenting-appirater/

Objective-C 100.00%

appirater's Introduction

Introduction

Appirater is a class that you can drop into any iPhone app (iOS 4.0 or later) that will help remind your users to review your app on the App Store. The code is released under the MIT/X11, so feel free to modify and share your changes with the world. Read on below for how to get started. If you need any help using, the library, post your questions on [Stack Overflow] stackoverflow under the appirater tag.

Getting Started

CocoaPods

To add Appirater to your app, add pod "Appirater" to your Podfile.

Configuration

  1. Appirater provides class methods to configure its behavior. See [Appirater.h] Appirater.h for more information.
[Appirater setAppId:@"552035781"];
[Appirater setDaysUntilPrompt:1];
[Appirater setUsesUntilPrompt:10];
[Appirater setSignificantEventsUntilPrompt:-1];
[Appirater setTimeBeforeReminding:2];
[Appirater setDebug:YES];
  1. Call [Appirater setAppId:@"yourAppId"] with the app id provided by Apple. A good place to do this is at the beginning of your app delegate's application:didFinishLaunchingWithOptions: method.
  2. Call [Appirater appLaunched:YES] at the end of your app delegate's application:didFinishLaunchingWithOptions: method.
  3. Call [Appirater appEnteredForeground:YES] in your app delegate's applicationWillEnterForeground: method.
  4. (OPTIONAL) Call [Appirater userDidSignificantEvent:YES] when the user does something 'significant' in the app.

Development

Setting [Appirater setDebug:YES] will ensure that the rating request is shown each time the app is launched.

Production

Make sure you set [Appirater setDebug:NO] to ensure the request is not shown every time the app is launched. Also make sure that each of these components are set in the application:didFinishLaunchingWithOptions: method.

This example states that the rating request is only shown when the app has been launched 5 times and after 7 days.

[Appirater setAppId:@"770699556"];
[Appirater setDaysUntilPrompt:7];
[Appirater setUsesUntilPrompt:5];
[Appirater setSignificantEventsUntilPrompt:-1];
[Appirater setTimeBeforeReminding:2];
[Appirater setDebug:NO];
[Appirater appLaunched:YES];

If you wanted to show the request after 5 days only you can set the following:

[Appirater setAppId:@"770699556"];
[Appirater setDaysUntilPrompt:5];
[Appirater setUsesUntilPrompt:0];
[Appirater setSignificantEventsUntilPrompt:-1];
[Appirater setTimeBeforeReminding:2];
[Appirater setDebug:NO];
[Appirater appLaunched:YES];

SKStoreReviewController

In iOS 10.3, SKStoreReviewController was introduced which allows rating directly within the app without any additional setup.

Appirater automatically uses SKStoreReviewController if available. You'll need to manually link StoreKit in your App however.

If SKStoreReviewController is used, Appirater is used only to decide when to show the rating dialog to the user. Keep in mind, that SKStoreReviewController automatically limits the number of impressions, so the dialog might be displayed less frequently than your configured conditions might suggest.

License

Copyright 2017. [Arash Payan] arash. This library is distributed under the terms of the MIT/X11.

While not required, I greatly encourage and appreciate any improvements that you make to this library be contributed back for the benefit of all who use Appirater.

Ports for other SDKs

A few people have ported Appirater to other SDKs. The ports are listed here in hopes that they may assist developers of those SDKs. I don't know how closesly (if at all) they track the Objective-C version of Appirater. If you need support for any of the libraries, please contact the maintainer of the port.

appirater's People

Contributors

amjaliks avatar arashpayan avatar brow avatar fernandonf avatar funkadelic avatar gabrielrinaldi avatar gerharbo avatar hpique avatar iressler2 avatar itruf avatar jasonmccreary avatar josejulio avatar lunch80 avatar meachware avatar mfikes avatar miguelsantirso avatar mmorearty avatar ngreenstein avatar pfalstad avatar phest avatar raymondjavaxx avatar readmecritic avatar rpitting avatar rsanchezsaez avatar sarsonj avatar sdesimone avatar sliard avatar toco avatar yshrkt avatar zabolotiny avatar

Watchers

 avatar

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.