【仅供内部供应商使用,不提供对外解答和培训】

Page tree

【仅供内部供应商使用,不提供对外解答和培训】

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Current »

问题

有时候为了某些特定的功能,可能会需要更改产品提供的接口,但是已经发布的插件并无法知道接口已经更改,这个时候如果没有提示的话,就会出现设计器无法启动、服务器无法启动等问题。

解决方案

提供一个用于标记API等级等接口com.fr.stable.fun.Level,该接口只有一个方法

 

package com.fr.stable.fun;

public interface Level {

    /**
     * 当前接口的API等级,用于判断是否需要升级插件
     *
     * @return API等级
     */
    int currentAPILevel();
}

 

需要做版本标记的接口则继承此接口,并在自身接口内提供一个API等级的常量,比如这里的CURRENT_API_LEVEL

 

public interface IndependentChartProvider extends Level {

    String XML_TAG = "IndependentChartProvider";

    int CURRENT_API_LEVEL = 1;
}

 

实现这个接口的方法则需要实现 int currentAPILevel()方法

 

public class IndependentVanChartProvider extends AbstractIndependentChartProvider {

    @Override
    public int currentAPILevel() {
        return CURRENT_API_LEVEL;
    }
}

 

当需要提示低版本插件升级时,只需要更改接口IndependentChartProvider中的CURRENT_API_LEVEL为更大的值即可

效果

当有低版本的插件需要升级时,运行过程中会有警告提示,类似于
插件版本过低,请升级插件,当前插件将无法加载:xxx

在设计器中会有弹出提示插件版本过低的对话框

  • No labels