文档章节

如何开发一款高大上的android应用的必备知识

Dougien
 Dougien
发布于 2016/02/03 16:46
字数 1145
阅读 20
收藏 0

 Android入门还是很简单的,看两本书,翻阅几篇文章,搭建了开发环境就算入门了。可是怎样开发一款完备的android应用呢,开发一款高端的android应用又需要那些知识呢,作者根据几年的开发经验做了一点总结,有不足之处也请读者补充。

一、网络开发技能

    开发的应用肯定会联网,在移动互联网时代,单机应用会越来越少。如果我们开发的应用缺少与服务器的交互,内容上不会丰富,更有可能的是我们无法控制到应用,得不到用户及用户反馈。网络连接中用的最多的无非是Http或者Tcp。Android中http使用提供了三个包,我们常用的是HttpClient、HttpURLConnection。网络上也有对http的封装包,例如volleyandroid-async-http,volley使用的HttpURLConnection,android-async-http使用的HttpClient。虽然http的封装包使用起来都很简单,但是我们也应该了解一下他们的区别,作者有一篇文章是介绍HttpClient、HttpURLConnection区别的,希望对您有帮助,AndroidHttp通信 HTTP Client与HttpURLConnection的区别

    volleyandroid-async-http都是非常简洁、伟大的http开发库,android-async-http有详细的开发文档,作者不做详细的说明。 Volley是Ficus Kirpatrick在Gooogle I/O 2013发布的一个处理和缓存网络请求的库,能使网络通信更快,更简单,更健壮;他没有使用文档,作者有几篇文章介绍了volley的使用。

Google I/O 2013 – Volley: Easy, Fast Networking for Android

网络通信框架Volley使用详细说明

Asynchronous HTTP Requests in Android Using Volley

Android UI开发第三十六篇——使用Volley加载图片列表

二、丰富的UI技能

    客户端开发不同于服务端,服务端只处理逻辑,客户端即处理逻辑又处理界面,而且界面又是多变的,不同的客户端,界面肯定不一样,相同的客户端,不同时期的界面也可能不一样,所以客户端开发者总感觉在修改界面,不是在改界面就是在改界面的路上大笑

    我们处在一个以“用户体验至上”的时代,产品经理经常会以此为理由修改已经确定的UI,为了应付多变的需求,我们必须储备尽可能多的UI处理技能。从最简单的Button、TextView、EditText到高级点的Listiew、Tab、ViewPager,我们都应该掌握,我们还应该跟上时代掌握ActionBar、Fragment等等,自定义View的技能也必不可少。作者有一个UI开发专栏,介绍到了很多常用UI知识,分享给大家。

Android UI开发专栏


三、保证应用安全技能

    应用安全是我们重点关注的,尤其涉及到支付相关应用。我们不希望自己的应用遭破解、也不希望用户被钓鱼、更不希望出现数据漏洞,那我们就需要提高应用安全技能。

    应用安全会涉及到代码安全、客户端与服务端通信安全、应用内部组件通信安全、数据库数据安全等等,作者也提供了一个专栏来介绍应用安全,内容还不够多,以后会再补充一些。作者也不是专业做安全的,难免有不足之处,也请读者谅解。

android应用安全

四、NDK技能,适当的使用so

    Android平台从诞生起,就已经支持C、C++开发。虽然Android的SDK基于Java实现,但这并不等同于“第三方应用只能使用Java”。在Android SDK首次发布时,Google就宣称其虚拟机Dalvik支持JNI编程方式,也就是第三方应用完全可以通过JNI调用自己的C动态库,即在Android平台上,"Java+C"的编程方式是一直都可以实现的。涉及到注重性能,或比较底层的程序都会使用C/C++开发,例如音视频编解码。有的应用会使用so文件,以保证应用安全。

    NDK全称是Native Development Kit。NDK提供了一系列的工具,帮助开发者快速开发C(或C++)的动态库,并能自动将so和java应用一起打包成apk。官方关于NDK开发的文档相对较少,作者也总结了几篇文章,帮着初学者入门。






本文转载自:http://blog.csdn.net/xyz_lmn/article/details/17575709

Dougien
粉丝 4
博文 29
码字总数 17891
作品 0
长沙
程序员
私信 提问
转载:最强最全干货分享:Android开发书籍、教程、工具等

最全干货分享,本文收集整理了Android开发所需的书籍、教程、工具、资讯和周刊各种资源,它们能让你在Android开发之旅的各个阶段都受益。 入门 《Learning Android(中文版)》 本书为Andro...

拉偶有所依
2015/01/09
152
3
最强最全干货分享:Android开发书籍、教程、工具等

最全干货分享,本文收集整理了Android开发所需的书籍、教程、工具、资讯和周刊各种资源,它们能让你在Android开发之旅的各个阶段都受益。 入门 《Learning Android(中文版)》 本书为Andro...

拉偶有所依
2015/01/09
0
1
越写越快乐之如何快速开始开发一款Android应用

今天的越写越快乐系列大家带来工作上的一些事,关于如何快速开发一款Android应用,也就是如何利用框架快速搭建你的App应用架构,可以快速地入手,只关注你的业务逻辑,其他事项交由现有的框架...

韬声依旧在路上
01/21
0
0
开发人员必读,安卓开发工具知多少

安卓开发过程中需要用到各种工具,于是作为一名安卓开发人员,那么多工具,各种亚历山大啊,于是今天就给大家汇总了一下安卓开发工具,哪些是安卓开发中必须要用到。 1、Draw 9-Patch 这个九...

flyurt
2015/10/30
306
0
【开发者福利】最全面的移动端免费素材合集

在移动端设计风起云涌的今天,移动端的UI和UX设计师任重而道远。巧妇难为无米之炊,好素材就是设计师的底气。这次搜集的移动端免费素材覆盖全面,从教学资源到UI Kit,从开发工具到图标合集,...

拉偶有所依
2015/01/06
1K
1

没有更多内容

加载失败,请刷新页面

加载更多

我为什么要写微信公众号

埋一颗种子,细心呵护,静待她枝繁叶茂,葱郁参天 V2论坛上有个帖子【做程序员最重要的还是一定要有自己的作品】,作者写道: 能有一个作品和你的名字联系在一起,应当成为在职业生涯前期着意...

运维咖啡吧
24分钟前
2
0
数据库

数据库架构 数据库架构可以分为存储文件系统和程序实例两大块,而程序实例根据不同的功能又可以分为如下小模块。 1550644570798 索引模块 常见的问题有: 为什么要使用索引 什么样的信息能成...

一只小青蛙
今天
5
0
PHP常用经典算法实现

<? //-------------------- // 基本数据结构算法 //-------------------- //二分查找(数组里查找某个元素) function bin_sch($array, $low, $high, $k){ if ( $low <= $high){ $mid = int......

半缘修道半缘君丶
昨天
5
0
GIL 已经被杀死了么?

本文原创并首发于公众号【Python猫】,未经授权,请勿转载。 原文地址:https://mp.weixin.qq.com/s/8KvQemz0SWq2hw-2aBPv2Q 花下猫语: Python 中最广为人诟病的一点,大概就是它的 GIL 了。...

豌豆花下猫
昨天
6
0
git commit message form

commit message一般包括3部分:Header、Body、Footer。 <type>(<scope>):<subject>blank line<body>blank line<footer> header是必需的,body、footer可以省略。 header中type、subject......

ninjaFrog
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部