Android进阶(九)APP编程感想
从初识Android到现在,在不断做APP(二维码、条形码扫描,彩票购买,火车票余票查询)的过程中,自己学会了很多东西。找时间整理了一下,总结如下:
其中,对于前两个APP,自己都是在他人已完成的基础上进行升级改造。
购物分享APP
条码扫描APP与彩票购买APP均采用C/S架构,在条码扫描APP中,Android端使用的是Google公司的开源条码扫描包,对于App的开发起到了很大帮助,但不利的一面也是存在的,自己对其底层实现代码还不是很熟悉;服务端使用的是:JSP+Servlet+javaBean的形式,服务器端是采用Jax_WS发布服务的方式实现的,原服务器端采用的是C# .NET平台,自己将其改写为Java语言实现。
彩票购买APP
Android客户端抽取了很多东西,所以类文件显得比较多;服务器端采用的架构为:Struts2+MyBatis,较条码扫描APP,在服务器端实现了更好的封装。自己也因此走上了J2EE框架学习的道路,其中不乏存在很多有趣的地方,学习框架犹如爬楼梯一样,循序渐进。
火车余票查询APP
自己首先对业务场景进行了分析,最终确立了只有Android客户端的方案,在客户端中是采取爬取网页的形式执行,然后对获取到的数据进行处理(PS;后来考虑到将之作为一个本科毕业设计来做的话显得有点单薄,故后来将之改为C/S架构方式。)。细节方面的知识点其实还是很多的,在此就不一一列举了。
自己是将Android与Java一起学习的,将近7个月的时间了,感觉自己还是学习到了不少知识,例如json解析,DOM解析,网络爬虫,框架方面的知识;同时也感觉到还有好多知识点没有涉猎或有待于进一步补充完善,例如PHP、Oracle、23种设计模式、SSH、Spring MVC、Spark、Sencha,相信在以后的开发学习道路上还会遇到更多的难点,但能够解决的问题都不能称之为问题。
有需要源代码的朋友可以联系我。联系方式:QQ 752487551
附:
Q:在爬取12306网站时,出现如下错误提示:
S:导致出现此错误的是12306采用的https协议,爬取网页时应针对其安全机制提供相应的证书,当然也可以通过编程在访问时设置为忽略此安全特性。
Q:
S:
JavaEE学习路线图:
学习园地:
极客学院:http://www.jikexueyuan.com/path/android/
Android系统架构:
http://www.cnblogs.com/royenhome/archive/2010/04/24/1719293.html
C/S与B/S架构的区别:
http://www.cnblogs.com/mfryf/archive/2012/02/13/2349750.html
Android背景颜色参考值:
http://blog.csdn.net/chindroid/article/details/7740949
:在“最新分享”功能模块中,出现了商品图片与评论不一致的情况。
解决:
// 将Map转换为Array数组(此处有问题Set为无序集合)
array = hashmapEvaluations.entrySet().toArray();
遍历HashMap时,转换为了Set集合,变得无序。
使用LinkedHashMap可解决问题。
for (Object key:linkedHashMapEvaluations.keySet())
{
array[j++] = key + "\tby\t" + linkedHashMapEvaluations.get(key);
}
:在“最新分享”功能模块中,出现了长时间等待查询结果的现象。
解决:
获取当前日期并格式化:
http://blog.csdn.net/yudajun/article/details/7939552
二维码生成:
http://blog.sina.com.cn/s/blog_b15639e00101e4ar.html
在后期还要实现将商品的信息以二维码的形式显示出来,并可打印印刷在商品上。当扫描商品的二维码时,就能够轻松获取商品的信息。
S:clean一下,问题解决。
http://blog.csdn.net/xusongsong520/article/details/8009696
编程感悟:
1.若一些经常变动的“常量”(例如网络编程中的IP、端口号)在多个文件中使用到,则应将这些常量放置在一个文件中,以便在以后修改的时候只需修改常量文件就OK了,而不用四处寻找需要修改的地方。这是一种很好的编程素养。
Android进阶(九)APP编程感想的更多相关文章
- Android进阶(十九)AndroidAPP开发问题汇总(三)
Android进阶(十九)AndroidAPP开发问题汇总(三) Java解析XML的几种方式: http://inotgaoshou.iteye.com/blog/1012188 从线程返回数据的两 ...
- 我的Android进阶之旅------>经典的大牛博客推荐(排名不分先后)!!
本文来自:http://blog.csdn.net/ouyang_peng/article/details/11358405 今天看到一篇文章,收藏了很多大牛的博客,在这里分享一下 谦虚的天下 柳志超 ...
- Android进阶推荐书籍
中级进阶推荐看一下以下这几本书 1.<Android从入门到精通(附光盘)> 明日科技 编 2.<第一行代码2 Android(第二版)> 郭霖 著 3.<Android ...
- 【Android进阶系列教程】前言
起因 因为初学Android的时候还没有写博客的意识,现在Android的门是入了,正在进阶的道路上行走,但是就这一路也走了不少的弯路.我想,总得来说Android入门还是比较容易的,网络资源比较丰富 ...
- Android开发面试经——4.常见Android进阶笔试题(更新中...)
Android开发(29) 版权声明:本文为寻梦-finddreams原创文章,请关注:http://blog.csdn.net/finddreams 关注finddreams博客:http:/ ...
- Android studio 下JNI编程实例并生成so库
Android studio 下JNI编程实例并生成so库 因为公司需要为Android相机做美颜等图像后期处理,需要使用JNI编程,最近学了下JNI,并且在Android Studio下实现了一个小 ...
- 《Android进阶》之第七篇 NDK的使用
<Android进阶>之第一篇 在Java中调用C库函数 这一篇列举的方法是在NDK没有出来时候用的方式 在Android发布NDK之后,可以这样使用 一.首先下载android-ndk ...
- Android进阶(二十八)上下文菜单ContextMenu使用案例
上下文菜单ContextMenu使用案例 前言 回顾之前的应用程序,发现之前创建的选项菜单无法显示了.按照正常逻辑来说,左图中在"商品信息"一栏中应该存在选项菜单,用户可进行分享等 ...
- Android进阶(十二)Fragment VS Activity
Fragment VS Activity Android是在Android 3.0 (API level 11)开始引入Fragment的. 可以把Fragment想成Activity中的模块,这 ...
随机推荐
- string转换为guid类型 split
string str = "{"+context.Request["ID"]+"}"; KpiUser.ID = new Guid(str) ...
- Exchange Server 2010升级到Exchange Server 2016
Hello各位小伙伴们,失踪人口回归啦~~~这次和大家分享Exchange Server 2010升级到Exchange Server 2016的方法.正式开始前先啰嗦几句,为什么我要写这篇文章呢?一 ...
- 简介JSP与FreeMarker及Volicity区别
FreeMarker FreeMarker是一款模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页.电子邮件.配置文件.源代码等)的通用工具. 它不是面向最终用户的,而是一个 ...
- c++DLL编程详解
DLL(Dynamic Link Library)的概念,你可以简单的把DLL看成一种仓库,它提供给你一些可以直接拿来用的变量.函数或类.在仓库的发展史上经历了“无库-静态链接库-动态链接库”的时代. ...
- 王家林人工智能AI课程大纲和电子书 - 老师微信13928463918
**3980元团购原价19800元的AI课程,团购请加王家林老师微信13928463918. 基于王家林老师独创的人工智能"项目情景投射"学习法,任何IT人员皆可在无需数学和Pyt ...
- springMVC源码分析--HandlerMethodReturnValueHandlerComposite返回值解析器集合(二)
在上一篇博客springMVC源码分析--HandlerMethodReturnValueHandler返回值解析器(一)我们介绍了返回值解析器HandlerMethodReturnValueHand ...
- 【Android】给Android Studio设置代理
先打开我们的Android Studio,点击工具栏的file下的settings,如下图 之后再搜索框上面输入Proxy,然后按第四步提示点击,如下图 之后就进入了设置代理的界面了,如下图 默认情况 ...
- Android开发之手把手教你写ButterKnife框架(一)
欢迎转载,转载请标明出处: http://blog.csdn.net/johnny901114/article/details/52662376 本文出自:[余志强的博客] 一.概述 JakeWhar ...
- [boost] build boost with intel compiler 16.0.XXX
Introduction There are few information about how to compile boost with Intel compiler. This article ...
- PGM:有向图模型:贝叶斯网络
http://blog.csdn.net/pipisorry/article/details/52489270 为什么用贝叶斯网络 联合分布的显式表示 Note: n个变量的联合分布,每个x对应两个值 ...