随着我国孤独人口和丁克群体的增长,人们迫切需要一个事务来宣泄自己的感情,宠物就是一个最好的选择。对于普通民众,宠物的花销相对较低,大部分人都足以供给,且随着我国人口老龄化的加重(2020年中国65岁及以上人口已达到13.5%),结婚率的降低和离婚率的升高导致了我国新生儿出生比例越来越低,2020年仅8.5%左右。受此影响,越来越多的普通民众选择养育宠物来减少孤独感,而宠物猫因其“宅家”的性格深受民众的喜爱,预计未来市场发展前景广阔。2021年中国主要宠物主年龄分布主要集中在90后-95后,其中就养育宠物猫的宠物主而言,也主要为为90后,2021年占比35%,同时80年代前的猫主人也有9%。

1.课题综述

行业规模与增长:2020年我国宠物行业市场规模接近3000亿元,受政策、经济、社会和技术因素驱动,以及疫情带来的更多潜在养宠人群及情感消费,未来三年行业将继续保持平稳增长,复合增速预计14.2%,到2023年规模将达到4456亿元。

宠物特征:宠物类型以犬猫为主,更多一线城市居民和90后因为身份和个性原因养水族或异宠,多类养宠成趋势。

宠物主描摹:新时代已婚家庭进阶养宠主流人群,他们为宠物赋予情感角色,追求健康、快乐养宠,同时显现出智能养宠趋势。疫情催生更多年轻人进阶猫主,新晋猫主精细化养宠理念更成熟。

宠物消费热点:随着精细化养宠趋势的深入,宠物消费类目日渐丰富。天然粮、有机粮受青睐;宠物零食也为宠物主提供了更多选择;用品方面安全性和设计便捷受关注,智能和颜值成趋势。

行业趋势展望:猫经济崛起,猫主消费增长态势强劲;国货品质提升和养宠理性化趋势将促进国货潮广泛化;养宠下沉将成为宠物行业增量的新机会;宠物线上医疗模式将成为线下医疗的重要补充;宠物服务需求向多样化发展;全渠道运营模式将成为商家未来发展扩大的战略通道。

结合课上所学知识和猫宠行业背景,设计了这款猫咪社区APP。

1.完成思路与方法

3.1功能需求分析

此APP主要可以养猫爱好者的注册登录、帖子浏览和发帖评论功能

数据库设计

sqlite是AndroID系统采用的一种开源的轻量级的关系型的数据库,AndroID中允许每个应用程序都拥有自己独立的数据库,每个应用程序的数据库的位置一般在/data/data//databases中。为了方便开发人员的使用,AndroiD的API对增删查改实现了封装,通过sqliteOpenHelper类可以方便的实现对数据库的创建和管理操作。

猫咪社区帖子字段如表所示:

3.3系统流程图

3.4 UI设计

(1)注册界面和登录界面

(2)首页、帖子详情页、发帖页

1.个人中心

3.5关键技术和存在的问题

关键技术1:注册非空验证和保存用户数据

if(CheckInput()) {

User user = new User();

user.setUsername(tvStuNumber.getText().toString());

user.setPassword(tvStuPwd.getText().toString());

UserDbHelper dbHelper = new UserDbHelper(getApplicationContext(),UserDbHelper.DB_NAME,null,1);

dbHelper.addUser(user);

Toast.makeText(RegisterActivity.this,"恭喜你注册成功!",Toast.LENGTH_SHORT).show();

//销毁当前界面

finish();

}

关键技术2:登录验证

//如果sqlite数据库可以找到,则输出登录成功,并跳转到主界面

if(user.getUsername().equals(EtStuNumber.getText().toString()) && user.getPassword().equals(EtStuPwd.getText().toString()) ) {

flag = true;

Toast.makeText(LoginActivity.this,"恭喜你登录成功!",Toast.LENGTH_SHORT).show();

Intent intent = new Intent(LoginActivity.this, MainActivity.class);

Bundle bundle = new Bundle();

username = EtStuNumber.getText().toString();

bundle.putString("username",username);

intent.putExtras(bundle);

startActivity(intent);

}

关键技术3:发帖图片上传

//把图片先转化成bitmap格式

BitmapDrawable drawable = (BitmapDrawable) ivPhoto.getDrawable();

Bitmap bitmap = drawable.getBitmap();

//二进制数组输出流

ByteArrayOutputStream byStream = new ByteArrayOutputStream();

//将图片压缩成质量为100的PNG格式图片

bitmap.compress(Bitmap.CompressFormat.PNG, 100, byStream);

//把输出流转换为二进制数组

byte[] byteArray = byStream.toByteArray();

commodity.setPicture(byteArray);

@Override

protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {

if (requestCode == 1) {

//从相册返回的数据

if (data != null) {

//得到图片的全路径

Uri uri = data.getData();

ivPhoto.setImageURI(uri);

}

}

}

存在的问题:帖子描述文字太多的话会导致首页排版混乱,需要列表项样式进行进一步修正

4. 收获总结

每次的项目都会出现一些的问题,但是都通过了百度或者问班上刻苦的同学,还是能将问题解决。我常常和我们宿舍的同学交流安卓,我们相互弥补我们的不足,这样我们就能在学习的路上越走越远,在互相的帮助中,我们相互学习了一些不一样的知识来增加专业知识的知识量。安卓这一科目对我们来说是非常重要的科目,在本学期的学科里面,安卓是最有代表性的科目,它是当今我们生活中最重要的一样东西之一的手机上所使用的代码,我们每天都要使用手机,而手机则需要使用代码程序,所以通过这次的学习,我对手机的开发又有了新的认识与理解。

