App类型划分
native app 原生
hybird app 混合
web app H5
类型对比
native 原生
优点
缺点
web
优点
开发成本低,可跨平台,调试方便
更新无需通知用户,不需要手动升级,无需安装app,不会占用手机存储空间
缺点
无法获取系统级别的通知,提醒,动效等等,用户留存率低,体验较差,设计受限
hybrid
优点
开发成本较低,可以跨平台,调试方便,维护成本低,功能可复用,性能和体验要比web app好,更新较为自由
缺点
相比原生,性能仍然有较大损耗,不适用于交互性强的app
ActivityName&PackageName
packageName 包名
应用的唯一身份标示,系统通过包名识别不同的应用,如两个相同包名的应用在安装时会提示覆盖
activityName 类名
activity android四大组件之一,简单来说就是一个界面,和用户进行交互
adb shell dumpsys activity | find “mFocuseActivity”
启动入口appActivity 和Activity有什么区别
appactivity 在APP中是唯一,作用来启动app
获取app入口activity
aapt dumps badging app所在路径 | find "launchable-activity"
App页面布局
框架布局
所有空间都被放置在最左上的区域,下一个子控件会重叠覆盖上一个空间
线性布局
绝对布局
采用坐标的方式定位组件,左上角为原点(0,0) 向右为x轴递增,向下为y轴递增
相对布局
表格布局
App页面空间
文本输入框
编辑框
图片控件
按钮
复选框
进度条
Android坐标系统
从屏幕左上角为原点 0,0 水平向右为X正方向,垂直向下为y轴正方向