2012-12-19 22 views
11

मैं वर्तमान में एचटीएमएल 5 में iphone के लिए कैमरे का उपयोग कर आवेदन के विकास कर रहा हूँ में कैमरा डिवाइस के लिए केवल पहुंचने की अनुमति दें कि मैं एक छोटे से सूची है कि मुझे मेरे पुस्तकालय और के बीच चयन देना है मेरा कैमरा।</p> <pre><code><input type="file" accept="capture=camera"> </code></pre> समस्या <p>साथ एचटीएमएल 5

enter image description here

मेरा विचार दो बटन, पुस्तकालय के लिए एक और कैमरे के लिए एक अन्य है।

मुझे केवल पुस्तकालय देने का तरीका पता है, लेकिन कैमरे के लिए नहीं।

प्रश्न: क्या दो प्रकारों को अलग करने का कोई तरीका है?

उत्तर

0

मुझे यह समस्या भी थी, मुझे समाधान में नहीं आया, मुझे केवल अनौपचारिक स्रोत मिलते हुए कहा गया कि यह संभव नहीं है। आप जो भी कर सकते हैं video/* या image/*accept विशेषता के माध्यम से आवश्यक है।

- (IBAction)takePhoto:(UIButton *)sender { 
    UIImagePickerController *picker = [[UIImagePickerController alloc] init]; 
    picker.delegate = self; 
    picker.allowsEditing = YES; 
    picker.sourceType = UIImagePickerControllerSourceTypeCamera; 
    [self presentViewController:picker animated:YES completion:NULL]; 
} 

अंत में, हम selectPhoto कार्रवाई विधि के लिए भी ऐसा ही है, लेकिन UIImagePickerControllerSourceTypePhotoLibrary को sourceType बदल रहा:

+0

अच्छा, यह वास्तव में अजीब है। डेवलपर को केवल कैमरे का उपयोग करने का अवसर क्यों नहीं देना। मुझे विशेषता के बारे में पता है, मुझे याद दिलाने के लिए धन्यवाद। हमारे लिए बहुत बुरा:/ – Simon

+1

ज्यादातर मामलों में, ऐप्पल में कोई इस बारे में सोच रहा है और इसे अनुमति देने का फैसला नहीं किया है। हो सकता है क्योंकि उपयोगकर्ता को नाराज हो सकता है अगर वह पुस्तकालय से नहीं चुना जा सकता है, उसके बाद उसने मूल कैमरा ऐप का उपयोग कर वेबसाइट पर अपलोड करने के लिए एक तस्वीर ली है। पुस्तकालय के उपयोग को रोकने की ज़रूरत भी नहीं है, क्या वहां है? – jimpic

+0

ठीक है, मैं एक तस्वीर को पकड़ने के लिए केवल एक कदम करना चाहता था और एक बटन दबाकर एक और एक तस्वीर नहीं लेना चाहता था, इस पल के लिए, यह वास्तव में महत्वपूर्ण नहीं है, लेकिन मुझे लगता है कि मैंने एक कदम छोड़ने के लिए अपना मुद्दा बना दिया :) धन्यवाद फिर से जानकारी के लिए :) – Simon

-3

निम्नलिखित takePhoto एक्टन विधि लिखें।

- (IBAction)selectPhoto:(UIButton *)sender { 
    UIImagePickerController *picker = [[UIImagePickerController alloc] init]; 
    picker.delegate = self; 
    picker.allowsEditing = YES; 
    picker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary; 
    [self presentViewController:picker animated:YES completion:NULL]; 
} 

UIImagePickerController

के प्रतिनिधि के तरीके को लागू करने उपयोगकर्ता कैमरे के साथ एक तस्वीर लेता है और छवि का आकार बदलता है जब (तस्वीर का आकार बदलने की अनुमति दी है के बाद से हमने कहा allowsEditing = हाँ हम चित्र पिकर बनाए जाने पर)। यह एक NSDictionary है जिसमें अन्य चीजों के साथ, मूल छवि और संपादित छवि (टैग UIImagePickerControllerEditedImage के माध्यम से सुलभ) शामिल है।

(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info { 

    UIImage *chosenImage = info[UIImagePickerControllerEditedImage]; 
    self.imageView.image = chosenImage; 
    [picker dismissViewControllerAnimated:YES completion:NULL]; 

} 
+0

हम HTML5 के बारे में बात कर रहे हैं, इसलिए यह उत्तर सही नहीं है – MeV

1

Unfortunaly संभव नहीं:/

निकालें HTML Media Capture - Security and privacy considerations से:

इसके अलावा, उपयोगकर्ता एजेंट कार्यान्वयन एक इनपुट डिवाइस सक्षम किया गया है जब उपयोगकर्ता के लिए एक संकेत प्रदान करने की सलाह दी और है उपयोगकर्ता को ऐसे कैप्चर को समाप्त करने के लिए संभव बनाएं। इसी तरह, उपयोगकर्ता एजेंट उपयोगकर्ता नियंत्रण की पेशकश करने, जैसे करने के लिए उपयोगकर्ता की अनुमति देने की सलाह दी है: अगर वहाँ
एक ही प्रकार के कई उपकरणों मौजूद प्रयोग की जाने वाली

  • सटीक मीडिया कैप्चर डिवाइस का चयन करें (उदाहरण के लिए
    में एक प्राथमिक कैमरा के सामने एक फ्रंट-फेस कैमरा)।


  • वीडियो कैप्चर मोड में ध्वनि कैप्चर अक्षम करें।

0

यह 10 के माध्यम से iOS6 में संभव नहीं है यह Android पर काम करता है 3.0+।

विशेषता HTML Media Capture द्वारा पेश की गई विशेषता को आईओएस को सीधे कैम ऐप पर कूदने के लिए मजबूर होना चाहिए, लेकिन यह समर्थित नहीं है।

the spec से:

कब्जा विशेषता एक बूलियन विशेषता निर्दिष्ट, इंगित करता है कि, उस उपकरण के वातावरण से सीधे मीडिया के कब्जा ... पसंद किया जाता है है।

पुनश्च: अपने कोड थोड़ा गलत है, आप <input accept="video/*,image/*" capture > का उपयोग करना चाहिए:

  1. कब्जा दोनों वीडियो और तस्वीरें
  2. कैम (जब समर्थित) के लिए सीधे
  3. कूद

देखें अधिक जानकारी के लिए Correct HTML Media Capture Syntax