在安卓的开发中,首先学习了安卓的主资源布局控件,然后在学习到了java代码所使用的逻辑知识。从开始的单用布局activity_main再到后面的MainActivity,学习到了许多知识,但是我的自学能力和自觉性还是不够强,始终无法学习到非常精妙的程度,适配器也还是不够熟练,在假期的时候,我希望我更能系统化的学习安卓这门课程!

安卓期末大作业——养猫论坛(源码+任务书)相关推荐

  1. 安卓期末大作业——汉服社区(源码+任务书)

    安卓期末大作业--汉服社区(源码+任务书) 课题的作用和意义 汉族占中国人口的91%,是中国的主体民族,在越来越全球化的今天,我们正越来越多地,在不同场合,与不同的民族打交道,由此也就越是需要民族身份 ...

  2. 安卓期末大作业——单词本APP(源码+任务书)

    计算机学院 项 目 报 告 2020 - 2021 学年 第 2 学期 课程名称: Android移动开发技术 项目名称: 单词本 学生姓名: 小组成员: 2021年 6 月 题目:单词本APP 1需 ...

  3. 安卓期末大作业——购物商城(源码+18页报告)

    Android系统原理及应用报告 题    目:                         学    号: 班    级: 姓    名: 完成时间   报告要求须知 项目报告按照实践开发实际情 ...

  4. 安卓期末大作业——个人简历APP源码和设计报告

    Android课程需求文档 设计题目: 个人简历APP 学生姓名: 学号: 1.Smart.apk功能设计说明 Android真机运行进入该app. 背景音乐服务播放正常,并设置可通过右上角按钮关闭m ...

  5. html期末大作业美食主题网页源码0006

    项目演示视频: html美食网站源码 部分代码展示: <!DOCTYPE html> <html lang="en"> <head> <t ...

  6. 安卓期末大作业——猫咪社区(源码+任务书)

    安卓期末大作业--养猫论坛(源码+任务书) (第3期语音互动答疑)远程帮客户调试成功了猫咪社区APP.mp4 课题的作用和意义 随着我国孤独人口和丁克群体的增长,人们迫切需要一个事务来宣泄自己的感情, ...

  7. 安卓期末大作业——鲜花商店APP(源码+任务书)

    安卓期末大作业--鲜花商店APP(源码+任务书) <移动应用开发> 课程考核报告 姓    名: 学    号: 完 成 日 期 2022年 5月 建议从以下方面填写:1. 课题的作用和意 ...

  8. 安卓期末大作业Android studio-记单词app(资源链接在文末,含注册登录,含设计报告,含导出app文件及源码导入方法文档)

    安卓期末大作业Android studio-记单词app(注册登录.增删改查) (资源下载链接在文末) 1.注册登录界面 2.用户点击加号按钮输入单词,键盘会自动弹出并焦点在输入框,用户输入英文和中文 ...

  9. 安卓期末大作业——校园二手街APP设计和实现

    安卓期末大作业--校园二手街APP设计和实现 目 录 1.引言 4 1.1 研究背景和意义 4 1.2 本文研究内容 4 1.3 论文结构安排 4 2.相关文献综述 5 2.1 关于移动互联网的地理社 ...

最新文章

  1. LeetCode简单题之有序数组中出现次数超过25%的元素
  2. iOS 提高tableView 性能的优化
  3. 重温强化学习之函数近似
  4. 一个数里有那些约数用c++怎么做_如何从一堆数里找出哪几个数相加等于你要的值?...
  5. SSM中进行Junit单元测试时无法注入service
  6. 果断收藏!六大主流大数据采集平台架构分析
  7. 深入了解SpringCloud Hystrix
  8. 【语义分割】ICCV21_Mining Contextual Information Beyond Image for Semantic Segmentation
  9. ominigraffle 模板_商河盖梁模板安装
  10. mysql会话杀不掉_SQL Server会话KILL不掉,一直处于KILLED /ROLLBACK状态情形浅析
  11. SpringBoot 整合 JPA
  12. 慕课软件质量保证与测试(第八章.软件评审概述)
  13. Latex排版—(1)基础排版
  14. 字谜游戏Java程序实现
  15. 网络广告效果的评估方法
  16. 异度之刃2 任务打杂店的帮手去哪获取纯洁石
  17. VMware vCenter vShield配置vxlan时候vib未安装
  18. 汉字拼音的一个解决方法
  19. 鸿蒙os系统测试版照片,鸿蒙OS正式发布:荣耀智慧屏首发,一起来体验鸿蒙OS吧...
  20. vue-cli3环境变量之打包文件没有hash值

热门文章

  1. 换新电脑后安装软件发现有些软件模糊怎么办?
  2. NavigationView简单简介和简单使用
  3. Spring生命周期
  4. Android 下实现高效的模糊效果
  5. 基础理论知识复习(中)
  6. C# DataTable 行转列 列转行 同时转换
  7. 目录页和摘要页不设置页码
  8. FreeSWITCH信号音检测(忙音检测,呼叫进度检测)
  9. [imx6ull]ADC编程-烟雾传感器采样
  10. mysql 查看版本的命令