Skip to content

Commit f907fc2

Browse files
committed
Android:完善 Java 和 Kotlin 测试解析 Response JSON 的代码
1 parent 83328c9 commit f907fc2

File tree

3 files changed

+462
-36
lines changed

3 files changed

+462
-36
lines changed

APIJSON-Android/APIJSONApp/app/src/main/java/apijson/demo/client/activity_fragment/MainTabActivity.java

Lines changed: 36 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -86,24 +86,24 @@ protected void onCreate(Bundle savedInstanceState) {
8686

8787
if (SettingUtil.isOnTestMode) {
8888
showShortToast("测试服务器\n" + HttpRequest.URL_BASE);
89-
}
90-
91-
92-
HttpRequest.get(JSON.parseObject(JSON.toJSONString(TestRequestAndResponseJava.request()), zuo.biao.apijson.JSONObject.class), 0, new OnHttpResponseListener() {
93-
@Override
94-
public void onHttpResponse(int requestCode, String resultJson, Exception e) {
95-
TestRequestAndResponseJava.response(resultJson);
96-
}
97-
});
98-
99-
100-
HttpRequest.get(JSON.parseObject(JSON.toJSONString(TestRequestAndResponseKt.request()), zuo.biao.apijson.JSONObject.class), 0, new OnHttpResponseListener() {
101-
@Override
102-
public void onHttpResponse(int requestCode, String resultJson, Exception e) {
103-
TestRequestAndResponseKt.response(resultJson);
104-
}
105-
});
10689

90+
HttpRequest.get(JSON.parseObject(JSON.toJSONString(TestRequestAndResponseJava.request()), zuo.biao.apijson.JSONObject.class), 0, new OnHttpResponseListener() {
91+
@Override
92+
public void onHttpResponse(int requestCode, String resultJson, Exception e) {
93+
TestRequestAndResponseJava.response(resultJson);
94+
TestRequestAndResponseJava.smartResponse(resultJson);
95+
}
96+
});
97+
98+
99+
HttpRequest.get(JSON.parseObject(JSON.toJSONString(TestRequestAndResponseKt.request()), zuo.biao.apijson.JSONObject.class), 0, new OnHttpResponseListener() {
100+
@Override
101+
public void onHttpResponse(int requestCode, String resultJson, Exception e) {
102+
TestRequestAndResponseKt.response(resultJson);
103+
TestRequestAndResponseKt.smartResponse(resultJson);
104+
}
105+
});
106+
}
107107

108108
}
109109

