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中的模块,这 ...
随机推荐
- js遍历 for-of
for-of遍历 entries() 返回一个遍历器对象,用来遍历[键名, 键值]组成的数组.对于数组,键名就是索引值:对于 Set,键名与键值相同.Map 结构的 Iterator 接口,默认就是调 ...
- ECC公钥格式详解
本文首先介绍公钥格式相关的若干概念/技术,随后以示例的方式剖析DER格式的ECC公钥,最后介绍如何使用Java生成.解析和使用ECC公钥. ASN.1 Abstract Syntax Notation ...
- C# get 、set、索引器
get 与 set C#类的属性有公有属性(public)和私有属性(private).如果直接将一个属性声明为public,则该类的任意实例可以随意获取或修改该属性的值,很不安全..NET Fram ...
- 小程序上拉下拉共存时不可使用scroll-view的解决方法
使用 bindscrolltolower ,必须搭配使用的 scroll-view 会导致小程序 "enablePullDownRefresh": true 下拉不能使用. 解决方 ...
- python中input()和raw_input()的区别
两者均是python的内置函数,通过读取控制台的输入与用户实现交互.raw_input:将所有输入作为字符串看待,不管用户输入什么类型的都会转变成字符串. raw的 ...
- Hibernate异常之关键字错误
三月 08, 2018 7:50:25 下午 org.hibernate.tool.schema.internal.ExceptionHandlerLoggedImpl handleException ...
- WebRTC 音频算法 附完整C代码
WebRTC提供一套音频处理引擎, 包含以下算法: AGC自动增益控制(Automatic Gain Control) ANS噪音抑制(Automatic Noise Suppression) AEC ...
- Android Studio 中设置代码块自动补齐
AS中很多提示键,并不如Eclipse中做的好,需要我们自己去自定义.这里以switch...case为例,讲解一下如何设置代码自动补全. 1.进入settings --> Editor -- ...
- Python logging 模块和使用经验
记录下常用的一些东西,每次用总是查文档有点小麻烦. py2.7 日志应该是生产应用的重要生命线,谁都不应该掉以轻心 有益原则 级别分离 日志系统通常有下面几种级别,看情况是使用 FATAL - 导致程 ...
- Python 函数参数传递机制.
learning python,5e中讲到.Python的函数参数传递机制是对象引用. Arguments are passed by assignment (object reference). I ...