做App端的我们有时候会遇到这样的情况,我们需要实时观察APP内的某一段代码执行的情况,例如我在自己的APP里有个播放器,我想实时看到播放过程的log,但是呢,我不想连ADB后在AS的控制台看Log,万一有时连不上ADB就傻逼了,
还有,我的APP是要装到电视上的,有的电视不支持ADB,但是我又希望实时看到Log。
解决这个问题并不难,想必你也想到了,让后台写个打日志的接口,我们在APP里指定地方调用就行了。可以是可以,但是如果你想临时加一个接口呢,后台会屁颠屁颠去再写,你一句用完了,他们再屁颠屁颠的删掉,想想都是不可能的,我们的后台才懒得伺候你,就酱。
扯多了,说正题,我的方法就是,自己本地跑个tomcat,自己写个服务端小程序,然后想调用啥接口,自己随心所欲的写,只是APP埋的接口地址,是自己电脑的tomcat的地址。
步骤如下:
1.本地装一个Myeclipse,我装的是Myeclipse10版本,和eclipse很像,想必你也知道。
2.下载一个tomcat7,网上很多,下载解压即可,免安装的。直接看第3步
3.配置服务端开发环境。我们需要在myeclipse中指定调试服务器为tomcat7,就是自己刚才下载解压好的。
点击:window->preferences->搜索tomcat,然后选择tomcat7,在右面菜单中,将刚刚下载好解压后的tomcat7的根路径粘贴到三个文本框中,注意是根路径,不是bin目录。如图
4.下载struct2,并解压。struct2是服务端开发用到的一个框架,我们只需要用到其中几个小功能,更多逻辑,感兴趣的可以自行百度。这里我们只需要写一个接口,接收我们的APP请求即可。
.1将struct2解压,进入apps目录,再进WEB-INF,将lib下面的所有jar包,拷贝到myeclipse新建的web项目里,路径WEB-INFO>lib,这里注意新建的是web项目,不是普通的java项目,如图
.2 再将struct中WEB-INFO>classes路径下的struct.xml文件拷贝到我们的 项目,位置如上面那图里的。
然后将WEB-INFO路径下的web.xml中两个filter拷贝到项目中的web.xml里,位置相同。如图
.3现在开始修改一些参数。
1).修改struct.xml的内容。将struts.enable.DynamicMethodInvocation设置为true
然后删除无用的信息。完成后如下图:
5.开始编写接口代码:新建一个bean文件,内容自拟,然后生成getter和setter