2015-06-07 4 views
6

पृष्ठभूमि
मैं एक android game Google पर प्रकाशित कर दिया गया है Play स्टोर पर काम कर रहा हूँ।
और अब मैं क्लाउड सेव सुविधा को अद्यतन के रूप में जोड़ने की योजना बना रहा हूं।
(FYI: मैं एकता उपयोग कर रहा हूँ और Play Games plugin)सहेजा जा रहा है गूगल के प्ले क्लाउड में सहेजें स्वचालित रूप से

समस्या
अनुसंधान और प्रयोग के घंटे के बाद, मैं वर्तमान में कैसे स्वचालित रूप से खेल को बचाने के लिए पर अटक कर रहा हूँ।

मेरा गेम मिनी गेम का संग्रह है जहां एक खिलाड़ी जीवन से बाहर निकलने तक खेलना जारी रख सकता है।
मैं चाहता हूं कि जब खिलाड़ी हार जाए तो बचत स्वचालित रूप से हो। , 1 एक मेटा डेटा, तो 2 एक डेटा ही है

public void SaveGame (ISavedGameMetadata game, byte[] savedData) { 
    /* code omitted */ 
    savedGameClient.CommitUpdate(game, updatedMetadata, savedData, OnSavedGameWritten); 
} 

मैं समारोह SaveGame के लिए 2 मानकों की जरूरत है:

प्लगइन के अनुसार, इस तरह मैं बादल को बचाने के है ।

जहां भी मैं खोज करता हूं (यहां तक ​​कि Google में भी), मुझे मेटा डेटा स्वचालित रूप से उत्पन्न करने का कोई तरीका नहीं मिल रहा है।
अपना शोध के आधार पर, मैं नीचे समारोह से मेटा डेटा प्राप्त कर सकते हैं:

void ShowSelectUI() { 
    uint maxNumToDisplay = 5; 
    bool allowCreateNew = true; 
    bool allowDelete = true; 

    // I will need to call this function first 
    // This will display a dialog to the player 
    // The player will need to create a new save manually afterwards 
    ISavedGameClient savedGameClient = PlayGamesPlatform.Instance.SavedGame; 
    savedGameClient.ShowSelectSavedGameUI("Select saved game", 
              maxNumToDisplay, 
              allowCreateNew, 
              allowDelete, 
              OnSavedGameSelected); 
} 


public void OnSavedGameSelected (SelectUIStatus status, ISavedGameMetadata game) { 
    // And then from the callback function I get the meta data 
    // (ISavedGameMetadata game) 

    if (status == SelectUIStatus.SavedGameSelected) { 
     // handle selected game save 
    } else { 
     // handle cancel or error 
    } 
} 

इस तरह उपयोगकर्ता एक संवाद को खोलने और फिर एक नई खुद से बचाने के लिए बनाने की आवश्यकता होगी।
यह मेरे खेल में नहीं हो सकता है, क्योंकि मुझे हर बार खिलाड़ी हारने की ज़रूरत है।

संदर्भ
मुझे पता है कि यह संभव हो सकता है, एक खेल कहा जाता Get Bigger! Mola प्रगति हर बार खिलाड़ी एक संवाद को बचाने खोले बिना खो देता है बचा सकता है।

प्रश्न
क्या कोई मुझे इस बारे में कोई संकेत दे सकता है?
मैंने अपना पूरा दिन बिना जवाब के खोजा है ...
किसी भी प्रकार की सहायता की सराहना की जाएगी।

+1

आप अभी तक बाहर इस लगा है? मुझे भी यही समस्या हो रही है। मैं सकारात्मक हूं कि ऐसा करने का एक तरीका होना चाहिए, क्योंकि बहुत से गेम Google खाते के आधार पर क्लाउड बचत की अनुमति देते हैं, लेकिन मुझे इस विषय पर कुछ भी नहीं दिख रहा है। – Bhaskar

उत्तर

0

मैं व्यक्तिगत रूप से उस संपत्ति से परिचित नहीं हूं जिसके साथ आप आंकड़ों को सहेजने का प्रयास करते हैं। हालांकि, मैंने इस संपत्ति का उपयोग किया Stan's Native जिसे मैं व्यक्तिगत रूप से अनुशंसा कर सकता हूं।

आप मुक्त करने के लिए कुछ और चाहते हैं, तो इन कड़ियों है, Search Native

वैसे भी, आप theie बादल के साथ काम करने के बारे में गूगल ट्यूटोरियल की जाँच करनी चाहिए, वहाँ जानकारी का एक बहुत एंड्रॉयड साइट पर है, यह है कि शामिल नहीं करता है एकता। Android Developer

0

रूप here उल्लेख किया है, आप एक सूची में से एक का चयन करने के बिना कोई नया स्नैपशॉट खोल सकते हैं, बस फ़ाइलनाम निर्दिष्ट अगर यह मौजूद है, यह इसका इस्तेमाल करेगा, अन्यथा यह एक नया बना दिया जाएगा।

कुछ इस तरह:

 ISavedGameClient savedGameClient = PlayGamesPlatform.Instance.SavedGame; 
    savedGameClient.OpenWithAutomaticConflictResolution(filename, DataSource.ReadCacheOrNetwork, 
     ConflictResolutionStrategy.UseLongestPlaytime, delegate(SavedGameRequestStatus status, ISavedGameMetadata metadata) { 
      // your code here .... 
     }); 
संबंधित मुद्दे