与其它软件的一些差异
开发平台和实际运行平台不一致。 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 http://blog.sina.com.cn/s/blog_5033827f0100kytq.html 开发IDE-android studio android sdk里面包含了 jre里的类库及其它资源,一般也是用Java开发。 IDE 继承自 开发Java的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\--执行主体 编译 cd D:\adworkspace\RxZhiHu C:\Users\shi\.gradle\wrapper\dists\gradle-2.4-all\6r4uqcc6ovnq6ac6s0txzcpc0\gradle-2.4\bin\gradle build gradle配置 https://www.jianshu.com/p/c11862136abf gradle有插件版本和本身版本。本身的版本放在\wrapper\dists\里,插件版本不清楚。 项目里一般都有个配置文件说明用哪个版本。 当前系统没有该版本的话会自动下载。 改了版本号后,相应的库貌似也会重新下载。 project层面的配置build.gradle,文件在代码的根目录中。 配置用的gradle版本,仓库地址这些,一般要配置成国内的。 然后可以初始配置那边统一改下。 依赖配置放在module层配置里的build.gradle里。文件在XXAPP的目录中。 有没类似maven里的可视化维护》?在project -depend 里可以可视化添加 对比maven,好像是有更多构建编译功能,maven比较纯粹就是仓库,依赖包配置。 开了adb连接后gradle就会报‘你的主机中的软件中止了一个已建立的连接’android 随笔
2024-01-29 19:08:58