Недавно я решил добавить достижения в игру, которая была в App Store уже много лет, и у меня возникают проблемы с их работой.
Я использую следующий код для публикации достижений:
GKAchievement *achievement = [[GKAchievement alloc] initWithIdentifier: identifier];
[achievement setPercentComplete:100.0];
[GKAchievement reportAchievements:@[achievement] withCompletionHandler:^(NSError *error){
}];
Но reportAchievements
просто регистрируется no bundle for bundleID: (null)
.
Мне интересно, связано ли это с тем, что достижения еще не живут, и Apple удалила серверы песочницы. Но они зарегистрированы в iTunes Connect, и я использую Test User.
Также важно отметить, что это приложение было передано от другого разработчика.
Для идентификатора приложения я попытался использовать:
-
com.olddeveloper.ach_id
-
com.olddeveloper.appid.ach_id
-
ach_id
-
com.newdeveloper.ach_id
-
com.newdeveloper.appid.ach_id
Лидер, который присутствует с момента передачи, все еще работает, и он использует старый идентификатор разработчика.
Я даже попробовал просто получить список всех достижений, используя код в первом ответе здесь, но он все еще говорит no bundle for bundleID: (null)
.
EDIT:
Я обнаружил, что даже если он говорит no bundle for bundleID: (null)
, он все равно правильно возвращает список всех достижений. Я предполагаю, что это сообщение - это просто сбой в системе и что он все равно работает.
Тем не менее, я все еще не могу разблокировать достижения, используя любую комбинацию ID.