小tip

在命令行里面添加文本
按鍵盤i鍵轉(zhuǎn)換到文本輸入
輸入 文本
輸入完畢刽肠,按ESC 鍵食茎,然后按:wq 保存后退出

友盟分享中qq/Qzone分享沒有回調(diào)的解決方案

1.確保在分享所在Activity里實(shí)現(xiàn)onActivityresult方法趟紊,注意不能在fragment里實(shí)現(xiàn)

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data);
}

2.確保在manifest xml中配置了正確的android:scheme <data android:scheme="tencent100424468" /> 注意這里的APPid必須和代碼中配置的QQ APPid一致区端,并且注意tencent前綴不要刪掉

Android Studio 中小寫字符串快速轉(zhuǎn)化為大寫常量表示
選中小寫字符串右鍵顯示選中

Paste_Image.png
Paste_Image.png

就會生成如下代碼:

public static final String EASY_AS = "easy as";

WebView與 JS 的交互中迹鹅,由于 JavaBridge 并不在主線程中权旷,我們需要主線程來操作 UI 。
項(xiàng)目中出現(xiàn) bug,在原生控件點(diǎn)擊調(diào)用 popupWindow顯示后面的背景戏锹,而在webView 中調(diào)用JS 彈出popupWindow不顯示背景冠胯,改為js方法在主線程中調(diào)用,bug解決锦针。

Mac 用終端打開.bash_profile文件配置環(huán)境

open ~/.bash_profile

判斷接口是否有效方法

Paste_Image.png

sign 是對參數(shù)的加密 荠察,前端跟后臺商量好一個(gè)加密算法。參數(shù)傳到后臺奈搜,后臺通過對參數(shù)進(jìn)行加密獲得一個(gè) sign值悉盆,然后與前端給的 sign 做比對,相同的話就是正常請求馋吗,不同則為非法請求焕盟。

RelativeLayout 屬性
// 相對于給定ID控件
android:layout_above 將該控件的底部置于給定ID的控件之上;
**android:layout_below ** 將該控件的底部置于給定ID的控件之下;
android:layout_toLeftOf 將該控件的右邊緣與給定ID的控件左邊緣對齊;
android:layout_toRightOf 將該控件的左邊緣與給定ID的控件右邊緣對齊;

Mac下在command里面輸入pwd是查看系統(tǒng)的根目錄

java所說的代碼穩(wěn)定說的是Java運(yùn)行時(shí)的虛擬機(jī)穩(wěn)定

popupWindow中l(wèi)istView的條目高度顯示不完全問題
在tiem的XML中設(shè)置只設(shè)置了條目的總高度,但是不識別宏粤,需要設(shè)置里面控件的高度脚翘,才能展示完全

打開github上的項(xiàng)目報(bào)錯(cuò):Error:The SDK Build Tools revision (22.0.1) is too low for project ':app'. Minimum required is 25.0.
原因是下圖紅框里面默認(rèn)的是2.0.+ ,gradle會默認(rèn)加載最高版本绍哎,改為自己的gradle版本就好

Paste_Image.png

listview中Adapter的初始化一般應(yīng)該放在聯(lián)網(wǎng)之前来农,不要放在聯(lián)網(wǎng)成功里面。
在Adapter中添加如下代碼:

public void setData(List<data> list){   
 this.list=list;    
notifyDataSetChanged();
}

在聯(lián)網(wǎng)成功拿到數(shù)據(jù)之后再調(diào)用此方法崇堰。
listView的條目點(diǎn)擊事件也不宜放在聯(lián)網(wǎng)成功里面也需要放在聯(lián)網(wǎng)之前沃于。否則來回切換頁面且頁面處于網(wǎng)絡(luò)不好的時(shí)候,會報(bào)空指針的崩潰海诲,listView的對象找不到繁莹。

studio調(diào)出lint去除無用資源

Paste_Image.png

