2010-05-12 14 views
6

Cloud App जैसे मैक पर स्वचालित स्क्रीनशॉट अपलोड करना यह साफ सुविधा है जिसमें यह डेस्कटॉप पर जोड़े जाने पर स्वचालित रूप से नए स्क्रीनशॉट अपलोड करता है। कोई विचार यह कैसे किया जाता है?क्लाउड ऐप

उत्तर

9

आप प्रोग्रामिंग के तरीके में बिना किसी चीज के अपने आप कर सकते हैं। ओएसएक्स में, आप स्क्रिप्ट चलाने के लिए "Folder Actions" कॉन्फ़िगर कर सकते हैं, उदाहरण के लिए, जब डेस्कटॉप में एक फ़ोल्डर में कोई नया आइटम दिखाई देता है। फिर आप नई फ़ाइलों के साथ जो कुछ भी चाहते हैं उसे करने के लिए स्क्रिप्ट का उपयोग कर सकते हैं।

This article at TUAW में किसी विशेष फ़ोल्डर को मारने पर वेब सर्वर पर फ़ाइलों को अपलोड करने का एक उदाहरण शामिल है।

तो, मूल रूप से, जवाब कुछ फ़ोल्डर में "फ़ोल्डर क्रियाएं" या "फ़ोल्डर पर नजर रखने और अधिसूचनाएं भेजना" है। क्लाउड ऐप फ़ोल्डर क्रियाओं का उपयोग करता है या FSEvents/NSWorkspace, या Kqueue तंत्र का उपयोग करते हुए फ़ोल्डर को निम्न स्तर पर देखता है (जिसके लिए UKKQueue नामक एक अच्छी रैपर क्लास है, अगर मुझे सही याद है - मुझे नहीं पता कि मेरा ज्ञान कितना चालू है उस पर है!) एक और मामला है ...

आप जो परिणाम चाहते हैं उसके आधार पर आप इसे कई अलग-अलग स्तरों पर लागू कर सकते हैं, आप जो कुछ भी कर रहे हैं उसे डिजाइन करना चाहते हैं, और यहां तक ​​कि क्या आप जिस प्रकार के फाइल सिस्टम को लक्षित कर रहे हैं। मूल रूप से, कोको/उद्देश्य सी में, मुझे लगता है कि आप शायद FSEvents पर देखना शुरू करना चाहते हैं।

एक बार जब आपको फ़ाइल में बदलावों की अधिसूचना मिल जाती है, तो शायद मैं अपलोड करने के लिए ConnectionKit जैसे कुछ उपयोग करता हूं - वास्तव में, कोई भी लाइब्रेरी, वास्तव में, इसका मतलब है कि आपको सॉकेट स्तर से परेशान नहीं होना है - लेकिन फिर, कई अलग-अलग तरीके हैं।

निर्भर करता है, वास्तव में, आप किस स्तर पर समस्या का समाधान करना चाहते हैं, और क्या आप अन्य लोगों के लिए कुछ बनाना चाहते हैं या अपने लिए कुछ काम करना चाहते हैं। अगर मैं सिर्फ अपने लिए कुछ इकट्ठा करना चाहता था, तो शायद मुझे कोडा के ट्रांसमिट ऐप, और फ़ोल्डर्स एक्शन, या शायद हेज़ेल, और कम से कम एप्पलस्क्रिप्ट का उपयोग करके कुछ हद तक घबराहट हो सकती है, जो कि आधा घंटे में होता है, जो ऐसा करेगा नौकरी मेरे लिए काफी अच्छी है ...

+0

यह बहुत अच्छा लगता है! कौन सा आसान है, FSEvents या NSWorkspace, और मैं यह कैसे कर सकता हूं ... क्षमा करें मैं ऐसा नोब हूं। –

+0

मुझे विश्वास है कि इन दिनों जाने के लिए FSEvents सामान्य तरीका होगा; यदि आपने http://stackoverflow.com/questions/913401/fsevents-weirdness-on-os-x-leopard <- इस पहले प्रश्न पर एक नज़र डाली है, तो पोस्ट उत्तर एक काफी छोटी पूर्ण परीक्षण परियोजना के लिए लिंक करता है जो मॉनीटर करता है परिवर्तनों के लिए फ़ोल्डर, यहां: http://bitbucket.org/boredzo/fs-notifier/src/5633027cded4 –

+0

इसका उपयोग करके, मैं देख सकता हूं कि डेस्कटॉप फ़ोल्डर कब संशोधित होता है, लेकिन यह मुझे नहीं बताएगा कि कौन सी फ़ाइल संशोधित है। या क्या एक स्क्रीन शॉट अधिसूचना केंद्र या कुछ है? –

-2

मुझे यकीन नहीं है कि आप वास्तव में क्या पूछ रहे हैं। यदि आप MacOSX में प्रोग्रामेटिक रूप से स्क्रीनशॉट लेने का कोई तरीका पूछ रहे हैं, तो मेरा सुझाव है कि आपको "स्क्रीनकैप्चर" कमांड पर एक नज़र डालें (टर्मिनल में, "डॉक्टर के लिए" स्क्रीन स्क्रीन कैप्चर "टाइप करें)।

यदि आप इसे "कठिन" तरीका करना चाहते हैं, तो आपको this पर देखना चाहिए।

+0

प्रश्नकर्ता पूछताछ नहीं कर रहा है। प्रश्नकर्ता पूछ रहा है कि सामान्य तरीके से बनाए गए स्क्रीनशॉट फ़ाइलों के लिए डेस्कटॉप फ़ोल्डर की निगरानी कैसे करें (⇧⌘4 और दोस्तों) और उन्हें सर्वर पर अपलोड करें। –

संबंधित मुद्दे