You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
XiaomiProject/AndroidManifest.xml

156 lines
7.9 KiB

<?xml version="1.0" encoding="utf-8"?>
<!-- AndroidManifest.xml: Android应用的配置文件-->
<!-- 许可证信息 -->
<!-- Apache License 2.0: 开源协议,允许用户在遵守协议的前提下使用和修改代码 -->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="net.micode.notes" <!--应用的包名,用于唯一标识应用-->
android:versionCode="1" <!-- 应用的内部版本号 -->
android:versionName="0.1" <!-- 应用的用户可见版本号 -->
>
<!-- 声明应用最低支持的Android SDK版本 -->
<uses-sdk android:minSdkVersion="14" />
<!-- 声明应用需要的权限 -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <!-- 写入外部存储的权限 -->
<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" /> <!-- 安装桌面快捷方式的权限 -->
<uses-permission android:name="android.permission.INTERNET" /> <!-- 访问互联网的权限 -->
<uses-permission android:name="android.permission.READ_CONTACTS" /> <!-- 读取联系人的权限 -->
<uses-permission android:name="android.permission.MANAGE_ACCOUNTS" /> <!-- 管理账户的权限 -->
<uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS" /> <!-- 身份验证账户的权限 -->
<uses-permission android:name="android.permission.GET_ACCOUNTS" /> <!-- 获取账户的权限 -->
<uses-permission android:name="android.permission.USE_CREDENTIALS" /> <!-- 使用凭据的权限 -->
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> <!-- 接收开机完成的广播权限 -->
<!-- 应用的配置信息 -->
<application
android:icon="@drawable/icon_app" <!-- 应用的图标 -->
android:label="@string/app_name" <!-- 应用的标签,通常是应用名称 -->
>
<!-- 主活动:应用的入口点 -->
<activity
android:name=".ui.NotesListActivity" <!-- 活动的类名 -->
android:configChanges="keyboardHidden|orientation|screenSize" <!-- 配置变化时保持活动状态 -->
android:label="@string/app_name" <!-- 活动的标签 -->
android:launchMode="singleTop" <!-- 启动模式:栈顶复用 -->
android:theme="@style/NoteTheme" <!-- 活动的主题 -->
android:uiOptions="splitActionBarWhenNarrow" <!-- UI选项屏幕较窄时分离操作栏 -->
android:windowSoftInputMode="adjustPan" <!-- 输入法窗口模式:平移界面以显示软键盘 -->
>
<!-- 意图过滤器:定义可以响应的意图 -->
<intent-filter>
<action android:name="android.intent.action.MAIN" /> <!-- 主入口点 -->
<category android:name="android.intent.category.LAUNCHER" /> <!-- 在启动器中显示 -->
</intent-filter>
</activity>
<!-- 笔记编辑活动 -->
<activity
android:name=".ui.NoteEditActivity"
android:configChanges="keyboardHidden|orientation|screenSize"
android:launchMode="singleTop"
android:theme="@style/NoteTheme"
>
<!-- 意图过滤器:响应查看和编辑笔记的意图 -->
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="vnd.android.cursor.item/text_note" />
<data android:mimeType="vnd.android.cursor.item/call_note" />
</intent-filter>
<!-- 插入或编辑笔记的意图 -->
<intent-filter>
<action android:name="android.intent.action.INSERT_OR_EDIT" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="vnd.android.cursor.item/text_note" />
<data android:mimeType="vnd.android.cursor.item/call_note" />
</intent-filter>
<!-- 搜索意图 -->
<intent-filter>
<action android:name="android.intent.action.SEARCH" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<!-- 搜索元数据 -->
<meta-data
android:name="android.app.searchable"
android:resource="@xml/searchable" />
</activity>
<!-- 内容提供者:用于存储和检索应用数据 -->
<!-- 注册一个内容提供器,用于提供便签数据 -->
<provider
android:name="net.micode.notes.data.NotesProvider" <!-- 内容提供器的完整类名 -->
android:authorities="micode_notes" <!-- 内容提供器的唯一标识 -->
android:multiprocess="true" /> <!-- 允许内容提供器在多个进程中运行 -->
<!-- 注册一个广播接收器用于2x2大小的便签小部件 -->
<receiver
android:name=".widget.NoteWidgetProvider_2x" <!-- 广播接收器的完整类名 -->
android:label="@string/app_widget2x2" > <!-- 小部件的标签,引用资源文件中的字符串 -->
<intent-filter> <!-- 定义接收器要响应的意图过滤器 -->
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" /> <!-- 响应小部件更新请求 -->
<action android:name="android.appwidget.action.APPWIDGET_DELETED" /> <!-- 响应小部件删除请求 -->
<action android:name="android.intent.action.PRIVACY_MODE_CHANGED" /> <!-- 响应隐私模式改变 -->
</intent-filter>
<meta-data
android:name="android.appwidget.provider" <!-- 指定小部件配置信息的元数据 -->
android:resource="@xml/widget_2x_info" /> <!-- 指向定义小部件配置信息的XML资源文件 -->
</receiver>
<!-- 注册一个广播接收器用于4x4大小的便签小部件 -->
<!-- 代码结构与上面的2x2小部件接收器类似 -->
<receiver
android:name=".widget.NoteWidgetProvider_4x"
android:label="@string/app_widget4x4" >
<!-- ... -->
</receiver>
<!-- 注册一个广播接收器,用于在设备启动时初始化闹钟 -->
<receiver android:name=".ui.AlarmInitReceiver" >
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" /> <!-- 响应设备启动完成的意图 -->
</intent-filter>
</receiver>
<!-- 注册一个广播接收器,用于处理闹钟事件的远程进程 -->
<receiver
android:name="net.micode.notes.ui.AlarmReceiver"
android:process=":remote" > <!-- 指定在远程进程中运行 -->
</receiver>
<!-- 注册一个活动,用于显示闹钟提醒界面 -->
<activity
android:name=".ui.AlarmAlertActivity"
android:label="@string/app_name" <!-- 活动的标签 -->
android:launchMode="singleInstance" <!-- 指定启动模式为单实例 -->
android:theme="@android:style/Theme.Holo.Wallpaper.NoTitleBar" > <!-- 指定活动的主题 -->
</activity>
<!-- 注册一个活动,用于显示便签首选项界面 -->
<activity
android:name="net.micode.notes.ui.NotesPreferenceActivity"
android:label="@string/preferences_title" <!-- 活动的标签 -->
android:launchMode="singleTop" <!-- 指定启动模式为栈顶复用 -->
android:theme="@android:style/Theme.Holo.Light" > <!-- 指定活动的主题 -->
</activity>
<!-- 注册一个服务用于同步Google Task -->
<service
android:name="net.micode.notes.gtask.remote.GTaskSyncService"
android:exported="false" > <!-- 不允许其他应用启动此服务 -->
</service>
<!-- 指定默认搜索活动 -->
<meta-data
android:name="android.app.default_searchable"
android:value=".ui.NoteEditActivity" /> <!-- 指向默认搜索活动 -->
</application>
</manifest>