singleTop與singleTask的區(qū)別
singleTop模式:如果發(fā)現(xiàn)有對應(yīng)的Activity實(shí)例正位于棧頂,則重復(fù)利用饿肺,不再生成新的實(shí)例蒋困。如果棧頂沒有,則重新生成實(shí)例敬辣。棧中有可能有多個(gè)相同的activity
singleTask模式:如果發(fā)現(xiàn)有對應(yīng)的Activity實(shí)例雪标,則使此Activity實(shí)例之上的其他Activity實(shí)例統(tǒng)統(tǒng)出棧零院,使此Activity實(shí)例成為棧頂對象,顯示到幕前村刨。棧中只有一個(gè)相同的activity

開發(fā)中單例經(jīng)常需要持有Context對象告抄,要保證Context和AppLication的生命周期一樣,即context.getApplicationContext()

Studio刪除項(xiàng)目中所有斷點(diǎn)

Paste_Image.png

ScrollView里面嵌套的布局只能是一個(gè)布局嵌牺,不可能是兩個(gè)布局并存打洼。

H.264是國際標(biāo)準(zhǔn)化組織(ISO)和國際電信聯(lián)盟(ITU)共同提出的繼MPEG4之后的新一代數(shù)字視頻壓縮格式。現(xiàn)在是最普遍常用的逆粹。
項(xiàng)目中的七牛云播放器目前只支持H264募疮,但是壓縮視頻的時(shí)候并沒有采用這個(gè)格式,播放的時(shí)候就會出現(xiàn)只聽見聲音而看不畫面的情況僻弹。

APP防止惡意注冊
輸入手機(jī)號點(diǎn)擊按鈕的時(shí)候在SP里面點(diǎn)擊的 時(shí)間戳 做一次記錄阿浓,
時(shí)間戳轉(zhuǎn)化為年月日格式,通過如下代碼實(shí)現(xiàn):
public static String timeToData(long time) {
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
String d = format.format(time);
return d;
}
然后進(jìn)行下次點(diǎn)擊是否在同一天的判斷蹋绽,當(dāng)一天之內(nèi)點(diǎn)擊按鈕的次數(shù)大于2次的時(shí)候就會彈出驗(yàn)證圖片的提示框芭毙,圖片的地址前段是固定的,就跟接口請求差不多卸耘,變化只是時(shí)間戳的參數(shù)變化退敦,這樣每次請求的圖片就不一樣了,圖片是后臺語言自動生成蚣抗。

Glide的本地緩存地址
Glide源碼里面的默認(rèn)文件下載地址為**getCacheDir( ) **,
為手機(jī)內(nèi)部存儲,存儲地址如下:
data/data/App的包名/cache/glide 默認(rèn)是隱藏的侈百,只有root之后才能看到

getExternalCacheDir( ) 為手機(jī)外部存儲,存儲地址如下:
Android/data/App的包名/cache/ 默認(rèn)是顯示的
如果我們想緩存圖片等比較耗空間的文件忠聚,推薦放在getExternalCacheDir()所在的文件下面设哗,這個(gè)文件和getCacheDir()很像,都可以放緩存文件两蟀,在APP被卸載的時(shí)候,都會被系統(tǒng)刪除震缭,而且緩存的內(nèi)容對其他APP是相對私有的赂毯。

項(xiàng)目中l(wèi)ayout-sw600dp文件夾的含義
small width 最小寬度為600dp的即視為平板

.9圖的操作
左邊 上邊 拉伸區(qū),畫點(diǎn)
下邊 右邊 間隔區(qū)拣宰,畫線党涕,定義內(nèi)容所在區(qū)域的上下左右空白區(qū)域大小

點(diǎn)9圖四個(gè)位置的作用
左 2個(gè)點(diǎn)用來對應(yīng)用高度等比例的拉伸(不影響右邊的圖標(biāo))
上 1個(gè)點(diǎn)對圖標(biāo)左邊的位置進(jìn)行拉伸
右 1條線對文字的高度的限制
下 1條線對文字的長度進(jìn)行限制
要居中的時(shí)候設(shè)置padding為0

