- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
【Android开发】如何设计开发一款AndroidApp
本文从开发工具选择,UI界面、图片模块、网络模块、数据库产品选择、性能、安全性等几个方面讲述了如果开发一个Android应用。现在整理出来分享给广大的Android程序员。
开发工具的选择
开发工具我将选用AndroidStudio,它是Google官方指定的Android开发工具,目前是1.2.2稳定版,1.3的预览版也已经发布了。
AndroidStudio的优点就不需多说了,GitHub上大部分的Android开源库也都已迁移到AndroidStudio上来,在未提供jar文件时,使用AndroidStudio可以极为方便地集成开源库。最为重要的是Google已宣布将在年底前停止对EclipseAndroid开发工具的一切支持(GoogleEnds
SupportforAndroidEclipseTools),因此请早日转移到AndroidStudio上来。
App设计风格
这一点对于一个开发者来说,貌似没有决定权,最终的决定权在产品部门手里。尽管这样,我还是会尽力说服产品部门将App设计成MaterialDesign风格。这一点说多了都是泪啊,作为一个Android开发者,却整天开发着iOS风格的App,相信很多公司都这样,为了节省成本和时间,Android和iOS共用一套UI。举一个最常见的例子,AndroidApp中每个页面TitleBar的左上角放一个返回按钮,这在iOS里是必须的,但Android有返回键啊,这样设计对于Android完全是多此一举。
真心希望产品设计者尊重每种操作系统的风格及使用习惯,不要再设计不伦不类的产品。MaterialDesign正好提供了一种这样的规范,自MD规范发布以来,其优雅的设计和清新的风格已吸引了大批设计者和开发者,如今MD设计不止在Android上(已有官方类库支持MD风格),甚至在CSS、HTML、JavaScript网页设计上都越来越火。因此,对于App的设计风格,MaterialDesign当仁不让,也许你曾经错过了AndroidDesign,请不要再错过MaterialDesign。
一些相关的链接:
MaterialDesign官网
MaterialDesign配色模板
MD一个设计案例网站
MD风格的Andorid抽屉源码:
Android-MaterialDesign-NavigationDrawer
MD风格的一个App源码(有妹子哦):Android-MaterialDesign-DBMZ
版本支持
对于Android要支持的最低版本,可以参考各个版本的市场占有率,其实最靠谱的是根据自家App的统计数据来决定,目前我们的App最低支持2.2。以个人观点认为,虽然2.x的版本仍然有一部分用户,但其实手机更新换代特别快,为了更好的用户体验,也为了应用更新的
API(很多第三方库也都有版本要求),应该提高最低支持的版本,大概3.0为宜,即APILevel为11。
App框架设计
相信大家都有体会,随着功能模块的增加,App越来越大,如果没有良好的架构设计,则代码将会变得臃肿且不易维护,各功能模块的耦合度会越来越高。因此可以把App模块化,将一个完整的App划分成几个相对独立的模块,这样即可以降低模块间的耦合也利于复用。
1.网络模块
已经很少有单机版的App了吧,大部分都需要联网,从服务器请求数据,因此网络模模块必不可少。GitHub上的开源网络框架也特别多,个人认为可以使用开源框架,目前我会选okHttp或者Volley,也许以
后会有更好的网络框架出现。注意如果使用开源框架,则必须要阅读其源码,必须能够驾驭它,这样就不至于当bug出现时束手无策。当然还可以自己写网络模块,目前我们的App网络模块就完全是自己写的,
这样的好处是自己熟悉所写的代码,当有bug时可以迅速定位问题,同
时注意处理一些联网过程中的细节,如:
(1)对HTTPS的支持、HTTPS证书的验证(目前很多做法都是默认允许所有HTTPS证书的,其实这样做是不安全的,应当真正地做证书校验)
(2)支持Wap方式上网,移动、联通、电信代理的设置
(3)支持重定向、数据压缩传输等
(4)其他值得注意的问题
自己写网络框架可以完美地处理这些细节,但时间成本比较大。如果使用开源框架,一般都没有处理这些细节,因此我们
您可能关注的文档
- 输电线路杆塔冲击接地电阻特性的模拟试验研究分析.docx
- 高一物理教师个人年度总结.docx
- 英语教师个人研修计划表.docx
- 小学生安全教育演讲稿.docx
- 岳阳林纸:岳阳林纸股份有限公司2023年第一季度报告.docx
- (招聘面试)选人用人必须坚持公道正派.docx
- 高一英语教学反思范文2篇.docx
- 工程硕士培养方案-电子工程系.docx
- 工程师专业技术工作总结.docx
- 高一化学教师上学期工作计划2020.docx
- 《SPSS软件回归分析》课件.ppt
- 《SPX产品介绍》课件.ppt
- 四川省自贡市2019-2020学年中考第二次适应性考试数学试题含解析.pdf
- 四川省资阳市名校2023-2024学年中考联考物理试题含解析 .pdf
- 四川省绵阳市江油市八校联考2023-2024学年八年级下学期开学语文试题完整版.pdf
- 四川省绵阳市江油市八校联考2023-2024学年八年级下学期开学语文试题.pdf
- 四川省眉山市彭山区2024学年科目一模拟考试100题(及答案) .pdf
- 四川省眉山市仁寿县2023-2024学年七年级上学期期中语文试题(含解析.pdf
- 《SPK装配工艺》课件.ppt
- 四川省眉山市东坡区2024学年科目一模拟考试100题带答案 .pdf
文档评论(0)