{"id":2962,"date":"2010-04-10T09:16:55","date_gmt":"2010-04-10T07:16:55","guid":{"rendered":"http:\/\/www.devapp.it\/wordpress\/?p=2962"},"modified":"2014-02-04T13:26:08","modified_gmt":"2014-02-04T12:26:08","slug":"tips010-verificare-la-presenza-della-fotocamera-nel-dispositivo","status":"publish","type":"post","link":"https:\/\/www.devapp.it\/wordpress\/tips010-verificare-la-presenza-della-fotocamera-nel-dispositivo\/","title":{"rendered":"TIPS#010 &#8211; Verificare la presenza della fotocamera nel dispositivo"},"content":{"rendered":"<p>Se la vostra applicazione sfrutta la fotocamera per catturare immagini, o per offrire funzionalit\u00e0 legate alla realt\u00e0 aumentata, o per qualsiasi altro motivo, potreste aver bisogno di verificare la sua presenza all&#8217;interno del dispositivo su cui sta girando il vostro programma. Ricordate che l&#8217;App Store \u00e8 raggiungibile non solo dagli iPhone, ma anche dagli iPod Touch e da poco anche dagli iPad. Se la vostra App ha quindi una funzionalit\u00e0 legata alla fotocamera, potreste voler decidere, ad esempio, se mostrare o meno il relativo pulsante di apertura.<\/p>\n<p>Certo, se la vostra App, invece, facesse uso esclusivo di questo componente in tutta l&#8217;applicazione, o cmq questa fosse di vitale importanza e non solo un&#8217;appetibile opzione, allora occorrer\u00e0 fornire questa informazione ai possibili clienti in modo chiaro e preciso nella descrizione dell&#8217;applicazione in App Store.<!--more--><\/p>\n<p>Vediamo ora come possiamo rilevare quest&#8217;informazione con poche righe di codice:<\/p>\n<pre lang=\"objc\" escaped=\"true\">\r\nif (![UIImagePickerController  isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]){\r\n\r\n        \/\/ Fotocamera non presente\r\n\tUIAlertView * alertView = [[UIAlertView alloc] initWithTitle:@\"ATTENZIONE\" message:@\"Non hai una fotocamera\" delegate:nil cancelButtonTitle:nil otherButtonTitles:@\"OK\", nil];\r\n\t[alertView show];\r\n\t[alertView release];\r\n\t\t\r\n\tpulsanteApriFotocamera.enabled = NO;\t\r\n\r\n} else {\r\n\r\n        \/\/ Fotocamera presente\r\n\tUIAlertView * alertView = [[UIAlertView alloc] initWithTitle:@\"TRANQUILLO\" message:@\"Hai una fotocamera\" delegate:nil cancelButtonTitle:nil otherButtonTitles:@\"OK\", nil];\r\n\t[alertView show];\r\n\t[alertView release];\r\n\t\t\r\n\tpulsanteApriFotocamera.enabled = YES;\r\n}\r\n<\/pre>\n<p>Se provate questo codice nel simulatore, ad esempio inserendolo all&#8217;interno del metodo &#8220;<em>viewDidLoad<\/em>, questo sar\u00e0 il risultato:<\/p>\n<p><center><br \/>\n<a href=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2010\/04\/TIPS_010_IS.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2010\/04\/TIPS_010_IS.jpg\" alt=\"TIPS#010 - Test su iPhone Simulator\" title=\"TIPS_010_IS\" width=\"386\" height=\"742\" class=\"aligncenter size-full wp-image-3003\" srcset=\"https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2010\/04\/TIPS_010_IS.jpg 386w, https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2010\/04\/TIPS_010_IS-156x300.jpg 156w\" sizes=\"auto, (max-width: 386px) 100vw, 386px\" \/><\/a><br \/>\n<\/center><\/p>\n<p>Eseguendolo sui vostri iPhone la fotocamera verr\u00e0 invece rilevata:<\/p>\n<p><center><br \/>\n<a href=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2010\/04\/TIPS_010-iPhone.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2010\/04\/TIPS_010-iPhone.jpg\" alt=\"TIPS#010 - Test su iPhone\" title=\"TIPS_010-iPhone\" width=\"320\" height=\"480\" class=\"aligncenter size-full wp-image-3004\" srcset=\"https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2010\/04\/TIPS_010-iPhone.jpg 320w, https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2010\/04\/TIPS_010-iPhone-200x300.jpg 200w\" sizes=\"auto, (max-width: 320px) 100vw, 320px\" \/><\/a><br \/>\n<\/center><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Se la vostra applicazione sfrutta la fotocamera per catturare immagini, o per offrire funzionalit\u00e0 legate alla realt\u00e0&#8230;<\/p>\n","protected":false},"author":1,"featured_media":10898,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[105],"tags":[41,106,23],"class_list":["post-2962","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tips-tricks","tag-fotocamera","tag-tips","tag-xcode"],"acf":[],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/posts\/2962","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/comments?post=2962"}],"version-history":[{"count":1,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/posts\/2962\/revisions"}],"predecessor-version":[{"id":3005,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/posts\/2962\/revisions\/3005"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/media\/10898"}],"wp:attachment":[{"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/media?parent=2962"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/categories?post=2962"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/tags?post=2962"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}