Android 办公自动化(Office Automation)
- APP 端:Android
-
- 环境配置
-
- Android Studio 创建项目
- 开始编写代码。
-
- 登录注册
- 首页(HomeActivity)
- 首页(MainFragment)
-
- 日志(LogAllActivity)
-
- 四种日志的查看界面
- 写日志的界面(NoteEditActivity)
- 审批(ApprovalActivity)
-
- 各种申请界面
- 查看我发起的申请
- 我审批的界面
- 考勤(MapActivity)
- 公告(NoticeListActivity)
- 通讯录(MaillistFragment)
- 我的(MyFragment)
- PC 端:服务器
-
- 环境配置
-
- 创建一个 Maven 项目。
- 开始编写代码
- Android Question。
- 整体架构图
- 贴出源码:
APP 端:Android
app 端需求文档简述说明:
- app 端登录后,进入到首页界面,首页可以执行查看日志、查看审批、进行考勤、查看公告等操作。
- 首页,可以切换到通讯录以及我的界面。
- 通讯录,可以查看公司的部门结构以及部门成员信息。
- 我的,可以查看我的信息,修改个人信息。
环境配置
- Android Studio 。android-studio-ide-181.5014246-windows
- 夜神模拟器。
- Gradle 。‘com.android.tools.build:gradle:3.2.0’
- 谷歌浏览器。
- eclipse。Maven 。apache-maven-3.5.4-bin 。
Android Studio 创建项目
创建一个最低版本是 6.0 的Android 项目,夜神模拟器的最高版本是 Android 7.0.
开始编写代码。
登录注册
- 登录。
- 创建登录 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)来保存密码。 - 点击登录按钮执行的方法处理操作。