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
<code>package</code> <code>com.example.service;</code>
<code>import</code> <code>org.apache.http.Header;</code>
<code>import</code> <code>org.json.JSONObject;</code>
<code>import</code> <code>com.loopj.android.http.AsyncHttpClient;</code>
<code>import</code> <code>com.loopj.android.http.JsonHttpResponseHandler;</code>
<code>import</code> <code>com.loopj.android.http.RequestParams;</code>
<code>import</code> <code>android.annotation.SuppressLint;</code>
<code>import</code> <code>android.app.Service;</code>
<code>import</code> <code>android.content.Intent;</code>
<code>import</code> <code>android.content.ServiceConnection;</code>
<code>import</code> <code>android.os.Binder;</code>
<code>import</code> <code>android.os.IBinder;</code>
<code>import</code> <code>android.widget.Toast;</code>
<code>public</code> <code>class</code> <code>GetDateService </code><code>extends</code> <code>Service{</code>
<code> </code><code>/*</code>
<code> </code><code>* 請求隊列*/</code>
<code> </code><code>private</code> <code>MyBind myBind=</code><code>new</code> <code>MyBind();</code>
<code> </code>
<code> </code><code>@Override</code>
<code> </code><code>public</code> <code>void</code> <code>onCreate() {</code>
<code> </code><code>// TODO Auto-generated method stub</code>
<code> </code><code>super</code><code>.onCreate();</code>
<code> </code>
<code> </code><code>System.out.println(</code><code>"TestService oncreate()"</code><code>);</code>
<code> </code><code>}</code>
<code> </code><code>@SuppressLint</code><code>(</code><code>"NewApi"</code><code>)</code>
<code> </code><code>public</code> <code>int</code> <code>onStartCommand(Intent intent, </code><code>int</code> <code>flags, </code><code>int</code> <code>startId) {</code>
<code> </code><code>getDate(</code><code>"http://www.lewei50.com/api/V1/Gateway/GetSensors/01"</code><code>);</code>
<code> </code><code>return</code> <code>super</code><code>.onStartCommand(intent, flags, startId);</code>
<code> </code><code>public</code> <code>void</code> <code>onDestroy() {</code>
<code> </code><code>super</code><code>.onDestroy();</code>
<code> </code><code>System.out.println(</code><code>"TestService desory()"</code><code>);</code>
<code> </code><code>public</code> <code>IBinder onBind(Intent intent) {</code>
<code> </code><code>return</code> <code>myBind;</code>
<code> </code><code>public</code> <code>void</code> <code>unbindService(ServiceConnection conn) {</code>
<code> </code><code>System.out.println(</code><code>"Test UnbindService()"</code><code>);</code>
<code> </code><code>super</code><code>.unbindService(conn);</code>
<code> </code><code>public</code> <code>class</code> <code>MyBind </code><code>extends</code> <code>Binder{</code>
<code> </code><code>public</code> <code>void</code> <code>test(){</code>
<code> </code><code>System.out.println(</code><code>"test"</code><code>);</code>
<code> </code><code>}</code>
<code> </code><code>public</code> <code>GetDateService getDateService(){</code>
<code> </code><code>return</code> <code>GetDateService.</code><code>this</code><code>;</code>
<code> </code><code>public</code> <code>void</code> <code>getDate(String url){</code>
<code> </code><code>AsyncHttpClient client = </code><code>new</code> <code>AsyncHttpClient();</code>
<code> </code><code>RequestParams params = </code><code>new</code> <code>RequestParams();</code>
<code> </code><code>// 設定請求的參數名和參數值</code>
<code> </code><code>params.put(</code><code>"userKey"</code><code>, </code><code>"cc809cd707xxxxxa917xxxxxxc674d0"</code><code>);</code>
<code> </code><code>client.get(url,params, </code><code>new</code> <code>JsonHttpResponseHandler() {</code>
<code> </code><code>@Override</code>
<code> </code><code>public</code> <code>void</code> <code>onStart() {</code>
<code> </code><code>// called before request is started</code>
<code> </code>
<code> </code><code>}</code>
<code> </code><code>public</code> <code>void</code> <code>onSuccess(</code><code>int</code> <code>statusCode, Header[] headers,JSONObject response) {</code>
<code> </code><code>// TODO Auto-generated method stub</code>
<code> </code><code>super</code><code>.onSuccess(statusCode, headers, response);</code>
<code> </code><code>Toast.makeText(GetDateService.</code><code>this</code><code>, response.toString(), Toast.LENGTH_SHORT).show();</code>
<code> </code><code>public</code> <code>void</code> <code>onFailure(</code><code>int</code> <code>arg0, Header[] headers, </code><code>byte</code><code>[] arg2,</code>
<code> </code><code>Throwable arg3) {</code>
<code> </code><code>super</code><code>.onFailure(arg0, headers, arg2, arg3);</code>
<code> </code><code>Toast.makeText(GetDateService.</code><code>this</code><code>, arg3.toString(), Toast.LENGTH_SHORT).show();</code>
<code> </code><code>public</code> <code>void</code> <code>onRetry() {</code>
<code> </code><code>super</code><code>.onRetry();</code>
<code> </code><code>});</code>
<code> </code><code>System.out.println(url);</code>
<code>}</code>
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
}
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();
public void onFailure(int arg0, Header[] headers, byte[] arg2,
Throwable arg3) {
super.onFailure(arg0, headers, arg2, arg3);
Toast.makeText(GetDateService.this, arg3.toString(), Toast.LENGTH_SHORT).show();
public void onRetry() {
super.onRetry();
});
}
參數格式是String類型,得到的資料格式是json格式
本文轉自 matengbing 51CTO部落格,原文連結:http://blog.51cto.com/matengbing/1909711