首页
Web开发
Windows程序
编程语言
数据库
移动开发
系统相关
微信
其他好文
会员
首页
>
移动开发
> 详细
Android开发之搜Ya项目说明(3)
时间:
2014-10-14 21:17:49
阅读:
156
评论:
0
收藏:
0
[点我收藏+]
标签:
android项目
项目
搜芽移动客户端
----seller,app,base三个包的简单说明
作者
曾金龙
Tel:18664312687 QQ :470910357@qq.com
时间
2014-10-14
说明
代码说明
第一部分 Seller包
1,启动页面 StartUpActivity.java
启动页面,搜芽的第一个页面。Android开发中需要在Manifest中设置程序的入口。
如下:
<activity
android:name="com.souya.seller.StartUpActivity"
android:label="@string/app_name"
android:theme="@style/notitle">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
启动页面的逻辑:
展示搜芽图片,故意停留2秒(2000毫秒),然后跳转到登入页面,采用new Handler().postDelayed方法实现
。详见代码,不再复述。
2,登入页面
LoginActivity.java
登入页面的逻辑:
接受用户输入,在本地保存,并向服务器发出登入请求,接收到回复如果成功,则跳转到主页面。
其逻辑框图如下:
在用户触发按钮的Onclick则进行登入。开启一个异步任务实现。异步任务中调用DataProxy进行登入包的构建与发送。DataProxy将会是我们整个程序和服务器打交道的代理。可以看看里面的代码,它是对http请求和相应的一个封装。
登入返回之后,我们会开启一个线程专门做心跳处理。定时发送心跳包。
具体见:SellerApplication.getInstance().mHeartbeatThread = new Thread(new Runnable() {
这行代码。
尚未实现:注册。
3 ,程序主页面 MainActivity.java
程序的主界面
1)继承自 SellerActivity 主要是为了监听一些事件。具体可以去看代码。
2)ViewPager TabPageIndicator TabsAdapter 实现Tab页面,而这个Indicator是ViewPagerIndicator项目的(我们在工程导入文档中有说明)。
需要知道掌握的就是如何添加一个Tab页面放进来。
mTabsAdapter.addTab即可。
3)ActionBar。知道如何在ActionBar里面添加一个自己的目录选项。见onCreateOptionsMenu
4)TabsAdapter内部类。可以看看,无需改动。
第二部分 app包
1 活动页管理 ActivityManager
对Activity的管理,为什么要这个类,可以去网上搜,主要是为了解决回退时候的Activity管理问题。
2 崩溃日志捕获 CrashHandler
当APP异常退出的时候,记录日志到文件,这样方便我们分析哪里崩溃。具体见代码。
3 IP监控 IPMonitor
暂时未用到。
4 SellerApplication 应用类
Application类一般用来保存全局数据,用来最开始的初始化。这类功能和设计可以去网上学习。
我们在这里初始化log4j的日志,保存用户登入账号信息。
第三部分 base包
这个包主要是几个基类。为了更好的抽象和监听事件,我们抽象了SellerFragment,它继承了Fragment。
1 SellerFragment
关于Android推荐使用Fragment代替Activity的文章,网上学习,这里不做介绍。
SellerFragment主要集成一些常用的功能。
1)图片缓存对象 ImageFetcher mImageFetcher(图片缓存对象的内部机制无需了解,是第三方的代码,后续会用即可)。
2)对Fagment常见操作的封装。
2 RefreshableFragment
继承了SellerFragment,主要添加了对刷新动作的处理。
3 BaseFragment
继承了RefreshableFragment
主要加了,对取到图片事件的监听;网络变化的监听;刷新操作的监听。
4 SellerActivity
Seller程序中各种Activity的基类。主要是在里面丰富了对菜单的处理。
注意:ClothSearch mClothSearch;域是为了在ActionBar中添加搜索而生的。在Actionbar中做搜索是一个行业通用设计也是个难点,后续有时间细致的学习一下。
Q&A:
1 为什么都是Fragment而不是Activity?
答:据我看到的,外包用的比较多的是Activity,而我们这里用到比较多的Fragment的,我们的原则是能用Fragment的地方就尽量不要用Activity。
2 有些代码看不懂,声明了却没有地方用到,为什么?
答:有些代码我没剔除干净,不是懒,因为可能现在用不到,但我觉得后续肯定会用到,所以就留了个引子在那里。如果看到这样的代码,无需过多关注。
3 为什么这个版本和设计需求有初入?
答:因为精力有限,以及设计有时候并不一定最好。比如,那个搜索,请看市面通用做法,大家的做法就是对的,我们无需怀疑那么多互联网公司的设计能力。当然,更多的丑是因为没时间去调。
Android开发之搜Ya项目说明(3)
标签:
android项目
原文地址:http://blog.csdn.net/minimicall/article/details/40082953
踩
(
0
)
赞
(
0
)
举报
评论
一句话评论(
0
)
登录后才能评论!
分享档案
更多>
2021年07月29日 (22)
2021年07月28日 (40)
2021年07月27日 (32)
2021年07月26日 (79)
2021年07月23日 (29)
2021年07月22日 (30)
2021年07月21日 (42)
2021年07月20日 (16)
2021年07月19日 (90)
2021年07月16日 (35)
周排行
更多
关闭苹果IOS app自动更新
2021-07-29
开发一个即时通讯App
2021-07-28
iOS 跳转App Store进行评分
2021-07-26
诺基亚短信生成!太好玩了
2021-07-26
【Azure 应用服务】App Service 配置 Application Settings 访问Storage Account得到 could not be resolved: '*.file.core.windows.net'的报错。没有解析成对应中国区 Storage Account地址 *.file.core.chinacloudapi.cn
2021-07-26
Android系统编程入门系列之界面Activity响应丝滑的传统动画
2021-07-26
uniapp h5,app两端复制文本
2021-07-22
uni-app滚动视图容器(scroll-view)之监听上拉事件
2021-07-21
新型横向移动工具原理分析、代码分析、优缺点以及检测方案
2021-07-19
Android系统编程入门系列之界面Activity交互响应
2021-07-19
友情链接
兰亭集智
国之画
百度统计
站长统计
阿里云
chrome插件
新版天听网
关于我们
-
联系我们
-
留言反馈
© 2014
mamicode.com
版权所有 联系我们:gaon5@hotmail.com
迷上了代码!