@antony已經(jīng)被占用 里面好像什么都沒有
Java_UT_Mock系列之-04Powermock與單例模式測試場景 單例模式是常見的一種創(chuàng)建型設(shè)計(jì)模式,保證了采用該模式的類的實(shí)例的全局唯一性。但對于UT來說,由于其屏蔽了類的創(chuàng)建過程,其testability是有待商榷的。如以下案...
@antony已經(jīng)被占用 里面好像什么都沒有
Java_UT_Mock系列之-04Powermock與單例模式測試場景 單例模式是常見的一種創(chuàng)建型設(shè)計(jì)模式,保證了采用該模式的類的實(shí)例的全局唯一性。但對于UT來說,由于其屏蔽了類的創(chuàng)建過程,其testability是有待商榷的。如以下案...
@愛在記憶消失前 getDailyService()返回的值沒有單例吧?你是前面的單例了吧,都沒有用sync來控制
優(yōu)雅的構(gòu)建Android項(xiàng)目之RxAndroid+Retrofit網(wǎng)絡(luò)請求注意 Retrofit 2.0+和Retrofit 2.0之前的版本語法上有差別,本文基于Retrofit2.1.0 什么是Retrofit? retrofit是一款針對An...
你導(dǎo)入的gradle能不能展示一下
Java_UT_Mock系列之-04Powermock與單例模式測試場景 單例模式是常見的一種創(chuàng)建型設(shè)計(jì)模式,保證了采用該模式的類的實(shí)例的全局唯一性。但對于UT來說,由于其屏蔽了類的創(chuàng)建過程,其testability是有待商榷的。如以下案...
public class ApiManager {
private RetrofitService mDailyApi;
private static ApiManager sApiManager;
//獲取ApiManager的單例
public static ApiManager getInstence() {
if (sApiManager == null) {
synchronized (ApiManager.class) {
if (sApiManager == null) {
sApiManager = new ApiManager();
}
}
}
return sApiManager;
}
/**
* 封裝配置知乎API
*/
public RetrofitService getDailyService() {
//不需要使用攔截器就不創(chuàng)建直接從if開始
OkHttpClient client = new OkHttpClient.Builder()
//添加應(yīng)用攔截器
.addInterceptor(new MyOkhttpInterceptor())
//添加網(wǎng)絡(luò)攔截器
// .addNetworkInterceptor(new MyOkhttpInterceptor())
.build();
if (mDailyApi == null) {
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(GlobalConfig.baseUrl)
//將client與retrofit關(guān)聯(lián)
.client(client)
.addCallAdapterFactory(RxJavaCallAdapterFactory.create())
.addConverterFactory(GsonConverterFactory.create())
.build();
//到這一步創(chuàng)建完成
mDailyApi = retrofit.create(RetrofitService.class);
}
return mDailyApi;
}
}
在調(diào)用了getInstance()之后,并發(fā)的情況下調(diào)用getDailyService()會(huì)導(dǎo)致mDailyApi生成幾個(gè)吧?
優(yōu)雅的構(gòu)建Android項(xiàng)目之RxAndroid+Retrofit網(wǎng)絡(luò)請求注意 Retrofit 2.0+和Retrofit 2.0之前的版本語法上有差別,本文基于Retrofit2.1.0 什么是Retrofit? retrofit是一款針對An...
@PeterHe888 在gradle右下角的gradle console里面看,如果沒有g(shù)radle console就調(diào)出來
DataBinding使用全面詳解一、DataBinding使用 1.使用環(huán)境 DataBinding是一個(gè)support library,所以它可以支持所有的android sdk,最低可以到android...
@InverseBindingAdapter(attribute = "android:text", event = "android:textAttrChanged")
public static String captureTextValue(TextView view, CharSequence originalValue) {
CharSequence newValue = view.getText();
CharSequence oldValue = value.get();
if (oldValue == null) {
value.set(newValue);
} else if (!contentEquals(newValue, oldValue)) {
value.set(newValue);
}
}
這個(gè)的getText()怎么會(huì)是新的值?originalValue沒有用到,value又是從哪里來的
DataBinding使用全面詳解一、DataBinding使用 1.使用環(huán)境 DataBinding是一個(gè)support library,所以它可以支持所有的android sdk,最低可以到android...
因?yàn)槟銢]有把object都引進(jìn),你再import了object就好了
DataBinding使用全面詳解一、DataBinding使用 1.使用環(huán)境 DataBinding是一個(gè)support library,所以它可以支持所有的android sdk,最低可以到android...
方法的綁定方法錯(cuò)了,這樣系統(tǒng)會(huì)去找android:onClick的setter,如果不懂,就去看看@BindingAdapter
DataBinding使用全面詳解一、DataBinding使用 1.使用環(huán)境 DataBinding是一個(gè)support library,所以它可以支持所有的android sdk,最低可以到android...
你的xml有錯(cuò)誤,你build一下,就能看到錯(cuò)誤信息
DataBinding使用全面詳解一、DataBinding使用 1.使用環(huán)境 DataBinding是一個(gè)support library,所以它可以支持所有的android sdk,最低可以到android...
@夢想編織者灬小楠 多謝
Android進(jìn)階 - 二維碼生成摘要 最近,公司業(yè)務(wù)上有個(gè)生成二維碼圖片的需求(Android端),之后筆者在網(wǎng)上查閱了一些資料,實(shí)現(xiàn)了這個(gè)功能。最后,給自己做個(gè)筆記,給各位做下分享。 什么是二維碼? 百度...
這個(gè)在官方文檔是有寫的,而且你在寫注解的時(shí)候,也是有點(diǎn)提示的,留意一下就好
Android Data Binding 掉坑日志Android Data Binding 掉坑日志 錯(cuò)誤:Cannot find the setter for attribute *** with parameter ty...
zxing如果需要使用pro混淆的話,需要添加什么不?
Android進(jìn)階 - 二維碼生成摘要 最近,公司業(yè)務(wù)上有個(gè)生成二維碼圖片的需求(Android端),之后筆者在網(wǎng)上查閱了一些資料,實(shí)現(xiàn)了這個(gè)功能。最后,給自己做個(gè)筆記,給各位做下分享。 什么是二維碼? 百度...
這個(gè)翻譯有點(diǎn)尷尬,能不能改成是人寫的,好機(jī)械
Android應(yīng)用結(jié)構(gòu)之ViewModel??ViewModel類是用來存儲(chǔ)和管理與UI相關(guān)的數(shù)據(jù),在設(shè)計(jì)之初就考慮到生命周期的影響。ViewModel允許數(shù)據(jù)在屏幕旋轉(zhuǎn)等配置變化后存活。 Note: 如何在Andr...
這個(gè)文章應(yīng)該是翻譯的,而且還是很機(jī)械的那種翻譯,希望樓主看懂了之后能修改一下
Android應(yīng)用結(jié)構(gòu)之LiveData??LiveData是一個(gè)可被觀察的數(shù)據(jù)持有者類。與常規(guī)的Observable不同,LiveData能意識(shí)到應(yīng)用程序組件的生命周期變化,這意味著它能遵守Activity、Fr...
你的編譯有沒有遇到fsevents不兼容的問題?
[失敗] 樹莓派3 Model B編譯安裝vscode這個(gè)編譯安裝是失敗的,但是還是記錄一下執(zhí)行的過程。 20170219 創(chuàng)建 說明 網(wǎng)上能找到的關(guān)于在樹莓派上編譯安裝vscode的教程都源自同一個(gè)鏈接: http://www...
我認(rèn)為還是看官方的文檔比較好
https://developer.android.com/guide/components/tasks-and-back-stack.html?hl=zh-cn
這個(gè)會(huì)清晰很多
我打賭你一定沒搞明白的Activity啟動(dòng)模式一個(gè)應(yīng)用程序當(dāng)中通常都會(huì)包含很多個(gè)Activity,每個(gè)Activity都是一個(gè)具有特定的功能,并且可以讓用戶進(jìn)行操作的組件。另外,Activity之間可以相互啟動(dòng),當(dāng)前應(yīng)用...
感覺有點(diǎn)古怪,為什么要加入ProgressDialogHandler這個(gè)類,其實(shí)把progressDialog寫到ProgressSubscriber不是更好么?這樣的分開寫是什么原因呢
Retrofit+RxJava最佳封裝使用說來慚愧,Retrofit已經(jīng)流行一段時(shí)間了,我個(gè)人還未對這個(gè)square出品的強(qiáng)大框架進(jìn)行學(xué)習(xí)http://square.github.io/retrofit/。 最近趁著...
Activity的啟動(dòng)四種模式 standard(默認(rèn))每次使用startActivity方法啟動(dòng)Activity時(shí)都會(huì)創(chuàng)建該Activity的新實(shí)例Activity的多個(gè)實(shí)...