-
Notifications
You must be signed in to change notification settings - Fork 115
Advanced Application
网络的使用可参考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进行。
// 为状态机添加一个任务
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方法为状态机精灵添加一个任务,只有当第一个参数接口回调的返回值为真的时候, 才会去运行第二个参数提供的指令,如果返回为假则会运行第二项状态的判断。 状态的优先级由加入顺序提供。
效果图:
如上图所示,左侧的精灵的默认任务是原地转圈,然而当有其他精灵靠近的时候,向某一方向移动。
CrashHandler用于处理游戏的意外崩溃事件,初始化推荐在Application中进行。 CrashHandler可以自动保存机型和异常日志,以便让开发者找到问题所在。
CrashHandler.getInstance().init(this);
使用以上语句即可自动保存错误日志。 还可以:
CrashHandler.getInstance().setRestartActivity(MainActivity.class); // 重启的Activity
CrashHandler.getInstance().setAfterCrashListener(new AfterCrashListener() {
@Override
public void AfterCrash() { // 设定保存项目
...
}
});
使用蓝牙需要新建BlueToothServer
对象,传入上下文和MessageBack接口。
blueToothServer = new BlueToothServer(this, new OnMessageBack() {
@Override
public void getMessage(String msg) {
Log.e("L", msg);
}
@Override
public void sendMessage(String msg) {
Log.e("L", msg);
}
@Override
public void getDevice(ArrayList<String> msg) {
Log.e("L", msg.size() + "");
}
});
// 使用如下语句进行初始化
blueToothServer.init();
服务初始化之后如未打开蓝牙,系统会自动提示应用要求蓝牙开启。
通过MessageBack接口可以接收到发送、接收、以及扫描设备信息,采取对应操作就可以获得数据。
关闭服务时请使用blueToothServer.unBindService();
关闭服务。
使用blueToothServer.doDiscovery();
进行设备扫描,返回结果在OnMessageBack()接口的
getDevice()方法接收。
使用blueToothServer.ensureDiscoverable();
允许被扫描。
使用blueToothServer.getPairedDevices();
返回已配对的设备列表。
在配对成功之后就可以使用blueToothServer.sendMessage(String msg);
发送消息了。
同时,消息的接收也可以从getMessage()接口中获得。