2009-11-22 8 views
17

यह डेस्कटॉप डेवलपर के रूप में मेरे लिए नया है।कैसे एप्पल आईट्यून वेब साइट जब मैं नीले "लॉन्च iTunes" बटन पर क्लिक अपने कंप्यूटर पर iTunes आवेदन शुरू करता है?

मैं यह पता लगाने सकता है कि यह कैसे पूरा किया है, यह कुछ शोध मैं कर रहा हूँ करने के लिए प्रासंगिक हो सकता है, एक वेब कार्यान्वयन के लिए मोटी डेस्कटॉप क्षुधा स्थानांतरित करने के लिए विशेष रूप से कैसे।

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

के रूप में लगभग के रूप में मैं निर्धारित कर सकते हैं, आइट्यून्स मेरी मशीन पर नई प्रोटोकॉल हैंडलर के कुछ फार्म स्थापित करता है, "itms" करने के लिए इसी, की "http" जगह में।

इस शांत और मेरे लिए रहस्यमय, लगभग जादुई है। अतिरिक्त पढ़ने सामग्री और/या संसाधनों के लिए कोई मदद या सुझाव बहुत स्वागत है।

+0

कौन सा मंच:

यहाँ VB.Net में किया अपने आवेदन करने के लिए एक फ़ाइल प्रकार रजिस्टर करने के लिए कोड कर रहे हैं? वर्तमान के लिए – arul

+0

विंडोज़, लेकिन मेरे पास विचार हैं ... – kmontgom

उत्तर

14

