5

में फिर से शुरू किया जाता है तो मेरा WP 8.1 स्टोर ऐप बहुत अजीब तरीके से व्यवहार करता है। जब मैं जल्दी से नेविगेट करता हूं और फिर वापस आ जाता हूं तो ऐप फिर से शुरू होने की घटना की उम्मीद होती है। लेकिन अगर मैं कुछ समय के लिए ऐप को पृष्ठभूमि में रखता हूं और वापस आने पर, ऐप पुनर्विक्रेता घटना के बजाए कन्स्ट्रक्टर और ऑन नविगेटेड घटनाओं को चलाता है और इसमें कुछ सेकंड (लगभग 4 सेकंड) के लिए काला "फिर से शुरू हो रहा है" स्क्रीन है यह पृष्ठभूमि ऐडियो कार्य के साथ एक ऐप है। एमएस से नमूना पृष्ठभूमिऑडियो ऐप भी इस तरह व्यवहार करता है। कोई भी जानता है कि यहाँ क्या गलत है?ऐप फिर से शुरू करने की घटना नहीं है जब ऐप को WP 8.1 स्टोर ऐप

उत्तर

5

मैं एक WP 8.1 ऐप बनाने की प्रक्रिया में हूं जो पृष्ठभूमि ऑडियो कार्य का भी उपयोग करता है। जो कुछ भी आपने समझाया वह भी मेरे साथ होता है।

यदि आप कुछ सेकंड के लिए "फिर से शुरू ..." देखते हैं, तो संभवतः इसका मतलब है कि पहले आपके निलंबित होने के बाद ओएस द्वारा आपके ऐप को समाप्त कर दिया गया था। इस मामले में, फिर से शुरू होने वाली घटना नहीं होगी क्योंकि आपका ऐप पूरी तरह से मारा गया था और फिर से शुरू होना चाहिए। "फिर से शुरू करना" आमतौर पर तब होता है जब एक निलंबित (समाप्त नहीं हुआ) ऐप निष्पादन को फिर से शुरू करता है।

जब आपका ऐप समाप्त हो जाता है और फिर ऐप स्विचर से "फिर से शुरू किया जाता है, तो आपके Application.OnLaunched() विधि ओवरराइड e.PreviousExecutionState == ApplicationExecutionState.Terminated के साथ लागू किया जाएगा। इस विधि में, आपको यह जांचना चाहिए कि पिछले निष्पादन स्थिति को समाप्त कर दिया गया था, और यदि ऐसा है, तो ऐप को उस स्थिति में पुनर्स्थापित करें जो निलंबन से पहले था। यह उपयोगकर्ता को भ्रम देता है कि ऐप को कभी समाप्त नहीं किया गया था और वे उस समय फिर से शुरू कर सकते हैं कि वे क्या कर रहे थे।

यदि आप एक नया पिवोट ऐप विंडोज फोन 8.1 प्रोजेक्ट (उदाहरण के लिए) बनाते हैं, तो आप देखेंगे कि एप्लिकेशन लाइफसाइकिल घटनाओं को App.xaml.cs में सही ढंग से देखभाल की जाती है।

ऐप फिर से शुरू होने की घटना की अपेक्षा की जाती है जब मैं जल्दी से नेविगेट करता हूं और फिर वापस आ जाता हूं।

यह सही व्यवहार है। एक बार ओएस द्वारा निलंबित होने से पहले ऐप को पृष्ठभूमि में ले जाने में कुछ सेकंड लगते हैं, इसलिए यदि ओएस ने इसे निलंबित करने से पहले ऐप को फिर से शुरू किया है, तो यह बस स्मृति से फिर से शुरू होगा।

मुझे यकीन नहीं है कि पृष्ठभूमि ऑडियो ऐप्स को समाप्त करने के लिए अधिक संवेदनशील क्यों हैं। मुझे यह भी पता चलता है कि Xbox संगीत ऐप समान व्यवहार करता है। उम्मीद है कि विंडोज फोन के अगले संस्करण में, इस मुद्दे को संबोधित किया जाएगा।


FYI करें यहाँ MSDN से आवेदन जीवन चक्र (मैं सुझाव है कि आप आवेदन जीवन चक्र के बारे में अधिक जानकारी के लिए इस पेज पढ़ने के लिए) का एक चित्र है:

Application lifecycle

"फिर से शुरू करना" केवल निलंबित से उत्पन्न होती है राज्य चलाने के लिए।

+0

यह वही होता है जो स्पष्टीकरण को स्पष्ट करने के लिए धन्यवाद। – Heshan

+0

क्या आप जानते हैं कि इस तरह के व्यवहार या इसके लिए किसी भी कारण को कैसे रोकें? @ डेकडे चंद्रमा – Heshan

1

जब भी ऐप पृष्ठभूमि से फिर से शुरू होता है।

  1. निलंबित: दो राज्यों में यह हो सकता है देखते हैं इसे सफलतापूर्वक शुरू, OnNavigatedTo के लिए सीधे नेविगेट; कन्स्ट्रक्टर को
  2. समाप्त किया गया: ऐप आपके द्वारा छोड़े गए पृष्ठ की पिछली स्थिति से शुरू नहीं होगा, बल्कि इसके बजाय, यह उस पृष्ठ को फिर से लोड करेगा; इस समय आपको ऐप को निलंबित करने के दौरान राज्य को सहेजने की ज़रूरत है, ताकि इसे पुनर्स्थापित करने के लिए
संबंधित मुद्दे