我们如何处理Rxjava2中的不同网络错误?
我们曾经检查过throwable的实例,如果它是IOException或HttpException返回Rxjava 1,但是,在RxJava 2中,throwable错误是GaiException类型.
代码段
RestAPI restAPI = RetrofitHelper.createRetrofitWithGson().create(RestAPI.class);
Observable<BaseResponseTourPhoto> observable = restAPI.fetchData("Bearer " + getAccessToken(), "2", "" + page)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread());
Disposable subscription = observable.subscribe(BaseResponse-> {
onLoadingFinish(isPageLoading, isRefreshing);
onLoadingSuccess(isPageLoading, BaseResponse);
writeToRealm(BaseResponse.getData());
}, error -> {
onLoadingFinish(isPageLoading, isRefreshing);
onLoadingFailed(error);
});
mCompositeDisposable = new CompositeDisposable();
mCompositeDisposable.add(subscription);
unsubscribeOnDestroy(mCompositeDisposable);
Run Code Online (Sandbox Code Playgroud)
参考:https ://github.com/square/retrofit/issues/690 https://android.googlesource.com/platform/libcore/+/5d930ca/luni/src/main/java/android/system/GaiException.java
如何在Uber和Lyft等地图上附上灵活的标记?我正在使用谷歌地图v2.
基本上,我想在地图上显示标记,同时在移动地图时更改标记的位置.
编辑:
好的,我解决了我的问题.
第一步:将imageview添加到相同的布局和位置等于center.第二:获取地图中心的坐标使用以下方法
1-在我的情况下获取viewgroup(FrameLayout)地图片段所在的位置.
FrameLayout myContainer = (FrameLayout) findViewById(R.id.content_frame);
int mapHeight = myContainer.getHeight();
int mapWidth = myContainer.getWidth();
Run Code Online (Sandbox Code Playgroud)
2-使用setOnCameraChangeListener并在相机上更改获取坐标:
LatLng center = mMap.getCameraPosition().target;
Run Code Online (Sandbox Code Playgroud) android google-maps google-maps-markers google-maps-api-2 android-maps-v2
关于arch中的分页库。成分
它具有三个不同的数据源:
如果后端响应不支持下一个/上一个索引键而只支持当前页面,则使用哪个。当响应如下:
{
"status": "success",
"response": "1",
"message": "Data fetched successfully",
"data": {
"total": 2,
"per_page": "5",
"page": 1,
"items": [],
"last_page": 1,
"has_more": false
}
}
Run Code Online (Sandbox Code Playgroud) paging android android-architecture-components android-jetpack androidx
android ×2
android-architecture-components ×1
androidx ×1
google-maps ×1
okhttp ×1
okhttp3 ×1
paging ×1
retrofit2 ×1
rx-java ×1
rx-java2 ×1