التوثيق · التكامل مع Android
8. التفضيلات المحلية (PreferencesManager)
يتيح AKS أيضًا الوصول إلى مخزن أزواج المفاتيح والقيم البسيط الذي يستخدمه داخليًا (ويعتمد على multiplatform-settings، أي على SharedPreferences في Android)، لتتمكن من استخدامه لتخزين تفضيلات تطبيقك البسيطة بدلًا من إضافة مكتبة تخزين أخرى إلى تبعيات المشروع:
kotlin
// Strings, Ints, Booleans, Longs, Floats
PreferencesManager.addInPreferences("user_name", "Talha")
PreferencesManager.addInPreferences("launch_count", 5)
PreferencesManager.addInPreferences("onboarding_done", true)
PreferencesManager.addInPreferencesAsLong("last_sync_time", System.currentTimeMillis())
PreferencesManager.addInPreferencesAsFloat("scroll_position", 12.5f)
PreferencesManager.getStringPreferences("user_name", "")
PreferencesManager.getIntegerPreferences("launch_count", 0)
PreferencesManager.getBooleanPreferences("onboarding_done", false)
PreferencesManager.getLongPreferences("last_sync_time", 0L)
PreferencesManager.getFloatPreferences("scroll_position", 0f)
// Remove a single key
PreferencesManager.flushSavedCache("user_name")
// Store/retrieve a serializable object as JSON
PreferencesManager.addInPreferences("user_profile", profile, UserProfile.serializer())
PreferencesManager.getCustomPreference("user_profile", UserProfile.serializer())هذا هو المخزن نفسه الذي يستخدمه AKS لعلامات الحالة الداخلية الخاصة به (مثل REMOVE_ADS)، لذا ينبغي أن تضع المفاتيح التي تختارها ضمن نطاق تسمية خاص أو أن تجعلها متميزة عن المفاتيح الموثّقة في مواضع أخرى من هذا الدليل لتجنب تعارض الأسماء.