zoukankan      html  css  js  c++  java
  • 个人开发者做一款Android App需要知道的事情

    个人开发者做一款Android App需要知道的事情

     

    在大学时, 自己是学计算机专业的,而且还和老师一起做过一年半的项目。 有时候是不是有这样的想法,做一个自己的网站、但一直未付诸行动。
    2012年时, 终于付诸行动了,花了三个月,现学现卖, 熬夜通宵用PHP做了一个小网站,但后续就再没有坚持下去。 
    直到从电信行业转行互联网行业后,做一款属于自己的应用的的想法越来越迫切,于是今年开始便投入到Android App开发的阵营中来。
    今年断断续续做了4款Android App应用, 一款公司应用,三款自有应用。从前期的学习, 到后续的实践,很多东西需要自己去摸索.

    目前,应用资讯类型App功能核心都包括内容列表展示、内容详情展示、个人中心、 评论分享、搜索四大功能。

    下面就我以我开发的一款编程学习的App[编程在线]为例, UI + Andorid客户端 + 服务器 + 内容 + 上线 都是我一个人在做, 最终做出这样一款App来花费了大量的时间和经历。先简单介绍一下[编程在线]App


    编程在线介绍:

    编程在线是一款包括编程语言、移动开发、WEB开发、RSS订阅功能的综合性编程学习客户端。界面简洁、操作简单。文章内容包括java、NET、C/C++、PHP、Android开发、Windows开发、iPhone开发、JavaScript开发、AngularJS、Node.js、JQuery等精彩技术文章。

    编程在线功能:

    1、提供编程语言、移动开发、WEB开发相关技术文章。
    2、提供专题文章,支持文章分类阅读。
    3、支持按编辑推荐、最新文章、最热文章阅读文章。
    4、支持页面下拉刷新页面内容。
    5、支持离线阅读, 已阅读的文章会在本地缓存。
    6、支持博客园和CSDN RSS订阅功能。
    7、支持最新文章消息推送功能。
    8、支持文章分享、收藏、笔记、评论功能。
    9、支持收藏、笔记数据同步到服务器。

    总计设计:

    1、Android客户端采用 Tab + 侧边栏的整体布局

    2、服务器采用新浪SAE部署, 采用PHP + MySQL 开发 ,数据交互采用 java通过http调用php restful接口


    一款android App需要考虑的问题:

    1、UI设计: UI是大众的弱点,如果想开发一款不错的应用,简单的ps要会
    2、有无网络数据处是读缓存、还是从网络读取
    3、数据缓存:服务器缓存和本地数据缓存
    4、数据同步: 服务器和本地数据同步、UI界面数据同步
    5、加载loading、加载失败、失败重试
    6、消息通知: 客户端主动拉取或者实现服务器推送
    7、登陆与分享:自由账号与第三方账号打通、分享定制
    8、首次加载速度: 发布app前,把一部分数据打包在app中
    9、统计数据:用于统计用户习惯、后续功能完善和数据调整的依据
    10、集成第三方登陆:QQ登陆和新浪微博登陆标配
    11、安全性:获取请求的安全性、用户输入安全性、评论防刷问题等
    12、兼容性问题
    13、架构的可用性,便于后续项目开发


    常用系统组件和开源组件:


    1、Fragment
    需要解决Fragment隐藏与显示重叠问题
    需要解决由后台切回前台Fragment被销毁,导致显示非常慢

    2、侧边栏
    slidingmenu 或者 NavigationDraw

    3、图片加载: imageLoader
    兼容性问题,部分远程图片无法加载显示

    4、HTTP异步加载android-async-http

    5、上拉下拉刷新: pullrefresh
    1、需要解决兼容性问题,mx3滚动有问题,会自动拉出很大一块空白
    2、上拉和下拉文案共用,需要解决上拉和下拉文案的不同

    6、tab控件 PagerSlidingTabStrip
    1、需要Tab解决样式定制问题
    2、需要解决tab缓存和惰性加载

    7、SAXParser 解析 rss
    1、遇到引入第三方解析jar包时, 运行时找不类, 但类其实是有的
    2、遇到了解析CSDN博客文章时无法解析标题到标题的bug

    8、集成QQ登陆和腾讯微博登陆
    1、 登陆无法拿到QQ和账号,需要自己解决第三方账号与自由账号打通问题
    2、 QQ 图像无法用imageLoader加载

    9、分享组件可以调用系统的,也可以使用第三方组件ShareSDK

    10、消息推送
    1、自己实现推送:主动拉取 或者 socket通信
    2、可以集成第三方消息推送、比如百度云推送、云之讯等


    11、UI设计

    1、iconpng.com iconfinder.com easyicon.com
    2、使用photoshop ps自己需要的图片
    3、付费让UI设计人员帮你设计

    广告平台:

    豌豆荚、广点通、 有米广告、 点乐积分墙、 多盟广告等等


    应用市场:

    应用宝、豌豆荚、百度、91、安智、安卓、360、华为(暂不允许个人提交的应用)、小米、魅族等

    应用审核:
    审核都要3--10天左右,需要提供身份证明或者签订协议,部分市场某些应用不允许上架。特别广告和积分墙的应用。

    编程在线下载:

    编程在线网站:http://codestudy.sinaapp.com (最新版2.1)

    编程在线移动版:http://codestudy.sinaapp.com/mobile/

     

    编程在线Android客户端, 已上架到豌豆荚、应用宝、91、安卓、机锋应用市场, 欢迎大家下载,  共同学习, 2.0 版本。

    应用宝:http://sj.qq.com/myapp/detail.htm?apkName=com.blue.sky.code.study

    豌豆荚:http://www.wandoujia.com/apps/com.blue.sky.code.study

    91:http://apk.91.com/Soft/Android/com.blue.sky.code.study-2-2.0.html

    机锋:http://apk.gfan.com/Product/App974063.html

    我的其他软件:http://appshow.sinaapp.com/


    转载请注明:Blue Sky:http://www.cnblogs.com/hubcarl
  • 相关阅读:
    STM32的“外部中断”和“事件”区别和理解
    非线性函数的最小二乘拟合——兼论Jupyter notebook中使用公式 [原创]
    Jupyter 快捷键总结
    自制导纳信号发生器 [原创cnblogs.com/helesheng]
    Verilog HDL数组(存储器)操作
    一个有趣的异步时序逻辑电路设计实例 ——MFM调制模块设计笔记
    用NI的数据采集卡实现简单电子测试之6——数字I/O及测试平台
    用NI的数据采集卡实现简单电子测试之5——压控振荡器的测试
    用NI的数据采集卡实现简单电子测试之4——半导体温度传感器
    黑客用我们服务器挖矿了
  • 原文地址:https://www.cnblogs.com/Sharley/p/5652368.html
Copyright © 2011-2022 走看看