2011-11-28 23 views
6

मैं एक WP7 एप्लिकेशन लिख रहा हूं और मेरे पास उपयोगकर्ता को बाजार की समीक्षा के लिए प्रत्येक पांच रनों को एक घातीय बैक ऑफ के साथ समीक्षा करने के लिए कहा गया है, इसलिए यह कम परेशान है। यदि उपयोगकर्ता संदेश बॉक्स में 'ठीक है' पर क्लिक करता है, तो मैं समीक्षा कार्य लॉन्च करता हूं और मैं स्टोर करता हूं कि उपयोगकर्ता ने एप्लिकेशन की समीक्षा की है, इसलिए मैं फिर से नहीं पूछता।क्या यह जांचने का कोई तरीका है कि उपयोगकर्ता ने वास्तव में आपका ऐप रेट किया है या नहीं?

var marketplaceReviewTask = new MarketplaceReviewTask(); 
marketplaceReviewTask.Show(); 
IsolatedStorageSettings.ApplicationSettings["HasReviewed"] = true; 

हालांकि, यह है, जबकि संभावना वे एप्लिकेशन को रेट किया है, मैं वास्तव में यकीन है कि उन्होंने किया नहीं हूँ एक 100%। क्या यह जांचने का कोई तरीका है कि वर्तमान उपयोगकर्ता ने वास्तव में समीक्षा लिखी है या नहीं? क्या MarketplaceReviewTask() का रिटर्नव्यू है? मैं कुछ भी नहीं ढूंढ पाया जो इंगित करता है कि मैं इसके लिए सुन सकता हूं।

+0

मैं कल्पना नहीं करता, गोपनीयता की आक्रमण की तरह लगता है। बस इसके लिए अपना शब्द ले लो। धन्यवाद –

उत्तर

3

नहीं, MarketplaceReviewTask में कोई घटना नहीं है जो कोई मूल्य लौटाती है। Launcher कार्यों में से अधिकांश के साथ एक मामला। Chooser कार्यों में जानकारी एकत्र करने के लिए ईवेंट हैं। @ विल्ममेल की तरह टिप्पणी में कहा, यह गोपनीयता पर आक्रमण की तरह दिखता है।

+0

प्रतिक्रियाओं के लिए धन्यवाद अभिनव और @ विल्मेन। – qhawk

0

आप एक चेक बना सकते हैं जो स्थानीय रूप से जांच करेगा यदि उपयोगकर्ता ने पहले आवेदन किया है या नहीं। निम्नलिखित कोड पर एक नज़र डालें:

public void reviewfunction() 
    { 
     //For Windows phone 8 app 
     var settings = IsolatedStorageSettings.ApplicationSettings; 

     //For windows phone 8.1 app or universal app use the following line of code 
     //var settings = Windows.Storage.ApplicationData.Current.LocalSettings; 

     //set the app name 
     string Appname = "My app"; 

     if (!settings.Contains("review")) 
     { 
      settings.Add("review", 1); 
      settings.Add("rcheck", 0); 
     } 
     else 
     { 
      int no = Convert.ToInt32(settings["review"]); 
      int check = Convert.ToInt32(settings["rcheck"]); 
      no++; 
      if ((no == 4 || no == 7 || no % 10 == 0) && check == 0) 
      { 
       settings["review"] = no; 
       MessageBoxResult mm = MessageBox.Show("Thank you for using this application.\nWould you like to give some time to rate and review this application to help us improve", Appname, MessageBoxButton.OKCancel); 
       if (mm == MessageBoxResult.OK) 
       { 
        settings["rcheck"] = 1; 
        MarketplaceReviewTask rr = new MarketplaceReviewTask(); 
        rr.Show(); 
       } 
      } 
      else 
      { 
       settings["review"] = no; 
      } 
     } 
    } 

उम्मीद है कि यह आपकी मदद करता है। स्रोत कोड here से डाउनलोड किया जा सकता है।

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

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