編輯:關於Android編程
在工作中的經常使用repo命令,但是有時會忘記一些命令和遇到的一些問題,記錄下來方便已經查詢。
常見問題:
問題1:找不到命令:repo
方法:
在下載android源碼的時候用repo時提示找不到命令,可以用如下方法解決,在命令行中輸入如下兩行:
echo 'export PATH=$PATH:$Home/bin' >>~/.bashrc
export PATH=$PATH:$HOME/bin
問題2:
/home/xxxxxx/bin/repo: line 1: 在未預料的“newline”附近出現語法錯誤
/home/xxxxxx/bin/repo: line 1: `
方法【轉】:
1.安裝git
sudo apt-get install git-core
2.安裝curl
sudo apt-get install git-core curl
3.安裝repo, 通過curl下載repo
網上或者很多書籍上都是這樣寫的:
curl http://android.git.kernel.org/repo >~/bin/repo
結果得到的repo不能用,什麼301重定向的,唉!悲催啊!後來在csdn上發了個貼子,大牛給解決啦!
http://code.google.com/p/git-repo/downloads/detail?name=repo-1.12這個鏈接提供下載repo!
也可以通過下面命令得到:
curl http://git-repo.googlecode.com/files/repo-1.12> ~/bin/repo
4.修改執行權限
chmod a+x ~/bin/repo
5.修改~/bin/repo文件將第五行
這一步又是容易出錯啊,哥就死在這裡很久啊!很多書籍或網站上都是這樣命令:
~/bin/repo init -ugit://android.git.kernel.org/platform/manifest.git
執行以後,等n久,結果出現讓你喜出望外的結果啊
error:Failed connect to code.google.com:443; Operation now inprogress while accessinghttps://code.google.com/p/git-repo//info/refs
網上大牛解決:修改~/bin/repo文件將第五行
REPO_URL='https://code.google.com/p/git-repo/'
改為
REPO_URL='http://code.google.com/p/git-repo/'
6.然後向PATH中添加bin路徑:
export PATH=$PATH:~/bin
7.新建一個目錄,然後進入該目錄。
mkdir source
cd source
8.執行repo init -ugit://Androidgit.linaro.org/platform/manifest.git -bandroid-2.3.4_r1
這一步大概有一分多鐘就完成了。
9.修改.repo文件
找到source目錄中的.repo下面的manifest.xml文件,這是個隱藏文件 ls -a才能看到
cd .repo
gedit manifest.xml
將fetch="git://Android.git.kernel.org/"
改為
fetch="git://Android.git.linaro.org/"
10.執行repo sync -j5
repo的常用命令:
可以用 -m 參數來選擇 repository 中的某一個特定的 manifest 文件,如果不具體指定,那麼表示為默認的 namifest 文件 (default.xml) repo init -u git://android.git.kernel.org/platform/manifest.git -m dalvik-plus.xml
可以用 -b 參數來指定某個manifest 分支。
repo init -u git://android.git.kernel.org/platform/manifest.git -b release-1.0
可以用命令: repo help init 來獲取 repo init 的其他用法
4. repo sync [project-list]
下載最新本地工作文件,更新成功,這本地文件和repository 中的代碼是一樣的。 可以指定需要更新的project , 如果不指定任何參數,會同步整個所有的項目。
如果是第一次運行 repo sync , 則這個命令相當於 git clone ,會把 repository 中的所有內容都拷貝到本地。 如果不是第一次運行 repo sync , 則相當於 git remote update ; git rebase origin/branch . repo sync 會更新 .repo 下面的文件。 如果在merge 的過程中出現沖突, 這需要手動運行 git rebase --continue
5. repo update[ project-list ]
上傳修改的代碼 ,如果你本地的代碼有所修改,那麼在運行 repo sync 的時候,會提示你上傳修改的代碼,所有修改的代碼分支會上傳到 Gerrit (基於web 的代碼review 系統), Gerrit 受到上傳的代碼,會轉換為一個個變更,從而可以讓人們來review 修改的代碼。
6. repo diff [ project-list ]
顯示提交的代碼和當前工作目錄代碼之間的差異。
7. repo download target revision
下載特定的修改版本到本地, 例如: repo download pltform/frameworks/base 1241 下載修改版本為 1241 的代碼
8. repo start newbranchname
創建新的branch分支。 "." 代表當前工作的branch 分支。
9. repo prune [project list]
刪除已經merge 的 project
10. repo foreach [ project-lists] -c command
對每一個 project 運行 command 命令
11. repo status
顯示 project 的狀態
Service概念及用途:Android中的服務,它與Activity不同,它是不能與用戶交互的,不能自己啟動的,運行在後台的程序,如果我們退出應用時,Service進程
其他的不多說了!我們來看看效果吧 一、實現方式一:直接引入compile方式Add the dependen
現在開發中Android RecyclerView可能用的比較多,不過ListView作為常用控件學習它的使用和擴展也是十分重要的。簡單封裝了一個下拉刷新和上拉加載的Li
main.xml代碼: .java代碼如下: package org.lxh.demo; import android.app.Acti