首页 > 技术文章 > Android 随笔

halfwake 2021-08-11 10:50 原文

与其它软件的一些差异

开发平台和实际运行平台不一致。
android系统基于linux,版本变动频繁,APP与系统交互多。
android studio 以及相关开发工具也是变动频繁。
导致查到的资料很多都是过时了。
 
android上的一些概念。
APP在沙盒上运行,限制多。
权限-资源的访问都需要申请相关权限。
 
手机展示和交互模式上不同。
屏幕更小,靠手指完成操作, 同时易用性要求高。
交互复杂。
 
系统交互方面相当于Java applet 桌面程序在 andorid系统上的移植。
 
和手机的桥梁--adb
架构
  计算机上adb 客户端 ,服务进程(5037)。
  设备上的adbd守护进程(5555-5585)。
 
连接过程
  是由服务进程自动扫描adbd的端口号,无需手动去联。
 
adb devices -l 列出已连的设备
  如果有多个,那么操作的时候要指定,单个的话直接写指令。
 
adb install xxx.apk 安装App
adb shell ps -A | findstr xxx 列出当前进程
这里进入shell环境后,findstr 就不能用的
 
2.adb shell--进入手机shell环境
可以先 adb root,获得更高的权限
setprop
ping
    2.1 sqlite--shell下进入sqlist3
 
开发IDE-android  studio
android和Java关系紧密。
android sdk里面包含了 jre里的类库及其它资源。
IDE 继承自开发Java的IDE--intellij idea。布局结构很相似。
 
--配置 
file-settings  整体配置
file-project structure  项目配置
edit configurations
 
--窗口
代码相关
  查看类结构--alt+7,
  窗口移动,功能栏设置-右键菜单 move to
  列出所有资源包括窗体布局 View->tool windows->resource manager
 
调试相关
  手机文件浏览--View > Tool Windows > Device File Explorer
  运行时的窗口布局属性-》 Tools > Layout Inspector.
 
一些窗口说明-https://developer.android.com/studio/profile/monitor
 
--编辑功能技巧
ctrl+b--跳转至定义
 
放在某个函数上停留一小会儿,就会出来函数的说明。
双击某个词语,那么相同的词语颜色就会加深。
 
右键 -find useage Alt+F7
底部find栏
第一行显示该项的属性,下面是具体引用
一个变量-- 分了value read /value write
一个函数--定义,实体化,引用
一个文件--在xml资源,在代码
真是详尽。
  
书签F11,或者Ctrl+F11可以加编号。
shift+F11显示书签列表。
ctrl+编号,直接跳转到该标签
 
 Logcat & Run Run里面的都是程序相关的。
Logcat是系统级的,可以选哪个设备,选哪个应用,选日志等级,选show only selected application
 
 
 
~~~构建工具 
gradle--Groovy脚本
目录-
C:\Users\shi\.gradle
 -caches--下载的包,,相当于本地仓库的概念?
 -\wrapper\dists\--执行主体
 
 
gradle配置
 
gradle有插件版本和本身版本。本身的版本放在\wrapper\dists\里,插件版本不清楚。
项目里一般都有个配置文件说明用哪个版本。
当前系统没有该版本的话会自动下载。
改了版本号后,相应的库貌似也会重新下载。
 
project层面的配置build.gradle,文件在代码的根目录中。
配置用的gradle版本,仓库地址这些,一般要配置成国内的。
然后可以初始配置那边统一改下。
 
依赖配置放在module层配置里的build.gradle里。文件在XXAPP的目录中。
有没类似maven里的可视化维护》?在project -depend 里可以可视化添加
 
对比maven,有构建编译功能,maven比较纯粹就是仓库,依赖包配置。
 
开了adb连接后gradle就会报‘你的主机中的软件中止了一个已建立的连接’
 
 
 
 
 
 

推荐阅读