刚刚进入源码开发的总结~
来源:互联网 发布:计算机美工 编辑:程序博客网 时间:2024/06/06 16:36
露珠绝对程序媛妹子,进入源码编译环境两个月了,因为开发的系统是ubunto,导致做的总结笔记都要看起来好麻烦~所以,还是开个博客吧~没事自己可以看,也可以帮助帮助和露珠一样刚刚进入源码编译环境的同行们~有不对的,各位大神指点~因为露珠是刚刚进入,原谅露珠犯低级错误好么~谢谢
==============华丽的分割线===============================
framework源码编译知识点
1. 首先向studio导入源码。导入成功后,会发现打开的文件都有报错的现象。【原因:正常我们开发是基于SDK的开发,在这个情况下面,studio的编译工具是gradle,里面的项目是project。而当我们基于framework开发时,它是AOSP“Android Open-Source Project :中文Android 开放源代码项目”,是由谷歌发起的。在这个里面,由于studio是基于gradle所以没有找到依赖所以报错,但是其实已经有依赖了。包括R文件报错等,我们可以忽视不用管的!】
2. AOSP:Android Open-Source Project :中文Android 开放源代码项目! 其中编译模式有22种可以供选择
比如比较特别的两个:【shamu-moto】->【nexus6】
【hammerhead】->【LG】
3. CyanogenMod:基于谷歌最原始的源代码基础上又出了一个CyanogenMod。是一个基于开源Android系统,供某些手机使用的二级市场固件。
1. 它提供一些在官方Android系统或手机厂商没有提供的功能 ,例如:支持Free Lossless Audio Codec-FLAC(无损音频压缩编码)音频格式的音乐,多点触控,从SD外置存储器运行程序,压缩缓存,大量APN的名单,重新启动功能,Wi-Fi无线网络支持,蓝牙,USB网络分享等。CyanogenMod也是第一个使用BFS作任务管理器的操作系统CyanogenMod声称提供比官方固件版本更高性能和更可靠。其中编译模式权限又120种可以供选择。
2. 像小米的MIUI和魅族Fyme
4.露珠第一次用git,来个简单的重点补充,其实也就是常常用的,肯定不全,姑且看着
git提交项目
git add filename [git add . ] 【添加--这里是一个缓存】
git commit -m “描述项目有哪一些修改,描述”
git push [账号,密码]
补充
git status 查看当前状态
git checkout +名字 【检出到这个分支】
git checkout -b +名字 切换到服务器分支
git log 查看这个项目记录
git reflog 查看项目详细提交记录
git checkout -b develop 创建名【develop】的分支
git branch 切换到分支上面去
git branch -a 【查看到所有的分支,包括服务器分支,红色的为服务器分支的映射,并不是真正的分支】
git log 查看提交信息
git下载文件
pwd 【查看当前目录】
mkdir xx_project 【创建文件夹,文件夹的名字是xx_project】
cd xx_project 【打开xx_project文件夹】
ls -al 【查看当前文件夹下面所以内容】
git clone 路径[copy项目路径] 下载文件
补充
unzip 文件名 解压以【.zip】结尾的文件
tar -xvf 文件名 解压以【.tar】结尾的文件
tar -xvfz 文件名 解压以【.tar.gz】结尾的文件
tar -cvf 文件名 压缩以【.tar】结尾的文件
tar -cvfz 文件名 压缩以【.tar.gz】结尾的文件
eg:Down目录下压缩一个名为Demo的文件
1.cd进入Down
2.tar zcvf demo.tar /Demo[这里demo为压缩名字]
查找文件的命令
find .-name *.apk 【该权限下面所以以.apk结尾的文件】
adbinstall -s 选择机型 【当多台手机连在电脑上面 可以选择安装在那个手机上面
比如:adbinstall ~/Downloads/JazzyViewPager.apk
grade iD [在studio下面命令行敲 直接手机跑项目 看BUG]
ls -al |grep “.txt” 【过滤出以为【.txt】结尾的文件】
nautilus路径 【后面可以直接跟文件名字 打开图形化界面 类似 subl文件名字】
history 【查询敲过的所有历史命令,老大敲完了,自己查询敲过什么命令,自学必备】
whichjava【查找java安装的目录 后面随意跟要查询的东西 很重要】
adb logcat-s AndroidRuntime 查看logcat日志
adblongcate -s TAG[名字] 以TAG过滤
rm -rf data/data/com... 强制删除数据库【后面是包名】
5.再来就是用手机测试跑项目啦,来重要命令
framework层开发
核心的liunx命令:
.build/envsetup.sh
lunch
22[aosp_shamu-userdebug] 真机下面编译【如上图所示,对应22】
mmm 路径【mmm packages/apps/**包名**/】
adb sync【把项目推到手机上面】
adb shellstop
and shellstart
命令补充:
git croot 回到源代码根目录
方法二:
adb root
adb remount
adb push … .apk /system/app/
adb reboot
- 刚刚进入源码开发的总结~
- 刚刚进入大学校园的我
- 写给刚刚进入职场的我
- 新的开发阶段刚刚结束,做下总结
- 刚刚进入c++
- 刚刚进入CSDN,加油
- 刚刚进入学习delphi
- 给刚刚进入到Java Web编程新手的一封信
- 给刚刚进入到Java Web编程新手的一封信
- 刚刚进入职场程序员必须知道的十件事
- 刚刚进入职场程序员必须知道的十件事
- 刚刚进入职场程序员必须知道的十件事
- 刚刚进入职场程序员必须知道的十件事
- 刚刚进入职场如何应对复杂的人际关系
- 刚刚进入,大家照顾啊。。。。
- 关于新进入游戏行业的一些开发总结记录
- 刚刚接触嵌入式开发的感悟
- 总结进入RING0的方法
- sql修改字段长度
- AndroidStudio(2.0 Beta 6) 如何将新建的工程放到GitHub上
- 能正确下载ftp文件,但是文件内容为空大小为0
- Leetcode:242. Valid Anagram(JAVA)
- dubbo.xsd 报错的解决办法
- 刚刚进入源码开发的总结~
- CSS 垂直居中
- 德勤:2016 技术趋势报告(VR/AR部分)
- tomcat绑定域名--常忘-记录
- LLBL Gen Pro 生成设置详解
- 易观智库:2015年中国网络视频市场及用户研究
- Android进度条实例
- MFC CEdit限定输入数字
- python最简单直接的自定义模块导入方法