Skip to content

Advanced Application

JustWe edited this page Jan 20, 2016 · 3 revisions

进阶应用

7.使用网络

网络的使用可参考JustWe-WebServer中的介绍。 按照介绍操作就可以通过:

  
        server.apply("/lfk", new OnWebStringResult() {
            @Override
            public String OnResult() {
                return "=======";
            }
        });

        server.apply("/main", new OnWebFileResult() {
            @Override
            public File returnFile() {
                return new File(WebServerDefault.WebServerFiles+"/"+"welcome.html");
            }
        });
        

这样的简单方式绑定路由,而get/post数据可以直接使用http协议的get和post进行。

8.使用状态机精灵

    // 为状态机添加一个任务
    sprite.addState(new StateFinder() {
        @Override
        public boolean isContent(BaseSub baseSub) {
            return Math.abs(zom.s_position.x - baseSub.s_position.x) > 50;
        }
    }, new FrameAnimation(0, 63, 1));

可以通过上述的addState方法为状态机精灵添加一个任务,只有当第一个参数接口回调的返回值为真的时候, 才会去运行第二个参数提供的指令,如果返回为假则会运行第二项状态的判断。 状态的优先级由加入顺序提供。

效果图:
state

如上图所示,左侧的精灵的默认任务是原地转圈,然而当有其他精灵靠近的时候,向某一方向移动。

9.CrashHandler崩溃守护

CrashHandler用于处理游戏的意外崩溃事件,初始化推荐在Application中进行。 CrashHandler可以自动保存机型和异常日志,以便让开发者找到问题所在。

    CrashHandler.getInstance().init(this);

使用以上语句即可自动保存错误日志。 还可以:

        
    CrashHandler.getInstance().setRestartActivity(MainActivity.class); // 重启的Activity
    CrashHandler.getInstance().setAfterCrashListener(new AfterCrashListener() {
        @Override
        public void AfterCrash() {  // 设定保存项目
            ...
        }
    });    
Clone this wiki locally