Je n'arrive pas à faire fonctionner HealthKit. Droit manquant

J'ai du mal à faire fonctionner HealthKit pour mon application iOS. J'ai fait toutes les étapes que j'ai trouvées jusqu'à présent et aucune ne semble résoudre mon problème. Je continue d'avoir cette erreur en essayant d'autoriser Healthkit:

Error Domain=com.apple.healthkit Code=4 "Missing com.apple.developer.healthkit entitlement." UserInfo=0x78fa24e0 {NSLocalizedDescription=Missing com.apple.developer.healthkit entitlement.} 

Voici mon code demandant l'autorisation:

  if([HKHealthStore isHealthDataAvailable]) { self.healthStore = [[HKHealthStore alloc] init]; [self.healthStore requestAuthorizationToShareTypes:nil readTypes:[self dataTypesToRead] completion:^(BOOL success, NSError *error) { if (!success) { NSLog(@"HK Error: %@", error); [self presentHealthAlert:@"You didn't allow APP to access HealthKit Data. Please go to Settings and set up APP permissions." withTitle:@"Error"]; } else { [self presentHealthAlert:@"Thank You For Access" withTitle:@"Success"]; } }]; } else { [self presentHealthAlert:@"Health Data Not Available" withTitle:@"Success"]; } 

Et oui, je l'ai activé sur mes capacités de projet, et oui je l'ai activé dans mon ID de centre d'application de développement. Y a-t-il autre chose que je pourrais manquer?

J'ai eu ce problème avec une application watchOS 2. La résolution consistait à m'assurer que j'avais activé le droit HealthKit pour l'application iOS et l'extension de surveillance.

J'avais à tort supposé que le changement pour l'application iOS serait hérité par l'extension de la montre.

Vous devez vous assurer que vous click votre programme sur le côté gauche de Xcode (le haut de votre hiérarchie de files). Vous arriverez à un écran de parameters généraux dans la window principale (à droite) où vous verrez votre identifiant de package, la cible de deployment, et les parameters supplémentaires. Cliquez sur l'onglet en haut qui indique Capacités. Maintenant, vous verrez une list modifiable qui inclut HealthKit. Vous devez l'activer ici avant de pouvoir l'utiliser dans l'application.

Editer: Voici une image de Xcode qui pourrait vous aider à find ceci si vous n'êtes pas familier avec les dependencies de réglage ou d'autres parameters spécifiques au programme.

Capture d'écran montrant où se trouve la liste avec HealthKit

C'est dans cette list sur la droite, vers le bas, vous verrez HealthKit. Il va vérifier plusieurs choses une fois que vous l'avez activé et vérifiez que vous pouvez l'utiliser.

Un peu vieux, mais pour tous ceux qui ont des problèmes, j'ai dû rafraîchir manuellement mes profils de provisioning dans XCode 6.2 (Preferences -> Comptes).

Je me suis retrouvé ici après avoir atteint la fin de mon esprit. Rien n'a fonctionné et j'ai clairement activé le droit HealthKit, alors j'ai simplement redémarré le téléphone. Voilà. Le redémarrage a effacé les erreurs d'autorisation manquantes.

J'ai réussi à faire fonctionner mon droit en m'assurant que j'avais un appareil enregistré. Une fois que j'ai eu mon iPhone sous le simulateur et que je n'ai pas eu de problèmes non résolus dans la section identité de l'application, tout s'est bien passé.

Vous pouvez constater que, bien que vous ayez activé le droit HealthKit sur xcode, il existe un second file de droits qui ne contient pas le boolean healthkit. J'ai trouvé que, bien que le file des droits d'access (au niveau supérieur) contenait les informations correctes, un file de droits d'access différent avait été créé sous Ressources qui ne contenait pas le droit Healthkit. réparer ce file a résolu mon problème.

  1. Cliquez sur la cible Watch App Extension .

  2. Appuyez sur les capacités .

  3. Faites défiler vers le bas et allumez le HealthKit .

entrez la description de l'image ici