《libGDX移动游戏开发从入门到精通》一2.4 日志工具
本节书摘来异步社区《libGDX移动游戏开发从入门到精通》一书中的第2章,第2.4节,作者: 黄俊东 责编: 陈冀康,更多章节内容可以访问云栖社区“异步社区”公众号查看。
2.4 日志工具
众所周知,日志在调试程序的时候起着非常重要的作用。这一节我们就来对比学习Android中的日志工具与libGDX中的日志工具。
2.4.1 Android中的日志等级及输出方法
在Android原生中,在程序中输出日志使用android.util.Log类。该类提供了若干静态方法。
Log.v(String tag, String msg); Log.d(String tag, String msg); Log.i(String tag, String msg); Log.w(String tag, String msg); Log.e(String tag, String msg);
分别对应Verbose、Debug、Info、Warning、Error。tag是一个标识,可以是任意字符串,通常可以使用类名+方法名,主要是用来在查看日志时提供一个筛选条件。
以下通过一个例子来演示使用Android原生来输出日志。
新建一个Android项目,在该项目中的MainActicity中编写以下代码。该代码主要在onCreate( )方法里面通过Log来输出各个级别的日志,用于给大家认识各个级别的日志信息的特点。
public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Log.v("------->verbose", "这是verbose级别的日志"); Log.d("------->debug", "这是debug级别的日志"); Log.i("------->info", "这是info级别的日志"); Log.w("------->warn", "这是warn级别的日志"); Log.e("------->error", "这是error级别的日志"); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } }
程序运行结果如图2.8所示。
2.4.2 libGDX中的日志等级及输出方法
在libGDX中,如果想要输出日志,主要是通过Application这个接口,它提供了3种输出日志的方式:
Gdx.app.log("MyTag", "my informative message");//对应Android原生的info级别 Gdx.app.error("MyTag", "my error message", exception);//对应error级别 Gdx.app.debug("MyTag", "my debug message");//对应Android原生的debug级别
在libGDX中,可以通过代码来设置日志从哪一个级别开始输出:
Gdx.app.setLogLevel(logLevel);//从logLevel级别开始输出日志
logLevel可以是以下几种中的一种:
Application.LOG_NONE: 过滤掉所有的日志 Application.LOG_DEBUG: 输出>=debug级别的日志。对于libGDX来说,就等于是输出所有日志 Application.LOG_ERROR: 输出>=error级别的日志。对于libGDX来说,就等于是只输出error级别的日志 Application.LOG_INFO: 输出>=info级别的日志。对于libGDX来说,就等于是输出info和error两个级别的日志
以下通过例子来演示libGDX中的日志输出。
新建一个libGDX项目,再去MyGame类编写一下代码(MainActivity类的代码与HelloWorld的相同)。
public class MyGame implements ApplicationListener { @Override public void create() { /** * Application.LOG_NONE: 隐藏所有的log() * Application.LOG_DEBUG: 显示>=debug级别的log * Application.LOG_INFO: 显示>=info级别 的log * Application.LOG_ERROR: 显示>=error级别的log * * 各个级别的关系如下: * verbose * debug * info * warn * error * asset */ // Gdx.app.setLogLevel(Application.LOG_NONE);//设置从哪一个级别的日志开始输出 } @Override public void dispose() { } @Override public void pause() { } @Override public void render() { Gdx.gl.glClearColor(1, 1, 1, 1);// 设置背景为白色 Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT);// 清屏 //测试各个级别的日志输出 // Gdx.app.log("mytag...", "log mytag"); // Gdx.app.error("mytag error", "log error"); // Gdx.app.debug("debug mytag...", "my debug tag"); System.out.println("---------->hello world"); } @Override public void resize(int arg0, int arg1) { } @Override public void resume() { } }
在运行的时候,大家可以依次设置各个级别的起始日志来看看Logcat中日志输出的差异。
2.4.3 一种方便的输出日志的方法
2.4.1小节与2.4.2小节分别介绍了Android中与libGDX中输出日志的方式。在真实项目开发中,你还可以通过以下代码来输出日志:
System.out.println("---------->hello world");
这时候你在Logcat中会看到以下效果,如图2.9所示。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
《iOS 6高级开发手册(第4版)》——1.11节秘诀:获取和使用设备姿势
本节书摘来自异步社区《iOS 6高级开发手册(第4版)》一书中的第1章,第1.11节秘诀:获取和使用设备姿势,作者 【美】Erica Sadun,更多章节内容可以访问云栖社区“异步社区”公众号查看 1.11 秘诀:获取和使用设备姿势iOS 6高级开发手册(第4版)设想有一部iPad放在桌子上。iPad上显示了一幅图像,可以弯曲并查看它。现在,设想旋转那个iPad,就像它平放在桌子上一样,但是当iPad移动时,图像不会移动。它保持与周围的世界完美对齐。无论怎样旋转iPad,图像都不会随着视图更新而“移动”,以平衡物理运动。这就是秘诀1-7的工作方式,利用设备的机载陀螺仪(这是必需的),使这个秘诀工作。 无论怎样握持设备,图像都会调整。除了这种水平操作,还可以拾起设备并在空间中定位它的方向。如果在手中翻转设备并查看它,就会看到图像的颠倒的“底部”。还可以沿着两根轴倾斜它:一根是从Home按钮指向照相机,另一根则从照相机与Home按钮的中点开始穿过iPad的表面。还有一根轴,它是你最先探讨过的,从设备的中间开始,指向设备上方的空间,并且穿过它下面的中点。在操纵设备时,图像会做出响应,在那个i...
- 下一篇
《CCNP安全Secure 642-637认证考试指南》——6.1节摸底测验
本节书摘来自异步社区《CCNP安全Secure 642-637认证考试指南》一书中的第6章,第6.1节摸底测验,作者【美】Sean Wilkins , Trey Smith,更多章节内容可以访问云栖社区“异步社区”公众号查看 6.1 摸底测验CCNP安全Secure 642-637认证考试指南摸底测验有助于读者了解自己目前的知识水平并制订相应的学习计划。如果需要从头至尾阅读本章内容,则可以暂时跳过摸底测验。 摸底测验包括10道题,均取自本章“基础知识点”中的内容。读者可以将该测验作为分配学习时间的辅助手段。 表6-1列出了本章的主要知识点以及相应的摸底测验题号。 注意:摸底测验旨在评估读者对本章内容的掌握程度。如果答错了某道题目或对某道题目有疑问,请将其标记为错误。不要将没有把握的题目一笔带过,这样会降低测验结果的准确性,还可能误导自己。1.Which of the following three components comprise Cisco 802.1X authentication? Cisco 802.1X认证架构由以下哪3部分构成? a. Cisco IOS Softwa...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- CentOS7设置SWAP分区,小内存服务器的救世主
- CentOS7安装Docker,走上虚拟化容器引擎之路
- CentOS关闭SELinux安全模块
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- Hadoop3单机部署,实现最简伪集群
- Docker使用Oracle官方镜像安装(12C,18C,19C)