擁抱SVG:苦惱于圖片適配 in Android?
Android對于 SVG 的支持是從 Android L 開始的巡社,它的 SDK 里面加入了 VectorDrawable , AnimatedVectorDrawable 等類幫助我們構(gòu)建 SVG 圖形以及動畫膛堤,并且你可以在 xml 文件里面直接使用 標(biāo)簽繪制 SVG 圖像以及 標(biāo)簽為 SVG 圖像分配動畫。
個(gè)人感覺現(xiàn)在適用的是能用畫筆畫的圖型晌该,如:返回箭頭
(http://blog.csdn.net/luoyanglizi/article/details/52589234)

推送跳轉(zhuǎn)方法
點(diǎn)擊推送進(jìn)行跳轉(zhuǎn)的時(shí)候肥荔,先跳到閃屏頁绿渣,然后在閃屏頁里面設(shè)置跳轉(zhuǎn)兩次,主頁面在前燕耿,要進(jìn)的頁面在后中符。這樣視覺上就像沒有打開主頁面似的,進(jìn)入閃屏頁之后直接就進(jìn)了推送展示頁

** Android Studio開發(fā)工具中誉帅,打開DDMS淀散,具體的方式如圖:**


** EventBus接收發(fā)來的信息的時(shí)候一定要記得注冊!Q料恰档插!**
EventBus.getDefault().register(this);
EventBus.getDefault().unregister(this);

Paste_Image.png

設(shè)置按鈕監(jiān)聽左邊Edittext的時(shí)候這樣設(shè)置:

textEditor.addTextChangedListener(new TextWatcher() {    
@Override   
 public void beforeTextChanged(CharSequence s, int start, int count, int after) {}   
 @Override  
  public void onTextChanged(CharSequence s, int start, int before, int count) {}   
 @Override   
 public void afterTextChanged(Editable s) {  
   sendBtn.setEnabled(!s.toString().isEmpty());           
});

在 drawable 文件中的圖片獲取 bitmap 對象

Resources res = getResources();

Bitmap bitmap = BitmapFactory.decodeResource(res, id);

id 為 R.drawable. 圖片名稱

** DP 與 SP 的區(qū)別:**

使用 sp 作為字體大小單位,會隨著系統(tǒng)的字體大小改變
而 dp 作為單位則不會.

sp 除了受屏幕密度影響外,還受到用戶的字體大小影響
通常情況下,建議使用 sp 來跟隨用戶字體大小設(shè)置。除非一些特殊的情況,不想跟隨系統(tǒng)字體變化的,可以使用 dp.

** 布局優(yōu)化**
1.RelativeLayout會讓子View調(diào)用2次onMeasure亚再,LinearLayout 在有weight時(shí)阀捅,也會調(diào)用子View2次onMeasure
2.RelativeLayout的子View如果高度和RelativeLayout不同,則會引發(fā)效率問題针余,當(dāng)子View很復(fù)雜時(shí)饲鄙,這個(gè)問題會更加嚴(yán)重。如果可以圆雁,盡量使用padding代替margin忍级。
3.在不影響層級深度的情況下,使用LinearLayout和FrameLayout而不是RelativeLayout。
最后再思考一下文章開頭那個(gè)矛盾的問題伪朽,為什么Google給開發(fā)者默認(rèn)新建了個(gè)RelativeLayout轴咱,而自己卻在DecorView中用了個(gè)LinearLayout。因?yàn)镈ecorView的層級深度是已知而且固定的烈涮,上面一個(gè)標(biāo)題欄朴肺,下面一個(gè)內(nèi)容欄。采用RelativeLayout并不會降低層級深度坚洽,所以此時(shí)在根節(jié)點(diǎn)上用LinearLayout是效率最高的戈稿。而之所以給開發(fā)者默認(rèn)新建了個(gè)RelativeLayout是希望開發(fā)者能采用盡量少的View層級來表達(dá)布局以實(shí)現(xiàn)性能最優(yōu),因?yàn)閺?fù)雜的View嵌套對性能的影響會更大一些讶舰。

