1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
|
package
com.example.service;
import
org.apache.http.Header;
import
org.json.JSONObject;
import
com.loopj.android.http.AsyncHttpClient;
import
com.loopj.android.http.JsonHttpResponseHandler;
import
com.loopj.android.http.RequestParams;
import
android.annotation.SuppressLint;
import
android.app.Service;
import
android.content.Intent;
import
android.content.ServiceConnection;
import
android.os.Binder;
import
android.os.IBinder;
import
android.widget.Toast;
public
class
GetDateService
extends
Service{
/*
* 请求队列*/
private
MyBind myBind=
new
MyBind();
@Override
public
void
onCreate() {
// TODO Auto-generated method stub
super
.onCreate();
System.out.println(
"TestService oncreate()"
);
}
@SuppressLint
(
"NewApi"
)
@Override
public
int
onStartCommand(Intent intent,
int
flags,
int
startId) {
// TODO Auto-generated method stub
getDate(
"http://www.lewei50.com/api/V1/Gateway/GetSensors/01"
);
return
super
.onStartCommand(intent, flags, startId);
}
@Override
public
void
onDestroy() {
// TODO Auto-generated method stub
super
.onDestroy();
System.out.println(
"TestService desory()"
);
}
@Override
public
IBinder onBind(Intent intent) {
// TODO Auto-generated method stub
return
myBind;
}
@Override
public
void
unbindService(ServiceConnection conn) {
// TODO Auto-generated method stub
System.out.println(
"Test UnbindService()"
);
super
.unbindService(conn);
}
public
class
MyBind
extends
Binder{
public
void
test(){
System.out.println(
"test"
);
}
public
GetDateService getDateService(){
return
GetDateService.
this
;
}
}
public
void
getDate(String url){
AsyncHttpClient client =
new
AsyncHttpClient();
RequestParams params =
new
RequestParams();
// 设置请求的参数名和参数值
params.put(
"userKey"
,
"cc809cd707xxxxxa917xxxxxxc674d0"
);
client.get(url,params,
new
JsonHttpResponseHandler() {
@Override
public
void
onStart() {
// called before request is started
}
@Override
public
void
onSuccess(
int
statusCode, Header[] headers,JSONObject response) {
// TODO Auto-generated method stub
super
.onSuccess(statusCode, headers, response);
Toast.makeText(GetDateService.
this
, response.toString(), Toast.LENGTH_SHORT).show();
}
@Override
public
void
onFailure(
int
arg0, Header[] headers,
byte
[] arg2,
Throwable arg3) {
// TODO Auto-generated method stub
super
.onFailure(arg0, headers, arg2, arg3);
Toast.makeText(GetDateService.
this
, arg3.toString(), Toast.LENGTH_SHORT).show();
}
@Override
public
void
onRetry() {
// TODO Auto-generated method stub
super
.onRetry();
}
});
System.out.println(url);
}
}
|
public void getDate(String url){
AsyncHttpClient client = new AsyncHttpClient();
RequestParams params = new RequestParams();
// 设置请求的参数名和参数值
params.put("userKey", "cc809cd707cexxxxx9176xxxxxc674d0");
client.get(url,params, new JsonHttpResponseHandler() {
@Override
public void onStart() {
// called before request is started
}
@Override
public void onSuccess(int statusCode, Header[] headers,JSONObject response) {
// TODO Auto-generated method stub
super.onSuccess(statusCode, headers, response);
Toast.makeText(GetDateService.this, response.toString(), Toast.LENGTH_SHORT).show();
}
@Override
public void onFailure(int arg0, Header[] headers, byte[] arg2,
Throwable arg3) {
// TODO Auto-generated method stub
super.onFailure(arg0, headers, arg2, arg3);
Toast.makeText(GetDateService.this, arg3.toString(), Toast.LENGTH_SHORT).show();
}
@Override
public void onRetry() {
// TODO Auto-generated method stub
super.onRetry();
}
});
}
参数格式是String类型,得到的数据格式是json格式
本文转自 matengbing 51CTO博客,原文链接:http://blog.51cto.com/matengbing/1909711