
#瞎机*乱讲
本文摘要:
(简单技术分享,仅供参考)

<?xml version="1.0" encoding="utf-8"?><!-- 这是 Android 应用的核心配置文件:AndroidManifest.xml<!-- 所有 APP 的权限、组件、版本、兼容配置 全都在这里声明系统安装/运行 APP 时,第一件事就是读这个文件 --><manifest><!-- 根标签:整个清单文件的最外层容器,必须唯一 --><!-- ====================== 版本与兼容配置 ====================== --><uses-sdk/><!-- 声明 APP 支持的 Android 系统版本比如:最低支持安卓8、最高支持安卓15,系统会根据这个判断能否安装 --><uses-configuration/><!-- 声明 APP 需要的设备硬件配置比如:是否需要键盘、触摸屏类型、导航键类型等 --><uses-feature/><!-- 声明 APP 需要用到的**硬件/软件功能**比如:需要摄像头、蓝牙、GPS、NFC 等,没有这些功能的设备无法安装 --><!-- ====================== 权限声明 ====================== --><uses-permission/><!-- 申请 APP 需要使用的**系统权限**比如:联网、读取相册、定位、发短信、录音等,必须声明才能用 --><permission/><!-- 自定义一个新权限给你自己的 APP 组件用,防止别的 APP 随意调用你的功能 --><permission-tree/><!-- 定义一组权限的前缀,方便批量管理自定义权限 --><permission-group/><!-- 把多个相关权限分到一组比如把“定位相关权限”放一起,用户授权时看得更清楚 --><instrumentation/><!-- 用于 APP 测试、性能监控一般开发调试时用,正常发布不会留 --><!-- ====================== 屏幕适配 ====================== --><supports-screens/><!-- 声明 APP 支持哪些屏幕尺寸、分辨率比如:支持手机、平板,是否自适应不同大小屏幕 --><!-- ====================== APP 核心组件 ====================== --><application><!-- 整个 APP 的全局配置标签所有页面、服务、广播、数据存储 都必须放在这里面 --><activity><!-- 页面(Activity):用户能看到的每一个界面比如:首页、登录页、设置页,每一页都是一个 activity --><intent-filter><!-- 意图过滤器:告诉系统“这个页面能响应什么操作”比如:点击桌面图标打开首页、被其他 APP 打开 --><action/><!-- 动作:指定要响应的操作比如:打开、分享、查看、主页启动 --><category/><!-- 类别:给动作补充分类最常用:LAUNCHER(桌面图标启动) --></intent-filter></activity><activity-alias><!-- 页面别名:给已有的页面起一个“外号”不用写新页面,就能实现多入口、多图标启动 --><intent-filter></intent-filter><!-- 别名页面的响应规则,和上面作用一样 --><meta-data/><!-- 元数据:存一些额外的小配置信息键值对形式,给页面传参数用 --></activity-alias><service><!-- 后台服务(Service):在后台默默运行的任务不需要界面,比如:后台播放音乐、同步数据、定时任务 --><intent-filter></intent-filter><!-- 后台服务的响应规则 --><meta-data/><!-- 给服务传额外参数 --></service><receiver><!-- 广播接收器(BroadcastReceiver):监听系统/APP 消息比如:手机开机、电量低、网络变化、收到消息 --><intent-filter></intent-filter><!-- 要监听哪些广播消息 --><meta-data/><!-- 额外配置参数 --></receiver><provider><!-- 内容提供者(ContentProvider):APP 数据共享让别的 APP 能安全访问你的数据(如联系人、相册、数据库) --><grant-uri-permission/><!-- 给其他 APP 临时授权访问你的数据控制权限范围,更安全 --><meta-data/><!-- 数据共享的额外配置 --></provider><uses-library/><!-- 引用系统自带的库/依赖比如:地图库、系统 UI 库、第三方 SDK 等 --></application></manifest>
总而言之一句话:
<activity> = 你看到的页面<service> = 后台默默干活<receiver> = 监听系统消息<provider> = 给别的 APP共享数据<uses-permission> = 跟系统要权限(联网、定位等)
<!-- 安卓应用清单文件 根标签,所有配置都包在这里 --><manifestandroid:versionCode="122"<!-- 应用内部版本号(给系统看的)数字只能越来越大,每次更新APP都要+1比如120→121→122,系统靠它判断是不是新版本 -->android:versionName="13.2"<!-- 应用显示给用户看的版本号比如应用商店显示“当前版本:13.2”,用户能看懂 -->package="com.kpkphlby12.videohl11"<!-- 应用唯一包名(身份证)全世界不能重复,应用商店、系统识别APP全靠它格式:公司域名反写 + 项目名 --></manifest>
<application<!-- 1. APP 在手机桌面上显示的图标 -->android:icon="@mipmap/ic_launcher"<!-- 2. APP 在桌面上显示的名称(如:微信、抖音) -->android:label="@string/app_name"<!-- 3. 圆形图标,专门适配新款手机的圆形主题 -->android:roundIcon="@mipmap/ic_launcher_round"<!-- 4. APP 全局总控类(APP 启动第一个运行),不写就用系统默认 -->android:name=".MyApplication"<!-- 5. APP 全局主题(控制所有页面的颜色、标题栏、样式) -->android:theme="@style/Theme.MyApp"<!-- 6. 网络安全配置(HTTPS 证书、网络权限配置文件) -->android:networkSecurityConfig="@xml/network_security_config"<!-- 7. APP 功能描述(给应用商店和系统看,用户看不见) -->android:description="APP功能描述"<!-- 8. 自定义进程名(不写默认用包名,普通 APP 不用改) -->android:process="com.example.app"<!-- 9. 是否允许系统备份 APP 数据(聊天记录、账号、设置) -->android:allowBackup=["true" | "false"]<!-- 10. 是否支持阿拉伯语等从右往左的文字排版 -->android:supportsRtl=["true" | "false"]<!-- 11. 硬件加速(开启后页面滑动更流畅,建议开启) -->android:hardwareAccelerated=["true" | "false"]<!-- 12. 调试模式(开发测试填 true,上线发布必须填 false) -->android:debuggable=["true" | "false"]<!-- 13. 是否允许访问 HTTP 明文网址(没加密的网站) -->android:usesCleartextTraffic=["true" | "false"]<!-- 14. 是否自动解压底层库文件(保证 APP 正常运行,默认 true) -->android:extractNativeLibs=["true" | "false"]<!-- 15. 是否常驻后台(只有系统 APP 能用,普通 APP 必须 false) -->android:persistent=["true" | "false"]<!-- 16. 是否允许用户在设置里清除 APP 缓存和数据 -->android:allowClearUserData=["true" | "false"]<!-- 17. 是否申请更大内存(图片/视频类 APP 可开启) -->android:largeHeap=["true" | "false"]<!-- 18. 页面是否能跨任务转移(普通 APP 不用管,默认 false) -->android:allowTaskReparenting=["true" | "false"]<!-- 19. APP 总开关(false 表示整个 APP 禁用,无法打开) -->android:enabled=["true" | "false"]<!-- 20. 是否包含代码(正常开发的 APP 永远填 true) -->android:hasCode=["true" | "false"]<!-- 21. 是否允许跨安卓版本恢复备份数据(建议 false) -->android:restoreAnyVersion=["true" | "false"]<!-- 22. 恢复数据后是否立即杀死 APP(系统功能,默认 false) -->android:killAfterRestore=["true" | "false"]<!-- 23. 存储空间管理页面(极少用,一般留空) -->android:manageSpaceActivity=""<!-- 24. 数据备份代理类(系统备份用,普通 APP 不用管) -->android:backupAgent=""<!-- 25. 全局访问权限(控制其他 APP 访问本 APP,一般留空) -->android:permission=""<!-- 26. 页面任务栈归属(给页面分组,默认留空,不用改) -->android:taskAffinity="" ></application>
<activity<!-- 1. 页面是否可以从后台任务里挪到别的任务组(普通APP默认false,不用开) -->android:allowTaskRecparenting=["true" | "false"]<!-- 2. 是否永久保存页面状态(true=按桌面返回后,再打开还是原来的页面) -->android:alwaysRetainTaskState=["true" | "false"]<!-- 3. 每次点击图标都重新打开首页(true=每次都清空页面,回到最初页面) -->android:clearTaskOnLaunch=["true" | "false"]<!-- 4. 哪些场景发生时页面不重启(避免白屏/数据丢失,常用默认值即可)手机旋转、字体大小变化、键盘弹出收起时,页面不重新加载 -->android:configChanges="mcc|mnc|locale|touchscreen|keyboard|keyboardHidden|navigation|orientation|screenLayout|fontScale|uiMode"<!-- 5. 页面总开关(true=能打开,false=这个页面彻底禁用,打不开) -->android:enabled=["true" | "false"]<!-- 6. 是否在【最近任务列表】隐藏(true=后台看不到这个APP,隐私页面用) -->android:excludeFromRecents=["true" | "false"]<!-- 7. 是否允许外部APP打开这个页面(安卓12+必须写!true=允许外部打开,false=仅自己APP能用) -->android:exported=["true" | "false"]<!-- 8. 再次打开APP时,是否关闭这个页面(true=切后台再回来,这个页面直接关掉) -->android:finishOnTaskLaunch=["true" | "false"]<!-- 9. 这个页面单独的图标(一般不用,默认用APP图标) -->android:icon="drawable resource"<!-- 10. 这个页面单独的标题(不写就用APP名称) -->android:label="string resource"<!-- 11. 页面启动模式(控制页面打开方式)multiple:默认,每次打开都新建页面(最常用)singleTop:栈顶复用,页面已经打开就不新建singleTask:单例模式,全局只有一个页面singleInstance:独立任务栈,极少用 -->android:launchMode=["multiple" | "singleTop" | "singleTask" | "singleInstance"]<!-- 12. 是否允许在多进程中运行(普通APP默认false,不用管) -->android:multiprocess=["true" | "false"]<!-- 13. 【必填!】页面类名(你的页面文件名,比如MainActivity) -->android:name="string"<!-- 14. 不留历史记录(true=离开这个页面就销毁,按返回键找不到它,支付/隐私页用) -->android:noHistory=["true" | "false"]<!-- 15. 打开这个页面需要的权限(一般留空,只有安全页面才加) -->android:permission="string"<!-- 16. 页面运行的进程名称(不写默认进程,普通APP不用改) -->android:process="string"<!-- 17. 屏幕方向(控制页面竖屏/横屏)unspecified:默认,系统自动user:用户当前设置behind:和上一个页面一样landscape:强制横屏portrait:强制竖屏sensor:根据传感器自动旋转nosensor:不根据传感器旋转 -->android:screenOrientation=["unspecified" | "user" | "behind" | "landscape" | "portrait" | "sensor" | "nosensor"]<!-- 18. 页面关闭后是否不需要保存状态(默认false,极少用) -->android:stateNotNeeded=["true" | "false"]<!-- 19. 页面归属哪个任务组(默认空就行,小白不用改) -->android:taskAffinity="string"<!-- 20. 页面单独的主题样式(不写就用APP全局主题) -->android:theme="resource or theme"<!-- 21. 键盘弹出模式(控制软键盘弹出时页面如何调整)stateUnspecified:默认stateUnchanged:键盘保持上次状态stateHidden:默认隐藏键盘stateAlwaysHidden:总是隐藏stateVisible:默认显示stateAlwaysVisible:总是显示adjustUnspecified:默认调整adjustResize:页面压缩适应键盘(最常用)adjustPan:页面上移,不压缩 -->android:windowSoftInputMode=["stateUnspecified","stateUnchanged","stateHidden","stateAlwaysHidden","stateVisible","stateAlwaysVisible","adjustUnspecified","adjustResize","adjustPan"] ></activity>
精选合集

《图文合集》
>ENG<
▶免责声明:
本公众号所发布的图片源自互联网,如果您发现我们的公众号使用了您的图片或其他内容,请及时与我们联系删除或注明出处。
夜雨聆风