4.能用兩層LinearLayout鞍盗,盡量用一個(gè)RelativeLayout,在時(shí)間上此時(shí)RelativeLayout耗時(shí)更小跳昼。另外LinearLayout慎用layout_weight,也將會增加一倍耗時(shí)操作般甲。由于使用LinearLayout的layout_weight,大多數(shù)時(shí)間是不一樣的,這會降低測量的速度鹅颊。這只是一個(gè)如何合理使用Layout的案例敷存,必要的時(shí)候,你要小心考慮是否用layout weight堪伍∶常總之減少層級結(jié)構(gòu)觅闽,才是王道,讓onMeasure做延遲加載挽牢,用viewStub谱煤,include等一些技巧。

** RelativeLayout與FrameLayout 的區(qū)別**
The RelativeLayout can use :

android:layout_toLeftOf="@id/some_view"
android:layout_toRightOf="@id/some_view"
android:layout_above="@id/some_view"
android:layout_below="@id/some_view"

to make sure views lineup correctly in relation to each other. FrameLayout is very similar except it's only using gravity to put display it's views (with no relation).
RelativeLayout更能精準(zhǔn)擺放控件的位置禽拔,而FrameLayout 通過重心位置來擺放控件刘离,F(xiàn)rameLayout相當(dāng)于RelativeLayout的閹割版,比RelativeLayout更小巧睹栖。用的時(shí)候看需求硫惕。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市野来,隨后出現(xiàn)的幾起案子恼除,更是在濱河造成了極大的恐慌,老刑警劉巖曼氛,帶你破解...
    沈念sama閱讀 212,718評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件豁辉,死亡現(xiàn)場離奇詭異,居然都是意外死亡舀患,警方通過查閱死者的電腦和手機(jī)徽级,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,683評論 3 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來聊浅,“玉大人餐抢,你說我怎么就攤上這事〉统祝” “怎么了旷痕?”我有些...
    開封第一講書人閱讀 158,207評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長顽冶。 經(jīng)常有香客問我欺抗,道長,這世上最難降的妖魔是什么渗稍? 我笑而不...
    開封第一講書人閱讀 56,755評論 1 284
  • 正文 為了忘掉前任佩迟,我火速辦了婚禮,結(jié)果婚禮上竿屹,老公的妹妹穿的比我還像新娘。我一直安慰自己灸姊,他們只是感情好拱燃,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,862評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著力惯,像睡著了一般碗誉。 火紅的嫁衣襯著肌膚如雪召嘶。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 50,050評論 1 291
  • 那天哮缺,我揣著相機(jī)與錄音弄跌,去河邊找鬼。 笑死尝苇,一個(gè)胖子當(dāng)著我的面吹牛铛只,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播糠溜,決...
    沈念sama閱讀 39,136評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼淳玩,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了非竿?” 一聲冷哼從身側(cè)響起蜕着,我...
    開封第一講書人閱讀 37,882評論 0 268
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎红柱,沒想到半個(gè)月后承匣,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,330評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡锤悄,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,651評論 2 327
  • 正文 我和宋清朗相戀三年韧骗,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片铁蹈。...
    茶點(diǎn)故事閱讀 38,789評論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡宽闲,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出握牧,到底是詐尸還是另有隱情容诬,我是刑警寧澤,帶...
    沈念sama閱讀 34,477評論 4 333
  • 正文 年R本政府宣布沿腰,位于F島的核電站览徒,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏颂龙。R本人自食惡果不足惜习蓬,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,135評論 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望措嵌。 院中可真熱鬧躲叼,春花似錦、人聲如沸企巢。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,864評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至或听,卻和暖如春探孝,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背誉裆。 一陣腳步聲響...
    開封第一講書人閱讀 32,099評論 1 267
  • 我被黑心中介騙來泰國打工顿颅, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人足丢。 一個(gè)月前我還...
    沈念sama閱讀 46,598評論 2 362
  • 正文 我出身青樓粱腻,卻偏偏與公主長得像,于是被迫代替她去往敵國和親霎桅。 傳聞我的和親對象是個(gè)殘疾皇子栖疑,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,697評論 2 351

推薦閱讀更多精彩內(nèi)容