سؤال

لقد طورت لعبة على Android. أقوم حاليًا بحفظ معظم إحصائيات اللعبة في قاعدة بيانات. ومع ذلك ، لا يستخدم التطبيق أكثر من صف واحد في DB. أنا مهتم الآن بتقديم بعض الإحصائيات الجديدة ، لكن هذا سيؤدي إلى إعادة تثبيت DB الخاص بي وبالتالي توضيح تقدم الجميع. من أجل تجنب ذلك في المستقبل ، أفكر في تخزين إحصائيات اللعبة باستخدام المشاركين بدلاً من ذلك. سؤالي هو عدد الأشياء المختلفة التي يمكن تخزينها بهذه الطريقة قبل أن تصبح مشكلة. في المجموع ، سأقوم بتخزين حوالي 40 قيمة ، جميع الأعداد الصحيحة.

هل كانت مفيدة؟

المحلول

تتم كتابة المشتركين في ملفات XML ، وبالتالي فإن الحد الأقصى لحجم الملف على Android هو حجم ملف XML المشترك. أستطيع أن أقول بأمان أن 40 قيم عدد صحيح لن تكون مشكلة.

يقتصر الحد الأقصى لحجم القيمة في ملف المشتركين على الحد الأقصى لحجم القيمة التي تحاول تخزينها. (وهذا يعني أنه لا يمكنك وضع قيمة سلسلة أطول من السلاسل التي يمكن أن تكون في جافا.)

الشيء الوحيد الذي أقترحه هو التأكد .commit() كل تغيير) وأيضًا لا تنشئ محررًا جديدًا لكل تغيير. (هذه مجرد ممارسات جيدة.)

SharedPreferences settings = getSharedPreferences(PREFS_FILE_NAME, 0);
SharedPreferences.Editor editor = settings.edit();
editor.putInt("firstValue", mFirst);
editor.putInt("secondValue", mSecond);
editor.putInt("thirdValue", mThird);

// Commit the edits! (As infrequently as possible)
editor.commit();

نصائح أخرى

لا أعرف أي قيود ولكن فيما يتعلق بمشكلتك في التقدم الذي يتم مسحه. يمكنك تجاوز طريقة OnUpgrade في فئة SQLite الخاصة بك ثم ترحيل بيانات Earhons إلى قاعدة البيانات الأحدث.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top