天蓬老师2017-04-17 15:34:32 0 4 101
[Android讨论组]举报回复话题 ↕
学习Android有段时间,最近想开发一个APP来巩固下学到的知识,想做到高效率开发。有几个问题要请教大家:
如何去架构?网络,图片模块要怎样去合理设计?
测试要怎样做?
发布到市场的流程是怎样呢?
4
0
分享
天蓬老师 2017-04-17 15:36:324楼
okhttp
android-async-http
volley
otto
EventBus
Dagger
RoboGuice
ButterKnife
Fresco
Glide
picasso
greenDao
ormlite
LitePal
RxJava
RxAndroid
logger
android-CLog
KLog
testerhome 测试社区,里面有很多干货
bugtags 新一代的、专为移动测试而生的缺陷发现及管理工具
testin 为移动测试而生
Emmagee 网易出品的,是监控指定被测应用在使用过程中占用机器的CPU、内存、流量资源的性能测试小工具。
awesome-android-testing A curated list of awesome android testing libraries.
腾讯bugly
Crittercism
Crashlytics
这个肯定得了解下MVC,MVP,MVVM还有设计模式这些,这里有几个开源项目推荐下
Movie collection and information app for Android.Github地址:https://github.com/chrisbanes/philm
基于Material Design和MVP的新闻客户端Github地址:https://github.com/liuling07/SimpleNews
A application show technical information every working days, use MVP pattern.Github地址:https://github.com/maoruibin/GankDaily
Github地址:https://github.com/SkillCollege/SimplifyReader
Github地址:https://github.com/SilenceDut/NBAPlus
Github地址:https://github.com/yydcdut/PhotoNoter
Github地址:https://github.com/drakeet/Meizhi
检查内存泄露 Github地址:https://github.com/square/leakcanary
Android Debug Drawer for faster development Github地址:https://github.com/palaima/DebugDrawer
Local server for Android's HierarchyViewer Github地址:https://github.com/romainguy/ViewServer
A transparent ui-block detection library for AndroidGithub地址:https://github.com/moduth/blockcanary
FIR.im
蒲公英
赞 +0添加回复
PHPzhong 2017-04-17 15:36:323楼
我想题主之所以想这些问题是因为题主没有明确的需求,不知道要做一个怎样的APP,题主可以列一下自己的需求或目标,要把APP做成怎么样,我想到时就明白要怎样去架构了。没有明确的需求或目标,想到哪写到哪,是谈不上架构的。鉴于题主想做高效率开发,抛开架构不谈,以下是一些建议。1、使用人家的轮子,网络方面,可以使用android-async-http-client、okhttp、volley,图片处理方面,可以使用picasso、UIL、fresco,这些都是比较成熟的开源框架,可以提高开发效率;2、测试就没有多少需要说的了,功能、压力,都是比较基本的测试了;3、市场发布是远期目标了,一般要到应用市场注册开发者账户,提供开发者身份证明,等待身份审核,提交应用,发布应用。各个应用市场都有各自的流程,大同小异。
天蓬老师 2017-04-17 15:36:322楼
工欲善其事必先利其器,工具利用好很重要,一个好的开发工具事半功倍,所以我们不仅要提供开发效率还要提高测试效率,自动化远程测试就显得尤为重要
PHPzhong 2017-04-17 15:36:321楼
题主快学习 Kotlin 吧,包括 MVP,RxJava,这都是近几年 Android 开发圈子最潮流的东西,当然对开发效率的提高也不只一点半点:Kotlin Base Framework
天蓬老师 2017-04-17 15:36:324楼
我猜想题主是想开发一款APP来练练手,但有些开源库,框架之类不是很熟悉。刚好前几天在知乎回答过类似的问题,这里再补充下
网络模块
okhttp
android-async-http
volley
事件总线
otto
EventBus
依赖注入
Dagger
RoboGuice
ButterKnife
图片模块
Fresco
Glide
picasso
数据库模块
greenDao
ormlite
LitePal
响应式编程
RxJava
RxAndroid
日志输出
logger
android-CLog
KLog
测试相关
testerhome
测试社区,里面有很多干货
bugtags
新一代的、专为移动测试而生的缺陷发现及管理工具
testin
为移动测试而生
Emmagee
网易出品的,是监控指定被测应用在使用过程中占用机器的CPU、内存、流量资源的性能测试小工具。
awesome-android-testing
A curated list of awesome android testing libraries.
崩溃统计平台
腾讯bugly
Crittercism
Crashlytics
架构设计
这个肯定得了解下MVC,MVP,MVVM还有设计模式这些,这里有几个开源项目推荐下
philm
Movie collection and information app for Android.
Github地址:https://github.com/chrisbanes/philm
SimpleNews
基于Material Design和MVP的新闻客户端
Github地址:https://github.com/liuling07/SimpleNews
GankDaily
A application show technical information every working days, use MVP pattern.
Github地址:https://github.com/maoruibin/GankDaily
SimplifyReader
Github地址:https://github.com/SkillCollege/SimplifyReader
NBAPlus
Github地址:https://github.com/SilenceDut/NBAPlus
PhotoNoter
Github地址:https://github.com/yydcdut/PhotoNoter
Meizhi
Github地址:https://github.com/drakeet/Meizhi
其他
leakcanary
检查内存泄露
Github地址:https://github.com/square/leakcanary
DebugDrawer
Android Debug Drawer for faster development
Github地址:https://github.com/palaima/DebugDrawer
ViewServer
Local server for Android's HierarchyViewer
Github地址:https://github.com/romainguy/ViewServer
blockcanary
A transparent ui-block detection library for Android
Github地址:https://github.com/moduth/blockcanary
APP内测,分发
FIR.im
蒲公英
PS:开源框架虽然好用,但最好要了解框架存在的一些bug和坑,遇到问题可以给作者提issue,一般这些有名的框架,作者都会很积极的回答。
另外推荐下自己的Android-Dev-Favorites,里面收集了Android开发的干货。
啰哩啰嗦写了这么多,希望能帮到题主。
赞 +0添加回复
PHPzhong 2017-04-17 15:36:323楼
我想题主之所以想这些问题是因为题主没有明确的需求,不知道要做一个怎样的APP,题主可以列一下自己的需求或目标,要把APP做成怎么样,我想到时就明白要怎样去架构了。没有明确的需求或目标,想到哪写到哪,是谈不上架构的。鉴于题主想做高效率开发,抛开架构不谈,以下是一些建议。
1、使用人家的轮子,网络方面,可以使用android-async-http-client、okhttp、volley,图片处理方面,可以使用picasso、UIL、fresco,这些都是比较成熟的开源框架,可以提高开发效率;
2、测试就没有多少需要说的了,功能、压力,都是比较基本的测试了;
3、市场发布是远期目标了,一般要到应用市场注册开发者账户,提供开发者身份证明,等待身份审核,提交应用,发布应用。各个应用市场都有各自的流程,大同小异。
赞 +0添加回复
天蓬老师 2017-04-17 15:36:322楼
工欲善其事必先利其器,工具利用好很重要,一个好的开发工具事半功倍,所以我们不仅要提供开发效率还要提高测试效率,自动化远程测试就显得尤为重要
赞 +0添加回复
PHPzhong 2017-04-17 15:36:321楼
题主快学习 Kotlin 吧,包括 MVP,RxJava,这都是近几年 Android 开发圈子最潮流的东西,当然对开发效率的提高也不只一点半点:
Kotlin Base Framework
赞 +0添加回复