आप रजिस्टर कर सकते हैं "प्रोटोकॉल हैंडलर": कोडा (http://panic.com/coda) आप के माध्यम से कोड के स्निपेट जोड़ सकते हैं -

<a href="itunes:///">Open iTunes</a> 

अधिकांश एप्लिकेशन अब आजकल "कस्टम यूआरएल योजनाएं" के लिए उदाहरण है कुछ ब्राउज़रों के साथ। मुझे लगता है कि ऑपरेटिंग सिस्टम में एक जगह है जहां आप अपना खुद का regsiter कर सकते हैं।

देखें

फ़ायरफ़ॉक्स में नए लोगों को बनाया जा रहा है: http://ajaxian.com/archives/creating-custom-protocol-handlers-with-html-5-and-firefox

सफारी में: http://discussions.apple.com/thread.jspa?threadID=1280989

विशेष "मोबाइल प्रोटोकॉल हैंडलर" फोन डायलर लॉन्च करने के लिए, ईमेल भेजने, नक्शे गूगल और इतने पर ... http://www.iphonedevfaq.com/index.php?title=Protocols

यहाँ एक बाहरी बजाय जीमेल को गति प्रदान करने के लिए कैसे mailto: प्रोटोकॉल हैंडलर पुन: कॉन्फ़िगर करने के उदाहरण है iPhone/iPod में बड़े पैमाने पर उपयोग किया जाता है मेल क्लाइंट: http://lifehacker.com/392287/set-firefox-3-to-launch-gmail-for-mailto-links

+1

धन्यवाद! मैं अभी लिंक का शोध कर रहा हूं। – kmontgom

+0

यदि आप अपना खुद का प्रोटोकॉल हैंडलर जोड़ना चाहते हैं तो आपको अपने वेब ब्राउज़र को कॉन्फ़िगर करना होगा - और संभवतः आपका ऑपरेटिंग सिस्टम/यूआई खोल (मुझे लगता है कि यह आईई और सफारी के साथ किया जाएगा।) सुरक्षा कारणों से यह खतरनाक होगा अपने डेस्कटॉप पर ऐप्स ट्रिगर करने के लिए अपने ब्राउज़र को पुन: कॉन्फ़िगर करने के लिए वेब से डाउनलोड की गई किसी पुरानी जावास्क्रिप्ट को अनुमति देने के लिए। क्रोम में – daf

+0

: http://updates.html5rocks.com/2011/06/ पंजीकरण- ए- कस्टम- प्रोटीकॉल- हैंडलर –

7

सरल।

<a href="codaclips:///<<**Title:NAME**>>blabla">Add Clip</a> 
+0

जानकारी के लिए धन्यवाद। अब मुझे प्रोटोकॉल हैंडलर और उन्हें कैसे बनाना है, में जाना है। कोई सुझाव? – kmontgom

+0

अपने खुद के ऐप के लिए? – tarnfeld

+0

हां। जैसा कि मैंने कहा, एचटीएमएल/AJAX या फ्लेक्स या सिल्वरलाइट के माध्यम से ब्राउजर में अधिकतर कार्यक्षमता को सीधे जोड़ा जा सकता है। इसका भारी कर्तव्य ग्राफिक्स जो शायद नहीं हो सकता है। इस मामले में, मैं एक अलग, पूर्व-स्थापित एप्लिकेशन लॉन्च करना चाहता हूं जो विशेष रूप से 3 डी सामान को संभालता है। भारी कर्तव्य से मेरा मतलब है लाखों शिखर, और लाखों quads/त्रिकोण। – kmontgom

1

विंडोज़ में इसे एक प्लग करने योग्य प्रोटोकॉल हैंडलर कहा जाता है। This article on CodeProject दिखाता है कि विंडोज पर एक प्लग करने योग्य प्रोटोकॉल हैंडलर को कैसे कार्यान्वित किया जाए।

नोट, यह रजिस्ट्री में एक नया प्रोटोकॉल पंजीकृत करना है, जैसे कि myprotocol: // और जब भी एक myprotocol: // एंकर क्लिक किया जाता है तो यह एक विशिष्ट exe शुरू कर रहा है।

यह वास्तव में आपके आवेदन को अनुरोध प्राप्त करने और संसाधित करने और गतिशील रूप से प्रतिक्रिया डेटा बनाने की अनुमति देता है। यदि आपका प्रोटोकॉल प्रोग्रामेटिक रूप से भी कहा जाएगा तो यह आमतौर पर महत्वपूर्ण है।

यह आपकी स्थिति के लिए अधिक हो सकता है हालांकि यह जानना आसान है।

0

उत्तर देने वालों के लिए बस एक अनुवर्ती।

यह पता चला है कि स्थिति कुछ जटिल है। हालांकि: फ़ायरफ़ॉक्स के लिए कॉन्फ़िगरेशन उपलब्ध है, उचित प्रविष्टियां बनाना सिर्फ काम नहीं करता है।

यह लिंक: http://support.mozilla.com/tiki-view_forum_thread.php?locale=fr&forumId=1&comments_parentId=74068 लिनक्स के लिए समस्याओं का वर्णन करता है, लेकिन मैं सत्यापित कर सकता हूं कि विंडोज़ के तहत भी यही समस्याएं होती हैं।

Windows के तहत यह काम करने के लिए, मैं जो उचित जानकारी शामिल है एक .REG फ़ाइल बनाने के लिए किया था, इस लिंक के अनुसार: http://kb.mozillazine.org/Register_protocol#Windows

अब यह काम करता है!

सभी प्रतिक्रियाओं के लिए धन्यवाद।

1

उदाहरण के लिए ".myp" फ़ाइल फ़ाइल को पंजीकृत करने का सबसे आसान तरीका है, उदाहरण के लिए ".myp" और जब उपयोगकर्ता साइट पर "myapp प्रारंभ करें" दबाता है तो यह फ़ाइल "startapp.myp" डाउनलोड करता है।

विंडोज फिर फ़ाइल के विस्तार को देखेंगे और यह पता लगाएंगे कि यह आपके ऐप में पंजीकृत है और फ़ाइल के साथ कमांड पैरामीटर के रूप में अपना एप्लिकेशन शुरू करें। तब आपका ऐप फ़ाइल को पढ़ सकता है और सामग्री के आधार पर सामान कर सकता है।
(उदाहरण http://www.developerfusion.com/article/36/file-assocation/2/ से लिया लेकिन यहाँ लगातार कारण के लिए नकल की जाती है टिप्पणी के लिए मूल साइट की जांच)

'// Registry windows api calls 
Private Declare Function RegCreateKey& Lib "advapi32.DLL" Alias "RegCreateKeyA" (ByVal hKey As Long, ByVal lpszSubKey As String, ByVal lphKey As Long) 
Private Declare Function RegSetValue& Lib "advapi32.DLL" Alias "RegSetValueA" (ByVal hKey As Long, ByVal lpszSubKey As String, ByVal fdwType As Long, ByVal lpszValue As String, ByVal dwLength As Long) 
'// Required constants 
Private Const HKEY_CLASSES_ROOT = &H80000000 
Private Const MAX_PATH = 256& 
Private Const REG_SZ = 1 

'// procedure you call to associate the tmg extension with your program. 
Private Sub MakeDefault() 
    Dim sKeyName As String '// Holds Key Name in registry. 
    Dim sKeyValue As String '// Holds Key Value in registry. 
    Dim ret As Long '// Holds error status if any from API calls. 
    Dim lphKey As Long '// Holds created key handle from RegCreateKey. 

    '// This creates a Root entry called "TextMagic" 
    sKeyName = "TextMagic" '// Application Name 
    sKeyValue = "TextMagic Document" '// File Description 
    ret = RegCreateKey&(HKEY_CLASSES_ROOT, sKeyName, lphKey) 
    ret = RegSetValue&(lphKey&, Empty, REG_SZ, sKeyValue, 0&) 

    '// This creates a Root entry called .tmg associated with "TextMagic". 
    sKeyName = ".tmg" '// File Extension 
    sKeyValue = "TextMagic" '// Application Name 
    ret = RegCreateKey&(HKEY_CLASSES_ROOT, sKeyName, lphKey) 

    ret = RegSetValue&(lphKey, Empty, REG_SZ, sKeyValue, 0&) 

    '//This sets the command line for "TextMagic". 
    sKeyName = "TextMagic" '// Application Name 
    If Right$(App.Path, 1) = "\" Then 
     sKeyValue = App.Path & App.EXEName & ".exe %1" '// Application Path 
    Else 
     sKeyValue = App.Path & "\" & App.EXEName & ".exe %1" '// Application Path 
    End If 
    ret = RegCreateKey&(HKEY_CLASSES_ROOT, sKeyName, lphKey) 
    ret = RegSetValue&(lphKey, "shell\open\command", REG_SZ, sKeyValue, MAX_PATH) 
End Sub 

Private Sub Form_Load() 
    '// ensure we only register once. When debugging etc, remove the SaveSetting line, so your program will 
    '// always attempt to register the file extension 
    If GetSetting(App.Title, "Settings", "RegisteredFile", 0) = 0 Then 
     '// associate tmg extension with this app 
     MakeDefault() 
     SaveSetting(App.Title, "Settings", "RegisteredFile", 1) 
    End If 
    '// check command line argument: 
    If Command$ <> Empty Then 
     '// we have a file to open 
     '// Fetch the file name from Command$ and then read the file if needed. 
    End If 

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