Class MMKV

  • All Implemented Interfaces:
    android.content.SharedPreferences, android.content.SharedPreferences.Editor

    public class MMKV
    extends java.lang.Object
    implements android.content.SharedPreferences, android.content.SharedPreferences.Editor
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static interface  MMKV.LibLoader  
      • Nested classes/interfaces inherited from interface android.content.SharedPreferences

        android.content.SharedPreferences.Editor, android.content.SharedPreferences.OnSharedPreferenceChangeListener
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods 
      Modifier and Type Method Description
      java.lang.String[] allKeys()  
      void apply()  
      int ashmemFD()  
      int ashmemMetaFD()  
      void async()  
      void checkContentChangedByOuterProcess()  
      void checkReSetCryptKey​(java.lang.String cryptKey)  
      android.content.SharedPreferences.Editor clear()  
      void clearAll()  
      void clearMemoryCache()  
      void close()  
      boolean commit()  
      boolean contains​(java.lang.String key)  
      boolean containsKey​(java.lang.String key)  
      long count()  
      static NativeBuffer createNativeBuffer​(int size)  
      java.lang.String cryptKey()  
      boolean decodeBool​(java.lang.String key)  
      boolean decodeBool​(java.lang.String key, boolean defaultValue)  
      byte[] decodeBytes​(java.lang.String key)  
      byte[] decodeBytes​(java.lang.String key, byte[] defaultValue)  
      double decodeDouble​(java.lang.String key)  
      double decodeDouble​(java.lang.String key, double defaultValue)  
      float decodeFloat​(java.lang.String key)  
      float decodeFloat​(java.lang.String key, float defaultValue)  
      int decodeInt​(java.lang.String key)  
      int decodeInt​(java.lang.String key, int defaultValue)  
      long decodeLong​(java.lang.String key)  
      long decodeLong​(java.lang.String key, long defaultValue)  
      <T extends android.os.Parcelable>
      T
      decodeParcelable​(java.lang.String key, java.lang.Class<T> tClass)  
      <T extends android.os.Parcelable>
      T
      decodeParcelable​(java.lang.String key, java.lang.Class<T> tClass, T defaultValue)  
      java.lang.String decodeString​(java.lang.String key)  
      java.lang.String decodeString​(java.lang.String key, java.lang.String defaultValue)  
      java.util.Set<java.lang.String> decodeStringSet​(java.lang.String key)  
      java.util.Set<java.lang.String> decodeStringSet​(java.lang.String key, java.util.Set<java.lang.String> defaultValue)  
      java.util.Set<java.lang.String> decodeStringSet​(java.lang.String key, java.util.Set<java.lang.String> defaultValue, java.lang.Class<? extends java.util.Set> cls)  
      static MMKV defaultMMKV()  
      static MMKV defaultMMKV​(int mode, java.lang.String cryptKey)  
      static void destroyNativeBuffer​(NativeBuffer buffer)  
      static void disableProcessModeChecker()  
      android.content.SharedPreferences.Editor edit()  
      static void enableProcessModeChecker()  
      boolean encode​(java.lang.String key, boolean value)  
      boolean encode​(java.lang.String key, byte[] value)  
      boolean encode​(java.lang.String key, double value)  
      boolean encode​(java.lang.String key, float value)  
      boolean encode​(java.lang.String key, int value)  
      boolean encode​(java.lang.String key, long value)  
      boolean encode​(java.lang.String key, android.os.Parcelable value)  
      boolean encode​(java.lang.String key, java.lang.String value)  
      boolean encode​(java.lang.String key, java.util.Set<java.lang.String> value)  
      java.util.Map<java.lang.String,​?> getAll()  
      boolean getBoolean​(java.lang.String key, boolean defValue)  
      byte[] getBytes​(java.lang.String key, byte[] defValue)  
      float getFloat​(java.lang.String key, float defValue)  
      int getInt​(java.lang.String key, int defValue)  
      long getLong​(java.lang.String key, long defValue)  
      static java.lang.String getRootDir()  
      java.lang.String getString​(java.lang.String key, java.lang.String defValue)  
      java.util.Set<java.lang.String> getStringSet​(java.lang.String key, java.util.Set<java.lang.String> defValues)  
      int getValueActualSize​(java.lang.String key)  
      int getValueSize​(java.lang.String key)  
      int importFromSharedPreferences​(android.content.SharedPreferences preferences)  
      static java.lang.String initialize​(android.content.Context context)  
      static java.lang.String initialize​(android.content.Context context, MMKV.LibLoader loader)  
      static java.lang.String initialize​(android.content.Context context, MMKV.LibLoader loader, MMKVLogLevel logLevel)  
      static java.lang.String initialize​(android.content.Context context, MMKVLogLevel logLevel)  
      static java.lang.String initialize​(android.content.Context context, java.lang.String rootDir)  
      static java.lang.String initialize​(android.content.Context context, java.lang.String rootDir, MMKV.LibLoader loader)  
      static java.lang.String initialize​(android.content.Context context, java.lang.String rootDir, MMKV.LibLoader loader, MMKVLogLevel logLevel)  
      static java.lang.String initialize​(android.content.Context context, java.lang.String rootDir, MMKVLogLevel logLevel)  
      static java.lang.String initialize​(java.lang.String rootDir)
      Deprecated.
      This method is deprecated due to failing to automatically disable checkProcessMode() without Context.
      static java.lang.String initialize​(java.lang.String rootDir, MMKV.LibLoader loader)
      Deprecated.
      This method is deprecated due to failing to automatically disable checkProcessMode() without Context.
      static java.lang.String initialize​(java.lang.String rootDir, MMKV.LibLoader loader, MMKVLogLevel logLevel)
      Deprecated.
      This method is deprecated due to failing to automatically disable checkProcessMode() without Context.
      static java.lang.String initialize​(java.lang.String rootDir, MMKVLogLevel logLevel)
      Deprecated.
      This method is deprecated due to failing to automatically disable checkProcessMode() without Context.
      static boolean isFileValid​(java.lang.String mmapID)  
      static boolean isFileValid​(java.lang.String mmapID, java.lang.String rootPath)  
      void lock()  
      java.lang.String mmapID()  
      static MMKV mmkvWithAshmemFD​(java.lang.String mmapID, int fd, int metaFD, java.lang.String cryptKey)  
      static MMKV mmkvWithAshmemID​(android.content.Context context, java.lang.String mmapID, int size, int mode, java.lang.String cryptKey)  
      static MMKV mmkvWithID​(java.lang.String mmapID)  
      static MMKV mmkvWithID​(java.lang.String mmapID, int mode)  
      static MMKV mmkvWithID​(java.lang.String mmapID, int mode, java.lang.String cryptKey)  
      static MMKV mmkvWithID​(java.lang.String mmapID, int mode, java.lang.String cryptKey, java.lang.String rootPath)  
      static MMKV mmkvWithID​(java.lang.String mmapID, java.lang.String rootPath)  
      static void onExit()  
      static int pageSize()  
      android.content.SharedPreferences.Editor putBoolean​(java.lang.String key, boolean value)  
      android.content.SharedPreferences.Editor putBytes​(java.lang.String key, byte[] bytes)  
      android.content.SharedPreferences.Editor putFloat​(java.lang.String key, float value)  
      android.content.SharedPreferences.Editor putInt​(java.lang.String key, int value)  
      android.content.SharedPreferences.Editor putLong​(java.lang.String key, long value)  
      android.content.SharedPreferences.Editor putString​(java.lang.String key, java.lang.String value)  
      android.content.SharedPreferences.Editor putStringSet​(java.lang.String key, java.util.Set<java.lang.String> values)  
      static void registerContentChangeNotify​(MMKVContentChangeNotification notify)  
      static void registerHandler​(MMKVHandler handler)  
      void registerOnSharedPreferenceChangeListener​(android.content.SharedPreferences.OnSharedPreferenceChangeListener listener)  
      boolean reKey​(java.lang.String cryptKey)  
      android.content.SharedPreferences.Editor remove​(java.lang.String key)  
      void removeValueForKey​(java.lang.String key)  
      void removeValuesForKeys​(java.lang.String[] arrKeys)  
      static void setLogLevel​(MMKVLogLevel level)  
      void sync()  
      long totalSize()  
      void trim()  
      boolean tryLock()  
      void unlock()  
      static void unregisterContentChangeNotify()  
      static void unregisterHandler()  
      void unregisterOnSharedPreferenceChangeListener​(android.content.SharedPreferences.OnSharedPreferenceChangeListener listener)  
      static java.lang.String version()  
      int writeValueToNativeBuffer​(java.lang.String key, NativeBuffer buffer)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Method Detail

      • initialize

        public static java.lang.String initialize​(android.content.Context context)
      • initialize

        public static java.lang.String initialize​(android.content.Context context,
                                                  MMKVLogLevel logLevel)
      • initialize

        public static java.lang.String initialize​(android.content.Context context,
                                                  MMKV.LibLoader loader)
      • initialize

        public static java.lang.String initialize​(android.content.Context context,
                                                  MMKV.LibLoader loader,
                                                  MMKVLogLevel logLevel)
      • initialize

        public static java.lang.String initialize​(android.content.Context context,
                                                  java.lang.String rootDir)
      • initialize

        public static java.lang.String initialize​(android.content.Context context,
                                                  java.lang.String rootDir,
                                                  MMKVLogLevel logLevel)
      • initialize

        public static java.lang.String initialize​(android.content.Context context,
                                                  java.lang.String rootDir,
                                                  MMKV.LibLoader loader)
      • initialize

        public static java.lang.String initialize​(android.content.Context context,
                                                  java.lang.String rootDir,
                                                  MMKV.LibLoader loader,
                                                  MMKVLogLevel logLevel)
      • initialize

        @Deprecated
        public static java.lang.String initialize​(java.lang.String rootDir)
        Deprecated.
        This method is deprecated due to failing to automatically disable checkProcessMode() without Context. Use the initialize(context, rootDir) method instead.
      • initialize

        @Deprecated
        public static java.lang.String initialize​(java.lang.String rootDir,
                                                  MMKVLogLevel logLevel)
        Deprecated.
        This method is deprecated due to failing to automatically disable checkProcessMode() without Context. Use the initialize(context, rootDir, logLevel) method instead.
      • initialize

        @Deprecated
        public static java.lang.String initialize​(java.lang.String rootDir,
                                                  MMKV.LibLoader loader)
        Deprecated.
        This method is deprecated due to failing to automatically disable checkProcessMode() without Context. Use the initialize(context, rootDir, libLoader) method instead.
      • initialize

        @Deprecated
        public static java.lang.String initialize​(java.lang.String rootDir,
                                                  MMKV.LibLoader loader,
                                                  MMKVLogLevel logLevel)
        Deprecated.
        This method is deprecated due to failing to automatically disable checkProcessMode() without Context. Use the initialize(context, rootDir, libLoader, logLevel) method instead.
      • getRootDir

        public static java.lang.String getRootDir()
      • setLogLevel

        public static void setLogLevel​(MMKVLogLevel level)
      • onExit

        public static void onExit()
      • mmkvWithID

        @Nullable
        public static MMKV mmkvWithID​(java.lang.String mmapID)
      • mmkvWithID

        @Nullable
        public static MMKV mmkvWithID​(java.lang.String mmapID,
                                      int mode)
      • mmkvWithID

        @Nullable
        public static MMKV mmkvWithID​(java.lang.String mmapID,
                                      int mode,
                                      @Nullable
                                      java.lang.String cryptKey)
      • mmkvWithID

        @Nullable
        public static MMKV mmkvWithID​(java.lang.String mmapID,
                                      java.lang.String rootPath)
      • mmkvWithID

        @Nullable
        public static MMKV mmkvWithID​(java.lang.String mmapID,
                                      int mode,
                                      @Nullable
                                      java.lang.String cryptKey,
                                      java.lang.String rootPath)
      • mmkvWithAshmemID

        @Nullable
        public static MMKV mmkvWithAshmemID​(android.content.Context context,
                                            java.lang.String mmapID,
                                            int size,
                                            int mode,
                                            @Nullable
                                            java.lang.String cryptKey)
      • defaultMMKV

        @Nullable
        public static MMKV defaultMMKV()
      • defaultMMKV

        @Nullable
        public static MMKV defaultMMKV​(int mode,
                                       @Nullable
                                       java.lang.String cryptKey)
      • enableProcessModeChecker

        public static void enableProcessModeChecker()
      • disableProcessModeChecker

        public static void disableProcessModeChecker()
      • cryptKey

        @Nullable
        public java.lang.String cryptKey()
      • reKey

        public boolean reKey​(@Nullable
                             java.lang.String cryptKey)
      • checkReSetCryptKey

        public void checkReSetCryptKey​(@Nullable
                                       java.lang.String cryptKey)
      • pageSize

        public static int pageSize()
      • version

        public static java.lang.String version()
      • mmapID

        public java.lang.String mmapID()
      • lock

        public void lock()
      • unlock

        public void unlock()
      • tryLock

        public boolean tryLock()
      • encode

        public boolean encode​(java.lang.String key,
                              boolean value)
      • decodeBool

        public boolean decodeBool​(java.lang.String key)
      • decodeBool

        public boolean decodeBool​(java.lang.String key,
                                  boolean defaultValue)
      • encode

        public boolean encode​(java.lang.String key,
                              int value)
      • decodeInt

        public int decodeInt​(java.lang.String key)
      • decodeInt

        public int decodeInt​(java.lang.String key,
                             int defaultValue)
      • encode

        public boolean encode​(java.lang.String key,
                              long value)
      • decodeLong

        public long decodeLong​(java.lang.String key)
      • decodeLong

        public long decodeLong​(java.lang.String key,
                               long defaultValue)
      • encode

        public boolean encode​(java.lang.String key,
                              float value)
      • decodeFloat

        public float decodeFloat​(java.lang.String key)
      • decodeFloat

        public float decodeFloat​(java.lang.String key,
                                 float defaultValue)
      • encode

        public boolean encode​(java.lang.String key,
                              double value)
      • decodeDouble

        public double decodeDouble​(java.lang.String key)
      • decodeDouble

        public double decodeDouble​(java.lang.String key,
                                   double defaultValue)
      • encode

        public boolean encode​(java.lang.String key,
                              @Nullable
                              java.lang.String value)
      • decodeString

        @Nullable
        public java.lang.String decodeString​(java.lang.String key)
      • decodeString

        @Nullable
        public java.lang.String decodeString​(java.lang.String key,
                                             @Nullable
                                             java.lang.String defaultValue)
      • encode

        public boolean encode​(java.lang.String key,
                              @Nullable
                              java.util.Set<java.lang.String> value)
      • decodeStringSet

        @Nullable
        public java.util.Set<java.lang.String> decodeStringSet​(java.lang.String key)
      • decodeStringSet

        @Nullable
        public java.util.Set<java.lang.String> decodeStringSet​(java.lang.String key,
                                                               @Nullable
                                                               java.util.Set<java.lang.String> defaultValue)
      • decodeStringSet

        @Nullable
        public java.util.Set<java.lang.String> decodeStringSet​(java.lang.String key,
                                                               @Nullable
                                                               java.util.Set<java.lang.String> defaultValue,
                                                               java.lang.Class<? extends java.util.Set> cls)
      • encode

        public boolean encode​(java.lang.String key,
                              @Nullable
                              byte[] value)
      • decodeBytes

        @Nullable
        public byte[] decodeBytes​(java.lang.String key)
      • decodeBytes

        @Nullable
        public byte[] decodeBytes​(java.lang.String key,
                                  @Nullable
                                  byte[] defaultValue)
      • encode

        public boolean encode​(java.lang.String key,
                              @Nullable
                              android.os.Parcelable value)
      • decodeParcelable

        @Nullable
        public <T extends android.os.Parcelable> T decodeParcelable​(java.lang.String key,
                                                                    java.lang.Class<T> tClass)
      • decodeParcelable

        @Nullable
        public <T extends android.os.Parcelable> T decodeParcelable​(java.lang.String key,
                                                                    java.lang.Class<T> tClass,
                                                                    @Nullable
                                                                    T defaultValue)
      • getValueSize

        public int getValueSize​(java.lang.String key)
      • getValueActualSize

        public int getValueActualSize​(java.lang.String key)
      • containsKey

        public boolean containsKey​(java.lang.String key)
      • allKeys

        @Nullable
        public java.lang.String[] allKeys()
      • count

        public long count()
      • totalSize

        public long totalSize()
      • removeValueForKey

        public void removeValueForKey​(java.lang.String key)
      • removeValuesForKeys

        public void removeValuesForKeys​(java.lang.String[] arrKeys)
      • clearAll

        public void clearAll()
      • trim

        public void trim()
      • close

        public void close()
      • clearMemoryCache

        public void clearMemoryCache()
      • sync

        public void sync()
      • async

        public void async()
      • isFileValid

        public static boolean isFileValid​(java.lang.String mmapID)
      • isFileValid

        public static boolean isFileValid​(java.lang.String mmapID,
                                          @Nullable
                                          java.lang.String rootPath)
      • importFromSharedPreferences

        public int importFromSharedPreferences​(android.content.SharedPreferences preferences)
      • getAll

        public java.util.Map<java.lang.String,​?> getAll()
        Specified by:
        getAll in interface android.content.SharedPreferences
      • getString

        @Nullable
        public java.lang.String getString​(java.lang.String key,
                                          @Nullable
                                          java.lang.String defValue)
        Specified by:
        getString in interface android.content.SharedPreferences
      • putString

        public android.content.SharedPreferences.Editor putString​(java.lang.String key,
                                                                  @Nullable
                                                                  java.lang.String value)
        Specified by:
        putString in interface android.content.SharedPreferences.Editor
      • getStringSet

        @Nullable
        public java.util.Set<java.lang.String> getStringSet​(java.lang.String key,
                                                            @Nullable
                                                            java.util.Set<java.lang.String> defValues)
        Specified by:
        getStringSet in interface android.content.SharedPreferences
      • putStringSet

        public android.content.SharedPreferences.Editor putStringSet​(java.lang.String key,
                                                                     @Nullable
                                                                     java.util.Set<java.lang.String> values)
        Specified by:
        putStringSet in interface android.content.SharedPreferences.Editor
      • putBytes

        public android.content.SharedPreferences.Editor putBytes​(java.lang.String key,
                                                                 @Nullable
                                                                 byte[] bytes)
      • getBytes

        public byte[] getBytes​(java.lang.String key,
                               @Nullable
                               byte[] defValue)
      • getInt

        public int getInt​(java.lang.String key,
                          int defValue)
        Specified by:
        getInt in interface android.content.SharedPreferences
      • putInt

        public android.content.SharedPreferences.Editor putInt​(java.lang.String key,
                                                               int value)
        Specified by:
        putInt in interface android.content.SharedPreferences.Editor
      • getLong

        public long getLong​(java.lang.String key,
                            long defValue)
        Specified by:
        getLong in interface android.content.SharedPreferences
      • putLong

        public android.content.SharedPreferences.Editor putLong​(java.lang.String key,
                                                                long value)
        Specified by:
        putLong in interface android.content.SharedPreferences.Editor
      • getFloat

        public float getFloat​(java.lang.String key,
                              float defValue)
        Specified by:
        getFloat in interface android.content.SharedPreferences
      • putFloat

        public android.content.SharedPreferences.Editor putFloat​(java.lang.String key,
                                                                 float value)
        Specified by:
        putFloat in interface android.content.SharedPreferences.Editor
      • getBoolean

        public boolean getBoolean​(java.lang.String key,
                                  boolean defValue)
        Specified by:
        getBoolean in interface android.content.SharedPreferences
      • putBoolean

        public android.content.SharedPreferences.Editor putBoolean​(java.lang.String key,
                                                                   boolean value)
        Specified by:
        putBoolean in interface android.content.SharedPreferences.Editor
      • remove

        public android.content.SharedPreferences.Editor remove​(java.lang.String key)
        Specified by:
        remove in interface android.content.SharedPreferences.Editor
      • clear

        public android.content.SharedPreferences.Editor clear()
        Specified by:
        clear in interface android.content.SharedPreferences.Editor
      • commit

        public boolean commit()
        Specified by:
        commit in interface android.content.SharedPreferences.Editor
      • apply

        public void apply()
        Specified by:
        apply in interface android.content.SharedPreferences.Editor
      • contains

        public boolean contains​(java.lang.String key)
        Specified by:
        contains in interface android.content.SharedPreferences
      • edit

        public android.content.SharedPreferences.Editor edit()
        Specified by:
        edit in interface android.content.SharedPreferences
      • registerOnSharedPreferenceChangeListener

        public void registerOnSharedPreferenceChangeListener​(android.content.SharedPreferences.OnSharedPreferenceChangeListener listener)
        Specified by:
        registerOnSharedPreferenceChangeListener in interface android.content.SharedPreferences
      • unregisterOnSharedPreferenceChangeListener

        public void unregisterOnSharedPreferenceChangeListener​(android.content.SharedPreferences.OnSharedPreferenceChangeListener listener)
        Specified by:
        unregisterOnSharedPreferenceChangeListener in interface android.content.SharedPreferences
      • mmkvWithAshmemFD

        public static MMKV mmkvWithAshmemFD​(java.lang.String mmapID,
                                            int fd,
                                            int metaFD,
                                            java.lang.String cryptKey)
      • ashmemFD

        public int ashmemFD()
      • ashmemMetaFD

        public int ashmemMetaFD()
      • createNativeBuffer

        public static NativeBuffer createNativeBuffer​(int size)
      • destroyNativeBuffer

        public static void destroyNativeBuffer​(NativeBuffer buffer)
      • writeValueToNativeBuffer

        public int writeValueToNativeBuffer​(java.lang.String key,
                                            NativeBuffer buffer)
      • registerHandler

        public static void registerHandler​(MMKVHandler handler)
      • unregisterHandler

        public static void unregisterHandler()
      • unregisterContentChangeNotify

        public static void unregisterContentChangeNotify()
      • checkContentChangedByOuterProcess

        public void checkContentChangedByOuterProcess()