Android 办公自动化(Office Automation)

这篇博客详细介绍了如何在Android平台上实现办公自动化,包括环境配置、登录注册、首页功能、日志查看、审批流程、考勤管理和公告查看等。作者强调了9patch图片的使用、页面布局设计、业务逻辑处理以及与服务器的交互。此外,还提到了Android相关的问题和整体架构图。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

APP 端:Android

app 端需求文档简述说明:

  1. app 端登录后,进入到首页界面,首页可以执行查看日志、查看审批、进行考勤、查看公告等操作。
  2. 首页,可以切换到通讯录以及我的界面。
  3. 通讯录,可以查看公司的部门结构以及部门成员信息。
  4. 我的,可以查看我的信息,修改个人信息。

环境配置

  1. Android Studio 。android-studio-ide-181.5014246-windows
  2. 夜神模拟器。
  3. Gradle 。‘com.android.tools.build:gradle:3.2.0’
  4. 谷歌浏览器。
  5. eclipse。Maven 。apache-maven-3.5.4-bin 。

Android Studio 创建项目

创建一个最低版本是 6.0 的Android 项目,夜神模拟器的最高版本是 Android 7.0.

开始编写代码。

登录注册
  1. 登录。
    在这里插入图片描述
  • 创建登录 LoginActivity 继承实现 Activity 。
  • activity_login.xml 设置页面布局。
    在这里插入图片描述

※ 页面设计方面

  • 整体页面布局采用的是相对布局(RelativeLayout)的布局样式。

  • 页面中的 Logo 设置 。使用 ImageView 控件加载一张图片,设置图片显示在居中的位置上。
    在这里插入图片描述

  • 9patch 图片(后缀名字是 .9.png 的图片)的使用。
    1、9patch 图片是 andriod app 开发里一种特殊的图片形式,文件的扩展名为:.9.png 。
    2、9patch 图片的作用就是在图片拉伸的时候保证其不会失真。我们使用 .9 图片,让图片在指定的位置拉伸和在指定的位置显示内容,保证图片的边边角角就不会出现失真。
    3、使用 9patch 的好处:整个图片是包裹着想要显示的内容的。如果没有使用 9patch 格式,仅仅充满控件背景而已。
    在这里插入图片描述
    在这里插入图片描述
    4、制作 .9.png 的图片需要注意这四条黑线具有不同的意义(使用的时候都要添加)。
    顶部与左边掌管伸缩:在水平拉伸(竖直)的时候,保持其他位置不动,只在这个点的区域做无限的延伸。
    底部与右边掌管内容:在水平拉伸(竖直)的时候,指定图片里的内容显示的区域。

  • Button 的按钮样式。
    android share 属性文件的使用。
    在这里插入图片描述
    在这里插入图片描述

  • 最后的两个按钮设计的比较简单了,页面的整体背景是白色的,所以设置按钮背景是白色的,字体是蓝色即可。
    在这里插入图片描述

※ 业务处理方面

本人习惯根据需求文档设计好展示页面,设计好页面后,根据页面的控件内容进行逻辑处理。

  • 暂不支持第三方登录。这里的第三方登录仅仅起到对称美化作用。
  • 登录逻辑,设置记住密码和自动登录的操作。这两项,在现在的 app 中都已经是默认执行了的,这里根据我自己的做法做出来的,如果有网络安全和信息泄露等安全方面问题的话,请留言给我。在首次登陆时,SplashActivity 的判断是没有自动登录和记住密码的 true 操作,则直接跳转到登录的界面,登录的时候判断是否勾选自动登录、记住密码的操作。
    1、SplashActivity 中的业务逻辑。
    在这里插入图片描述
    判断是否有记住密码操作,仅有记住密码操作则通过 SharedPreferences 文件中查询输入的账号与密码传到登录界面。仅有记住密码的操作时,才从SqlLite 数据库查询用户上次登录用户信息,查询到信息内容则跳转到首页。
    2、LoginActivity 中对按钮以及单选框执行监听。
    在这里插入图片描述
    根据单选框的选择情况进行设置,自动登录选择,则进行插入数据库的操作,可以将当前登录用户的信息存储到数据库中,也可以不存放密码等内容,存放登录凭证 token 。记住密码的选择,因为这里要区别出记住密码与自动登录的操作,我在记住密码操作上选择了使用 SharedPreferences 文件中,密码选择使用的 md5 加密的方式 , password + username + password 做为盐(salt)来保存密码。
  • 点击登录按钮执行的方法处理操作。
    在这里插入图片描述这里我没有使用 token 登录的方式,我采用的是 session 存储登录方式,设置 session 存储的时长为 15 天,通过请求的时候发送和获取 cookie 中 JSESSIONID 的内容。并且单独保存起来,登录的时候更新 session 内容即可。

  1. 注册。
  • 创建登录 RegisterActivity 继承实现 Activity 。
  • activity_register.xml 设置页面布局。
    在这里插入图片描述
    ※ 页面设计方面
    【EditText 设置输入框】对 EditText 使用了 shape 属性元素。shape 的存储内容存放到了 Android shape 的文件中。
    【Button】button 设置按钮的 shape 样式即可。
    ※ 业务处理方面
    1、点击注册按钮,携带着注册的信息,向后台发送请求。
    2、点击注册提交时,需要判断注册输入内容没有空的操作。并且清空输入框的内容,把焦点定焦到对应的 EditText 控件上。
    在这里插入图片描述
首页(HomeActivity)
  • 创建登录 HomeActivity
评论 20
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值