Android网络应用项目实训指导书Word格式文档下载.docx
《Android网络应用项目实训指导书Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《Android网络应用项目实训指导书Word格式文档下载.docx(12页珍藏版)》请在冰豆网上搜索。
上面链接中的go就是表示要查询的单词
w=go表示要查的单词为go
返回的JSON字段解释(中文)
{
'
word_name'
:
#所查的词
symbols'
#词各种信息下面字段都是这个字段下面的
word_symbol'
'
#拼音
symbol_mp3'
#发音
parts'
#汉字的各种翻译数组
net_means'
#网络释义
}
2、每日一句的接口
参数:
date为要查询的日期
JSON字段解释
sid'
#每日一句ID
tts'
#音频地址
content'
#英文内容
note'
#中文内容
love'
#每日一句喜欢个数
translation'
#词霸小编
picture'
#图片地址
picture2'
#大图片地址
caption'
#标题
dateline'
#时间
s_pv'
#浏览数
sp_pv'
#语音评测浏览数
tags'
#相关标签
fenxiang_img'
#合成图片,建议分享微博用的
开发指导
1、创建项目
项目名称为TinyDict(中文名:
我的小字典)
项目包名为:
net.hnjdzy.tinydict
请为项目找一个图标
2、开发主界面
主界面为两页的FragmentActivity
单词查询和每日一句为两个Fragment,
单词查询:
WordFragment
每日一句:
SentenceFragment
请参考网上商城项目(dingdingshop)实现
3、设计单词查询的布局
请参考界面图,设计布局
4、开发实体类,实体类按照JSON的格式来定义
WordPart.java:
对应Json中的part部分
WordExchange
WordSymbol
WordJson
参考附录六
5、开发单词查询的功能
通过OkHttp发起请求
处理onResponse方法
将json文字处理编码(附录三)
解析json
显示到界面
这里的json比较复杂,如果用fastjson需要定义完整的实体类
6、设计每日一句的布局
7、开发每日一句的功能
图片下载建议使用picasso库
8、测试和提交
附录一、单词查询返回的JSON文本
"
word_name"
go"
is_CRI"
1,
exchange"
{
word_pl"
[
goes"
],
word_past"
went"
word_done"
gone"
word_ing"
going"
word_third"
word_er"
"
word_est"
},
symbols"
ph_en"
gəʊ"
ph_am"
goʊ"
ph_other"
ph_en_mp3"
//
ph_am_mp3"
ph_tts_mp3"
//res-
parts"
part"
vi."
means"
走"
离开"
去做"
进行"
]
vt."
变得"
发出…声音"
成为"
处于…状态"
n."
轮到的顺序"
精力"
干劲"
尝试"
}
items"
附录二、每日一词返回的JSON文本
sid"
1991"
tts"
content"
Knowledgewillgiveyoupower,butcharacterrespect."
note"
知识给你力量,品格给你别人的尊敬。
--李小龙"
love"
8418"
translation"
词霸小编:
假期结束啦!
知道大家肯定会有假期综合症,来来来学几个词组,提提神儿。
1.Procrastination拖延症;
2、Holidaysyndrome假期综合症;
3、Prosopagnosia脸盲症;
4、Trypophobia密集恐惧症;
5、Bulimianervosa易饿症;
6、Choosedisabilities选择障碍症
05-1803:
09:
51.212:
D/Test(1160):
picture"
picture2"
caption"
词霸每日一句"
dateline"
2016-05-03"
s_pv"
26896"
sp_pv"
344"
tags"
id"
10"
name"
正能量"
fenxiang_img"
附录三、JSON文本的编码处理
1、导入包:
commons-lang-2.4
2、Stringnewjson=StringEscapeUtils.unescapeJava(json);
附录四、使用OkHttp进行网络访问
OkHttpClienthttpClient=newOkHttpClient();
Stringurl="
//192.168.129.100:
8080/dingding/servlet/ListCarServlet?
userid="
+userid;
Requestrequest=newRequest.Builder().url(url).build();
httpClient.newCall(request).enqueue(newCallback(){
@Override
publicvoidonFailure(Callarg0,IOExceptionarg1){
}
publicvoidonResponse(Callarg0,Responsearg1)throwsIOException{
Strings=arg1.body().string();
//orderList=JSON.parseArray(s,OrderFullInfo.class);
getActivity().runOnUiThread(newRunnable(){
@Override
publicvoidrun(){
//界面更新
}
});
}
});
附录五、图片下载显示
8080/dingding/image/phone/"
+
mGoodInfo.getImg();
ImageViewimageView1=(ImageView)this.findViewById(R.id.imageView2);
Picasso.with(this).load(url).into(imageView1);
附录六、单词查询的实体类
publicclassWordPart{
privateStringpart;
privateList<
String>
means;
//省略getter/setter方法
publicclassWordExchange{
word_pl;
word_past;
word_done;
word_ing;
word_third;
word_er;
word_est;
publicclassWordSymbol{
privateStringph_en;
privateStringph_en_mp3;
privateStringph_other;
WordPart>
parts;
publicclassWordJson{
privateStringword_name;
privateintis_CRI;
privateWordExchangeexchange;
WordSymbol>
symbols;
//省略getter/setter方法