Volley 사용
4951 단어 안 드 로 이 드 기반
Volley 는 전형 적 인 템 플 릿 리 셋 메커니즘 을 사용 했다
Get,Post 요청,json 문자열 업로드,Volley 그림 다운로드 실현 RequestQueue:전역 요청 을 관리 하 는 단일 예 입 니 다.전역 에 하나만 있 는 것 이 좋 습 니 다. StringRequest:텍스트 요청,문자열 을 다운로드 할 때 만 들 대상 Response.Lisenter:정확 한 결과 반전 Response.ErrorLisenter:잘못된 결과 반전
Get 요청:3 단계 * 1.요청 큐 만 들 기 * 2.해당 텍스트 요청 대상 만 들 기 * 3.요청 한 텍스트 대상 을 대기 열 에 추가 한 다음 인자 의 인터페이스 에서 실제 코드 로 되 돌려 줍 니 다.
네트워크 권한 이 없습니다.
2.new Error 방법 오류
Post 요청:3 단계 * 1.요청 큐 만 들 기 * 2.해당 텍스트 요청 대상 을 만 들 고 post 요청 방식 을 설정 하 며 getParams()를 복사 합 니 다(유일한 차이 점) * 3.요청 한 텍스트 대상 을 대기 열 에 추가 한 다음 매개 변수 에서 인터페이스 로 되 돌려 줍 니 다.
json 문자열 업로드
* JSONObjectRequest-----JOSNObject * 1.요청 큐 만 들 기 * 2.해당 JSONobject Request 만 들 기 * 3.요 청 된 JSONobject Request 를 대기 열 에 추가 한 다음 매개 변수 에 인 터 페 이 스 를 되 돌려 줍 니 다. * JSONArrayObjectRequest
1.queue = Volley.newRequestQueue(this);
2. private void getDataString(String str) {
//2. stringrequest :1. 2. 3.
StringRequest strRequest = new StringRequest(str, new Response.Listener() {
@Override
public void onResponse(String s) {
Log.i(">>>>", ">>>" + s);
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError volleyError) {
}
});
3.queue.add(strRequest);
Volley 의 사진 다운로드
* ImageRequest:그림 다운로드 요청 * ImageLoader:그림 다운로드 요청,메모리 캐 시 확장 가능 * NetworkImageView:view 의 사용자 정의 컨트롤,도 구 를 공간 에 내장 하고 직접 사용 하 는 방법 으로 그림 을 다운로드 합 니 다. *InageRequest 사용 절차: * 1.요청 대기 열 만 들 기 * 2.그림 을 만 드 는 다운로드 요청 ImageRequest 대상; * 3.생 성 된 대상 을 추가 하 는 대기 열 에 //2.그림 이 요청 한 여섯 개의 인자: //1.이미지 요청 사이트 주소 2.이미지 다운로드 성공 리 셋 3.이미지 다운로드 최대 너비 4,이미지 다운로드 최대 높이 // 설정 한 값 을 지정 한 값 으로 압축 합 니 다) //5.그림 에서 형식 이나 인자 까지:RGB8888 픽 셀 당 4 바이트 RGB565 픽 셀 당 2 바이트 차지 //6.잘못된 그림 다운로드 의 반전
private void postDataString(String s) {
//2. post :1. 2. 3. 4.
StringRequest strpost=new StringRequest(Request.Method.POST, s, new Response.Listener() {
@Override
public void onResponse(String response) {
Log.i(">>>",">>>"+response);
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
}
}){
@Override
protected Map getParams() throws AuthFailureError {
//aid=3550910 msg="data" username=" "
HashMap map=new HashMap<>();
map.put("aid","3550910");
map.put("msg","yours comment");
map.put("username"," ");
return map;
}
};
ImageLoader 사용 절차:3 단계(
왜 그 가 있어 야 합 니까?vollay 가 제공 하 는 인 터 페 이 스 를 실현 하고 LruCache 를 통 해 메모리 캐 시 를 만 듭 니 다.
vollay 자체 디스크 캐 시 만 제공)
* 1.ImageLoader 대상 만 들 기(queue,new ImageCache)
* 2.(ImageLoader 에서 얻 은)listener 감청 그림 을 만 들 고 다운로드 하 는 과정 에서 인 자 를 설정 합 니 다(미리 설 정 된 그림 을 다운로드 하고 실패 하거나 잘못된 그림 을 다운로드 합 니 다)
* 3.만 든 loader 대상 을 그림 을 다운로드 하 는 방법 으로 호출 하고 lisenter 인 자 를 전송 합 니 다.
1.queue = Volley.newRequestQueue(this);
2.private void jsonDataObject(String path) {
// json,1. 2, json 3, 4,
JsonObjectRequest jsonObjectRequest=new JsonObjectRequest(Request.Method.POST,path, null, new Response.Listener() {
@Override
public void onResponse(JSONObject response) {
try {
int code=response.getInt("retcode");
Log.i(">>>",">>>"+code);
} catch (JSONException e) {
e.printStackTrace();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
}
});
3.queue.add(jsonObjectRequest);
final ImageRequest imageRequest = new ImageRequest(url, new Response.Listener() {
@Override
public void onResponse(Bitmap bitmap) {
if (bitmap != null) {
imageview.setImageBitmap(bitmap);
}
}
}, 100, 100, Bitmap.Config.RGB_565, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError volleyError) {
}
});
queue.add(imageRequest);
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Android 모방 웨 이 보 @ 친구, \ # 화제 \ # 및 links 처리 방안웨 이 보 를 사용 할 때 우 리 는 모두 이 두 가지 기능 을 발견 할 것 이다. Span 와 를 통 해 이 루어 졌 다 고 생각 하기 쉽 지만 그 중에서 세부 적 인 처리 가 필요 하 다. 시 나 웨 이 보 가 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.