Comment puis-je détecter si l'appareil photo est limitée par l'utilisateur
Je suis en train de faire une application ios, avec un bouton de lancement de l'appareil photo.
Je veux activer/désactiver le bouton si l'appareil dispose d'une caméra disponible ou pas.
Je veux détecter si l'appareil dispose d'une caméra et également lorsque l'appareil a appareil photo, mais il est restreint (avec cette) de sorte que vous ne pouvez pas l'utiliser.
Comment puis-je détecter ces deux options?
Grâce
Pourquoi ne pas vous test vous-même? Pourquoi poser une question?
Je l'ai testé et j'ai été en mesure de détecter si l'appareil dispose d'une caméra ou pas, mais je ne peut pas détecter si l'appareil dispose d'un appareil photo, mais il est limité de sorte que vous ne pouvez pas l'utiliser.
Désolé, je pense que j'ai mal lu ce que vous avez fait. Je pensais que vous étiez demander si ce code fonctionne si l'appareil a été restreint. C'est pourquoi j'ai suggéré il vous suffit de le tester. Par curiosité, si vous installer un appareil avec un appareil photo, ce qui ne
Désolé, je suis un total newbie sur ios et je ne sais pas comment je l'ai essayé avant. Maintenant, j'ai essayé de nouveau et isSourceTypeAvailable retour OUI lorsque l'appareil photo n'est pas limité et NON lorsqu'il est restreint, comme prévu. Donc, la question n'a pas de sens. Désolé.
J'ai ajouté une réponse à l'aide de
Je l'ai testé et j'ai été en mesure de détecter si l'appareil dispose d'une caméra ou pas, mais je ne peut pas détecter si l'appareil dispose d'un appareil photo, mais il est limité de sorte que vous ne pouvez pas l'utiliser.
Désolé, je pense que j'ai mal lu ce que vous avez fait. Je pensais que vous étiez demander si ce code fonctionne si l'appareil a été restreint. C'est pourquoi j'ai suggéré il vous suffit de le tester. Par curiosité, si vous installer un appareil avec un appareil photo, ce qui ne
isSourceTypeAvailable
retour?Désolé, je suis un total newbie sur ios et je ne sais pas comment je l'ai essayé avant. Maintenant, j'ai essayé de nouveau et isSourceTypeAvailable retour OUI lorsque l'appareil photo n'est pas limité et NON lorsqu'il est restreint, comme prévu. Donc, la question n'a pas de sens. Désolé.
J'ai ajouté une réponse à l'aide de
isSourceTypeAvailable
de sorte que d'autres personnes peuvent facilement voir que faire. S'il vous plaît accepter cette réponse si vous pensez que c'est suffisant!OriginalL'auteur A.Vila | 2013-05-31
Vous devez vous connecter pour publier un commentaire.
Comme indiqué ailleurs, la vérification de la
AVAuthorizationStatus
n'allez pas vous dire s'il est restreint, malgré la présence d'un "restreinte" de la valeur de l'enum.Au lieu de cela, j'ai constaté que de vérifier si la source est activée pour être utile:
Si
isCameraAvailable
estNO
ensuite, l'utilisateur a désactivé la caméra dans les Restrictions. Voir Détecter l'existence de la caméra de l'iPhone app?OriginalL'auteur nickjm
Pour vérifier l'autorisation caméra statut dans l'app utiliser l'extrait de code suivant.
@import AVFoundation;
Cela ne fonctionne pas (au moins sur iOS 8.4 que j'ai testé) pour le scénario en question. Si vous avez de la caméra activée pour l'application, mais restreint dans l'ensemble, il sera de retour
AVAuthorizationStatusAuthorized
ce qui est incorrect. Je suis honnêtement pas sûr pourquoiAVAuthorizationStatusRestricted
existe!eh bien peut-être le cas. Je n'ai pas testé pour le cas u l'avons mentionné.
Ne fonctionne pas sur iOS 9.
C'est en fait la moitié de la réponse correcte, et il fonctionne sous iOS 9. Il y a 3 états que peut désactiver un appareil photo. 1. Pas de caméra, 2. La caméra est désactivée spécifiquement pour cette application, et 3. La caméra est désactivée par le biais de Restrictions. Seulement, cette captures cas 2, mais pas de cas 1 & 3.
[UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]
captures cas 1 & 3, mais pas de cas 2. Si vous voulez vérifier pour toutes les raisons possibles d'un appareil photo peut ne pas être disponible, vous devez mettre en œuvre ETisSourceTypeAvailable
OriginalL'auteur pankaj
Pour vérifier si la caméra restreint
AVAuthorizationStatus
n'est pas assez. Comme dit dans la documentation:Donc, pour la bonne case, vous devez créer quelques périphérique de capture, par exemple, comme je l'ai fait:
OriginalL'auteur htzfun
La première fois que l'utilisateur tente d'utiliser la caméra sur ios 6, il est automatiquement demandé la permission. Vous n'avez pas à ajouter un code supplémentaire (avant que le authorisationstatus est ALAuthorizationStatusNotDetermined ).
Donc, si l'utilisateur refuse la première fois, vous ne pouvez pas demander de nouveau.
Vous pouvez utiliser ALAssetsLibrary pour vérifier cela.
Cochez cette réponse solutions :
demandez-autorisation d'accès-caméra
Espère que cela vous aide.
la marque de ce répondu si cela résout votre problème 🙂
Il semble que ALAssetsLibrary vous dit si vous avez accès à la photo, pas l'appareil photo.
OriginalL'auteur Nishant Tyagi
SWIFT 3
De décider si le bouton de la caméra devrait même être activé (ou caché), Vous devriez vérifier l':
Mais ensuite, je voudrais vérifier pour voir si l'utilisateur autorisé à accéder à la caméra comme apple suggère dans leur PhotoPicker exemple (PhotoPicker exemple Objective-C):
*veuillez noter que vous devez importer AVFoundation
OriginalL'auteur Boaz Frenkel