杂文

<action> 向 intent 过滤器添加操作。
<activity> 声明 activity 组件。
<activity-alias> 声明 activity 的别名。
<application> 声明应用。
<category> 向 intent 过滤器添加类别名称。
<compatible-screens> 指定应用与之兼容的各种屏幕配置。
<data> 向 intent 过滤器添加数据规范。
<grant-uri-permission> 指定父 content provider 有权访问的应用数据的子集。
<instrumentation> 声明用于监控应用与系统交互的 Instrumentation 类。
<intent-filter> 指定 activity、服务或广播接收器可以响应的 intent 类型。
<manifest> AndroidManifest.xml 文件的根元素。
<meta-data> 可以向父组件提供的其他任意数据项的名称值对。
<path-permission> 定义 content provider 中特定数据子集的路径和所需权限。
<permission> 声明可用于限制访问此应用或其他应用的特定组件或功能的安全权限。
<permission-group> 声明相关权限的逻辑分组的名称。
<permission-tree> 声明权限树的基名。
<provider> 声明一个 content provider 组件。
<queries> 声明您的应用打算访问的一些其他应用。
<receiver> 声明广播接收器组件。
<service> 声明服务组件。
<supports-gl-texture> 声明应用支持的一种 GL 纹理压缩格式。
<supports-screens> 声明应用支持的屏幕尺寸,并为比应用支持的最大屏幕还大的屏幕启用屏幕兼容性模式。
<uses-configuration> 指示应用所需的特定输入功能。
<uses-feature> 声明应用使用的一项硬件或软件功能。
<uses-library> 指定应用必须与之关联的共享库。
<uses-native-library> 指定供应商提供的必须关联到应用的原生共享库。
<uses-permission> 指定为使应用正常运行用户必须授予的系统权限。
<uses-permission-sdk-23> 指定应用需要特定的权限,但仅当应用安装在搭载 Android 6.0(API 级别 23)或更高版本的设备上时才需要。
<uses-sdk> 让您用 API 级别整数来表示应用与一个或多个 Android 平台版本的兼容性
  1. onCreate():当Activity被创建时调用,通常用于初始化操作。
  2. onStart():当Activity可见但还未获取焦点时调用。
  3. onResume():当Activity获取焦点并开始与用户交互时调用。
  4. onPause():当Activity失去焦点但仍然可见时调用,通常用于保存数据或释放资源。
  5. onStop():当Activity完全不可见时调用,通常用于释放资源。
  6. onDestroy():当Activity被销毁时调用,通常用于清理工作。

签名

要知道签名是什么,先来看为什么需要签名 。大家都知道,在消息通信时,必须至少解决两个问题:一是确保消息来源的真实性,二是确保消息不会被第三方篡改。在安装Apk时,同样需要确保Apk来源的真实性,以及Apk没有被第三方篡改。如何解决这两个问题呢?方法就是开发者对Apk进行签名:在Apk中写入一个“指纹”。指纹写入以后,Apk中有任何修改,都会导致这个指纹无效,Android系统在安装Apk进行签名校验时就会不通过,从而保证了安全性。

要了解如何实现签名,需要了解两个基本概念:数字摘要和数字证书。