1:git的一些相關資料,大家可以從\\192.168.80.90\dropbox\gittools
中獲取。
2:gerrit的測試環境為
另外之前寫了一些git的shell指令碼,請見\\192.168.80.90\dropbox\gittools\gitshell
,此目錄的指令碼使用方法如下:
1:ga = git add
可以同時新增多個檔案,例如:ga a.txt b.txt c.tx
2:gc = git commit--signedoff -m "***x"
提交命令,必須輸入乙個日誌訊息引數,例如:gc "log message"
3:glog = git log
顯示日誌命令,可以接收引數,引數為git log命令的引數,例如:glog --oneline -3
4:gu = git pull
**更新命令,更新當前分支,例如:gu
5:gunrm = git checkout-- file
恢復刪除的檔案命令,例如:gunrm file
6:gt = git status
顯示當前環境狀態的資訊,可以接收引數,引數為git status命令的引數,例如:gt --short
8:gp = git push originhead:refs/for/master
提交**到gerrit上,建立gerrit中的評審任務
9:gmcf 與gccf 是處理gerrit上衝突的指令碼,使 用方法如下:
在gerrit中提交產生衝突時,一般會由到類似如下內容的郵件
記下上圖紅色框中的內容,/125
中的125即gerrit中的**評審任務id,gerrit-patchset: 1是指提交的補丁集編號,記錄下這兩個值。
先執行gmcf 指令碼,傳入兩個引數,將產生衝突的版本合併到本地的master分支上面,為解決衝突做準備,
使用方法:gmcf $ $
然後手工編輯檔案,解決檔案內容的衝突
最後執行gccf指令碼,傳入兩個引數,使用方法:gccf $ $
這個指令碼將解決衝突的版本重新提交到gerrit伺服器上
1)旋鈕功能技術小結
旋鈕功能的實現花費較多時間,主要時間花在幾何公式的修改上。
1.1)
motionevent與view都有關於取得觸控點座標的函式,以及其他相關一些函式。這些都比較容易混淆,下圖是表明了它們的區別。
1.2)
手指觸碰點,按鈕中心,與系統描繪該按鈕三者關係如下。
fm主介面如下
圖中紅點就是按鈕,為了使得在手指拖動該按鈕時,其所在的位置指向的刻度就剛好是頻道名稱所示的刻度,必須處理好這三者的關係。
原則就是,按鈕中點需要對準刻度尺,而不是按鈕左上角對準刻度尺。同時保證紅點只能在制定半徑的圓周上運動。
首先必須將x、y,這個相對於螢幕左上角點,以及xx、yy,這個相對於左上角座標經過運算,獲取中點的座標。
**片段如下:
int x = (int) event.getrawx();
int y = (int) event.getrawy();
xx = (int)event.getx();
yy = (int)event.gety();
point centerpoint = new point(x - xx +v.getwidth() / 2,
y - yy + v.getheight() / 2);
接著需要算出該制定半徑是多少,該半徑介於大小圓半徑之間。
double l =math.hypot((double)(centerpoint.x - center_of_ring_x),
(double)(centerpoint.y -center_of_ring_y));
再接著通過以下判斷手指觸碰的點在允許範圍內,以保證不能讓紅點超出羅盤範圍。
checkifpointercanmove(centerpoint.x,centerpoint.y,l)
接著呼叫computerealpointerlocate,根據centerpoint以及制定半徑算出紅點真實位置。
point point = computerealpointerlocate(centerpoint.x,centerpoint.y,l);
在根據該位置算出位置所在表示的頻道。
該頻道不能超過頻道範圍。
最後將將其layout出來,注意此時的紅點左上角座標。
持有wakelock按如下方法
用powermanager的aquire是持有 然後release是釋放。
wakelock的作用是,當乙個apk持有wakelock時,系統會在睡眠時將其殺掉。
1)使得狀態列顯示應用的圖示
例如,我想在fm的錄音時,在狀態列顯示錄音的圖示,可以在錄音開始時使用如下**。
notificationmanager =(notificationmanager)getsystemservice(context.notification_service);
notification notification = newnotification(r.drawable.recorder,
getresources().gettext(r.string.status_recording),0);
intent intent = new intent(this,fmradio.class);
intent.setflags(intent.flag_activity_single_top);
pendingintent contentintent =pendingintent.getactivity(this, 0, intent, 0);
notification.setlatesteventinfo(this,
getresources().gettext(r.string.status_recording),
null, contentintent);
notification.flags =notification.flag_ongoing_event;
notificationmanager.notify(0,notification);
在停止錄音時,使用如下**。
if(null != notificationmanager)
notificationmanager.cancel(0);
在做新feature時,應該詳細將功能討論好,再去執行。避免因為討論不到位,導致功能理解不到位,從而浪費開發的精力。
開發feature過程中,出現問題,也應及時討論。
八月英語總結
最近持續英語學習小組經歷了第三次驗收,這次學的是第六個故事,通過和前兩次比較,每個人的變化都非常大,變得更自信,說的更流利了,在台上也更能放得開了。laura wanted to be a tri athlete,and she wanted to be a superstar tri athlet...
十一月工作總結
十一月的工作總結 1.標頭檔案包含問題 1 交叉包含問題,在 h中包含了標頭檔案。例如 a.h中 include 了b.h 而在b.h 中include 了a.h 則出錯,相當於死鎖。至於在 a.c中 include 了b.h b.c 中include 了a.h 則無此無問題。2 在包含的標頭檔案中...
程式設計師,我的3月工作總結!
可能對於我這樣的初級程式設計師來說,可能是難點,哈哈,各位大佬如果有看到不要見怪,我太菜了,我是彩旭葷。難點一 點讚 收藏功能,點讚判斷可以點讚和取消點讚 這個問題真的,我剛開始根本想不通邏輯可以怎麼實現,因為我不會寫這個 邏輯不同,而且我根本沒有考慮到需要點讚記錄表,哈哈哈,現在知道了,思路已經被...