@@ -145,14 +145,14 @@ public int getFragmentContainerResId() {
145145
@Override
146146
protected Fragment getFragment(int position) {
147147
switch (position) {
148-
case 1:
149-
UserListFragment fragment = UserListFragment.createInstance();
150-
fragment.setSearchType(EditTextInfoWindow.TYPE_NAME);
151-
return fragment;
152-
case 2:
153-
return MineFragment.createInstance();
154-
default:
155-
return MomentListFragment.createInstance();
148+
case 1:
149+
UserListFragment fragment = UserListFragment.createInstance();
150+
fragment.setSearchType(EditTextInfoWindow.TYPE_NAME);
151+
return fragment;
152+
case 2:
153+
return MineFragment.createInstance();
154+
default:
155+
return MomentListFragment.createInstance();
156156
}
157157
}
158158

@@ -221,8 +221,8 @@ public void onHttpResponse(int requestCode, String resultJson, Exception e) {
221221
@Override
222222
public void run() {
223223
sendBroadcast(new Intent(ActionUtil.ACTION_USER_CHANGED)
224-
.putExtra(INTENT_ID, APIJSONApplication.getInstance().getCurrentUserId())
225-
.putExtra(ActionUtil.INTENT_USER, APIJSONApplication.getInstance().getCurrentUser()));
224+
.putExtra(INTENT_ID, APIJSONApplication.getInstance().getCurrentUserId())
225+
.putExtra(ActionUtil.INTENT_USER, APIJSONApplication.getInstance().getCurrentUser()));
226226
}
227227
});
228228
}
@@ -263,15 +263,15 @@ public void onDragBottom(boolean rightToLeft) {
263263
@Override
264264
public boolean onKeyUp(int keyCode, KeyEvent event) {
265265
switch(keyCode){
266-
case KeyEvent.KEYCODE_BACK:
267-
long secondTime = System.currentTimeMillis();
268-
if(secondTime - firstTime > 2000){
269-
showShortToast("再按一次退出");
270-
firstTime = secondTime;
271-
} else {//完全退出
272-
sendBroadcast(new Intent(ACTION_EXIT_APP));
273-
}
274-
return true;
266+
case KeyEvent.KEYCODE_BACK:
267+
long secondTime = System.currentTimeMillis();
268+
if(secondTime - firstTime > 2000){
269+
showShortToast("再按一次退出");
270+
firstTime = secondTime;
271+
} else {//完全退出
272+
sendBroadcast(new Intent(ACTION_EXIT_APP));
273+
}
274+
return true;
275275
}
276276

277277
return super.onKeyUp(keyCode, event);

APIJSON-Android/APIJSONApp/app/src/main/java/apijson/demo/client/activity_fragment/TestRequestAndResponse.kt

Lines changed: 194 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
package apijson.demo.client.activity_fragment
22

3+
import apijson.demo.client.model.Comment
4+
import apijson.demo.client.model.CommentItem
5+
import apijson.demo.client.model.Moment
6+
import apijson.demo.client.model.User
37
import com.alibaba.fastjson.JSONArray
48
import com.alibaba.fastjson.JSONObject
59
import zuo.biao.apijson.JSON
@@ -228,4 +232,194 @@ fun response(resultJson: String?) {
228232
var msg = response.getString("msg")
229233
println("response.msg = " + msg);
230234

235+
}
236+
237+
238+
239+
fun smartResponse(resultJson: String?) {
240+
var response: JSONObject = JSON.parseObject(resultJson)
241+
242+
243+
//[]<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
244+
var list:JSONArray? = response.getJSONArray("[]")
245+
if (list == null) {
246+
list = JSONArray();
247+
}
248+
249+
var item: JSONObject?
250+
for (i in 0..list.size - 1) {
251+
item = list.getJSONObject(i)
252+
if (item == null) {
253+
continue
254+
}
255+
println("\nitem = list[" + i + "] = \n" + item + "\n\n")
256+
//TODO 你的代码
257+
258+
259+
//Moment<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
260+
var moment: Moment? = item.getObject("Moment", Moment::class.java)
261+
if (moment == null) {
262+
moment = Moment()
263+
}
264+
265+
var id = moment.getId()
266+
println("moment.id = " + id)
267+
var userId = moment.getUserId()
268+
println("moment.userId = " + userId)
269+
var date = moment.getDate()
270+
println("moment.date = " + date)
271+
var content = moment.getContent()
272+
println("moment.content = " + content)
273+
274+
//praiseUserIdList<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
275+
var praiseUserIdList1:List<Long?>? = moment.getPraiseUserIdList()
276+
if (praiseUserIdList1 == null) {
277+
praiseUserIdList1 = ArrayList();
278+
}
279+
280+
var item2: Long?
281+
for (i1 in 0..praiseUserIdList1.size - 1) {
282+
item2 = praiseUserIdList1.get(i1)
283+
if (item2 == null) {
284+
continue
285+
}
286+
println("\nitem1 = praiseUserIdList1[" + i1 + "] = \n" + item2 + "\n\n")
287+
//TODO 你的代码
288+
289+
}//praiseUserIdList>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
290+
291+
292+
//pictureList<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
293+
var pictureList1:List<String?>? = moment.getPictureList()
294+
if (pictureList1 == null) {
295+
pictureList1 = ArrayList();
296+
}
297+
298+
var item3: String?
299+
for (i1 in 0..pictureList1.size - 1) {
300+
item3 = pictureList1.get(i1)
301+
if (item3 == null) {
302+
continue
303+
}
304+
println("\nitem1 = pictureList1[" + i1 + "] = \n" + item3 + "\n\n")
305+
//TODO 你的代码
306+
307+
}//pictureList>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
308+
309+
//Moment>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
310+
311+
312+
//User:owner<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
313+
var owner: User? = item.getObject("User:owner", User::class.java)
314+
if (owner == null) {
315+
owner = User()
316+
}
317+
318+
var id2 = owner.getId()
319+
println("owner.id = " + id2)
320+
var name = owner.getName()
321+
println("owner.name = " + name)
322+
var head = owner.getHead()
323+
println("owner.head = " + head)
324+
//User:owner>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
325+
326+
327+
//User:praiseUser[]<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
328+
var praiseUserList1:List<User?>? = JSON.parseArray(item.getString("User:praiseUser[]"), User::class.java)
329+
if (praiseUserList1 == null) {
330+
praiseUserList1 = ArrayList();
331+
}
332+
333+
var item34: User?
334+
for (i1 in 0..praiseUserList1.size - 1) {
335+
item34 = praiseUserList1.get(i1)
336+
if (item34 == null) {
337+
continue
338+
}
339+
println("\nitem1 = praiseUserList1[" + i1 + "] = \n" + item34 + "\n\n")
340+
//TODO 你的代码
341+
342+
var id = item34.getId()
343+
println("item1.id = " + id)
344+
var name = item34.getName()
345+
println("item1.name = " + name)
346+
}//User:praiseUser[]>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
347+
348+
349+
//CommentItem[]<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
350+
var commentItemList1:List<CommentItem?>? = JSON.parseArray(item.getString("CommentItem[]"), CommentItem::class.java)
351+
if (commentItemList1 == null) {
352+
commentItemList1 = ArrayList();
353+
}
354+
355+
var item1: CommentItem?
356+
for (i1 in 0..commentItemList1.size - 1) {
357+
item1 = commentItemList1.get(i1)
358+
if (item1 == null) {
359+
continue
360+
}
361+
println("\nitem1 = commentItemList1[" + i1 + "] = \n" + item1 + "\n\n")
362+
//TODO 你的代码
363+
364+
365+
//Comment<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
366+
var comment: Comment? = item1.getComment()
367+
if (comment == null) {
368+
comment = Comment()
369+
}
370+
371+
var id3 = comment.getId()
372+
println("comment.id = " + id3)
373+
var toId = comment.getToId()
374+
println("comment.toId = " + toId)
375+
var userId = comment.getUserId()
376+
println("comment.userId = " + userId)
377+
var momentId = comment.getMomentId()
378+
println("comment.momentId = " + momentId)
379+
var date = comment.getDate()
380+
println("comment.date = " + date)
381+
var content = comment.getContent()
382+
println("comment.content = " + content)
383+
//Comment>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
384+
385+
386+
//User:publisher<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
387+
var publisher: User? = item1.getUser()
388+
if (publisher == null) {
389+
publisher = User()
390+
}
391+
392+
var id = publisher.getId()
393+
println("publisher.id = " + id)
394+
var name = publisher.getName()
395+
println("publisher.name = " + name)
396+
//User:publisher>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
397+
398+
}//CommentItem[]>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
399+
400+
}//[]>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
401+
402+
403+
//emptyList<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
404+
var emptyList:JSONArray? = response.getJSONArray("emptyList")
405+
if (emptyList == null) {
406+
emptyList = JSONArray();
407+
}
408+
409+
var item5: Any?
410+
for (i in 0..emptyList.size - 1) {
411+
item5 = emptyList.get(i)
412+
if (item5 == null) {
413+
continue
414+
}
415+
println("\nitem = emptyList[" + i + "] = \n" + item5 + "\n\n")
416+
//TODO 你的代码
417+
418+
}//emptyList>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
419+
420+
var code = response.getIntValue("code")
421+
println("response.code = " + code);
422+
var msg = response.getString("msg")
423+
println("response.msg = " + msg);
424+
231425
}

0 commit comments

Comments
 (0)