AndroidManifest.xml
这是你整个 Android 项目的配置文件,你在程序中定义的所有四大组件都需要在这个文件里注册。
另外还可以在这个文件中给应用程序添加权限声明,也可以重新指定你创建项目时指定的程序最低兼容版本和目标版本。
AndroidManifest.xml 文件,从中可以找到如下代码:
<activity android:name="com.test.helloworld.HelloWorldActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity>
这段代码表示对 HelloWorldActivity 这个活动进行注册, 没有在 AndroidManifest.xml 里注册的活动是不能使用的。
其中 intent-filter 里的两行代码非常重要,<action android:name="android.intent.action.MAIN" />和<category android:name="android.intent.category.LAUNCHER" />
表示 HelloWorldActivity 是这个项目的主活动,在手机上点击应用图标,首先启动的就是这个活动。
HelloWorldActivity 是继承自 Activity 的。
Activity 是 Android 系统提供的一个活动基类,我们项目中所有的活动都必须要继承它才能拥有活动的特性。
onCreate()方法。onCreate()方法是一个活动被创建时必定要执行的方法
Android 程序的设计讲究逻辑和视图分离,因此是不推荐在活动中直接编写界面的,可以在布局文件中编写界面,然后在活动中引入进来。
你可以看到,在onCreate()方法的第二行调用了 setContentView()方法,就是这个方法给当前的活动引入了一个 hello_world_layout 布局,
布 局 文 件 都 是 定 义 在 res/layout 目 录 下 的 , 当 你 展 开 layout 目 录 , 你 会 看 到hello_world_layout.xml 这个文件。
在res目录下的strings.xml文件中找到的 Hello world!字符串,我们有两种方式可以引用它:
1. 在java代码中通过 R.string.hello_world 可以获得该字符串的引用;
2. 在 XML 中通过@string/hello_world 可以获得该字符串的引用。
Log日志工具类
Android中的日志工具类是Log (android.util.Log),这个类中提供了如下几个方法来供我们打印日志。
1. Log.v()
这个方法用于打印那些最为琐碎的,意义最小的日志信息。对应级别 verbose,是Android 日志里面级别最低的一种。
2. Log.d()
这个方法用于打印一些调试信息,这些信息对你调试程序和分析问题应该是有帮助的。对应级别 debug,比 verbose 高一级。
3. Log.i()
这个方法用于打印一些比较重要的数据,这些数据应该是你非常想看到的,可以帮你分析用户行为的那种。对应级别 info,比 debug 高一级。
4. Log.w()
这个方法用于打印一些警告信息,提示程序在这个地方可能会有潜在的风险,最好去修复一下这些出现警告的地方。对应级别 warn,比 info 高一级。
5. Log.e()
这个方法用于打印程序中的错误信息,比如程序进入到了 catch 语句当中。当有错误信息打印出来的时候,一般都代表你的程序出现严重问题了,必须尽快修复。对应级别 error,比 warn 高一级。
打开 HelloWorldActivity,在 onCreate()方法中添加一行打印日志的语句,如下所示:
protected void onCreate(Bundle savedInstanceState) { //一般把类名写成TAG,作为参数传入Log函数 private static final String TAG = "HelloWorldActivity"; super.onCreate(savedInstanceState); setContentView(R.layout.hello_world_layout); Log.d(TAG, "onCreate execute"); }
Log.d 方法中传入了两个参数,
第一个参数是 tag,一般传入当前的类名就好,主要用于对打印信息进行过滤。
第二个参数是 msg,即想要打印的具体的内容。
日志级别控制的好处就是,你可以很快地找到你所关心的那些日志。相信如果让你从上千行日志中查找一条崩溃信息,你一定会抓狂的吧。
而现在你只需要将日志级别选中为 error,那些不相干的琐碎信息就不会再干扰你的视线了。