hemant
hemant

Reputation: 1843

saving current date and time in my iPhone application?

In my application i am using In - App purchases to provide a subscription of 1 year….now i need to save the time and date when the user buys the subscription and need to check when the subscription expires?? i have not used database before is there any other way to store date and time in my application and retrieve it every time the application starts??

Upvotes: 2

Views: 932

Answers (2)

PeyloW
PeyloW

Reputation: 36752

You should store the purchase of a subscription on a server, with backup in place, not only on the device.

You might have noticed that if you delete any iPhone app, and later re-install it, then the next download is free. There can be many reasons as to why the user might loose your app, a system update went bad, or whatever.

Apple specifically requires that the user do not loose what they have bought. If you have promised 1 year, then you must make sure they get 1 year no matter what happens to your app. Otherwise Apple can, and will, reject your app.

Storing the expiration date on a server also give the added benefit of protection against users fiddling with your data and granting themselves extended subscriptions.

Start by looking at the In App Purchase Programming Guide.

Upvotes: 3

Jacob Relkin
Jacob Relkin

Reputation: 163228

You can simply store it in NSUserDefaults:

[[NSUserDefaults standardUserDefaults] setObject:[NSDate now] forKey:@"purchaseDate"];

Then retrieve it like such:

NSDate *purchaseDate = [[NSUserDefaults standardUserDefaults] objectForKey:@"purchaseDate"];

And when you're done with it:

[[NSUserDefaults standardUserDefaults] removeObjectForKey:@"purchaseDate"];

Upvotes: 1

Related Questions