I am trying to see submitted scores in sandboxed leaderboard. For iOS5 I read that 2 accounts are required to submit scores.
Now what I don't understand is whether I should see more than 1 players played the game. For now, all my efforts lead me to see only #1 of 1 player in leaderboard list and I see "no scores".
In other words, should sandboxed environment ever show more than 1 player?
Details are below:
Using iOS5
Created 3 different accounts and submitted scores from them
Accounts have e-mails verified
Tried on Simulator and iPad
Tried both, developer and distribution certificates
Waited more than 24 hours
Checked from Game Center app and from Game Center view controller inside my app.
Can see my score if I run my app on iOS 6
What else I should do to see submitted scores on iOS5 in leaderboard?
Potentially 2 things to check. First is the time scope of the scores you are pulling. Is it set to "GKLeaderboardTimeScopeAllTime"?
The second is the player scope. Do you have it set to "GKLeaderboardPlayerScopeGlobal"?
GKLeaderboardTimeScopeAllTime is a default value. so it doesn't matter wether U set it or not=) check it out in documentation ))
Related
I successfully made an app and its waiting for review right now. But meanwhile i've been playing the game on my mom's phone because, one, i dont have an iphone and its for iphone, and two, I actually like playing it. But I looked at my admob because i wanted to make sure i wasnt messing with it by playing my own app but it turns out i have 100 impressions! D: No clicks though, and i know im not supposed to click on my own ads. What do the impressions do? what are they? Am I going to get in trouble? I stopped playing the game now.
btw my moms iphone no longer has my developer Apple ID signed in on it, but it can still play the app and the UDID is still registered with the developer account if that matters.
Nothing to worry about.
Impressions are when an ad is displayed.
Requests are when an ad is requested.
Clicks is when you clicked on an ad (you haven't done that so nothing to worry about).
It's probably a good idea to add some quick code that differentiates between you and every other user. "If username == 'MobileGamer', don't display ads", or something similar. Just to be safe.
For example, I have several websites where both the ads and the stats-tracking code is omitted if I'm the logged-in user. That way, Google can't claim that I'm trying to steal money from them when I'm using my own website (they've tried before), and my user stats aren't skewed by huge activity spikes whenever I'm adding features or testing.
I haven't used AdMob specifically, but ad companies are famously strict with this sort of thing. I was once kicked from an advertising plan simply because my roommate, who was on the same network as me, clicked on an ad no my website once.
Better not to risk it. Just don't show the ads at all, for you or your testers.
Is there anyway possible to implement challenges and achievements in an app without using Game Center. The current app that I'm working on is not a game, but has challenges and achievements based on photo users submit. For example if a user uploads a photo of their pet, they get 50 points for submitting that picture.
You can use that, I create a simple class for iOS game center in GitHub
https://github.com/DaRkD0G/Easy-Game-Center-Swift
I would recommend having an if statement (or something like that) set up, and whenever the user "completes" the achievement, it changes a value on your server to "completed", and adds the number of points earned from the achievement to the user's overall points. If you already have a database storing user account data, you could add fields for the achievements. Then when the app loads the "achievements" page, you could just check the server real quick and display the results.
How do I add a rating alert view inside my app for the user to choose how many stars?
Then I want to give the user some coins/reward if he or she rated with 5 stars.
What I have tried:
SKStoreProductViewController *productViewController = [[SKStoreProductViewController alloc] init];
[productViewController loadProductWithParameters:#{ SKStoreProductParameterITunesItemIdentifier : #364709193 } // which is the iBook app id
completionBlock:^(BOOL result, NSError *error) {
// giving me an error:
// Error Domain=SKErrorDomain Code=5 "Cannot connect to iTunes Store" UserInfo=0xa71cd90 {NSLocalizedDescription=Cannot connect to iTunes Store}
}];
productViewController.delegate = self;
[self presentViewController:productViewController animated:YES completion:nil];
But it only shows a blank screen with a cancel button. Also giving me the error:
Error Domain=SKErrorDomain Code=5 "Cannot connect to iTunes Store"
UserInfo=0xa71cd90 {NSLocalizedDescription=Cannot connect to iTunes
Store}
EDIT:
What I wanted was something like this:
This is a Very Bad Idea™. Not only it's completely unethical, it's also forbidden by App Store Review Guidelines (item 3.10).
EDIT: Apparently, now the document is under NDA, though it used to be public.
According to Apple, it is forbidden to ask user to rate the app with 5 stars. You could be rejected for doing so even after being approved.
However, You can ask the user to rate the app if he likes it. This is kind of the same thing but it's fine by Apple.
Next thing you have to know is that you cannot know if the user have rated the app and how many stars he gave it. What you could do is assume he has rated the app with good one and give him something in return (actually just for clicking the "Rate" button inside your app) because he pushed the "Rate" button only if he likes it. Another recommendation is to do that after the user have spent some time in the app (for example played more than 5 games in a row).
When testing the app, you are using what Apple calls the Sandbox iTunes store, not the actual store. This means not everything works as expected. This often (always?) returns an error when testing on the simulator.
However, I don't think what you are trying to do is possible (and is probably against Apple's TOS). The completion block won't give you any information on what the user did while using the SKStoreProductViewController.
I assume you are getting this error only when running on a device, apps are kept in a sandbox hence you should create a test user for it.
Open itunesconnect -> Manage Users -> Test User -> Add New User.
While you cannot manipulate the Apple Rating system; You can however create your own online rating system, perhaps to display on your own website. If a user gives the custom/online rating 5 stars, then that would be appropriate to reward them with whatever you like. Also, I am sure others would agree this would be a more "ethical" way.
Something like draw something popup is allowed as it doesn't have any reward for rating the app.
However, some of the best rated apps (even if they are trash apps) like this one are giving you popup rating windows. In this app you get asked several times to rate the app with 5 stars for 200 coins.
If you keep rejecting the option to rate the app, eventually you don't have to and you still get the coins. But message is, people are usually sheep, and will usually rate it at 5 stars to stop the pop up.
The App I linked to above is a great example of how trash apps or re-skinned apps that have 500+ similar copies can be on top of the App Store and on top for keywords like "free games" and "new games".
On the other hand I understand what the developers are doing as AppStore is becoming place where it's impossible to make something without big budgets spent in paid marketing (downloads)
I've been trying to get Game Center leaderboards working in a new iOS project for 3 days now.
The sandbox leaderboard only shows the user's local score, and not "all scores".
I can successfully post scores to leaderboards, and have done so from 4 different accounts, however the leaderboard only shows the user's local score.
Also each day, the leaderboards reset and show "no scores" for each user account. They've been doing this for the past 3 days.
Any idea what the issue might be? I've successfully submitted scores from 4 accounts across simulator + 2 devices.
partially appears to be a bug. I myself have only used game center once and didn't test it beyond the day i got had everything working or once again before final build so i wouldn't have experience this next day bug but apparently you aren't alone as you can see in this other post link... Game Center sandbox losing scores
as for your local score showing up you may have to post some code or provide more information for a answer for that because you say everything is working except that then that is a little strange because you either are or aren't getting information from the game center server it shouldn't be getting local values unless it's bad code for that code line on your end.
I'm trying to create a leaderboard for my game. Unfortunately, after following iTunes connect's instructions and filling out the leaderboard and 1 language specification for the leaderboard, the Save Button simply refreshes the screen with the edit data but no leaderboard is created.
Am I out of my mind? Am I missing a critical piece of information?
1) Created bundle App Id
2) Created App in iTunes Connect
3) Enabled Game Center
4) Went to Game Center to edit leaderboards
5) Add New Leaderboard (Single Leaderboard)
6) Fill out form
7) All aboard the fail boat. (Does not actually save and create the leaderboard but just refreshes the page)
Just in case someone else stumbles upon this...
I had the same greyed out 'save' button and the reason was that i have only set the minimal value for the leaderboard score and left the maximum empty. I was under the impression that the number displayed below the box means it will be used. I had to copy it into the box and it fixed the problem.
Damn Apple could add some opoup/tip to that page
I found the problem. Apparently you can't have a dash in your leaderboard name. However, no error comes up in the dialog. Bah!