2011-08-10 12 views
7

मैंने माइक्रोसॉफ्ट से इस example का पालन करने का प्रयास किया, सबसे अच्छा मैं बता सकता हूं कि मैंने अलग-अलग असेंबली में अनुसूचित टास्कएजेंट और आवधिक टास्क को छोड़कर सब कुछ किया है। जब मैं एमुलेटर में अपना ऐप चलाता हूं और आवधिक कार्य को लॉन्च करने का प्रयास करता हूं:
अनुसूचित कार्य सेवा। लॉन्चफॉरटेस्ट (_task.Name, TimeSpan.FromSeconds (60));
कुछ भी नहीं होता है, कोई अपवाद नहीं होता है और एक मिनट के बाद शेड्यूल्ड टास्कएजेंट कभी शुरू नहीं होता है और जब मैं एमुलेटर पर "सेटिंग> पृष्ठभूमि कार्य" के अंतर्गत दिखता हूं तो कुछ भी सूचीबद्ध नहीं होता है।क्या शेड्यूल्ड टास्कएजेंट और आवधिक कार्य मुख्य ऐप से एक अलग असेंबली में होना चाहिए?

उत्तर

9

हाँ, वे एक अलग विधानसभा में होने की जरूरत है, और आप अपने WMAppManifest.xaml में यह संदर्भ के लिए, इस तरह की जरूरत है:

<Tasks> 
    <DefaultTask Name="_default" NavigationPage="Views/MainPage.xaml" /> 
    <ExtendedTask Name="BackgroundTask"> 
     <BackgroundServiceAgent Specifier="ScheduledTaskAgent" Name="DMI.ScheduledAgent" Source="DMI.TaskAgent" Type="DMI.TaskAgent.ScheduledAgent" /> 
    </ExtendedTask> 

आप MSDN पर पढ़ सकते हैं क्या BackgroundServiceAgent विशेषताओं के लिए सही मान रहे हैं।

आप दृश्य स्टूडियो विंडोज फोन अनुसूचित कार्य एजेंट टेम्पलेट का उपयोग करते हैं, तो BackgroundServiceAgent कार्य स्वचालित रूप से सही मूल्यों के साथ WMAppManifest.xaml में जोड़ा जाता है।

+0

तो मैंने इसे एक अलग असेंबली में विभाजित किया और मुझे इसे "सेटिंग> पृष्ठभूमि कार्य" में सूचीबद्ध किया गया है लेकिन कुछ भी नहीं हो रहा है। क्या मुझे ScheuledTaskAgent को डीबग करने के लिए कुछ भी करने की ज़रूरत है? – Tyler

+0

1 मिनट एक बहुत लंबी अवधि है। इसे 0 पर सेट करने का प्रयास करें। और नहीं, विशेष कुछ भी नहीं, सिर्फ काम करना चाहिए। यह देखने के लिए टोस्ट का उपयोग करने का प्रयास करें कि यह वास्तव में शेलटास्क चला रहा है या नहीं! –

+0

धन्यवाद क्लॉस, मेरे पास मैनिफेस्ट में गलत वर्ग का नाम था, अब यह काम कर रहा है। – Tyler

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