+ * 描述 + */ +class MogoSkinManager { + + private IMogoSkinSupportInstaller mInstaller; + + private static volatile MogoSkinManager sInstance; + + private MogoSkinManager() { + mInstaller = ARouter.getInstance().navigation( IMogoSkinSupportInstaller.class ); + } + + public static MogoSkinManager getInstance() { + if ( sInstance == null ) { + synchronized ( MogoSkinManager.class ) { + if ( sInstance == null ) { + sInstance = new MogoSkinManager(); + } + } + } + return sInstance; + } + + public synchronized void release() { + sInstance = null; + } + + private Object readResolve() { + // 阻止反序列化,必须实现 Serializable 接口 + return sInstance; + } + + public IMogoSkinSupportInstaller getInstaller() { + return mInstaller; + } +} diff --git a/skin/mogo-skin-support/src/main/java/com/mogo/skin/support/SkinMode.java b/skin/mogo-skin-support/src/main/java/com/mogo/skin/support/SkinMode.java new file mode 100644 index 0000000000..1a88136325 --- /dev/null +++ b/skin/mogo-skin-support/src/main/java/com/mogo/skin/support/SkinMode.java @@ -0,0 +1,37 @@ +package com.mogo.skin.support; + +public +/** + * @author congtaowang + * @since 2020/8/28 + *
+ * 描述 + */ +enum SkinMode { + + /** + * 白天 + */ + Light( false, "light" ), + + /** + * 夜晚 + */ + Night( true, "" ); + + private boolean isDefault; + private String name; + + SkinMode( boolean isDefault, String name ) { + this.isDefault = isDefault; + this.name = name; + } + + public boolean isDefault() { + return isDefault; + } + + public String getName() { + return name; + } +} diff --git a/skin/mogo-skin-support/src/main/java/com/mogo/skin/support/SkinSupportInstallerConstants.java b/skin/mogo-skin-support/src/main/java/com/mogo/skin/support/SkinSupportInstallerConstants.java new file mode 100644 index 0000000000..8faea926ca --- /dev/null +++ b/skin/mogo-skin-support/src/main/java/com/mogo/skin/support/SkinSupportInstallerConstants.java @@ -0,0 +1,13 @@ +package com.mogo.skin.support; + +public +/** + * @author congtaowang + * @since 2020/8/28 + * + * 描述 + */ +class SkinSupportInstallerConstants { + + public static final String PATH = "/skin/install"; +}