Appirater.RateApp C# (CSharp) Method

RateApp() public method

public RateApp ( ) : void
return void
    public void RateApp()
    {
        if (Runtime.Arch == Arch.SIMULATOR)
            Debug.WriteLine ("APPIRATER NOTE: iTunes App Store is not supported on the iOS simulator. Unable to open App Store page.");
        else {
            NSUserDefaults userDefaults = NSUserDefaults.StandardUserDefaults;
            string reviewURL = string.Format (TEMPLATE_REVIEW_URL, settings.AppId);
            int systemMajorVersion = Convert.ToInt16 (UIDevice.CurrentDevice.SystemVersion.Split ('.') [0].ToString ());
            if (systemMajorVersion >= 7)
            {
                reviewURL = string.Format (TEMPLATE_REVIEW_URL_IOS7, NSLocale.PreferredLanguages [0], settings.AppId);
            }
            userDefaults.SetBool (true, RATED_CURRENT_VERSION);
            userDefaults.Synchronize ();
            UIApplication.SharedApplication.OpenUrl (NSUrl.FromString (reviewURL));
        }
    }

Usage Example

Beispiel #1
0
        public override void Clicked(UIAlertView alertview, int buttonIndex)
        {
            NSUserDefaults userDefaults = NSUserDefaults.StandardUserDefaults;

            switch (buttonIndex)
            {
            case 0:
                // they don't want to rate it
                userDefaults.SetBool(true, DECLINED_TO_RATE);
                userDefaults.Synchronize();
                break;

            case 1:
                // they want to rate it
                owner.RateApp();
                break;

            case 2:
                // remind them later
                userDefaults.SetDouble(DateTime.Now.ToOADate(), REMINDER_REQUEST_DATE);
                userDefaults.Synchronize();
                break;
            }
        }